Premetto che mi pare di aver letto che ufficialmente l'algoritmo sia
considerato 'riservato' dall'ufficio delle entrate: forse è per questo
che si fa fatica a trovarne un'implementazione java pubblica.
Lo troverai sicuramente, ma tieni presente che c'è la remota possibilità
che il calcolo a partire dai dati di base possa non generare il vero
codice fiscale del soggetto: infatti, se dopo il calcolo dovesse
risultare che il codice generato è doppio, l'amministrazione cambia una
delle prime 6 lettere per farlo ritornare univoco e tu non hai modo di
sapere quando questo si verifica. Ovviamente è una cosa che può capitare
solo nelle grandissime città, o per i nati all'estero (ogni stato estero
ha un singolo codice comune istat, pensa alla Cina!), altrimenti la
possibilità di nascere lo stesso giorno, nello stesso comune, con la
sequenza di consonanti/vocali uguale è bassina.
Senza parlare dei casi di errore di inserimento dati nell'elaboratore
che genera i codici fiscali, per cui il codice generato è 'sbagliato' ma
la regola prevede che, una volta generato, debba essere mantenuto
quello: punto e basta.
Quindi, OK usare l'algoritmo per un ulteriore controllo durante
l'inserimento, NO per inserire dati fiscali mancanti in un archivio.
Angelo.
allora ufficialmente a ragioneria mi hanno coinvolto in un illecito ;)
cmq la stessa agenzia delle entrate:
http://www.agenziaentrate.it/ilwwcm/connect/Nsi/Servizi/Codice+fiscale+-+tessera+sanitaria/Codice+fiscale/Controllo/
mette a disposizione un programmino per il controllo di un codice fiscale
(controllo, non generazione)
il programmino dovrebbe esser corredato di sorgente java
> Lo troverai sicuramente, ma tieni presente che c'è la remota possibilità
> che il calcolo a partire dai dati di base possa non generare il vero
> codice fiscale del soggetto: infatti, se dopo il calcolo dovesse
> risultare che il codice generato è doppio, l'amministrazione cambia una
> delle prime 6 lettere per farlo ritornare univoco e tu non hai modo di
> sapere quando questo si verifica.
vero, allora mi chiedo se esista un qualche servizio a cui appoggiarsi per
poter verificare la cosa...
bye
Alessio
Non so se possa servirti, ma qua:
http://www.pierotofy.it/pages/sorgenti/browse/15513/
c'è una versione in C che (a parte i printf) dovrebbe essere
facilemente traducibile in Java
Ciao
Andrea
--
Andrea Nasato
http://www.jugpadova.it