Procedura testata per chi sviluppa in VB

Pagina 2 di 2 Precedente  1, 2

Andare in basso

Procedura testata per chi sviluppa in VB

Messaggio  lucky2005 il Mer Mar 23, 2011 11:06 pm

Promemoria primo messaggio :

Procedura che opera in ambiente effettivo per applicativi in VB


1. Modificare l’endpoint http://172...... Con https://sisssl.sistri.it/SIS/services/SIS? wsdl
2. Avere un certificato valido in formato p12
3. Il file wsdl così modificato deve essere caricato nel vostro applicativo dal comando “aggiungere riferimento al servizio”
4. Modificare il file app.config (presente in esplora soluzioni) parametro ‘clientcredentialtype’
<security mode="Transport">
<transport clientCredentialType="Certificate" proxyCredentialType="None"
realm="" />
5. Metodo GetversioneSIS

Dim obj1 As SIS_WSDLClient = New SIS_WSDLClient

Dim obj5 As SIS_WSDLClient = New SIS_WSDLClient()
Dim identity = "userid******"

Dim store As New X509Store("teststore", StoreLocation.CurrentUser)
store.Open(OpenFlags.ReadWrite)
Dim certificate As New X509Certificate2()

Dim certificate1 As New X509Certificate2("c:\certificato.p12", "eventuale password certificato")

Dim collection As New X509Certificate2Collection()
collection.Add(certificate1)

store.Add(certificate1)

store.AddRange(collection)
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName,“CN=nome certificato”)


Dim versione2 = obj1.GetVersioneSIS(identity)

MsgBox(versione2)


6. Metodo GetAzienda
Dim obj1 As SIS_WSDLClient = New SIS_WSDLClient

Dim obj5 As SIS_WSDLClient = New SIS_WSDLClient()
Dim identity = "userid****"
Dim codfisc1 = "codice fiscale azienda"
Dim obj2 As ParametriAggiuntivi = New ParametriAggiuntivi
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName,”CN=nome certificato")

Dim campo1 = obj1.GetAzienda(identity, obj2, codfisc1).ragioneSociale

MsgBox(campo1)


************* Per la gestione errori SISEXCEPTION *********
Prima di invocare il metodo

Try

....... Metodo......

Catch error1 As FaultException(Of SISException)



Dim errormsg As String = error1.Detail.Nodes(1).InnerText
Dim errorcode As String = error1.Detail.Nodes(0).InnerText

MsgBox(errorcode)
MsgBox(errormsg)

End Try

Con questa routine potete leggere eventuali errori generati dall'applicazione


Ultima modifica di lucky2005 il Mar Apr 05, 2011 5:26 pm, modificato 6 volte
avatar
lucky2005
Utente Attivo

Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania

Torna in alto Andare in basso


Re: Procedura testata per chi sviluppa in VB

Messaggio  mary69 il Mar Apr 05, 2011 8:03 pm

Allora ho riletto tutto l'altro post 'Sistri e visualstudio' in cui mi sembrava esserci la risposta, ed infatti l'ho trovata.
Il nome certificato lo si recupera visualizzando i dettagli del certificato all'interno di Internet Explorer.
Finalmente adesso ho accesso anche io all'interoperabilità.
Grazie a tutti.
Very Happy
avatar
mary69
Membro della community

Messaggi : 12
Data d'iscrizione : 07.12.10

Torna in alto Andare in basso

Sono rimasto indietro..

Messaggio  sandrino71 il Gio Apr 07, 2011 7:54 pm

Ciao a causa di un progettino ho perso un po il filo...
Il mio problema è quello che aveva massimo 2000 " impossibile relazione di trust etc ect "

Chiedo a Massimo che cortesemente ha postato il link se può passarmi il suo metodo in quanto anche se prendo spunto dalla guida continiuo a ricevere l'errore

Grazie
Ciao
avatar
sandrino71
Membro della community

Messaggi : 27
Data d'iscrizione : 01.11.10

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  Massimo2000 il Ven Apr 08, 2011 10:25 am

sandrino71 ha scritto:Ciao a causa di un progettino ho perso un po il filo...
Il mio problema è quello che aveva massimo 2000 " impossibile relazione di trust etc ect "

Chiedo a Massimo che cortesemente ha postato il link se può passarmi il suo metodo in quanto anche se prendo spunto dalla guida continiuo a ricevere l'errore

Grazie
Ciao

Ecco il codice che ho inserito

Dim identity = "aaaa.bbbb1234"
Dim obj1 As SIS_WSDLClient = New SIS_WSDLClient

Private Shared Function CertificateHandler(ByVal sender As Object, ByVal certificate As X509Certificate, ByVal chain As X509Chain, ByVal SSLerror As SslPolicyErrors) As Boolean
Return True
End Function

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'GetVersioneSIS

System.Net.ServicePointManager.ServerCertificateValidationCallback = AddressOf CertificateHandler
Dim versione2 = obj1.GetVersioneSIS(identity)

msgbox(versione2)
End Sub

Devi anche mettere:
Imports System.Security.Cryptography.X509Certificates
Imports System.Net.Security
avatar
Massimo2000
Membro della community

Messaggi : 20
Data d'iscrizione : 22.02.11

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  lucky2005 il Ven Apr 08, 2011 1:34 pm

Credo che utilizzare questa procedura sia sbagliato perchè si bypassa la connessione con certificato. Magari funziona con alcuni metodi ma con altri non può funzionare.
Avete installato il RootCaSistri tra le autorità attendibili ?
avatar
lucky2005
Utente Attivo

Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  Massimo2000 il Ven Apr 08, 2011 3:02 pm

lucky2005 ha scritto:Credo che utilizzare questa procedura sia sbagliato perchè si bypassa la connessione con certificato. Magari funziona con alcuni metodi ma con altri non può funzionare.
Avete installato il RootCaSistri tra le autorità attendibili ?

Adesso ho capito il problema ... non avevo importato il certificato RootCA Sistri.
Grazie di nuovo.
avatar
Massimo2000
Membro della community

Messaggi : 20
Data d'iscrizione : 22.02.11

Torna in alto Andare in basso

Errore..

Messaggio  sandrino71 il Ven Apr 08, 2011 3:23 pm

Ciao grazie per aver postato il codice
io purtroppo ottengo ancora errori questo è l'ultimo;
"Richiesta HTTP vietata con lo schema di autenticazione client 'Anonymous'."
Scusate ma il rootCa sistri qual'è non mi ricordo più ??
------------------------------
Questo è il mio codice dentro il quale ho inserito la funzione consigliata da massimo2000
Senza questa funzione ottengo come errore " impossibile eseguire relazioni di trust"...
Chiedo a Lucky se per cortesia riesce ad avvallare questo codice in modo che se ho ancora problemi probabilmente è il certificato
Grazie
----------------------------
Private Shared Function CertificateHandler(ByVal sender As Object, ByVal certificate As X509Certificate, ByVal chain As X509Chain, ByVal SSLerror As SslPolicyErrors) As Boolean
Return True
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

System.Net.ServicePointManager.ServerCertificateValidationCallback = AddressOf CertificateHandler
'Dim versione2 = obj1.GetVersioneSIS(identity)


Dim obj1 As ServiceReference1.SIS_WSDLClient = New ServiceReference1.SIS_WSDLClient
Dim identity = "paperino"
Dim codfisc1 = "pippo"
Dim obj2 As ParametriAggiuntivi = New ParametriAggiuntivi
Dim store As New X509Store("teststore", StoreLocation.CurrentUser)
store.Open(OpenFlags.ReadWrite)
Dim certificate1 As New X509Certificate2("p:\certificate.p12", "password")
Dim collection As New X509Certificate2Collection()
collection.Add(certificate1)
store.Add(certificate1)
store.AddRange(collection)
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName, "nome del certificato senza cn=")
Dim campo1 = obj1.GetAzienda(identity, obj2, codfisc1).ragioneSociale
MsgBox(campo1)
End Sub
--------------------------------------------------
avatar
sandrino71
Membro della community

Messaggi : 27
Data d'iscrizione : 01.11.10

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  lucky2005 il Ven Apr 08, 2011 3:41 pm

Ma è incompatibile ciò che hai scritto nella prima parte eludi il certificato(e come ho scritto prima è una procedura sbagliata) e nella seconda parte richiami il certificato utilizzando la connessione ssl.
Controlla in Internet Explorer nei certificati se tra le fonti attendibili esiste RootCaSistri
avatar
lucky2005
Utente Attivo

Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania

Torna in alto Andare in basso

Recuperare ID_SIS

Messaggio  sandrino71 il Gio Apr 14, 2011 3:21 pm

Ciao Lucky ok ora ho provato i metodi " versione " e "azienda" e funzionano.
Very Happy
Sto leggendo la guida ma non ho capito come si recupera il valore ID_SIS che ci server per gli altri metodi
Grazie
Ciao
avatar
sandrino71
Membro della community

Messaggi : 27
Data d'iscrizione : 01.11.10

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  lucky2005 il Gio Apr 14, 2011 3:41 pm

Per IDSIS anagrafica :
Dim idsisanagrafica = obj1.GetAzienda(identity, obj2, codfisc).idSIS

Per IDSIS SEde
Dim idsissede = obj1.GetAzienda(identity, obj2, codfisc).sedeLegale.idSIS

ma per adesso ti servono a poco perchè quanto vai ad interrogare altri metodi ti ritorna l'errore "utente non abilitato" sicuramente ancora non possiamo utilizzare in effettivo il sistri.
avatar
lucky2005
Utente Attivo

Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  sandrino71 il Sab Apr 16, 2011 7:40 am

Grazie lucky per la tua disponibilità.
Mi dici per favore quale metodo ti ha dato ad esempio " utente non abilitato" in modo da vedere che errore ottengo.

Un'ultima cosa: Hai per caso individuato qual'è il metodo che espone tutta la scheda sistri chiusa?
Grazie

Ciao
avatar
sandrino71
Membro della community

Messaggi : 27
Data d'iscrizione : 01.11.10

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  lucky2005 il Lun Apr 18, 2011 9:02 am

Per la gestione degli errori devi utilizzare il metodo SISexception come nel post iniziale.
Per la gestione della scheda non potendo testare l'idsis non i sono cimentato più di tanto.
Sto in ogni caso predisponendo l'applicativo per la verifica degli allineamenti , per la ricezione del numero del registro cronologico , lettura codici Cer e altro. Ma ovviamente senza avere la possibilità di provare.
avatar
lucky2005
Utente Attivo

Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania

Torna in alto Andare in basso

Anagrafiche

Messaggio  sandrino71 il Mar Apr 19, 2011 11:15 am

Ciao Lucky scusa se ti stresso ma per il discorso delle anagrafiche non ho capito leggendo il manuale se si deve fare una query per estrapolare tutte le anagrafiche per avere gli id_sis dei miei attuali fornitori?

Grazie
Ciao



avatar
sandrino71
Membro della community

Messaggi : 27
Data d'iscrizione : 01.11.10

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  lucky2005 il Mar Apr 19, 2011 1:10 pm

Quella che ho indicato io è IDSIS dell'anagrafica dell'Azienda
avatar
lucky2005
Utente Attivo

Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania

Torna in alto Andare in basso

Re: Procedura testata per chi sviluppa in VB

Messaggio  Contenuto sponsorizzato


Contenuto sponsorizzato


Torna in alto Andare in basso

Pagina 2 di 2 Precedente  1, 2

Torna in alto

- Argomenti simili

 
Permessi di questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum