Newsgroup: it.comp.appl.access
Titolo: conversione di db e codice fiscale

ho trovato sul sito comune un file in access97 per il calcolo del codice
fiscale.
access2000 richiede la conversione, ma nel processo ciň che mi resta sono la
maschera e la tabella dei comuni, e vengono visualizzati dei messaggi
relativi a routine non trovate, quindi presumo che il codice per il calcolo
sia andato perso.
anche se apro il db senza la conversione succede lo stesso.
siccome mi farebbe comodo il calcolo del codice fiscale effettuato
direttamente nel db - attualmente uso un programmino esterno e poi copio a
mano - qualcuno mi sa aiutare?
grazie
andrea

 ha scritto nel messaggio
news:7g95a.138929$YG2.4...@twister1.libero.it...

Devi solo inserire i riferimenti alle librerie DAO che in A97 sono di
Default,
mentre in A2K di Default hai ADO.
Per farlo devi andare in un modulo di Form o altro accedere al VBA per
intenderci
poi dal Menů-->Strumenti-->Riferimenti-->Cerca Microsoft DAO 3.51 (oppure
3.6)
Se non ti serve ADO ti consiglio di Smarcarlo, oppure devi selezionarlo dopo
DAO
@Alex.

>Per farlo devi andare in un modulo di Form o altro accedere al VBA
Ho provato a fare come mi suggerivi. Nell'elenco dei riferimenti attivi
c'era la dicitura "MANCA: Micr. DAO 3.51", l'ho disattvato e ho cercato
"Micr. DAO 3.6" e l'ho attivato. Ho fatto il 1° tentativo di conversione,
non riuscito. Allora ho attivato anche ADO. Anche il 2° tentativo di
conversione non è riuscito, ora spiego.
A differenza di quanto era successo prima del tuo consiglio, però, queste
altre due volte non mi ha dato nessun errore in conversione, ma ho avuto i
seguenti problemi:
1) apro la maschera di inserimento: msg di errore "FasMsg: 13 tipo non
corrispondente". clicco OK e continuo
2) inserisco cognome, nome, data, sesso, ma quando inserisco la prima
lettera del comune mi apre l'editor di VB e dà il msg "Impossibile trovare
il metodo o il membro dei dati"
3) mi arrendo, chiudo la maschera e mi dà il msg "Errore di run time 91:
Variabile oggetto o variabile blocco With non impostata"
Scusa lo sfogo, ma è mai possibile che un povero cristo con Access 2000 non
possa aprire un bd fatto con una versione precedente dello stesso programma
senza avere problemi?
Grazie per la pazienza
Andrea

 ha scritto nel messaggio
news:jNs5a.142598$ZE.40...@twister2.libero.it...

Non disperare, è solo questione di malizia dovuta all'esperienza maturata
con ore e ore di tentativi.....!
Non ho ben capito se hai impostato correttamente la progressione dei
riferimenti.
Vale a dire che se trovi prima ADO e poi DAO 3.6 allora hai dei problemi.
Devi avere prima DAO, e poi ADO, ma se il tuo DB nel quale hai inserito
la funzione per il calcolo è stato realizzato con A2K allora la strada è
diversa.
Lascia ADO prima di DAO nei riferimenti(per modificare l'ordine devi
disattivarli e riattivarli nell'ordine giusto) ed inserisci il riferimento
esplicito alle Lib DAO nella Funzione in questione.
Vale a dire che nella Funzione dove trovi Dim rst as Recordset
dovrai mettere Dim rst as DAO.Recordset.
Io non ho visionato la Funzione, ma se persistono i problemi prova a postare
la parte di designazione delle variabili.
Ciao.
@Alex.

riferimenti.
Infatti....
Avevi ragione, erano invertiti i due riferimenti.
Funziona perfettamente adesso.
Vorrei approfittare, se me lo permetti, per chiederti un aiuto al problema
che si è posto adesso.
Io ho una maschera dove immettere dei dati anagrafici, tra i quali il C. F.
(ecco perchè mi è utile il programma di calcolo).
Avevo pensato di usare le caselle di testo di questa maschera (che fanno
riferimento ad una tabella dove devono essere memorizzate) per riempire
direttamente la maschera di calcolo del C. F., ma ho abbandonato l'idea
(troppo complicato per me che il VB non so neanche dove abita), per cui ho
creato un pulsante che mi richiama la maschera di calcolo del C.F.
Però mi sarebbe utile che il risultato (cioè il C.F.) mi apparisse poi nella
maschera dati anagrafici e quindi poterla memorizzare insiema agli altri
dati.
Il calcolo del C.F. in questione è formato solo da una tabella contenente i
comuni, cap, prov e dalla maschera di immissione.
Come posso fare perchè il pulsante che genera il C. F., oltre a generarlo,
lo copi e lo incolli nella casella collocata nella mia maschera, quindi
chiuda la maschera di calcolo?
Grazie ancora.
Andrea

 ha scritto nel messaggio
news:SnL5a.145206$ZE.41...@twister2.libero.it...

Premetto una cosa molto importante che forse hai sottovalutato.
Il programma per la determinazione del Codice Fiscale in realtà
non serve a nulla se non a verificarne l'eventuale coerenza.
Esiste infatti solo un organismo statale preposto alla generazione
di tale codice.
Gli algoritmi che trovi in giro non tengono conto di eventuali Omonimie
o coincidenze per le quali esiste un algoritmo di assegnazione differente.
In pratica c'è un Database Nazionale  nel quale vengono inseriti i CF
e solo li sono riportate le eccezioni.
Ne consegue che forse quello che vuoi fare non è il massimo.
Solitamente infatti il campo C.F. viene riempito inserendo il C.F.
della persona, e viene effettuata una verifica eventuale con gli algoritmi
ai quali accennavi.
Detto questo io ti sconsiglio di usare questo metodo "Non Error Free".
@Alex.

di tale codice.
Si, lo so, ti ringrazio per la premura. Lavoro per la pubblica
amministrazione (Carabinieri).
Il fatto è che mi serve solo in via indicativa, in quanto sto creando delle
maschere di immissione per la compilazione automatica di alcuni moduli ad
uso interno.
A dire la verità, non ho idea dell'utilità di inserire il C.F. dei nostri
"clienti" nella modulistica, ma siccome la hanno creata così e considerando
che i "clienti" spesso non sanno neanche cos'è il C.F. (non scherzo), io
devo inserirlo lo stesso e questi programmini sono l'unico ausilio valido.
Tornando al problema del post precedente, qualche suggerimento per copiare
il contenuto di quella casella dove viene generato il C.F. e incollarlo
nella maschera che uso per registrarlo nel db?
Grazie ancora per la pazienza
Andrea

 wrote in message
news:eQ66a.147746$
YG2.4...@twister1.libero.it

Perfetto, credo allora che la strada migliore sia di crearti un CAMPO
nella Tabella e Creare un Controllo TextBox nella tua Form associato
al Campo C.F.
Ovviamente hai 2 modi per riempirlo:
1)Manualmente
2)Automatico(Funzione di Calcolo)
Io credo ti convenga mettere un controllo sull'evento Before_Update
di Form, e verificare se il Controllo(TxtBox) associato al Campo
C.F. è vuoto.
el Caso sia Vuoto significa che non l'hai inserito manualmente
quindi puoi procedere al calcolo Automatico.
Private Sub Form_BeforeUpdate(Cancel As Integer)
   If Len(Me.TuaTxtBoxCF)=0 then _
      Me.TuaTxtBoxCF=FunzioneCalcoloCF(.....)
End Sub
Una cosa del genere.......!
Ciao @Alex.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

nella Tabella e Creare un Controllo TextBox nella tua Form associato.....
Suppongo che il suggerimento fosse giusto.
Però considerando il lavoro che faccio (  :-) un pò di autoironia non
guasta) mi sto incasinando di più.
Avanzo una ipotesi puramente ipotetica (bell'allitterazione...)
Se io attivo il calcolo del codice fiscale (che è una maschera contenente
solo txtBox e codice di calcolo più la tabella dei comuni, che ho trovato
sul sito comune), calcolo il C.F., poi lo seleziono via mouse e faccio il
Copia/Incolla, tutto funziona.
C'è il modo di dire al sistema di copiare il contenuto di quella txtBox e
copiarlo nel campo nella maschera mia? Forse sarebbe più facile...
Oppure, se io copio il codice di calcolo (che richiede txtBox che abbiano
nomi specifici) nella mia maschera, e creo questi txtBox nella mia maschera,
come faccio a fare in modo che questi txtBox siano associati ai campi della
mia tabella (ho comunque bisogno che tali dati vengano salvati)? Perchè se
fosse possibile, a questo punto inserendo i dati che mi interessano nella
mia maschera, compilerei anche i campi necessari al calcolo, ottenendo il CF
direttamente nella mia maschera senza attivare l'altra. Poi, se avessi
bisogno di calcolarlo, premo il pulsante opportuno, me lo calcola
direttamente nel form di immissione, se non mi serve perchè lo conosco già,
lo inserisco direttamente e basta.
Grazie
Andrea

 wrote in message
news:e3r6a.151009$
YG2.4...@twister1.libero.it

Ciao Andrea...!
Mi trovo un pò in difficoltà, nel senso che spiegare diversi
passaggi a chi non è molto pratico, non è una delle mie doti
più salienti.....!
In sostanza importi la Tabella nel tuo DB.
Inserisci la Funzione del Calcolo C.F. in un Modulo Generico.
Nella aschera Inserimento dati in realtà dovresti inserire
una ComboBox con Origine dati la Tabella Comuni, e una TxtBox
C.A.P. che viene riempita automaticamente su evento Dopo aggiornamento
della ComboBox.
Questo ti facilita l'immissione dati, e ti evita eventuali errori
di digitazione, senza contare che la ComboBox si autocompleta.
Puoi Mettere un bel PULSANTE(CommandButton) che quando hai inserito
tutti i dati necessari esegua il Calcolo del C.F.
Per rendere più flessibile la Funzione andrebbe modificato il Predicato
in modo da potergli passare i Parametri.
Io non ho visto la funzione, ma se trovi difficoltà ad provare
i consigli che ti ho dato la vediamo.
