Quattro Caratteri del Comune nel Codice Fiscale in C#

In questa lezione vedremo come recuperare i dati del codice fiscale e più in particolare i 4 caratteri riferiti al comune di nascita. Come prima operazione da fare è procurarsi il file con i dati dei comuni Italiani e magari in Access in modo da aprire una connessione con questo database tramite ADO.NET e più in particolare con il motore JET 4.0 di Microsoft. Ovviamente potete utilizzare qualsiasi formato di database, l’importante è avere un provider ADO.NET per quel tipo. Guarda caso, come avevamo anche fatto qualche lezione fa, potete scaricare il database dei comuni Italiani dal nostro sito e sempre seguendo l’esempio di quella lezione possiamo connetterci al database e prendere il valore del CF per il comune scelto.

...
private string GetCharComune()
{
  string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data
           Source=C:\\Dati\\Comuni.mdb";
       string strSQL = "SELECT CF FROM Comuni WHERE Comune = '" +
            m_strComNasc + "'";
       OleDbConnection myConn = new OleDbConnection(strConn);
       OleDbCommand myCmd = new OleDbCommand(strSQL, myConn);
       myConn.Open();
       OleDbDataReader myReader = myCmd.ExecuteReader();
        if (myReader.Read())
             strConn = myReader.GetString(0);
       else
             strConn = "";
       myReader.Close();
       myConn.Close();

       return strConn;
}
...

Questo approccio ha una grande limitazione, se l’utente sbagliasse ad inserire il comune anche di una sola lettera, probabilmente non troveremo il comune e quindi il nostro calcolo del codice fiscale non verrebbe trovato. Nei software gestionali che sviluppo inserisco i valori dei comuni all’interno di caselle combinate e trovo il comune per IDComune ( chiave primaria ) e non per valore. La prossima lezione verterà sul calcolo dell’ultimo carattere del codice fiscale, il carattere di controllo, che presenta delle procedure abbastanza complicate per il calcolo; in pratica occorre calcolare i pesi pari e dispari dei caratteri trovati prima, ma vedremo il tutto a suo tempo.

<< Lezione Precedente – Inizio CorsoIndice LezioniLezione Successiva >>

Di Giampaolo Rossi

Sviluppatore software da oltre 16 anni.