Newsgroup: it.comp.appl.access
Titolo: leggere i dati da tessera sanitaria ed inserirli in una tabella

Da qualche tempo ho realizzato un programma per la refertazione degli 
esami endoscopici (a proposito chi fosse interessato può scrivermi 
perchè ho intenzione di distribuirlo...)
Mi hanno chiesto di inserire i dati angrafici inserendo la tessera 
sanitaria del paziente in un lettore smart card (minilector EVO). Ho 
cercato nella rete ma praticamente non ho risolto nulla.  Un lungo 
listato (praticamente l'unico che si trova in giro ) rimane fermo perchè 
sono solo dichiarazioni di variabili (Forse sono incapace di vedere il 
punto d'inizio?). Se qualcuno di voi non ha nulla da fare (perchè a casa 
con il covid o mosso da spirito didattico o da pietà informatica) 
potrebbe darmi delle indicazioni di massima (for dummies) sul come 
leggere i dati dalla tessera sanitaria ed inserirli in una tabella di 
access?
 
grazie dell'attenzione
BC	


avevo provato qualche tempo fa
trovi la discussione qui
 
https://it.comp.appl.access.narkive.com/Ixab2qHj/leggere-da-smart-card
 
 
il codice funziona solo che legge solo i primi 150 caratteri e non ho 
trovato il modo di leggere tutto il contenuto...
 
se vuoi provarci tu
 
alla fine per risolvere mi ero apoggiato ad un programmino esterno (a 
pagamento)..una sorta di agent che appena il contenuto della smart card 
viene letto salva tutto in un txt
 
quindi da access vado a leggermi il contenuto e amen
 
BFS


questo è il software se vuoi risolvere velocemente
 
 
https://shop.nexustech.it/home/4-tessera-sanitaria-cns-nexcode3.html
 
 
 
BFS
 
 
 


Ma quanti caratteri ci stanno nella memoria tessera sanitaria?
Nel senso, da primo esempio si leggono 150 caratteri, e col programma 
quanti ne vengono fuori?
 
 


con il programma esterno si leggono anche luogo di nascita, data di 
nascita e altre info
mentre con il codice che avevo trovato io si leggono solo 150 caratteri 
e i rimanenti del buffer di risposta sono sempre vuoti
 
il protocollo usato è il APDU
 
https://it.wikipedia.org/wiki/Application_Protocol_Data_Unit
 
 
alla fine ci avevo riunciato visto che le ore perse per traovare una 
soluzione iniziavano ad essere parecchie
 
 
BFS
 
 

Il 15/07/2022 14:19, BFS ha scritto:

ho meditato quanto mi hai segnalato ma, (vista la mia colossale 
ignoranza..) ma non riesco a ricomporre il codice che è tutto frammentato...
 
Inizia con
 
Private Declare Function SCardTransmit Lib "WinScard.dll" ( _
ByVal hCard As Long, _
ByRef pioSendRequest As SCARD_IO_REQUEST, _
ByRef sendbuff As Byte, _
ByVal SendBuffLen As Integer, _
ByRef pioRecvRequest As SCARD_IO_REQUEST, _
ByRef RecvBuff As Byte, _
ByRef RecvBuffLen As Integer) As Long
 
e  poi sono tutti frammenti di esempio che anche riuniti non funzionano...
 
se ho ben capito è una funzione che deve essere chiamata p. es da un 
pulsante di una maschera (?)
abbi pazienza (tanta), pur avendo realizzato diversi programmi, "cose" 
del genere  non le ho mai incontrate .
grazie ancora per l'attenzione
BC

 (vista la mia colossale ignoranza..)
 
 
ti consiglio allora di acquistare il programmino che fa quasi tutto da 
solo. il costo è minimo
 
 
https://shop.nexustech.it/home/4-tessera-sanitaria-cns-nexcode3.html
 
 
ciao
BFS

Il 15/07/2022 12:58, Cesare Briglia ha scritto:

Io ho avuto quasi lo stesso problema. Ho fatto un programma che tramite 
il codice fiscale mi cerca un cliente e se non c'è, lo inserisce come 
nuovo prendendo dal codice fiscale la data di nascita, il sesso, il 
comune di nascita. Invece del lettore smartcard, ho usato un banalissimo 
lettore barcode e ho risolto senza problemi.
 
-- 
Questa e-mail è stata controllata per individuare virus con Avast antivirus.
https://www.avast.com/antivirus
 
 

 
 
comprendo, però:
1) lavoro su "roba" che mi danno e ho messo le mani sul lettore perchè 
ne hanno acquistati un po' nell'ambito di un tentativo di 
migliorare/complicare l'accesso al sistema NOIPA
2) non è il mio lavoro (sembra strano ma faccio o per lo meno cerco di 
fare il medico)
3) la mia azienda ha le braccine corte...
4) ripeto: chi volesse il programma per refertare gli esami endoscopici 
mi deve solo scrivere...
 
ecco perchè non cercavo la pappa scodellata e pronta ma qualcosa su cui 
lavorare senza fare un corso di APDU..
Comunque grazie ancora dell'attenzione
 
BC


senza offesa Cesare...
è difficile aiutarti cosi.
 
non vuoi la "pappa pronta"
 
non vuoi spendere 60 euro per un software che fa quello che chiedi ed è 
integrabile nella tua applicazione
 
vuoi "qualcosa su cui lavorare" ma del codice che ti ho postato non 
capisci neppure dove inizia e come usarlo. non è che chiedi di fare da 
codice la cosa più banale del mondo.
 
chiedi "potrebbe darmi delle indicazioni di massima (for dummies) "
 
Ad ogni modo le indicazioni di massima sono:
devi leggere da una smartcard e quindi devi usare "winscard.dll"
 
per inviare comandi alla smart card:
https://docs.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardconnecta
 
 
per interrogare una tessera sanitaria devi usare il protocollo APDU
https://wisnu.id/notes/developing-apdu-sender-using-winscard/
 
devi tradurre in vba quanto sopra
 
 
oppure cambiare linguaggio
in pyton questo è il codice per fare quanto chiedi
https://www.mmxforge.net/index.php/sviluppo/python/item/9-lettura-dei-dati-della-tessera-sanitaria-con-python
 
ti fai un agent che appena la tessera viene inserita viene letta e il 
risultato salvato in txt. Da access vai a leggerti il txt e compili i 
campi della persona
 
BFS
 
 
 
 
 
 
 
 
 

 

"..3) la mia azienda ha le braccine corte..."
 
E allora resta senza programma esami endoscopici
Anche se, onestamente, mi sembra altamente improbabile che possano 
ignorare comprendere la convenienza di spendere qualche centinaia di 
euro per una procedura che potrebbe migliorare l'operativita'
 
 
 

 
Senza contare che il lettore barcode mi è costato 21 euro...
Non mi sembra una spesa eccessiva...
