title: maschere e lettura facilitata

text:
> >
> > Ho fatto un pò di casini
> >
> > Ah MAzza, ammazza quanto sei fiscalista!!!!
> > ;-P
> > MAssimiliano
> >
>
> Guarda che me ne sono accorto solo perché il link non funziona... Che
figura
> ci facevi?
>
> Ciao.
Sergio dallo smile si capisce che scherzavo, era gustoso il gioco di parole
e il fatto che fossi fiscalista non fiscale.
MAssimiliano


title: maschere e lettura facilitata

author: Sergio MAZZA

text:
"MA" <
keiko...@libero.it
> ha scritto nel messaggio
news:qMXOa.3160$B8....@news.edisontel.com...
> Sergio dallo smile si capisce che scherzavo, era gustoso il gioco di
parole
> e il fatto che fossi fiscalista non fiscale.
> MAssimiliano
MAssimiliano non utilizzo smile ma mi sembrava chiaro che scherzavo pure
io...
Ciao.
P.S. Avevo capito benissimo lo scherzo.


title: maschere e lettura facilitata

text:
OK, trovato (per poi scoprire che l'avevo anche già scaricato in passato).
Sarà il caldo, sarà lo scoglionamento di fine stagione, sarà il caffè (della
macchinetta a gettoni, che fa veramente schifo)...
Grazie
Stefano


title: maschere e lettura facilitata

text:
> Sicuramene, guarda su
www.sitocomuna.com
> MAssimiliano
in verità è la prima cosa che faccio prima di postare qui, ma non sono
riuscito ad individuarlo. Ora guardo di nuovo ma se tu potessi esser più
preciso riguardo al titolo dell'articolo te ne sarei grato.
Grazie ancora
Stefano


title: Installare Access97 oppure...

author: il Cava

text:
Salve NG,
leggendo i post precedenti mi e' venuto un dubbio atroce.
Gestisco il mio database fatto con Access97 (ho installato MS Office
Professional 97) su un notebook con Winzozz Millennium Ed. e tutto funziona
a meraviglia.
Dovro' prestare delle consulenze in uno studio che ha due PC in rete,
Winzozz XP, un programma gestionale basato su un diverso database (che ora
non mi sovviene) e la suite OpenOffice. Vorrei evitare di portarmi dietro il
mio notebook perche' gia' cosi' viaggio carico come un somaro e avrei
pensato di installare Access97 sul PC nella mia stanza per poi usare il
database contenuto in un pendrive tascabile.
Se questo dovesse provocare malfunzionamenti nel database pre-esistente o
nel sistema operativo, sono certo di essere impalato prima di poter
risolvere il problema. Ho letto della versione per sviluppatori che permette
di usare Access senza installare il programma. Potrebbe essere una
alternativa valida e, se si, dove posso reperire una versione per Access97 o
compatibile con esso?
Grazie in anticipo a chi vorra' dirmi la sua,
:-) dal Cava


title: Installare Access97 oppure...

author: Davide (Sib)

text:
"il Cava" <d(punto)
digre...@infinito.it
> ha scritto nel messaggio

Non capisco esattamente il tuo problema.
Se temi che l'installazione di Access possa creare problemi al sistema
allora posso tranquillamente dirti che non corri nessun tipo di pericolo.
Se poi preferisci lavorare con openoffice allora ti suggerisco di installare
Clinux...
Davide
--
www.gestionedati.com


title: Installare Access97 oppure...

text:
Grazie 1000 per la risposta cosi' veloce!    :-)
> Non capisco esattamente il tuo problema.
Nemmeno io perche', a parte un po' di Access, di sistemi operativi e
computer non capisco un granche'.
> Se temi che l'installazione di Access possa creare problemi al sistema
> allora posso tranquillamente dirti che non corri nessun tipo di pericolo.
Buona notizia allora. Posso anche stare tranquillo che lo stesso computer
possa "far girare" contemporaneamente i due database senza rischi di
instabilita'? Lo so che forse detto cosi' e' impossibile dare una risposta,
pero' il dubbio m'e' venuto leggendo vecchi post; anche su questi PC c'era
MS Office XP, che poi e' stato disinstallato e non so se possa funzionare
ora in sicurezza il vecchio Access97. Inoltre il gestionale gia' in uso sui
due PC ogni tanto si blocca in modo inatteso e deve essere riavviato (con
comprensibile vituperio dell'agiografia ufficiale da parte del titolare);
non vorrei che un secondo e diverso database in parallelo possa peggiorare
le cose.
> Se poi preferisci lavorare con openoffice allora ti suggerisco di
> installare Clinux...
La rete in oggetto non e' mia e mi guardo bene dal toccare qualsiasi cosa,
non ne ho autorita' ne' diritto ne' competenza. OpenOffice gli serve per i
documenti di testo e per i fogli elettronici. Forse sono timori eccessivi i
miei ma veramente non vorrei creare problemi allo studio, piuttosto continuo
a prendere appunti su carta e trasciverli sul mio notebook una volta a casa.
:-) dal Cava


title: Installare Access97 oppure...

text:
"il Cava" <d(punto)
digre...@infinito.it
> ha scritto nel messaggio news:e6h69d$76g$1...@newsread.albacom.net...
---omissis---
> Buona notizia allora. Posso anche stare tranquillo che lo stesso computer
> possa "far girare" contemporaneamente i due database senza rischi di
> instabilita'? Lo so che forse detto cosi' e' impossibile dare una risposta,
> pero' il dubbio m'e' venuto leggendo vecchi post; anche su questi PC c'era
> MS Office XP, che poi e' stato disinstallato e non so se possa funzionare
> ora in sicurezza il vecchio Access97. Inoltre il gestionale gia' in uso sui
> due PC ogni tanto si blocca in modo inatteso e deve essere riavviato (con
> comprensibile vituperio dell'agiografia ufficiale da parte del titolare);
> non vorrei che un secondo e diverso database in parallelo possa peggiorare
> le cose.
Io non ho capito se sul pc dove andresti ad agire c'è un altro Access di versione diversa alla 97 o proprio nessuna installazione.
Nel primo caso l'mdb che ti porti appresso, in versione '97, se l'Access che dovrà aprirlo è di versione superiore ti chiederà di
convertirlo tutte le volte che tenti di accederci.
Nel secondo caso, senza nessuna installazione di access, non puoi utilizzare l'mdb se non installando sul pc il run-time.
---omissis---
> :-) dal Cava
Ciao.
--
Sergio MAZZA


title: Installare Access97 oppure...

text:
> Io non ho capito se sul pc dove andresti ad agire c'è
> un altro Access di versione diversa alla 97 o proprio
> nessuna installazione.
C'era Office XP Professional (pirata) che e' stato disinstallato un mese fa.
Non so se nei computer rimangono tracce della sua presenza oppure no.
> Nel secondo caso, senza nessuna installazione di access,
> non puoi utilizzare l'mdb se non installando sul pc il run-time.
Dove posso trovarlo? Domanda ingenua, lo so, ma abbiate pazienza, sono
veramente a digiuno di queste cose.
:-) dal Cava


title: Installare Access97 oppure...

text:
"il Cava" <d(punto)
digre...@infinito.it
> ha scritto nel messaggio
news:e6hfn7$bh2$1...@newsread.albacom.net...
>
> C'era Office XP Professional (pirata) che e' stato disinstallato un mese
> fa.
> Non so se nei computer rimangono tracce della sua presenza oppure no.
Sul sito di Microsoft c'č un tool che rimuove eventuali tracce.
> Dove posso trovarlo? Domanda ingenua, lo so, ma abbiate pazienza, sono
> veramente a digiuno di queste cose.
Del '97 solo in vendita e poco tempo fa si trovava su ebay.



title: Installare Access97 oppure...

text:
"il Cava" <d(punto)
digre...@infinito.it
> ha scritto nel messaggio
news:e6hfn7$bh2$1...@newsread.albacom.net...
>
> Dove posso trovarlo? Domanda ingenua, lo so, ma abbiate pazienza, sono
> veramente a digiuno di queste cose.
> :-) dal Cava
Ah! E se ne parla un messaggio prima del tuo...
Ciao.
--
Sergio MAZZA


title: Velocità esecuzione query in rete

text:
Buongiorno a tutti
Acc2002
winXp
una query mi calcola il prezzo di vendita al dettaglio di un paio di
migliaia di articoli
Il calcolo è alquanto complesso in quanto per ogni articolo il prezzo
all'ingrosso è in varie valute e tassato e commissionato ad aliquote
diverse
Il prezzo di vendita è poi ripartito in 4-5 scaglioni tariffari
(retail, top retail, end user...ecc) ed aggiornato due volte l'anno.
Nell'arco di qualche anno di esercizio la mia query si ritroverà
quindi ad avere diverse decine di migliaia di records se non centinaia
di migliaia
il tutto è su un file .mdb che risiede sul server di una Lan che ha
circa 7-8 postazioni client
Le domande sono 2:
-esiste il rischio che la query diventi troppo voluminosa? qual'è
indicativamente il numero di records oltre il quale è meglio non
andare se si vogliono mantenere delle buoni prestazioni in rete?
-leggendomi i vecchi post del ng ho visto che viene consigliato di non
salvare su tabelle i valori calcolati da una query. Potrebbe però
questo essere il caso che mi permette maggiore velocità sui clients?
voglio dire....accedere ad un dato che risiede su una tabella è (e di
quanto?) più veloce piuttosto che eseguire ogni volta la query?
Mi scuso anticipatemente per le domande banali ma spero si sia capito
che questo non è il mio mestiere :-)
Grazie in anticipo a chi avrà la pazienza di rispondermi
Carlo


title: E' possibile costruire moduli esterni al DB ? Ossia :

text:
E' possibile, in un certo vba di un dato DB Access, richiamare
direttamente funzioni o procedure che  risiedono in  altri  DB
Access ? Se si, come si dovrebbe procedere ?

Con "direttamente" intendo  senza  artifici  come aprire il DB
esterno,  chiamare  una  form  e  fargli eseguire  la sub o la
function nelle modalita' che conosciamo.

Ossia intendo qualcosa come :
if x > 0 then
  e =  DBESTERNO(...).miafunzione(x)
endif

Grazie


text:
Si... basta inserire il DB_EXT nei Riferimenti del DB... e puoi usarlo come fosse una Lib esterna.

Attenzione ai Moduli di Classe che vanno modificati esportandoli in TXT, si modifica un Parametro che consente di Esporre la Classe, e si reimportano.

@Alex


text:
Il giorno giovedì 6 novembre 2014 13:06:07 UTC+1, @Alex ha scritto:

> Si... basta inserire il DB_EXT nei Riferimenti del DB...
> e puoi usarlo come fosse una Lib esterna.

Ma intendi menu' strumenti -> riferimenti ? Ho controllato, non
c'e'. Si chiama esattamente DB_EXT ?

Mi deve sfuggire qualcosa. E' ovvio :-)

> Attenzione ai Moduli di Classe che vanno modificati esportandoli
> in TXT, si modifica un Parametro che consente di Esporre la Classe,
> e si reimportano.

Eh ?
Per ora m' accontenterei dei moduli normali :-)


author: Alessandro Cara

text:
Il 06/11/2014 13:06, @Alex ha scritto:
> Si... basta inserire il DB_EXT nei Riferimenti del DB... e puoi usarlo come fosse una Lib esterna.
>
> Attenzione ai Moduli di Classe che vanno modificati esportandoli in TXT, si modifica un Parametro che consente di Esporre la Classe, e si reimportano.
>
Tanto lui le classi non le usa ;-)

--
ac (x=y-1)
Aborro il Killfile
(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)

---
Questa e-mail è priva di virus e malware perché è attiva la protezione avast! Antivirus.
http://www.avast.com


text:
Che ne so io come lo hai chiamato... devi immaginare che il FILE MDB con i Moduli sia una Libreria, quindi lo vai a cercare e lo inserisci...

Una volta inserito ti appare il Modello Oggetti con i Metodi e Properietà, Oggetti ecc...

@Alex


text:
Il giorno giovedì 6 novembre 2014 14:40:31 UTC+1, @Alex ha scritto:

> Che  ne  so  io  come lo hai chiamato... devi  immaginare  che il
> FILE MDB con i Moduli sia una Libreria, quindi lo vai  a  cercare
> e lo inserisci...

Ah scusami. Pensavo che DB_EXT fosse una libreria per interfacciare
un DB esterno (figurati). Invece e' proprio *IL* DB esterno.
Ho capito.

> Una volta inserito ti appare il Modello Oggetti con i Metodi e
> Proprietà, Oggetti ecc...

Si, perfetto. Ma come si fa ad inserire un mio DB tra le librerie ?
Non l' ho mai fatta una cosa del genere.


text:
Il giorno giovedì 6 novembre 2014 14:33:06 UTC+1, Alessandro Cara ha scritto:

> Tanto lui le classi non le usa ;-)

Ora le uso


text:
Quello stranissimo Pulsante SFOGLIA ti tice nulla...?

@Alex


text:

good allora tieni in buon conto il suggerimento.



text:
Il giorno giovedì 6 novembre 2014 15:23:26 UTC+1, @Alex ha scritto:
> Quello stranissimo Pulsante SFOGLIA ti tice nulla...?

Scusa ... quale pulsante sfoglia ?

Io ho un certo  DB  access A che devo inserire nella libreria dei
riferimenti di un altro DB access B. Ok ? Immagino  dovro' quindi
copiare  questo DB A  in un certo percorso.

Credo almeno.  O no ? E quale e' questo percorso ?


text:
Il giorno giovedì 6 novembre 2014 16:05:10 UTC+1, Alessandro Cara ha scritto:
> Il 06/11/2014 15:12,
radica...@gmail.com
 ha scritto:
> > Il giorno giovedì 6 novembre 2014 14:33:06 UTC+1, Alessandro Cara ha scritto:
> >
> >> Tanto lui le classi non le usa ;-)
> >
> > Ora le uso
>
> good allora tieni in buon conto il suggerimento.

Ok


author: Bruno Campanini

text:
radica...@gmail.com
 has brought this to us :

Ma non ti sei ancora accorto che @Alex e Alessandro sono
come il Gatto e la Volpe?
Ti prospettano fantasiose soluzioni esotiche, poi ti lasciano lì,
a mezza via... coitus interruptus.

È come la storia dei Moduli di Classe dei quali discutemmo
(o ci fu anche una dichiarazione di guerra? non ricordo...)
anni addietro, dove io, canuto artigiano aduso a lavorar
con mani e piedi, sostenevo che non servivano un cazzo,
ovvero - più correttamente - che le stesse cose si potevano
fare altrettanto bene usando per l'appunto mani e piedi.

Quella di metter un database esterno nelle References
mi par cosa di stessa natura e funzione.

Un saluto a tutti, anche a quel vecchio volpone di @Alex che,
bontà sua, ogni tanto ci diletta del suo uscir dal letargo.

Bruno


text:
Il giorno giovedì 6 novembre 2014 22:44:09 UTC+1, Bruno Campanini ha scritto:
>
radica...@gmail.com
 has brought this to us :
> > Il giorno giovedì 6 novembre 2014 15:23:26 UTC+1, @Alex ha scritto:
> >> Quello stranissimo Pulsante SFOGLIA ti tice nulla...?
> >
> > Scusa ... quale pulsante sfoglia ?
> >
> > Io ho un certo  DB  access A che devo inserire nella libreria dei
> > riferimenti di un altro DB access B. Ok ? Immagino  dovro' quindi
> > copiare  questo DB A  in un certo percorso.
> >
> > Credo almeno.  O no ? E quale e' questo percorso ?
>
> Ma non ti sei ancora accorto che @Alex e Alessandro sono
> come il Gatto e la Volpe?
> Ti prospettano fantasiose soluzioni esotiche, poi ti lasciano lì,
> a mezza via... coitus interruptus.

Ah.
Vabe' ...

> È come la storia dei Moduli di Classe dei quali discutemmo
> (o ci fu anche una dichiarazione di guerra? non ricordo...)
> anni addietro, dove io, canuto artigiano aduso a lavorar
> con mani e piedi, sostenevo che non servivano un cazzo,
> ovvero - più correttamente - che le stesse cose si potevano
> fare altrettanto bene usando per l'appunto mani e piedi.
>
> Quella di metter un database esterno nelle References
> mi par cosa di stessa natura e funzione.
>
> Un saluto a tutti, anche a quel vecchio volpone di @Alex che,
> bontà sua, ogni tanto ci diletta del suo uscir dal letargo.
>

Ricambio i saluti


text:
Il giorno giovedì 6 novembre 2014 16:05:10 UTC+1, Alessandro Cara ha scritto:
> Il 06/11/2014 15:12,
radica...@gmail.com
 ha scritto:
> > Il giorno giovedì 6 novembre 2014 14:33:06 UTC+1, Alessandro Cara ha scritto:
> >
> >> Tanto lui le classi non le usa ;-)
> >
> > Ora le uso
>
> good allora tieni in buon conto il suggerimento.

Vorrei  chiederti : sto  cercando  un modo per costruire una classe che
intercettando gli errori possa validamente sostituire la gestione degli
errori (piuttosto involuta) del vba.

Ma  non sembra sia possibile. Mi  sbaglio ? Spero di si perche' sarebbe
una manna dal cielo poterla fare.


text:
....
> Quella di metter un database esterno nelle References
> mi par cosa di stessa natura e funzione.

Su questo concordo pienamente...

> Un saluto a tutti, anche a quel vecchio volpone di @Alex che,
> bontà sua, ogni tanto ci diletta del suo uscir dal letargo.

Ormai non sono più dei vostri, non mi sento più all'altezza, ho perso completamente tutta la mia conoscenza acquisita... mi sono dedicato a cose più inutili... ;-)

> Bruno

Ciao Bruno

@Alex


text:
Il giorno venerdì 7 novembre 2014 11:33:36 UTC+1, @Alex ha scritto:
> ....
> > Quella di metter un database esterno nelle References
> > mi par cosa di stessa natura e funzione.
>
> Su questo concordo pienamente...

Perdonami :
se  prima (come invece dice Campanini) non mi stavi sfottendo
ebbene mi piacerebbe davvero sapere come inserire in libreria
un DB access. E' interessante.

se  invece mi stavi sfottendo beh ... diciamo che ti diverti
con poco, beato te ;-)


text:

Ma sant'iddio radicale. Sul menu' del codice hai una entrata
"Riferimenti". Quello che hai li sono tutte "librerie" che ti possono
servire se hai esigenza di qualche "modulo" particolare.
E ci sono sempre "riferimenti" collegati.
Ora attraverso quel menu' cercati il DB esterno e collegalo come fosse
una "libreria" a quel punto tutto cio' che e' definito in quel /tuo/ DB
esterno ti e' visibile.



text:
Il 06/11/2014 22:44, Bruno Campanini ha scritto:
> Ma non ti sei ancora accorto che @Alex e Alessandro sono
> come il Gatto e la Volpe?
> Ti prospettano fantasiose soluzioni esotiche, poi ti lasciano lì,
> a mezza via... coitus interruptus.

Sia l'altro Alessandro che il sottoscritto e' da un po che non usiamo
quotidianamente Access. Inoltre non e' mai stata nostra abitudine (mi
arrogo di parlare anche per conto di @Alex) scrivere il codice completo
dellla soluzione forse perche' riteniamo che sia piu' "produttivo" che
il richiedente ci arrivi da solo.

>
> È come la storia dei Moduli di Classe dei quali discutemmo
> (o ci fu anche una dichiarazione di guerra? non ricordo...)
> anni addietro, dove io, canuto artigiano aduso a lavorar
> con mani e piedi, sostenevo che non servivano un cazzo,
> ovvero - più correttamente - che le stesse cose si potevano
> fare altrettanto bene usando per l'appunto mani e piedi.

Su questo continuiamo a non intenderci. Qualsiasi cosa si puo' fare
usando il pallottoliere (e di questo radicale sa tutto visto che e' il
soprannome che mi ha dato).
Se dall'uso del pallottoliere pero' riesci a desumere modi piu' "puliti"
ed "esaustivi" e' il valore aggiunto che si da.
Scommetto che le funzioni le usi. Perche'? A che servono? visto che se
ne puo' tranquillamente fare a meno!
Perche' usare anche le mani quando basterebbero solo i piedi?

E comunque usando le classi certe cose si fanno "meglio" come certe cose
si fanno meglio usando le "funzioni" (rispetto a non usarle)

Ma come diceva un saggio ognuno e' padrone di eleggere modi e tempi
della propria distruzione.



text:
Il giorno venerdì 7 novembre 2014 12:09:17 UTC+1,
radica...@gmail.com
 ha scritto:
> Il giorno venerdì 7 novembre 2014 11:33:36 UTC+1, @Alex ha scritto:
> > ....
> > > Quella di metter un database esterno nelle References
> > > mi par cosa di stessa natura e funzione.
> >
> > Su questo concordo pienamente...
>
> Perdonami :
> se  prima (come invece dice Campanini) non mi stavi sfottendo
> ebbene mi piacerebbe davvero sapere come inserire in libreria
> un DB access. E' interessante.

Dove hai i Riferimenti delle LIB, dal menù:
STRUMENTI
---> RIFERIMENTI
  ----> 6 BUTTON
    ----> 1° [OK]
    ----> 2° [ANNULLA]
    ----> 3° [FRECCIA SU]
    ----> 4° [FRECCIA GIU']
    ----> 5° [SFOGLIA]  <----- QUESTO CASPITA
    ----> 1° [?]

Quale di questi 6 BUTTON può essere quello chiamato SFOGLIA...?

> se  invece mi stavi sfottendo beh ... diciamo che ti diverti
> con poco, beato te ;-)

Prima non stavo sfottendoti, ma ora decisamente si e lo meriti, e ti assicuro che mi diverto veramente con pochissimo... quindi immagina quanto mi sto divertendo ora...

@Alex


text:
Il giorno venerdì 7 novembre 2014 14:38:57 UTC+1, @Alex ha scritto:
> Il giorno venerdì 7 novembre 2014 12:09:17 UTC+1,
radica...@gmail.com
 ha scritto:
> > Il giorno venerdì 7 novembre 2014 11:33:36 UTC+1, @Alex ha scritto:
> > > ....
> > > > Quella di metter un database esterno nelle References
> > > > mi par cosa di stessa natura e funzione.
> > >
> > > Su questo concordo pienamente...
> >
> > Perdonami :
> > se  prima (come invece dice Campanini) non mi stavi sfottendo
> > ebbene mi piacerebbe davvero sapere come inserire in libreria
> > un DB access. E' interessante.
>
> Dove hai i Riferimenti delle LIB, dal menù:
> STRUMENTI
> ---> RIFERIMENTI
>   ----> 6 BUTTON
>     ----> 1° [OK]
>     ----> 2° [ANNULLA]
>     ----> 3° [FRECCIA SU]
>     ----> 4° [FRECCIA GIU']
>     ----> 5° [SFOGLIA]  <----- QUESTO CASPITA
>     ----> 1° [?]
>
> Quale di questi 6 BUTTON può essere quello chiamato SFOGLIA...?

... Hops :D

> > se  invece mi stavi sfottendo beh ... diciamo che ti diverti
> > con poco, beato te ;-)
>
> Prima non stavo sfottendoti, ma ora decisamente si e lo meriti, e
> ti assicuro che mi diverto veramente con pochissimo... quindi
> immagina quanto mi sto divertendo ora...

Beh, vediamo il lato positivo : almeno ti faccio divertire :D


text:
Il giorno venerdì 7 novembre 2014 13:56:09 UTC+1, Alessandro Cara ha scritto:
> Il 07/11/2014 12:09,
radica...@gmail.com
 ha scritto:
> > Il giorno venerdì 7 novembre 2014 11:33:36 UTC+1, @Alex ha scritto:
> >> ....
> >>> Quella di metter un database esterno nelle References
> >>> mi par cosa di stessa natura e funzione.
> >>
> >> Su questo concordo pienamente...
> >
> > Perdonami :
> > se  prima (come invece dice Campanini) non mi stavi sfottendo
> > ebbene mi piacerebbe davvero sapere come inserire in libreria
> > un DB access. E' interessante.
> >
> > se  invece mi stavi sfottendo beh ... diciamo che ti diverti
> > con poco, beato te ;-)
> >
>
> Ma sant'iddio radicale. Sul menu' del codice hai una entrata
> "Riferimenti". Quello che hai li sono tutte "librerie" che ti
> possono servire se hai esigenza di qualche "modulo" particolare.
> E ci sono sempre "riferimenti" collegati.
> Ora attraverso quel menu' cercati il DB esterno e collegalo come fosse
> una "libreria" a quel punto tutto cio' che e' definito in quel /tuo/ DB
> esterno ti e' visibile.

Ahem ... :D
Si.

Scusate. Vi ringrazio molto per la pazienza. Davvero.


text:
radica...@gmail.com
 pretended :

> Perdonami :
> se  prima (come invece dice Campanini) non mi stavi sfottendo
La mia era una battuta, non intendevo dire che ti stavano
sfottendo... non mi permetterei mai!

> ebbene mi piacerebbe davvero sapere come inserire in libreria
> un DB access. E' interessante.

1 - Manualmente
VBE ==> References ==> Browse: scegli il file
        che vuoi inserire nelle librerie.

2 - Via VBA:
    Private Sub Command15_Click()
        Dim i As Reference
        For Each i In Application.References
            If i.Name = "MyDB" Then
                Exit Sub
            End If
        Next
        Application.References.AddFromFile _
        "D:\Access\MDB\MyDB.accdb"
    Exit Sub

Bruno


text:
Bruno Campanini presented the following explanation :

Dimanticavo, per eliminare la Reference:
=============================
Private Sub Command28_Click()
Dim i As Reference
For Each i In Application.References
    If i.Name = "MyDB" Then
        GoTo RemoveRef
    End If
Next

Exit Sub
RemoveRef:
    Application.References.Remove i
End Sub
===============================

Bruno


text:
On Friday, November 7, 2014 3:02:57 PM UTC+1, Bruno Campanini wrote:
>
radica...@gmail.com
 pretended :
>
> > Perdonami :
> > se  prima (come invece dice Campanini) non mi stavi sfottendo
> La mia era una battuta, non intendevo dire che ti stavano
> sfottendo... non mi permetterei mai!

Vabe', oramai la figura di cacca l' ho fatta. Capita ... :-)

> > ebbene mi piacerebbe davvero sapere come inserire in libreria
> > un DB access. E' interessante.
>
> 1 - Manualmente
> VBE ==> References ==> Browse: scegli il file
>         che vuoi inserire nelle librerie.
>
>
> 2 - Via VBA:
>     Private Sub Command15_Click()
>         Dim i As Reference
>         For Each i In Application.References
>             If i.Name = "MyDB" Then
>                 Exit Sub
>             End If
>         Next
>         Application.References.AddFromFile _
>         "D:\Access\MDB\MyDB.accdb"
>     Exit Sub
>

Chiarissimo, grazie mille anche a te.


text:
> ... Hops :D
>
> > > se  invece mi stavi sfottendo beh ... diciamo che ti diverti
> > > con poco, beato te ;-)
> >
> > Prima non stavo sfottendoti, ma ora decisamente si e lo meriti, e
> > ti assicuro che mi diverto veramente con pochissimo... quindi
> > immagina quanto mi sto divertendo ora...
>
> Beh, vediamo il lato positivo : almeno ti faccio divertire :D

Ridere è il termine più adeguato... ma il mio è solo sarcasmo.

@Alex


text:

Non so quale sia il tuo obiettivo.
Non mi sono mai posto il problema piu' di tanto.
Normalmente, quando mi serve gestire l'errore, uso la forma con resume
next che consente di evitare salti incondizionati e gestire /inline/
l'errore o chiamando una funzione/classe a cui passo l'oggetto err.



text:

Ti chiedo scusa. Davvero.


text:
On Friday, November 7, 2014 3:50:21 PM UTC+1, Alessandro Cara wrote:

> Non so quale sia il tuo obiettivo.

Come ti dicevo : costruire una classe che intercetti gli errori
in  sostituzione  del  normale trapping dato da "on error goto"
che e' piuttosto involuto.

> Non mi sono mai posto il problema piu' di tanto.

Va bene, se ti va di pensarci un attimo fammi sapere.


text:
On Friday, November 7, 2014 3:02:57 PM UTC+1, Bruno Campanini wrote:

Fatto.
Solo che non ho capito come si deve fare per chiamare
una funzione scritta nel modulo X del DB A cosi' referenziato
quando programmo  in un modulo Y del DB B che referenzia A.

Ossia : ok, ho referenziato il DB A *dal* DB B. Ora il DB B
"vede" il DB A.

In un modulo del DB B mi serve chiamare una funzione che
sta nel modulo X del DB A.

Come cavolo devo fare ? :-)


text:
After serious thinking
radica...@gmail.com
 wrote :

Fa' quel che faresti se la dovessi chiamare dal DB A.

Bruno


text:
Il 07/11/2014 18:04,
radica...@gmail.com
 ha scritto:
[cut]
> Fatto.
> Solo che non ho capito come si deve fare per chiamare
> una funzione scritta nel modulo X del DB A cosi' referenziato
> quando programmo  in un modulo Y del DB B che referenzia A.
>
> Ossia : ok, ho referenziato il DB A *dal* DB B. Ora il DB B
> "vede" il DB A.
>
> In un modulo del DB B mi serve chiamare una funzione che
> sta nel modulo X del DB A.
>
> Come cavolo devo fare ? :-)
>

se il nome e' unico non devi fare nulla la chiami e basta se il nome e'
/duplicato/, come si fa di solito, si premette il nome della libreria.

se tu hai la libreria ADO e la libreria DAO e se queste hanno oggetti di
nome uguali li chiami prefissando, appunto, con ADO. o con DAO.
se hai una sola libreria chiami l'oggetto (come di solito si fa) punto.



text:
Il 07/11/2014 17:58,
radica...@gmail.com
 ha scritto:
> On Friday, November 7, 2014 3:50:21 PM UTC+1, Alessandro Cara wrote:
>
>> Non so quale sia il tuo obiettivo.
>
> Come ti dicevo : costruire una classe che intercetti gli errori
> in  sostituzione  del  normale trapping dato da "on error goto"
> che e' piuttosto involuto.

mi pare di aver scritto che uso "on error resume next" e non "on error
go to label" e quindi il normale /trapping/ me lo faccio io (quando mi
serve).

Per intercettare l'errore si deve scendere a livello piu' basso.
Qui l'unico che si e' cimentato con questo problema (cioe' scendere a
livello piu' basso)  e' @Alex.
Fare una classe (o quello che e') come dici tu e' riproporre pari pari
il problema perche' /generalizzare/ quella classe significa sapere come
e dove e perche' e quando  si e' verificato l'errore e come ben sai
talvolta gli errori possono /quasi/ essere voluti dalla logica
dell'applicazione.
Sugli errori di /sistema/ ritengo inoltre /molto/ complicato
intervenire, anzi inutile.



text:

Non la vede. Nel DB B non vede la funzione del DB A.
Devo riferirmi ad A in qualche modo o nisba.


text:
Il 07/11/2014 18:52, Alessandro Cara ha scritto:
ps
se il nome e' duplicato (se non erro) non e' che non lo faccia. Prende
il primo nome in elenco, cioe' l'oggetto della prima libreria che lo
contiene secondo l'ordine assegnato nei riferimenti.
Su questa cosa si sono "scrociati" /nel tempo/ parecchi utenti del NG.



text:
Il 07/11/2014 18:52, Alessandro Cara ha scritto:
pps: la /roba/ deve essere definita come "public" (sempre se non erro e
se ricordo adeguatamente)



text:
Il giorno venerdì 7 novembre 2014 18:38:18 UTC+1, Bruno Campanini ha scritto:

Ok, funziona. Ma la devo dichiarare pubblica.


text:
Il giorno venerdì 7 novembre 2014 18:52:17 UTC+1, Alessandro Cara ha scritto:
> Il 07/11/2014 17:58,
radica...@gmail.com
 ha scritto:
> > On Friday, November 7, 2014 3:50:21 PM UTC+1, Alessandro Cara wrote:
> >
> >> Non so quale sia il tuo obiettivo.
> >
> > Come ti dicevo : costruire una classe che intercetti gli errori
> > in  sostituzione  del  normale trapping dato da "on error goto"
> > che e' piuttosto involuto.
>
> mi pare di aver scritto che uso "on error resume next" e non "on error
> go to label" e quindi il normale /trapping/ me lo faccio io (quando mi
> serve).

E' "uguaglio".
Te lo puoi fare anche con on error goto. Non cambia nulla.

Anzi imho e' meglio perche' cosi' facendo ogni proc o funzione la
fai sempre secondo lo schema :

mia_funzione(...) as ...

 on error goto errore

 10 ...
 20 ...
    ...
 errore:

gestore_errori(err.number,nome_funzione, linea_errore)
end function

In questo modo ti centralizzi tutti gli errori in una sola
procedura alla quale passi il nome della funzione, il numero
errore e la linea dove s'e' verificato

> Per intercettare l'errore si deve scendere a livello piu' basso.
> Qui l'unico che si e' cimentato con questo problema (cioe' scendere a
> livello piu' basso)  e' @Alex.
> Fare una classe (o quello che e') come dici tu e' riproporre pari pari
> il problema perche' /generalizzare/ quella classe significa sapere come
> e dove e perche' e quando  si e' verificato l'errore e come ben sai
> talvolta gli errori possono /quasi/ essere voluti dalla logica
> dell'applicazione.
> Sugli errori di /sistema/ ritengo inoltre /molto/ complicato
> intervenire, anzi inutile.

mh


text:
Il 07/11/2014 19:07,
radica...@gmail.com
 ha scritto:
.number,nome_funzione, linea_errore)
> end function
>
> In questo modo ti centralizzi tutti gli errori in una sola
> procedura alla quale passi il nome della funzione, il numero
> errore e la linea dove s'e' verificato

Il tuo problema non e' quindi l'errore in se ma il nome funzione e il
numero di riga. Per fare questo c'e' della roba in giro sul web. Anche
su "accessgroup" (credo). Dovrebbe, inoltre,  esserci fra i vecchi post
piu' di un 3d sull'argomento, prova a cercare sui messaggi di questo NG,
le parole chiave di ricerca immagino te le sappia inventare.

Se non ricordo male c'e' necessita' di "collegare" una libreria che
contiene del codice per poter fare quello che chiedi.



text:
Il giorno venerdì 7 novembre 2014 19:25:21 UTC+1, Alessandro Cara ha scritto:
> Il 07/11/2014 19:07,
radica...@gmail.com
 ha scritto:
> .number,nome_funzione, linea_errore)
> > end function
> >
> > In questo modo ti centralizzi tutti gli errori in una sola
> > procedura alla quale passi il nome della funzione, il numero
> > errore e la linea dove s'e' verificato
>
> Il tuo problema non e' quindi l'errore in se ma il nome funzione
> e il numero di riga.

Eh, magari fosse quello il mio problema ... :-)

Scherzi  a  parte  stavo  solo rispondendoti su un fatto specifico,
ossia se on error goto fosse "meglio" o "peggio" di on error resume

No,
il mio problema e' costruire una classe che praticamente "tenga
sotto controllo" il programma. Una roba difficile, credo. Ma non
sono obbligato a farlo, sto solo vedendo se e come si puo' fare.

> Per fare questo c'e' della roba in giro sul web.

Gia' lo faccio, ma e' laborioso. Ok, cerchero' di guardare in
giro secondo i tuoi suggerimenti comunque.

Grazie


text:
Il giorno venerdì 7 novembre 2014 18:59:31 UTC+1, Alessandro Cara ha scritto:
> Il 07/11/2014 18:52, Alessandro Cara ha scritto:
> pps: la /roba/ deve essere definita come "public" (sempre se non erro e
> se ricordo adeguatamente)

Si esatto


text:
Non so se questo ESEMPIO può essere utile a capire come Ereditare EVENTI di Oggetti... vedete voi:

http://forum.masterdrive.it/access-79/events-tracer-69222/

Saluti
@Alex


text:
Il giorno lunedì 10 novembre 2014 11:56:44 UTC+1, @Alex ha scritto:
> Non so se questo ESEMPIO può essere utile a capire come Ereditare EVENTI di Oggetti... vedete voi:
>
>
http://forum.masterdrive.it/access-79/events-tracer-69222/

Grazie, ma ...
mi  son sempre chiesto perche' mai il VBA non abbia una classe sua,
diciamo "nativa"  (passatemi l' espressione) e ricca di info e dati
per intercettare gli errori nel codice e che possa essere esplorata
dal programmatore.

Non so, magari commetto qualche errore logico di fondo.


text:
Il VBA non ha errori da gestire.
Gli errori sono legati alle SUB/FUNCTION/CLASSI ed OGGETTI, o meglio agli eventi che gli Oggetti generano.
Una Classe GENERICA non ha nemmeno senso di essere nominata... in se.

Se guardi infatti nelle Librerie le Classi ERROR esistono ma associate ad Oggetti...

Class Errors
    Membro di ADODB

Class Error
    Membro di ADODB

Property Errors As Errors
    sola lettura
    Membro di ADODB.Connection

Class Error
    Membro di DAO

Class ErrObject
    Membro di VBA

Class MacroError
    Membro di Access

Ecc... ed "ecc" significa che questo è il motivo per cui la domanda non è da fare.

Saluti
@Alex


text:
Il giorno lunedì 10 novembre 2014 13:20:41 UTC+1, @Alex ha scritto:

> Il VBA non ha errori da gestire.

Affermazione un po' ambigua. In che senso il "VBA" ?

La  domanda si  puo'  fare  invece,  dal momento che gli errori (tutti
quegli errori o meglio quelle "fonti" di errore  che  hai  giustamente
elencato) vengono  intercettate  se  si "accende" il trapping  tramite
l'istruzione "on error" (nelle sue varie accezioni).

Quindi, anche se non  conosco  i  dettagli della cosa, ho abbastanza buon
senso per poter tranquillamente asserire che, anche se piuttosto involuta,
un "qualcosa" che fa da "centro di smistamento" di tutte le fonti di errore
e a cui e' possibile accedere per  vedere che errore s' e' verificato c'e'
GIA'.

E quindi eccome se ha senso.


text:

Ma no.... cosa stai dicendo...!
Oggetti specifici con errori specifici... non esiste una PIZZA CAPRICCIOSA per gli errori...!

Quello che tu definisci ON ERROR è solo una parte del problema, nel senso che dirotta l'errore che viene generato dalle istruzioni nella SUB/FUNCTION all'interno della Sub/Function stessa...
Esiste anche l'Evento OnError di Form, se vogliamo dirla tutta, e non si intercetta con On Error da nessuna parte...!
Se poi vuoi realizzare una gestione errori CENTRALIZZATA per tua comodità, certo che può avere un senso, ma è una TUA comodità e ribadisco che NON HA SENSO pensarla come CARENZA DEL SISTEMA.

Ad essere sinceri poi una gestione errori centralizzata senza un'attendibile STACKERROR è una mezza pippa... e sappiamo bene che a parte TOOL esterni il VBA non consente in modo nativo l'analisi in STACK... e questo a maggior ragione rende relativo e parziale il discorso di comodità.

Ora mi sono annoiato perchè stiamo parlando di una cavolata.

Saluti
@Alex


text:

Si fa quel che si puo' ...

> Oggetti specifici con errori specifici...  non  esiste  una  PIZZA
> CAPRICCIOSA per gli errori...!

Eccome se  esiste : vanno  a  finire  tutti  nella "classe" (?) err
E' un dato di fatto. E aggiungo : ringraziando Iddio.

> Quello che tu definisci ON ERROR è solo una parte del problema, nel
> senso che dirotta l'errore che viene generato dalle istruzioni nella
> SUB/FUNCTION all'interno della Sub/Function stessa...

Ed e' proprio questo, forse, il problema perche' :
se la routine A chiama la routine B e in quest' ultima si verifica un
certo errore E questo E non e' visibile da A (O forse meglio : A non
lo intercetta) anche se in questa A e' presente l' istruzione on error.

Ma vediamo questo frammento di pseudocodice :
sub  A
on error goto errore
  routine = "A"
   ...
   chiama B
        sub B
           on error goto errore
              routine = "B"
             ...
             y = x/0 -> errore
           errore:
             gestore_centralizzato(err.number, routine )
        end B
exit
errore :
 gestore_centralizzato(err.number, routine)
end A

Se voglio gestire centralmente l' errore son costretto a riscrivere,
in ogni routine, quella struttura.

Altro problema : non e'  dato sapere  il nome della routine dove si
verifica l' errore (per le manchevolezze di VBA per quanto riguarda
lo stack, come giustamente dici dopo) il che, ai fini della gestione
centralizzata, mi costringe a passare al gestore centralizzato il
nome della routine.

Ossia in parole povere (come ho fatto fin ora) a farmi un gestore
dello stack da me. Delle procedure e degli errori. Un lavorone.
... Vabe' manco tanto, alla fine.

> Esiste anche l'Evento OnError di Form, se vogliamo dirla tutta, e
> non si intercetta con On Error da nessuna parte...!

Vabe' ...

> Se poi vuoi realizzare una gestione errori CENTRALIZZATA per tua
> comodità, certo che può avere un senso, ma è una TUA comodità e
> ribadisco che NON HA SENSO pensarla come CARENZA DEL SISTEMA.

Ok, non chiamiamola "carenza di sistema" se la cosa ti scandalizza.
Ma di certo se esistesse una classe pubblica a  cui  accedere alla
bisogna tutti questi problemi non ci sarebbero. Percio' pensavo di
costruirla ma credo sia molto difficile.

> Ad essere sinceri poi una gestione errori centralizzata senza
> un'attendibile STACKERROR è una mezza pippa... e sappiamo bene che
> a parte TOOL esterni il VBA non consente in modo nativo l'analisi
> in STACK... e questo a maggior ragione rende relativo e parziale
> il discorso di comodità.

Appunto : lo "stack" (diciamo) te lo devi fare da solo.

> Ora mi sono annoiato perchè stiamo parlando di una cavolata.

Gira che ti rigira son tutte cavolate, e' vero. Ma tutte tutte
eh: tanto alla fine se deve mori', no ? ;-)


text:
radica...@gmail.com
 used his keyboard to write :

[...]
>> Ad essere sinceri poi una gestione errori centralizzata senza
>> un'attendibile STACKERROR è una mezza pippa... e sappiamo bene che
>> a parte TOOL esterni il VBA non consente in modo nativo l'analisi
>> in STACK... e questo a maggior ragione rende relativo e parziale
>> il discorso di comodità.
>
> Appunto : lo "stack" (diciamo) te lo devi fare da solo.
>
>> Ora mi sono annoiato perchè stiamo parlando di una cavolata.
>
> Gira che ti rigira son tutte cavolate, e' vero. Ma tutte tutte
> eh: tanto alla fine se deve mori', no ? ;-)

Sì ma è un po' da stolti morir di cavolate.
Io ho sempre avuto problemi a risolvere gli errori
del codice e dell'utente, mai a "gestire"
le modalità della loro rappresentazione.
Ma è materia talmente ovvia e scontata che non trovo
espressioni sensate per esprimermi.

Quando vedo poi dello pseudo codice - absit iniuria verbis! -
mi si drizzan tutti i peli del c...
Ché è una cosa - lo pseudo codice - che al programmatore
non serve proprio a nulla.
Ché quando ci vai a togliere lo "pseudo" per farlo
diventare "codice" il più delle volte t'accorgi
che sei completamente fuori strada.

Sto declinando un'autobiografia, non intendo
generalizzare.

@Alex, e tu radicale da 1/1000, avete mai provato
il VBA di Outlook?

Bruno


text:
Il giorno martedì 11 novembre 2014 00:49:57 UTC+1, Bruno Campanini ha scritto:
>
radica...@gmail.com
 used his keyboard to write :
>
> [...]
> >> Ad essere sinceri poi una gestione errori centralizzata senza
> >> un'attendibile STACKERROR è una mezza pippa... e sappiamo bene che
> >> a parte TOOL esterni il VBA non consente in modo nativo l'analisi
> >> in STACK... e questo a maggior ragione rende relativo e parziale
> >> il discorso di comodità.
> >
> > Appunto : lo "stack" (diciamo) te lo devi fare da solo.
> >
> >> Ora mi sono annoiato perchè stiamo parlando di una cavolata.
> >
> > Gira che ti rigira son tutte cavolate, e' vero. Ma tutte tutte
> > eh: tanto alla fine se deve mori', no ? ;-)
>
> Sì ma è un po' da stolti morir di cavolate.

Oh mamma mia come la metti sul duro. Rilassati ... ;-)

> Io ho sempre avuto problemi a risolvere gli errori
> del codice e dell'utente, mai a "gestire"
> le modalità della loro rappresentazione.

Non e 'questione di "rappresentazione", e' questione di
ARCHITETTURA del software.

> Ma è materia talmente ovvia e scontata che non trovo
> espressioni sensate per esprimermi.

Ovvia ? Scontata ? Boh. Saro' un po' tardo io allora. Dico
sul serio, mai stato una "spada affilata".

> Quando vedo poi dello pseudo codice - absit iniuria verbis! -
> mi si drizzan tutti i peli del c...

Ehhhh ! Come sei "teatrale" ! :-)

> Ché è una cosa - lo pseudo codice - che al programmatore
> non serve proprio a nulla.

Eh si vabe' ... Ad es. in teoria  degli algoritmi e' usatissimo
perche' ovviamente in quel modo si possono descrivere algoritmi
indipendentemente dal linguaggio.

> Ché quando ci vai a togliere lo "pseudo" per farlo diventare
> "codice" il più delle volte t'accorgi che sei completamente
> fuori strada.

Ma dai, non esageriamo : diciamo che quando dallo psudocodice
lo porti al codice ci devi stare molto attento. Ecco.

> Sto declinando un'autobiografia, non intendo generalizzare.

Ma certo ! Si parla,  si  comunica, si  scambiano  idee  tutte
rispettabili ci mancherebbe. Io non la "verita'" in mano. Anzi.

> @Alex, e tu radicale da 1/1000, avete mai provato
> il VBA di Outlook?

Io personalmente ho buttato giu' alcune routine in Outlook. Ha
un modello oggetti un po' particolare, sui generis.

Perche' ?


text:
radica...@gmail.com
 expressed precisely :

>> @Alex, e tu radicale da 1/1000, avete mai provato
>> il VBA di Outlook?
>
> Io personalmente ho buttato giu' alcune routine in Outlook. Ha
> un modello oggetti un po' particolare, sui generis.
>
> Perche' ?

Perché quello quando ti spara un errore nemmeno ti riporta
sulla riga che l'ha generato.
Ti stampa un messaggio con un codice di errore e una descrizione
che il più delle volte nulla ha a che vedere con la causa.
E ti va bene se non devi chiudere e riaprire Outlook per
riprendere a lavorare.

Di quello varrebbe la pena lamentarsi!

Bruno


text:
Il giorno martedì 11 novembre 2014 11:08:47 UTC+1, Bruno Campanini ha scritto:
>
radica...@gmail.com
 expressed precisely :
>
> >> @Alex, e tu radicale da 1/1000, avete mai provato
> >> il VBA di Outlook?
> >
> > Io personalmente ho buttato giu' alcune routine in Outlook. Ha
> > un modello oggetti un po' particolare, sui generis.
> >
> > Perche' ?
>
> Perché quello quando ti spara un errore nemmeno ti riporta
> sulla riga che l'ha generato.

Perche' tagli tutto ? Ho argomentato ...

Cmq :
Non c' avevo mai fatto caso, oppure si e me lo sono dimenticato.

> Ti stampa un messaggio con un codice di errore e una descrizione
> che il più delle volte nulla ha a che vedere con la causa.
> E ti va bene se non devi chiudere e riaprire Outlook per
> riprendere a lavorare.

> Di quello varrebbe la pena lamentarsi!

Ok : BUUUUHHH ! BUUUUHHH BASTARDI questi della Microsoft !
Contento ? :-)

Vedi :
Io non mi "lamentavo" della gestione degli errori del VBA,
non serve "lamentarsi".

Semplicemente  osservavo  che, essendo un po' involuta, forse
sarebbe il  caso di farmela da me con una bella classe. Tutto
qui.

Ma pare che sia alquanto  problematico  quindi ...  pazienza.


text:
Il 11/11/2014 00:49, Bruno Campanini ha scritto:
[cut]
>
> @Alex, e tu radicale da 1/1000, avete mai provato
> il VBA di Outlook?

E che sara' mai!?
Ha sempre le tre istruzioni che ogni linguaggio possiede
1) Sposta sta cosa da qui a li
2) Verifica se una cosa e' vera/falsa
3) Salta di qua o di la

Se poi tu ti riferisci all' "ambiente" Outlook e' tutto un altro paio di
maniche (modo colto di rappresentare il problema). Ogni ambiente ha i
suoi pro ed i suoi contro. Ora ce la possibilita' di fare il debug
"inline" del javascript ma, qualche hanno fa, se si voleva rodere
veramente bastava prendere un errore e allora si erano i famosi volatili
per diabetici.
Per uno come me nato quando per risolvere un errore dovevi
"interpretare" il /dump/ di memoria ora e' arrivata l'America.
(anzi  "era" arrivata, visto che ho attaccato la penna al chiodo) ;-)



text:
Alessandro Cara explained :
> Il 11/11/2014 00:49, Bruno Campanini ha scritto:
> [cut]
>>
>> @Alex, e tu radicale da 1/1000, avete mai provato
>> il VBA di Outlook?
>
> E che sara' mai!?
> Ha sempre le tre istruzioni che ogni linguaggio possiede
> 1) Sposta sta cosa da qui a li
> 2) Verifica se una cosa e' vera/falsa
> 3) Salta di qua o di la
>
> Se poi tu ti riferisci all' "ambiente" Outlook e' tutto un altro paio di
> maniche (modo colto di rappresentare il problema). Ogni ambiente ha i suoi
> pro ed i suoi contro. Ora ce la possibilita' di fare il debug "inline" del
> javascript ma, qualche hanno fa, se si voleva rodere veramente bastava
> prendere un errore e allora si erano i famosi volatili per diabetici.
> Per uno come me nato quando per risolvere un errore dovevi "interpretare" il
> /dump/ di memoria ora e' arrivata l'America.
> (anzi  "era" arrivata, visto che ho attaccato la penna al chiodo) ;-)

Beh, prova a staccare la penna dal chiodo e a inviarmi quelle
30-40 righe di codice che da Outlook trasferiscono tutte
le SentMail a una tabella di Access.
Unitamente all'elenco dei moccoli che hai dovuto tirare...

Bruno


text:
Il 11/11/2014 15:49, Bruno Campanini ha scritto:
[cut]

>
> Beh, prova a staccare la penna dal chiodo e a inviarmi quelle
> 30-40 righe di codice che da Outlook trasferiscono tutte
> le SentMail a una tabella di Access.
> Unitamente all'elenco dei moccoli che hai dovuto tirare...

Veramente "feci" (ma mi ricordo vagamente) il contrario, da Access
accedevo alla "base dati" Outlook che, mi sembra di ricordare, in alcuni
suoi aspetti era piuttosto strana.



text:
Il giorno martedì 11 novembre 2014 16:34:37 UTC+1, Alessandro Cara ha scritto:
> Il 11/11/2014 15:49, Bruno Campanini ha scritto:
> [cut]
>
> >
> > Beh, prova a staccare la penna dal chiodo e a inviarmi quelle
> > 30-40 righe di codice che da Outlook trasferiscono tutte
> > le SentMail a una tabella di Access.
> > Unitamente all'elenco dei moccoli che hai dovuto tirare...
>
> Veramente "feci" (ma mi ricordo vagamente) il contrario, da Access
> accedevo alla "base dati" Outlook che, mi sembra di ricordare, in alcuni
> suoi aspetti era piuttosto strana.

Si, e' strana :
il modello oggetti di Outlook e' abbastanza sui generis  per quanto
concerne l' accesso alle varie tipologie di posta. C'e' una ragione
ma ... non ricordo piu' quale.


text:
Il giorno martedì 11 novembre 2014 15:49:14 UTC+1, Bruno Campanini ha scritto:

> Beh, prova a staccare la penna dal chiodo e a inviarmi quelle
> 30-40 righe di codice che da Outlook trasferiscono tutte
> le SentMail a una tabella di Access.

Se ti fa piacere ti "smandrappo" qui l' intero modulo (in access) che
tempo fa  ho  creato  per  far  si   che  questo   potesse  governare
l' outlook come un pupazzo :-)

Ho  creato  un orologio  di  sistema tramite una declare che ogni tot
obbligava l' access ad esplorare  l' outlook   ed  a  bersi  tutte le
mails, a cancellare quelle gia' lette e altri cazzi ecc ecc (poi lo vedi
dal codice)

L' orologio di sistema (molto affidabile se fatto con la API di windows)
chiamava  una  routine  in  call - back. Se  sei interessato di spadello
pure quella :-)

Ecco qua, fammi sapere :

Public Sub Elimina_Mails_Gia_Lette()

On Error GoTo ERRORE

Dim OTLK                  As Outlook.Application
Dim Session               As Outlook.Namespace
Dim Mail                  As Outlook.MailItem
Dim myNameSpace           As Outlook.Namespace
Dim Folder_Out            As Outlook.Folder
Dim Folder_In             As Outlook.Folder
Dim j                     As Long
Dim N                     As Long
Dim Radice                As String
Dim S                     As Form

' ------------- routine -------------------------------------------------------Set OTLK = GetObject(, "outlook.application")
Radice = ""
Set Session = OTLK.GetNamespace("MAPI")
Set Folder_In = Session.folders.Item(Radice).folders.Item("inbox")
Set Folder_Out = Session.folders.Item(Radice).folders.Item("elaborate")
Set S = G_Sys_Stato.Sentinella
N = Folder_In.Items.Count

If N = 0 Then Exit Sub

For i = N To 1 Step -1
    Set Mail = Folder_In.Items(i)
    If Not Mail.UnRead Then Mail.Move Folder_Out
Skip_Mail:
Next i

DoEvents: Exit Sub

ERRORE:
Select Case Err.Number
   Case 429 ' outlook chiuso
        S.stato_outlook_.Value = "Chiuso": S.Refresh: DoEvents: Exit Sub
   Case Else
        GoTo Skip_Mail
End Select

End Sub

Public Sub Legge_Mails()

     On Error GoTo ERRORE

     Dim OTLK          As Outlook.Application
     Dim Mail          As Outlook.MailItem
     Dim Session       As Outlook.Namespace
     Dim Folder        As Outlook.MAPIFolder
     Dim Max_Mails     As Long
     Dim Allegati      As New ADODB.Recordset
     Dim POSTA         As New ADODB.Recordset
     Dim Mittente      As String
     Dim Oggetto       As String
     Dim Anomalie      As String
     Dim M             As Long
     Dim A             As Long
     Dim Allegato      As String
     Dim N_Allegati    As Long
     Dim S             As Form
' ------------- routine ------------------------------
Set OTLK = GetObject(, "outlook.application")
Set Session = OTLK.Session
Set Folder = Session.GetDefaultFolder(olFolderInbox)
Set S = G_Sys_Stato.Sentinella

If Folder.Items.Count = 0 Then Set Folder = Nothing: Set Session = Nothing: Exit Sub

Max_Mails = 10

POSTA.LockType = adLockOptimistic:    POSTA.CursorType = adOpenStatic:       POSTA.CursorLocation = adUseClient
Allegati.LockType = adLockOptimistic: Allegati.CursorLocation = adUseClient: Allegati.CursorType = adOpenStatic

POSTA.Open "select * from posta_in where 1=0;", G_Sys_Stato.CN_LS
Allegati.Open "select * from allegati_in where 1=0;", G_Sys_Stato.CN_LS

If Max_Mails > Folder.Items.Count Then Max_Mails = Folder.Items.Count

For M = Max_Mails To 1 Step -1

  Set Mail = Folder.Items(M)

  ' controllo già letta
  If Not Mail.UnRead Then GoTo Skip_Mail

  Mail.UnRead = False
  'controllo esistenza indirizzo
  Mittente = Trim(Mail.SenderEmailAddress)
  G_Indirizzi.MoveFirst
  G_Indirizzi.Find "indirizzo_='" & Mittente & "'"
  If G_Indirizzi.EOF Then GoTo Skip_Mail

 ' controllo indirizzo esterno : in questo caso nel corpo
 ' deve essere presente la password
 ' e deve essere inserita ALL' INIZIO del corpo della mail

  If Not IsNull(G_Indirizzi.Fields("esterno_").Value) Then
     If G_Indirizzi.Fields("esterno_").Value Then
        If Not (InStr(Mail.Body, G_Password) = 1) Then Anomalie = "indirizzo esterno ma password mancante.;"
     End If
  End If

  'controllo esistenza funzione
  Oggetto = Trim(Replace(Mail.Subject, " ", ""))
  G_Funzioni.MoveFirst
  G_Funzioni.Find "funzione_='" & Oggetto & "'"

  If (G_Funzioni.EOF) Then Anomalie = Anomalie & "funzione non esistente.;"

  ' controllo funzione benformata
  Anomalie = Anomalie & Richiesta_Ben_Formata(Mail.Subject, Mail.Body)

  'controllo abilitazione indirizzo -> funzione
  G_Indirizzi_Funzioni.MoveFirst
  G_Indirizzi_Funzioni.Find "indirizzo_='" & Mittente & "'"
  If G_Indirizzi_Funzioni.EOF Then
     Anomalie = Anomalie & "indirizzo non esistente nelle abilitazioni.;"
  Else
     If IsNull(G_Indirizzi_Funzioni.Fields("abilitato_").Value) Then
        Anomalie = Anomalie & "indirizzo esistente nelle abilitazioni ma non abilitato alla funzione.;"
     Else
        If Not (G_Indirizzi_Funzioni.Fields("abilitato_").Value) Then
           Anomalie = Anomalie & "indirizzo esistente nelle abilitazioni ma non abilitato alla funzione.;"
        End If
     End If
  End If

  K = "{" & Kiave() & "}"

  POSTA.AddNew

     POSTA.Fields("kiave_").Value = K
     POSTA.Fields("numero_allegati_").Value = Mail.Attachments.Count
     POSTA.Fields("cc_nascosti_").Value = Mail.Bcc
     POSTA.Fields("corpo_").Value = Mail.Body
     POSTA.Fields("cc_").Value = Mail.CC
     POSTA.Fields("id_").Value = Mail.EntryID
     POSTA.Fields("oggetto_").Value = Oggetto
     POSTA.Fields("mittente_").Value = Mittente
     POSTA.Fields("dt_ricezione_").Value = Mail.ReceivedTime
     POSTA.Fields("elaborata_").Value = False
     POSTA.Fields("Anomalie_").Value = Anomalie
  POSTA.Update
  DoEvents

  ' registra e salva tutti gli allegati (solo se non sono state riscontrate anomalie)

  N_Allegati = Mail.Attachments.Count

  If (N_Allegati > 0) And (Anomalie = "") Then
     KK = K
     For A = 1 To N_Allegati
         Allegato = G_ALLEGATI_IN & KK & Mail.Attachments.Item(i).FileName
         Allegati.AddNew
            Allegati("Kiave_").Value = KK: Allegati("Kiave_Posta_").Value = K: Allegati("Nome_").Value = Allegato
         Allegati.Update
         Mail.Attachments.Item(i).SaveAsFile Allegato
         DoEvents
         KK = "{" & Kiave() & "}"
     Next A
  End If
Skip_Mail:
  Anomalie = ""
Next M

Allegati.Close: Set Allegati = Nothing: POSTA.Close: Set POSTA = Nothing: DoEvents
Exit Sub
ERRORE:
Select Case Err.Number
   Case 429 ' outlook chiuso
        S.Sentinella.stato_outlook_.Value = "Chiuso": S.Refresh: DoEvents: Exit Sub
   Case Else
        GoTo Skip_Mail
End Select

End Sub
Public Sub Elabora_Mails()
Dim POSTA_IN  As New ADODB.Recordset
Dim P         As POSTA

POSTA_IN.LockType = adLockOptimistic: POSTA_IN.CursorLocation = adUseClient: POSTA_IN.CursorType = adOpenStatic
POSTA_IN.Open "select * from posta_in where not elaborata_;", G_Sys_Stato.CN_LS

Do While Not POSTA_IN.EOF
   P.Allegati = Produce_Stringa_Allegati(POSTA_IN.Fields("kiave_").Value)
   P.Soggetto = POSTA_IN.Fields("mittente_").Value
   P.Oggetto = POSTA_IN.Fields("oggetto_").Value
   P.Corpo = POSTA_IN.Fields("corpo_").Value
   P.Cnc = POSTA_IN.Fields("cc_").Value
   P.Bcc = POSTA_IN.Fields("cc_nascosti_").Value
   P.Anomalie = POSTA_IN.Fields("anomalie_").Value
   P.Esito = ""

   If Len(P.Anomalie) Then Invia_Anomalie P: GoTo Skip_Mail

   Select Case POSTA_IN.Fields("oggetto_").Value

      Case "1.1":   Invia_PBNP_Report P
      Case "1.2":   Invia_PBDS_Report P
      Case "1.3":   Invia_PBOV_Report P
      Case "1.999": Invia_Output_Query P

   End Select

Skip_Mail:
   POSTA_IN.Fields("elaborata_").Value = True
   POSTA_IN.Update
   POSTA_IN.MoveNext
Loop

POSTA_IN.Close:  Set POSTA_IN = Nothing

DoEvents
End Sub
Public Function Invia_Mail(P As POSTA) As Boolean
     On Error GoTo ERRORE
' ------------- dichiarazioni variabili tipiche --------------------
     Dim OTLK              As Outlook.Application
     Dim MAPISession       As Outlook.Namespace
     Dim MAPIFolder        As Outlook.MAPIFolder
     Dim MAPIMailItem      As Outlook.MailItem
     Dim y()               As String
     Dim i                 As Long
     Dim A                 As Long
' ------------- routine --------------------------------------------
     Set OTLK = GetObject(, "Outlook.application")
     Set MAPISession = OTLK.Session
'    MAPISession.Logon , , True, False
     Set MAPIFolder = MAPISession.GetDefaultFolder(olFolderOutbox)
     Set MAPIMailItem = MAPIFolder.Items.Add(olMailItem)

     If Len(Trim(P.Allegati)) > 0 Then
        y = Split(P.Allegati, ";")
        A = UBound(y)
        For i = 0 To A
            MAPIMailItem.Attachments.Add y(i), olByValue
        Next i
     End If

     MAPIMailItem.To = P.Soggetto
     MAPIMailItem.CC = P.Cnc
     MAPIMailItem.Bcc = P.Bcc
     MAPIMailItem.Subject = P.Oggetto

     If Len(P.Html_Corpo) > 0 Then
        MAPIMailItem.HTMLBody = P.Html_Corpo
     Else
        MAPIMailItem.Body = P.Corpo
     End If

     MAPIMailItem.HTMLBody = P.Html_Corpo
     MAPIMailItem.Send

     DoEvents

     Set MAPIMailItem = Nothing
     Set MAPIFolder = Nothing
     Esito = "OK"
'60  MAPISession.Logoff
' ------------------------------------------------------------------
     Invia_Mail = True
     Exit Function
ERRORE:
     Esito = Err.Description
End Function

Ciao


text:
radica...@gmail.com
 brought next idea :
> Il giorno martedì 11 novembre 2014 15:49:14 UTC+1, Bruno Campanini ha
> scritto:
>
>> Beh, prova a staccare la penna dal chiodo e a inviarmi quelle
>> 30-40 righe di codice che da Outlook trasferiscono tutte
>> le SentMail a una tabella di Access.
>
> Se ti fa piacere ti "smandrappo" qui l' intero modulo (in access) che
> tempo fa  ho  creato  per  far  si   che  questo   potesse  governare
> l' outlook come un pupazzo :-)
Detto in endecasillabi:
     Faccio una gran fatica a metter mano
     allo codice mio dopo appena
     due settimane dall'averlo scritto
     che se proprio non preme la bisogna
     in quello altrui manco ci metto il naso.
non mi è venuta la rima...

Grazie comunque.
Bruno


text:

Ma come, l' avevi chiesto tu ... Vabbe' :-)
(ti capisco eh ! Eccome !)


text:
on 13-11-14,
radica...@gmail.com
 supposed :

>> Detto in endecasillabi:
>>      Faccio una gran fatica a metter mano
>>      allo codice mio dopo appena
>>      due settimane dall'averlo scritto
>>      che se proprio non preme la bisogna
>>      in quello altrui manco ci metto il naso.
>
> Ma come, l' avevi chiesto tu ... Vabbe' :-)
> (ti capisco eh ! Eccome !)

Sì, però di 30-40 righe! non di 250!

Bruno


title: Funzione DLookup

author: Angelo

text:
Sto utilizzando la funzione Dlookup che effettua una ricerca su campi di una
determinata tabella.
Dovendo impostare una "macro" per l'esecuzione e volendo visualizzare una
finestra di messaggio, solo qualora la ricerca di esito positivo, qual'è la
sequenza da osservare nella macro?
Grazie
Angelo


title: Funzione DLookup

author: Salvatore

text:
"Angelo" <
ap...@inwind.it
> ha scritto nel messaggio
news:5Szob.389955$R32.12...@news2.tin.it...

Nella prima riga della macro sulla colonna condizioni della macro stessa,
scrivi questa condizione: dlookup("TuoCampo";"TuaTabella") is null
sulla colonna Azione esegui una FinestraMessaggio specificando il testo del
messaggio.
Sempre con la stessa condizione (basta scrivere ... tre punti nella riga
sottostante) esegui ArrestaMacro.
Ciao
Salvatore


title: Funzione DLookup

text:
"Salvatore" <
sal...@tiscali.it
> ha scritto nel messaggio
news:bo00i5$r33$1...@lacerta.tiscalinet.it...

Ti ringrazio per la celere risposta. Proverò subito la tua soluzione.
Ciao Angelo


title: Funzione DLookup

text:
"Salvatore" <
sal...@tiscali.it
> ha scritto nel messaggio
news:bo00i5$r33$1...@lacerta.tiscalinet.it...

Ho tentato invano di far funzionare la macro, ma non mi appare la finestra
di messaggio al verificarsi della condizione. Riporto di seguito la macro:
                    Condizione                                 |
Azione
DLookUp("Nominativo";"Tabella1") Is Null          FinestraMessaggio
...
ArrestaMacro
Angelo


title: Funzione DLookup

text:
"Angelo" <
ap...@inwind.it
> ha scritto nel messaggio
news:gOMob.392363$R32.13...@news2.tin.it...

Ciao, Angelo
tieni conto che l'evento si verifica quando non viene trovata nessuna
occorrenza. Se dlookup non è nullo allora non viene attivata la finestra del
messaggio.
Spiega meglio come stai utilizzando la macro.
Ciao
Salvatore


title: Funzione DLookup

text:
"Salvatore" <
sal...@tiscali.it
> ha scritto nel messaggio
news:bo0rsg$fuh$1...@lacerta.tiscalinet.it...

Si, hai ragione. Forse mi sono spiegato male.
Ho una casella di testo nella quale effettuo di volta in volta degli
inserimenti. A tale casella voglio associare un evento "dlookup" che mi
ricerchi record in una determinata tabella. Vorrei che tale funzione
ricercasse elementi già inseriti (quindi già presenti) e mi avvisasse di
tale presenza con una finestra di messaggio.
In sostanza devo sapere se quell'elemento esiste già e solo in tal caso mi
verrebbe in aiuto la finestra di messaggio.
Grazie per la tua collaborazione.
Angelo


title: Funzione DLookup

text:
"Angelo" <
ap...@inwind.it
> ha scritto nel messaggio
news:ffXob.395768$R32.13...@news2.tin.it...

Ok, allora come condizione, anzichè dlookup, usa la funzione dcount, così
Dcount("Nominativo";"Tabella1";"criterio")>0
in questo modo vengono contate le occorrenze della voce "criterio"
all'interno della tabella Tabella1.
Tutto sta a specificare come deve essere impostato il criterio.
Se deve essere impostato da una maschera (la maggior parte delle volte
avviene così) tramite una casella di testo, allora la parte "criterio" deve
essere impostata così:
"[nominativo]=Forms!TuaMaschera![TuaCasella]"
dove al posto di TuaMaschera e TuaCasella sostituirai il nome della maschera
e della casella di testo tramite i quali stati svolgendo la ricerca.
Devi usare la sintassi con le virgolette, così come l'ho scritta.
Facci sapere
Ciao
Salvatore


title: Funzione DLookup

text:
"Salvatore" <
sal...@tiscali.it
> ha scritto nel messaggio
news:bo2fo2$8a5$1...@lacerta.tiscalinet.it...

SEI GRANDE ! ORA TUTTO FUNZIONA.
Continuo con il mio progetto in attesa di poter nuovamente "approfittare"
della tua bontà collaborativa.
Un saluto e buona domenica.
Angelo


title: Funzione DLookup

author: Antonio Biso

text:
"Angelo" <
ap...@inwind.it
> ha scritto nel messaggio
news:5Szob.389955$R32.12...@news2.tin.it...
> Sto utilizzando la funzione Dlookup che effettua una ricerca su campi di
una
> determinata tabella.
> Dovendo impostare una "macro" per l'esecuzione e volendo visualizzare una
> finestra di messaggio, solo qualora la ricerca di esito positivo, qual'č
la
> sequenza da osservare nella macro?
Perchč piuttosto non abbandoni queste cacchio di macro e non scrivi due
righe due di codice?!?
Antonio


title: stampa unione messaggio di errore in apertura

author: Massimiliano

text:
Ho creato un database in access ho usato la protezione a livello di utente.
All'interno del programma premendo un tasto apro un documento word in stampa
unione che si collega ad una tabella del database.
Ogni volta che si apre word una msgBox mi avvisa che non ho i diritti
per accedere al file di access.
C'è modo di evitare che compaia questo messaggio di errore?
(Access 2000 e Word 2000)


title: Criteri Data Ora nelle Query

author: nebuloni tiziano

text:
Ho bisogno di usare un criterio in una query che mi dia solo i viaggi del
mese precedente. Guardando sulla guida di access ho trovato proprio quello
che fa per me solo che non funziona e mi da un errore. La incollo quì per
vedere se me la potete correggere.
Year([DataViaggio])* 12 + DatePart("m", [DataViaggio]) = Year(Date())* 12 +
DatePart("m", Date()) - 1
Grazie in anticipo,
tiziano


title: Criteri Data Ora nelle Query

author: Roberto da Parma

text:
"nebuloni tiziano" <
tiz...@nebuloni-tiziano.it
> ha scritto nel messaggio
news:Csedndpxj9NMohDU...@giganews.com...
> Ho bisogno di usare un criterio in una query che mi dia solo i viaggi del
> mese precedente. Guardando sulla guida di access ho trovato proprio quello
> che fa per me solo che non funziona e mi da un errore. La incollo quě per
> vedere se me la potete correggere.
>
> Year([DataViaggio])* 12 + DatePart("m", [DataViaggio]) = Year(Date())* 12
> + DatePart("m", Date()) - 1
>
> Grazie in anticipo,
> tiziano
>
Potrebbe essere che la data abbia un valore Null...
Io filtrerei semplicemente mese e anno... nei due campi della query
inserisci le colonne
Anno : Year([DataViaggio])    Mese : Month([DataViaggio])
criterio
Year([DataViaggio])                Month([DataViaggio])-1
Ciao
--
Roberto da Parma


title: Criteri Data Ora nelle Query

author: Karl Donaubauer

text:
Roberto da Parma wrote:
> "nebuloni tiziano ha scritto:
>> Ho bisogno di usare un criterio in una query che mi dia solo i viaggi del
>> mese precedente. Guardando sulla guida di access ho trovato proprio
>> quello che fa per me solo che non funziona e mi da un errore. La incollo
>> quì per vedere se me la potete correggere.
>>
>> Year([DataViaggio])* 12 + DatePart("m", [DataViaggio]) = Year(Date())* 12
>> + DatePart("m", Date()) - 1
>>
> Potrebbe essere che la data abbia un valore Null...
> Io filtrerei semplicemente mese e anno... nei due campi della query
> inserisci le colonne
>
> Anno : Year([DataViaggio])    Mese : Month([DataViaggio])
>
> criterio
>
> Year([DataViaggio])                Month([DataViaggio])-1
Troppo copia/incolla. ;-) Sarebbe:
criterio
Year(Date())                Month(Date())-1
Ma questo metodo ha un problema nel gennaio.
Una via è:
campo calcolato
Format([DataViaggio];"aaaamm")
criterio
Format(DatAdd("m";-1;Date());"aaaamm")
--
cu
Karl
*********
Access FAQ:
www.donkarl.com/it


title: Criteri Data Ora nelle Query

text:
"Karl Donaubauer" <
NoS...@donkarl.com
> ha scritto nel messaggio
news:6v56vcF...@mid.individual.net...



title: Criteri Data Ora nelle Query

text:
"Karl Donaubauer" <
NoS...@donkarl.com
> ha scritto nel messaggio
news:6v56vcF...@mid.individual.net...
> Roberto da Parma wrote:
>> "nebuloni tiziano ha scritto:
>>> Ho bisogno di usare un criterio in una query che mi dia solo i viaggi
>>> del
>>> mese precedente. Guardando sulla guida di access ho trovato proprio
>>> quello che fa per me solo che non funziona e mi da un errore. La incollo
>>> quě per vedere se me la potete correggere.
>>>
>>> Year([DataViaggio])* 12 + DatePart("m", [DataViaggio]) = Year(Date())*
>>> 12
>>> + DatePart("m", Date()) - 1
>>>
>> Potrebbe essere che la data abbia un valore Null...
>> Io filtrerei semplicemente mese e anno... nei due campi della query
>> inserisci le colonne
>>
>> Anno : Year([DataViaggio])    Mese : Month([DataViaggio])
>>
>> criterio
>>
>> Year([DataViaggio])                Month([DataViaggio])-1
>
> Troppo copia/incolla. ;-) Sarebbe:
>
> criterio
>
> Year(Date())                Month(Date())-1
>
> Ma questo metodo ha un problema nel gennaio.
>
>
> Una via č:
>
> campo calcolato
>
> Format([DataViaggio];"aaaamm")
>
> criterio
>
> Format(DatAdd("m";-1;Date());"aaaamm")
>
> --
> cu
> Karl
> *********
> Access FAQ:
www.donkarl.com/it
Hai ragione Karl....il metodo DateAdd č migliore sicuramente...
Per il copia/incolla...:-)))....l'ho scritto volutamente cosě....per farmi
capire meglio....



title: Criteri Data Ora nelle Query

text: Grazie mille.


title: Urgente!! Come faccio ad inserire immagini collegata in una maschera

author: Andrea  Mariani

text:
Come faccio ad inserire un'immagine collegata in una maschera?
Voglio fare caricare da una maschera la foto di un prodotto salvata in una
cartella esterna:
ho nominato le foto con il codice identificativo del prodotto e nella query
che sta dietro alla mia maschera scrivo il percorso per raggiungerla ma non
riesco ad associare il collegamento nell'oggetto immagine. Cosa posso fare?
Grazie in anticipo a chi vorrą aiutarmi. Andrea


author: access il top

text:
"Andrea Mariani" <
amar...@berendsohn.it
> ha scritto nel messaggio
news:vLHMd.494548$b5.23...@news3.tin.it...

> Grazie in anticipo a chi vorrà aiutarmi. Andrea
>
se ho capito bene è sufficente un controllo immagine
sull'evento currentrecord inserirai questo codice
immagine1.picture = "c:\tuadirectory\" &
me.id


text:
grazie e mille per la dritta!
purtroppo non funziona! ho provato ad aggiungere anche l'estensione ".jpg"
nel codice che mi hai suggerito
(immagine1.picture = "c:\tuadirectory\" &
me.id
 & ".jpg") ma senza successo.
in realtà per essere più precisi prima di provare la tua soluzione ho fatto
quanto segue:
nella query che mi prepara i dati ho indicato il campo "foto01" che mi
restituisce il collegamento:
 es.   se il campo del codice prodotto si chiama [ARTICOLO] e le foto si
trovano nella cartella "FOTO" su C
         la mia query calcola: "c:\FOTO\" & [ARTICOLO] & ".jpg" ed ottengo
il link al file di ogni prodotto.
 nella maschera ho definito un oggetto immagine e nelle proprietà ho
specificato "tipo immagine: collegata"
poi ho scritto il codice:
 Me!Immagine.Picture=Me!foto01.Value
Avevo già adottato questa soluzione per visualizzare le stesse immagini su
un report, ma sulla maschera proprio non ne vuole sapere!
Hai qualche idea?
grazie ancora per la disponibilità
www.berendsohn.com
"access il top" <
negrinelliw...@yahoo.it
> ha scritto nel messaggio
news:42034a1b$0$32351$5fc...@news.tiscali.it...



text:
"Andrea Mariani" <
amar...@berendsohn.it
> ha scritto nel messaggio
news:uwJMd.495065$b5.23...@news3.tin.it...

1° scrivi sempre dopo la risposta
2°ma l'origine dati della tua maschera è una tabella o una query
3° dove lo hai messo quel codice che dicevi prima?
immagine.pcture=foto01.value
va messo sull'evento della maschera record corrente


title: Collegamento foglio excel su Access - ridefinire il formato del campi

text:
Salve a tutti,
ho spesso problemi su una procedura per l'acquisizione di righe inserite in
un normale foglio excel collegato al mio db.
I nomi dei campi vengono definiti direttamente nella prima riga del foglio,
ma non riesco a impostare tassativamente per tutti il tipo dati 'testo'
In base a... non so cosa, (nonostante forzatamente abbia impostato il foglio
con tutti campi di tipo 'testo'), dopo il collegamento alcuni campi nella
tab. excel collegata risultano numerici, con conseguente problema di
caricamento nel db (devo caricare campi testo)

Come posso forzare la definizione del tipo dati nella tab. collegata excel a
'testo' ???

Questo il mio codice, che avevo gia' di trovato in rete:

dove 'sFileName  e' il foglio excel

Public Function CollExcel(ByVal sFileName As String, ByVal sTablename As
String, _
    ByVal sRangeName As String) As Boolean

  Dim db As DAO.Database
  Dim td As DAO.TableDef

  Dim sConnect As String
  Dim sMsg As String
  Dim sFunction As String

  CollExcel = False
  sFunction = "CollExcel"
  Set db = CurrentDb

  ' Crea una nuova tabledef nel database:
  Set td = db.CreateTableDef(sTablename)

  ' Stringa di connessione:
  sConnect = "Excel 8.0;HDR=YES;DATABASE=" & sFileName
  td.Connect = sConnect

  ' Specifica il nome del range dei dati in Excel:
  td.SourceTableName = sRangeName

    ' Elimina collegamento tab. excel dal database:
    db.TableDefs.Delete sTablename
    ' Ricrea collegamento tab. excel

  'Restituisce True:
  CollExcel = True

ExitHere:

  Exit Function
End Function

Ringrazio tutti anticipatamente per il prezioso aiuto
Marco67


author: RobertoA

text:

Ma se fai il collegamento a mano, li vedi corretti i campi (nel formato
testo intendo) ?


text:
Marco67 explained :

Vista l'inutilità e la prolissità del codice,
direi che è proporio farina del sacco MS o di un suo adepto.

Senz'altre notizie del contesto, una maniera
più efficiente, ancorché di una bruttura inaudita,
è quella di scrivere nella cella ="123" anziché 123.

Bruno


text:
"RobertoA" <
amor...@tiscalinet.it
> ha scritto nel messaggio
news:na7dap$pef$1...@virtdiesel.mng.cu.mi.it...

Purtroppo i fogli excel vengono compilati mensilmente da piu' persone
piuttosto acerbe con il pc. (trattasi di turnistica di lavoro).
Quindi, una volta il campo viene riconosciuto testo, l'altra numerico, senza
capirne il motivo... (in questo caso infatti il sistema genera un errore in
fase di caricamento del turno nel db proprio perche' si aspetta un codice
alfanumerico...).


text:

Eh, ma allora e' li il problema
E' difficile se non impossibile adattarsi ad una sorgente dati che non
e' sempre la stessa
A mio avviso stai cercando soluzione ad un problema non ben definito
E quindi una soluzione non e' possibiel trovarla
Ma perche' non gli fai una schermata di Access per inserire i dati?
Li avresti gia' dentro senza fare sforzo, ed in piu' controlli l'input
dati come meglio ti pare


text:

Per un problema simile avevo risolto andando ad aggiungere delle righe fittizie come prime 5/6 righe dati del foglio di Excel con un formato uguale a quello desiderato.
Mi spiego meglio: nel tuo caso aggiungi da riga 2 a riga 7 delle righe con tutte le celle riempite con del testo (solo caratteri alfabetici). A Questo punto Access dovrebbe riconoscere tutte le colonne come testo.
Naturalmente nelle tue elaborazioni dovrai saltare le righe fittizie oppure cancellarle subito dopo avere collegato la tabella.
Spero di esserti stata d'aiuto.
Gabry


title: Menu' di Access : come ripristinarli ?

author: Fabietto

text:
Per sbaglio, pensando di impostare i menu' del DB che stavo andando a
compilare, ho rimosso alcuni menu' e alcune voci dei menu' di Access 2000,
c'e' un sistema per ritornare alle impostazioni iniziali !?
Grazie


title: Contatore stampe e programmi eseguiti

author: marcod

text:
Ho intenzione, al fine di valutare l'utilizzo dei programmi e dei
reports all'interno di un progetto, di creare un file di log dove
inserire il numero delle volte che un programma o un report viene
utilizzato.
Qualcuno ha già affrontato il problema?
C'è qualche esempio disponibile?
Grazie in anticipo
Marco D


title: Contatore stampe e programmi eseguiti

author: almorel

text:

Ciao Marco,
quando mi  è servito fare qualcosa del genere ho creato una tabella di
log poi, sull'evento significativo
(Es. Apertura del report), una  query di accodamento con i campi
necessari.
Es. docmd.runsql "insert into TabellaLog values ....ecc..ecc.."
Poi, su questa tabella fai tutte le query che vuoi.
Ciao
Alberto


title: Ordinamento dei controlli

author: il barbi

text:
Vorrei richiamare i controlli di una maschera tramite Me.Controls(i) ma non
mi e' chiaro qual e' l'ordinamento dei controlli. Non e' l'ordine di
tabulazione (.tabIndex) ma e' diverso, ho controllato visualizzando
Me.Controls(i).
E' l'ordine con cui mi muovo col tasto tab in visualizzazione struttura, ma
non ho ancora capito che ordine e' e come eventualmente modificarlo se
necessario
il barbi


title: Ordinamento dei controlli

text:

L'ordine ï¿œ quello della creazione. Puoi solo modificarlo con cancellare
e ricreare i controlli p.e. con Taglia/Incolla.
--
HTH
Karl
*********
Access FAQ:
www.donkarl.com/it


title: Ordinamento dei controlli

text:
il barbi ha scritto:

Su controls, la mia e' logica, che e' una collezione (insieme) i vari
elementi vengono addizionati in ordine naturale, cioe' man mano che
vengono creati (metodo add della collezione), e sono accedibili
attraverso l'indice (i) o attraverso il "name".
Per averli nella sequenza che desideri devi cancellarli e ricrearli
secondo l'ordine che vorresti.
--
ac


title: Ordinamento dei controlli

text:
"Karl Donaubauer" <
NoS...@donkarl.com
> ha scritto nel messaggio
news:78si2aF...@mid.individual.net...
> il barbi wrote:
>> Vorrei richiamare i controlli di una maschera tramite Me.Controls(i) ma
>> non mi e' chiaro qual e' l'ordinamento dei controlli. Non e' l'ordine di
>> tabulazione (.tabIndex) ma e' diverso, ho controllato visualizzando
>> Me.Controls(i).
>> E' l'ordine con cui mi muovo col tasto tab in visualizzazione struttura,
>> ma non ho ancora capito che ordine e' e come eventualmente modificarlo se
>> necessario
>
> L'ordine � quello della creazione. Puoi solo modificarlo con cancellare
> e ricreare i controlli p.e. con Taglia/Incolla.
>
quindi non posso richiamare un controllo in base al suo TabIndex?
il barbi


title: Ordinamento dei controlli

text:
il barbi ha scritto:
> "Karl Donaubauer" <
NoS...@donkarl.com
> ha scritto nel messaggio
> news:78si2aF...@mid.individual.net...
>> il barbi wrote:
>>> Vorrei richiamare i controlli di una maschera tramite Me.Controls(i) ma
>>> non mi e' chiaro qual e' l'ordinamento dei controlli. Non e' l'ordine di
>>> tabulazione (.tabIndex) ma e' diverso, ho controllato visualizzando
>>> Me.Controls(i).
>>> E' l'ordine con cui mi muovo col tasto tab in visualizzazione struttura,
>>> ma non ho ancora capito che ordine e' e come eventualmente modificarlo se
>>> necessario
>> L'ordine ï¿œ quello della creazione. Puoi solo modificarlo con cancellare
>> e ricreare i controlli p.e. con Taglia/Incolla.
>>
> quindi non posso richiamare un controllo in base al suo TabIndex?
> il barbi
>
>
volendo si
set CtlxTabIndex = getControl(n)   dove n e' iltabindex
Function getControl( i as long)
    for each ctl in me.controls
	if ctl.tabindex = n then
	   set getControl = ctl
	   exit getControl
	end if
    next
end function
si puo' fare in modo piu' furbo ma richiede qualche riga in piu'.
Essenzialmente creando una collezione "indexando" per il tabindex  e poi
usarla al posto di controls.
--
ac


title: Ordinamento dei controlli

text:
Alessandro Cara ha scritto:
[cut]
sorry
>        exit getControl
	exit function
--
ac


title: Ordinamento dei controlli

text:
Alessandro Cara wrote:
> il barbi ha scritto:
>> ...
>> quindi non posso richiamare un controllo in base al suo TabIndex?
>>
> volendo si
>
> set CtlxTabIndex = getControl(n)   dove n e' iltabindex
>
> Function getControl( i as long)
>    for each ctl in me.controls
> if ctl.tabindex = n then
>    set getControl = ctl
>    exit getControl
> end if
>    next
> end function
> si puo' fare in modo piu' furbo ma richiede qualche riga in piu'.
> Essenzialmente creando una collezione "indexando" per il tabindex  e
> poi usarla al posto di controls.
o un array con i nomi dove l'indice del array = TabIndex:
On Error GoTo myError
Dim ctl As Control
Dim strArr() As String
Dim i As Long
ReDim strArr(Me.Controls.Count - 1)
For Each ctl In Me.Controls
        strArr(ctl.TabIndex) = ctl.Name
Next ctl
For i = 0 To UBound(strArr) - 1
    If Not strArr(i) = "" Then
        Debug.Print i, strArr(i)
    End If
Next i
myExit:
    Exit Sub
myError:
    Select Case Err.Number
        Case 438 ' controllo non ha un TabIndex
            Resume Next
        Case Else
            MsgBox Err.Number & " " & Err.Description
            Resume myExit
    End Select



title: esportazione....allineamento

author: norica

text:
Devo esportare in formato .txt dei dati presenti in una tabella...
La procedura di esportazione la conosco bene.....
Il problema sta nel fatto che alcuni dati, quelli numerici, dovrebbero
apparire nel file .txt con gli zeri davanti ed allineati a destra....
es. campo [Colli] = 3
dovrei esportare su un un campo di 5 caratteri e quindi
00003
Come fare ???
Grazie
Enrico
--
Posted from
smtp2.libero.it
 [193.70.192.52]
via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: esportazione....allineamento

author: LC

text:
*****
* Devo esportare in formato .txt dei dati presenti in una tabella...
*
* La procedura di esportazione la conosco bene.....
* Il problema sta nel fatto che alcuni dati, quelli numerici,
dovrebbero
* apparire nel file .txt con gli zeri davanti ed allineati a
destra....
* es. campo [Colli] = 3
*
* dovrei esportare su un un campo di 5 caratteri e quindi
* 00003
*
* Come fare ???
*
* Grazie
* Enrico
*****
Fai una query dove c'č il campo [Colli] e crea un nuovo campo cosě
fatto:
ColliStr: Right$("0000" & (CStr([Colli]));5)
vedrai che funziona.
Ciao,
Luigi Corolli.
--------------------------------------
Link al Sito del Linux User Group di Gorizia
http://www.linux.it/mailman/listinfo/golug
Sito del Linux User Group di Trieste
http://trieste.linux.it
Sito Comune di it.comp.appl.access
http://www.sitocomune.com
--------------------------------------
--
Posted from
alquanto.nextra.it
 [193.43.2.90]



title: ID Contatore

author: Axl Rose

text:
come posso fare per creare un id fatture in questo formato
aaNNNN
 aa=indica l'anno
NNNN=numero progressivo
ad ogni inserimento nuovo dovrei calcolare l'id in base alla data che mette
l'utente e cercare il max(NNNN) di quell'anno
è possibile farlo?
per ora sono riuscito a farlo utlizzando Date() e il valore predefinito del
campo id come proposto sul sito comune, invece vorrei riuscire trovare la
dipendenza cn la data che immette l'utente quando vuole fare una nuova
registrazione
KGrazie


title: ID Contatore

text:
"Axl Rose" <
scate...@yahoo.it
> ha scritto nel messaggio
news:b6f7sc$n3j$2...@newsread.albacom.net...

Funzione DMax
Antonio


title: impostare il criterio di una query da codice VBA

text:
Ad esempio il criterio del campo nome prima lo imposto a
Is Null     e poi a         Is Not Null
sapete se č possibile? Grazie.


author: Roberto da casa

text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:b267ac$6qd$1...@lacerta.tiscalinet.it...
> Ad esempio il criterio del campo nome prima lo imposto a
> Is Null     e poi a         Is Not Null
>
> sapete se č possibile? Grazie.
Puoi sempre modificare da codice VBA il codice SQL di una query registrata.
Un esempio di come agire sul codice SQL di una query registrata lo trovi sul
Sito Comune (link qui sotto) nel database di esempio allagato alla FAQ della
Sezione Queries intitolata "Come si puņ creare in maniera dinamica una query
con la tecnica QBF?".
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: Nascondere la finestra database in Access Xp

author: Edoardo Coppolino

text:
In Access 2002 ho notato che nonstante io deselezioni l'opzione "Visualizza
finestra database" nella finestra avvio questa rimane ridotta ad icona sulla
barra in basso, con la possibilità di aprirla ugualmente con un semplice
clic. Come si può evitare questo.
Grazie.


title: immissione valuta ?

author: roascio

text:
Ciao a tutti.
come posso fare a immettere dei pagamenti nel mio data base in Euro (acces
97) ?
Se fosse possibile spiegatemi come si fa.
Vi ringrazio anticipatamente.
BUON ANNO A TUTTI
ALFREDO


title: immissione valuta ?

author: Emyr

text:
On Tue, 01 Jan 2002 14:39:13 GMT, "roascio" <
roa...@libero.it
> wrote:
>Ciao a tutti.
>come posso fare a immettere dei pagamenti nel mio data base in Euro (acces
>97) ?
>Se fosse possibile spiegatemi come si fa.
metti un campo di tipo double dove registri gli importo pagati in
euroi con i due decimali!
semplice no?
Saluti.
Emanuele.


title: Calcoli su qry a campi incrociati

author: maurizio 56

text:
Salve a tutti, mi ripresento per chiedere un consiglio su quanto in
oggetto. Ho creato una qry di creazione tabella che mi crea una tabella
tipo:
Data
Luogo
TipoProdotto
QuantitàProdotto
TotaleProduzione
e una query a campi incrociati che mi crea un report tipo
luogo	data	prodotto1	prodotto2	prodotto3
italia	2	5000		2000		3000
italia	3	2000		2500		8000
il problema è che se io volessi aumentare del 20% il prodotto1, del 2%
del prodotto2 e del -15% il prodotto3 come faccio? ho creato una
maschera con un campo PercProdotto1 ecc e sul campo prodotto1 come
origine dati ho messo:=Prodotto1*PercProdotto1 ma il risultato è:
#Errore e mi sono messo il dubbio che non si possa fare, in quanto la
persona vorrebbe, prima di stampare, visualizzare in maschera il
risultato. Ringraziando e spero che possiate darmi una dritta
--
maurizio56
:-))
browser: FireFox 1.0.4
mailreader: ThunderBird 1.0.2


title: Calcoli su qry a campi incrociati

author: Zappus

text:
"maurizio 56" <
ASSOLUT...@libero.it
> ha scritto nel messaggio
news:P0fye.2978$%7.4...@twister2.libero.it...

Prova a generare dalla query a campi incrociati una query di selezione in
cui metterai tutti i campi della query a campi incrociati.
In questa query di selezione inserisci il campo calcolato...
Saluti Luca


title: Calcoli su qry a campi incrociati

text:
Zappus ha detto: in data 05/07/2005 10.12:

OK funge tutto, Grazie



title: Calcoli su qry a campi incrociati

text:
maurizio 56 ha detto: in data 05/07/2005 20.19:

A proposito, forse chiedo troppo, posso memorizzare i campi calcolati in
una tabella??



title: Come creare una maschera di input che non ammetta il carattere spazio?

author: MarcoMax

text:
Slave
vorrei creare una casella di testo nella quale non sia possibile
inserire caretteri di spazio, quindi avevo pensato di usare la
seguente maschera di input:
AAAAAAAAAAAAAAAA;;_
in teoria ad A dovrebbe corrispondere un carattero od una cifra,
invece posso inserire anche gli spazi.
come posso creare una maschera di imput che impedisca all'utente di
inserire degli spazi?
Ciao, Max


author: Sergio MAZZA

text:
"MarcoMax" <p...@papapa.pupupu> ha scritto nel messaggio
news:392e8ae5...@news.tin.it...

Non so se esiste una maschera input che fa quello che dici, in sostituzione
potresti utilizzare una funzione, nell'evento prima di aggiornare, che legge
carattereXcarattere e restutiisce la stringa senza gli spazi:
es.
Function noSpace(xStringa As String, xTogli As String)
Dim ritorno As String, xLunghezza As Integer, conta As Integer, xCarattere
As Integer
ritorno = ""
xLunghezza = Len(xStringa)
If xLunghezza > 1 Then
    For conta = 1 To xLunghezza
        xCarattere = Asc(Mid(xStringa, conta, 1))
        If Asc(xTogli) = xCarattere Then
Rem non fa niente
        Else
            ritorno = ritorno & Chr(xCarattere)
        End If
    Next
End If
    noSpace = ritorno
End Function
Ciao.


author: Silvio Berruti

text:
"MarcoMax" <p...@papapa.pupupu> ha scritto nel messaggio
news:392e8ae5...@news.tin.it...
> Slave
> vorrei creare una casella di testo nella quale non sia possibile
> inserire caretteri di spazio, quindi avevo pensato di usare la
> seguente maschera di input:
>
> AAAAAAAAAAAAAAAA;;_
>
> in teoria ad A dovrebbe corrispondere un carattero od una cifra,
> invece posso inserire anche gli spazi.
>
> come posso creare una maschera di imput che impedisca all'utente di
> inserire degli spazi?
>
> Ciao, Max
Ciao Max,
se desideri che venga ignorata la pressione dello spazio, è sufficiente
inserire la seguente riga di codice nell'evento Su Pressione del controllo
incriminato:
    If KeyAscii = 32 Then KeyAscii = 0    ' 32 codice Ascii dello spazio
e hai risolto.
Ciao
Silvio


title: backup di tabelle collegate

author: ar

text:
Devo predisporre una routine di backup dei dati in base a un numero
progressivo o ad intervallo di date. Ho fatto la query di creazione tabella
che mi copia i record in base alla selezione della data o del numero. Se
però voglio  salvare anche le informazioni che si trovano in un'altra
tabella collegata alla principale e la inserisco nella query ottengo
ovviamente una unica tabella con tutte le informazioni assieme.
C'è un modo per selezionare i record da salvare anche nella tabella
collegata? (dove ovviamente non ho nè il campo data nè il progressivo, il
legame è dato da un altro contatore)
Grazie


title: popup che non funziona!!

author: Singer

text:
Cari amici,
ho predisposto una maschera di ricerche che restituisce i risultati in una
sottomaschera "a maschere continue"
ho fatto poi in modo che sull'evento corrente si apra una maschera filtrata
in base all'id del record corrente appunto con alcuni altri campi-dettagli
dello stesso record
ora questa procedura sul computer in ufficio funziona, su quello di casa no
la maschera "popup" che si apre è bianca, senza controlli.
un'altra cosa: io ho poi messo lo stesso codice sull'evento click di un
controllo e funziona lo stesso sul pc dell'ufficio e non su quello di casa.
ma mi sbaglio o non dovrebbe funzionare sull'evento click, altrimenti il
valore ID del record corrente da dove lo prende access???
eppure funziona!!!!
rimane sempre il problema del pc di casa
Grazie


title: popup che non funziona!!

author: Carlo Costarella

text:
"Singer" <
fuscoa...@tin.it
> ha scritto nel messaggio
news:471909f3$0$36449$4faf...@reader5.news.tin.it...

Non è che sul pc di casa mancano i record filtrati?
Nessun record = maschera vuota, "bianca"
Ciao, Carlo


title: popup che non funziona!!

text:
"Carlo Costarella" <
carloco...@libero.it
> ha scritto nel messaggio
news:ffes8f$32p$1...@tdi.cu.mi.it...

no è lo sresso file che sposto con una pen drive


title: Consiglio nella realizzazione di report

author: badush

text:
Ciao Amci del newsgrupo ho bisogno del vostro aiuto per cercare la soluzione
migliore per ottimizzare le prestazioni del database Access in una rete
locale.
Mi spiego:
Ho un database nel quale ho costruito una tabella nella quale sono riportati
un insieme di compiti da distribuire a piu operatori. La tabela è cosi
composta dai campi:
IdCont  (Contatore); DataCarico (Data/ora); Descrizione (Testo);  Operatore
(testo); ecc.
Dalla tabella mi sono costruito una query generale e tante query, tante
quanti sono gli operatori, inserendo nel criterio in corrispondenza
dell'Operatore il nome di ognuno di essi. Adesso devo costruire i report.
Le soluzioni possono essere tre:
1) Da ciascuna query degli operatori posso costruirmi un report;
2) Inserire nel criterio del campo della query generale l'espressione
[Inserisci Nome operatore] in modo tale che partendo da una sola query mi
costruisco un solo report che visualizza solo i dati richiesti;
3) Costruire un report generale che visualizza tutto, pero nelle maschere
degli operatori associo, se è possibile questo non lo so, all'evento click
di un pulsante  una subroutine che richiamando il report di cui sopra mi
visualizza solo i lavori dell'operatore in questione.
Delle tre soluzioni qual'è quella che stressa meno Access? E, gentilmente,
potete dirmi la sintassi necessaria nella subroutine del caso tre?
Sperando di essere stato molto chiaro e poco noioso vi ringrazio
anticipatamente.


title: Consiglio nella realizzazione di report

author: Roberto dalla campagna

text:
badush <
bad...@martucci.com
> wrote in message
yoYGa.90055$Ny5.2...@twister2.libero.it...

Sicuramente è da escludere la prima soluzione, altrimenti invece di
stressare Access ti prendi tu l'esaurimento nervoso.
La seconda è una soluzione possibile; forse però sarebbe meglio che nei
criteri della query invece di [Inserisci Nome operatore]  scrivere i
riferimenti ad una casella di testo non associata il cui valore, a fronte
dell'evento "Su clic" del tuo pulsante di comando, lo imposti con il nome
dell'operatore.
La terza soluzione è una soluzione che per filtrare i dati da stampare fa
ricorso all'argomento condizioneWHERE del metodo OpenReport (vedi help).
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: Consiglio nella realizzazione di report

text:
>
> Sicuramente è da escludere la prima soluzione, altrimenti invece di
> stressare Access ti prendi tu l'esaurimento nervoso.
> La seconda è una soluzione possibile; forse però sarebbe meglio che nei
> criteri della query invece di [Inserisci Nome operatore]  scrivere i
> riferimenti ad una casella di testo non associata il cui valore, a fronte
> dell'evento "Su clic" del tuo pulsante di comando, lo imposti con il nome
> dell'operatore.
> La terza soluzione è una soluzione che per filtrare i dati da stampare fa
> ricorso all'argomento condizioneWHERE del metodo OpenReport (vedi help).
>
> --
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
Grazie Roberto


title: Campo autoaggiornante

author: ..::Maffi Maurizio::..

text:
Non capisco perchè nn funzioni, ho fatto una cosa praticamente simile
proprio ieri!
Nella mia maschera ho una casella di testo Id e subito accanto un'altra
casella di testo Cliente, che dovrebbe andare nella tabella Clienti e
restituire il NomeCliente corrispondente a quanto digitato nella casella Id.
Nella proprietà dell'evento DopoAggiornamento di Id ho messo
=Cliente.requery mentre per la casella Cliente ho fatto un paio di tentativi
ma nn mi funzia.
Ho pensato ad una query del tipo "SELECT Clienti.NomeCliente FROM Clienti
WHERE Clienti.Id = Maschera!OrdineCLiente!Id" ma poi nn so come usarla!
Qualcuno può illuminarmi?


title: Campo autoaggiornante

text:
Non capisco perchè se per Cliente uso una casella combinata, il gioco
funziona (ma non è quello che voglio) mentre con una casella di riepilogo,
al cambiare del contenuto di Id, mi mette lo stesso valore nel campo Cliente
di tutti i record.
Dove sbaglio?
"..::Maffi Maurizio::.." <
mup...@libero.it
> ha scritto nel messaggio
news:CekJb.32252$VW.15...@news3.tin.it...



title: Campo autoaggiornante

text:
Ho provato ogni combinazione...ogni volta con il requery mi aggiorna tutti i
record e nn solo quello selezionato.
Devo forse usare il DLookUp? Da quello che ho capito è una funzione di
supporto a chi non conosce SQL...ma la mia query dovrebbe andare bene (anche
se non ne sono più così tanto sicuro)
Ricapitolo...ho una casella di testo in cui immetto un valore Id ed una
casella di riepilogo dove deve comparire Cliente, preso da una tabella
clienti (che contiene IDCliente e NomeCliente) in base all'Id immesso.
In origine riga della casella Cliente ho messo la query "SELECT
Clienti.Cliente FROM Clienti WHERE
Clienti.Numero=Maschere!OrdineClientePROVA!Id; " mentre nell'evento
dopoAggiornamento della casella di testo Id ho messo
Maschere!OrdineCliente!Cliente.requery
Probabilmente sbaglio con le origini controllo/riga...sono in alto mare se
qualcuno può darmi una dritta...
"..::Maffi Maurizio::.." <
mup...@libero.it
> ha scritto nel messaggio
news:IDkJb.32323$VW.15...@news3.tin.it...



title: Pari o Dispari?

author: fid

text:
Salve, come posso controllare se il numero digitato in una text sia pari o
dispari?
Grazie
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Pari o Dispari?

text:
"fid" <
fid...@libero.it
> ha scritto nel messaggio
news:f16i74$m5c$1...@news.newsland.it...
> Salve, come posso controllare se il numero digitato in una text sia pari o
> dispari?
>
> Grazie
>
> --
Usa MOD
se tuonumero mod 2 restituisce 0 allora è pari, altrimenti è dispari:
10 Mod 2 restituisce 0.....è pari
11 Mod 2 restituisce 1.....è dispari
Ciao, Carlo


title: Pari o Dispari?

text:
"fid" <
fid...@libero.it
> ha scritto nel messaggio
news:f16i74$m5c$1...@news.newsland.it...
> Salve, come posso controllare se il numero digitato in una text sia pari o
> dispari?
>
> Grazie
Per farti un esempio:
if TuoNumero Mod 2 = 0 then
msgbox "Numero Pari"
else
msgbox "Numero Dispari"
end if
Ciao, Carlo


title: Pari o Dispari?

author: PBsoft

text:
> Salve, come posso controllare se il numero digitato in una text sia
> pari o dispari?
http://tinyurl.com/35gzmc
--
PBsoft di Gabriele Bertolucci
www.pbsoft.it
skype:pbsoftsolution


title: Pari o Dispari?

author: access

text:
"PBsoft" <info[REMOVE]@
pbsoft.it
> ha scritto nel messaggio
news:875ea3551b7ee8...@news.tin.it...
>> Salve, come posso controllare se il numero digitato in una text sia
>> pari o dispari?
>
>
http://tinyurl.com/35gzmc
>
E che vordi' sta cosa?



title: Pari o Dispari?

author: Alessandro Cara

text:

che se fai click ottieni :
Salve, come posso controllare se il numero digitato in una text sia pari
o dispari? Grazie
Per farti un esempio:
if TuoNumero Mod 2 = 0 then
    msgbox "Numero Pari"
else
    msgbox "Numero Dispari"
end if
Ciao, Carlo
May 1 by Carlo Costarella - 5 messages - 4 authors
E' un post di un paio di giorni fa ed e' una if con una else e con l'uso
  dell' operatore/istruzione "mod" che significa "modulo"
--
ac
y-1=x


title: errore controllo ADE formato fattura elettronica

author: mario rossi

text:
ho provato a far controllare il mio file al sistema di controllo del sito ADE
il file viene caricato quindi la nomenclatura del file è corretta, poi però ricevo un file contenente vari errori per esempio un paio sono questi

qualcuno sa aiutarmi su che cosa non gli vada bene al sistema di controllo? grazie.

<Codice>00200</Codice>
<Descrizione>File non conforme al formato (nella descrizione del messaggio Ã¨ riportata lâ€™indicazione puntuale della non conformitÃ ) - Invalid content was found starting with element 'AICassa'. One of '{AlCassa}' is expected. riga: 76 - colonna: 10</Descrizione>
<Suggerimento>Verificare che il file inviato sia conforme al formato previsto</Suggerimento>

la riga incriminata è la 76 che è questa: <AICassa>4.00</AICassa>

==============================
oppure un altro errore è questo

<Codice>00200</Codice>
<Descrizione>File non conforme al formato (nella descrizione del messaggio Ã¨ riportata lâ€™indicazione puntuale della non conformitÃ ) - Invalid content was found starting with element 'AICassa'. One of '{AlCassa}' is expected. riga: 84 - colonna: 10</Descrizione>
<Suggerimento>Verificare che il file inviato sia conforme al formato previsto</Suggerimento>

la riga incriminata è la 76 che è questa: <AICassa>6.00</AICassa>


author: Potone

text:

Ciao,
l'errore 00200 è piuttosto generico e indica una non conformità del formato del file, praticamente devi verificare che la parte precedente alla riga specificata sia corretta, ad esempio se tutti i tag sono chiusi correttamente.
Mat.


text:

grazie verifico subito e ti aggiorno. sai dirmi che file devo mettere nella cartella in cui viene generato il file xml?


text:
Ciao,
scusa ma non capisco, cosa intendi per file da mettere nella cartella dove generi l'xml?

Mat.


text:

forse ho capito male pensavo di dover mettere nella stessa cartella in cui genero il file xml un file scaricato dal sito ade di nome "fatturaPA_v1.2.1.xls" invece credo non serva.

puoi inviarmi le prime  righe di intestazione del tuo file xml? le mie sono le seguenti:

<?xml version="1.0" encoding="ISO-8859-1"?>
<p:FatturaElettronica xsi:schemaLocation="
http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2

http://www.fatturapa.gov.it/export/fatturazione/sdi/fatturapa/v1.2/Schema_del_file_xml_FatturaPA_versione_1.2.xsd
" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance
" xmlns:p="
http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2
" xmlns:ds="
http://www.w3.org/2000/09/xmldsig#
" versione="FPR12">

sono corrette?


text:
la riga precedente alla riga numero 76 <AICassa>4.00</AICassa>

è la riga numero 75 che è: <TipoCassa>TC22</TipoCassa>

i tag credo siano corretti perchè il file in EDGE lo vedo correttamente strutturato corretto almeno credo

per esempio un altro errore che riporta è questo:

<Errore>
<Codice>00200</Codice>
<Descrizione>File non conforme al formato (nella descrizione del messaggio Ã¨ riportata lâ€™indicazione puntuale della non conformitÃ ) - Invalid content was found starting with element 'IdPaese'. One of '{IdFiscaleIVA, CodiceFiscale, Anagrafica}' is expected. riga: </Descrizione>
<Suggerimento>Verificare che il file inviato sia conforme al formato previsto</Suggerimento>
</Errore>


author: gallego

text:
Il 07/11/2018 16:30, mario rossi ha scritto:
> One of '{AlCassa}' is expected

posta l'intera sezione <DatiCassaPrevidenziale>


text:

**************
<DatiCassaPrevidenziale>
<TipoCassa>TC22</TipoCassa>
<AICassa>4.00</AICassa>
<ImportoContributoCassa>0.60</ImportoContributoCassa>
<ImponibileCassa>15.00</ImponibileCassa>
<AliquotaIVA>22.00</AliquotaIVA>
<Ritenuta>SI</Ritenuta>
</DatiCassaPrevidenziale>

**************
l'errore è:
<Errore>
<Codice>00200</Codice>
<Descrizione>File non conforme al formato (nella descrizione del messaggio Ã¨ riportata lâ€™indicazione puntuale della non conformitÃ ) - Invalid content was found starting with element 'AICassa'. One of '{AlCassa}' is expected. riga: 76 - colonna: 10</Descrizione>
<Suggerimento>Verificare che il file inviato sia conforme al formato previsto</Suggerimento>
</Errore>


text:

la mia è così :

<p:FatturaElettronica xmlns:ds="
http://www.w3.org/2000/09/xmldsig#
"
xmlns:p="
http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2
"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance
" versione="FPR12"



text:
Il 08/11/2018 00:05, mario rossi ha scritto:
> Il giorno mercoledì 7 novembre 2018 23:41:07 UTC+1, gallego ha scritto:
>> Il 07/11/2018 16:30, mario rossi ha scritto:
>>> One of '{AlCassa}' is expected
>>
>> posta l'intera sezione <DatiCassaPrevidenziale>
>
> **************
> <DatiCassaPrevidenziale>
> <TipoCassa>TC22</TipoCassa>
> <AICassa>4.00</AICassa>

dovrebbe essere Al  (aliquota) , non AI come hai scritto tu.


text:

scusa non ho capito bene, devo scrivere solo <AI>aliquota</AI>
anziche <AICassa>4.00</AICassa>

????