730 precompilato + di uno snippet

  • Creatore Discussione Creatore Discussione marino51
  • Data di inizio Data di inizio
Dimenticavo di dirti che ho tolto il codice SSA dato che, come medico, non ce l'ho.
lo lascerei con valore null (virgolette ripetute senza spazi) perché sembra essere voluto nella richiesta
upload_2017-10-7_20-54-36.png
 
Nulla, l'output è sempre quello. E' veramente frustrante che SOGEI non spieghi meglio il significato degli errori.
Lo schema a blocchi che mi hai mostrato è generato da un SW o lo fai tu? Se è un programma mi diresti come si chiama?
 
è generato da un SW
è generato da visual studio 2005 professional edition (acquistato a suo tempo, viene eseguito su win 10 senza problemi)

upload_2017-10-8_7-1-50.png


doppio click sul file xsd ed esce il grafico con tutte le info
Microsoft mette a disposizione versioni gratuite,
https://docs.microsoft.com/it-it/visualstudio/install/install-visual-studio
non ho idea se la versione gratuita contiene tutte le funzionalità

per quanto riguarda l'errore credo sia un problema del software sogei, prova con una telefonata o manda una mail

fai sapere
 
Grazie grande capo per tutte le info. Il suggerimento di contattare SOGEI è ottimo. Quando ho implementato l'invio dei certificati di malattia INPS la documentazione era meno lacunosa, a meno che la memoria non mi inganni, e ricordo di non aver avuto le difficoltà come in questa occasione. Stay tuned.
 
ps, ho ricordato che le info del grafico, in maniera più "spartana" le puoi leggere anche qui ...
PHP:
List of types described in the WSDL for the Web service

struct interrogazionePuntualeRequest
{
string opzionale1;
string opzionale2;
string opzionale3;
string pincode;
ProprietarioType Proprietario;
IdDocumentoFiscaleType idDocumentoFiscale;
}

struct ProprietarioType
{
String3Type codiceRegione;
String3Type codiceAsl;
String6Type codiceSSA;
CfType cfProprietario;
}

string String3Type
string String6Type
questa la ragione della stampa di quel risultato ...

yes sure ! Stay tuned
 
Nel kit di sviluppo trovi un file di testo in cui sono elencati tutti gli endpoint. Ma forse non capito la domanda?
 
Problema risolto. Dopo aver scritto a SOGEI quest'ultima mi ha chiesto l'esito della request invita dal server. Così ho scoperto l'arcano: mancava l'array Proprietario. Riguardando il codice ho visto che avevo erroneamente scritto (e di conseguenza anche tu Marino, ma senza colpa dato che hai copiato il mio post) "datiProprietario" invece di "Proprietario". Mi resta incomprensibile perché per inviare la fattura bisogna usare "datiProprietario" e per interrogare "Proprietario". Ora è tutto ok ed è una buona interrogazione ricca di dati. Ecco cosa riporta

Output stdClass Object ( [esitoChiamata] => 0 [documentoFiscale] => stdClass Object ( [idDocumentoFiscale] => stdClass Object ( [pIva] => 00954290599 [dataEmissione] => 2017-08-29 [numDocumentoFiscale] => stdClass Object ( [dispositivo] => 1 [numDocumento] => 11 ) ) [dataPagamento] => 2017-08-29 [totaliVociSpesa] => stdClass Object ( [tipoSpesa] => SR [importo] => 40 ) [protocollo] => 99170829062273765 [nomeFile] => SERVIZIO SINCRONO [dataInvio] => 2017-08-29 [tipoInvio] => I ) [listaMessaggi] => stdClass Object ( [messaggio] => stdClass Object ( [codice] => 0 [descrizione] => Operazione eseguita correttamente [tipo] => ) ) )

Come sempre un grande grazie per la tua disponibilità. Ora sistemo per bene lo script e lo aggiungo qui, a completezza di questa bellissima e lunga discussione.
Ciao

PS mi dici come hai ottenuto "List of types described in the WSDL for the Web service" ?
 
ottimo lavoro !

PS mi dici come hai ottenuto "List of types described in the WSDL for the Web service" ?
PHP:
/* -------------------------------------------------------------------------------- Soap Client */
echo show_var($SoapClientParam); echo "<br /> <br />";
$client = new SoapClient($ws, $SoapClientParam);

echo "<p><h4>List of available SOAP functions</h4></p>";
$output = $client->__getFunctions();
while (list ($key, $val) = each ($output) ) echo $val."<br />"; echo "<p> </p>";

echo "<p><h4>List of types described in the WSDL for the Web service</h4></p>";
$output = $client->__getTypes();
while (list ($key, $val) = each ($output) ) echo $val."<br />"; echo "<p> </p>";
 
AHHHH, ce l'avevo già sotto il naso, c'è in tutti i tuoi script! Vabbè, erano le 2,26 di notte, un po di rincog....ento è giustificato. Buona giornata!
 
Magari bastasse cliccarci su. Vai a pagina 1 e vedrai come funziona il giocherello. Non ti scoraggiare, Marino ci ha dato la pappa già bella e pronta, bontà sua.
 
per facilitare la vita a me stesso e a chi ha voluto utilizzare gli script,
ho trasferito i dati delle fatture/scontrini ... ad un foglio excel
che viene usato come base dati x gli script
 
Io ho tutti gli script all'interno di un gestionale che pende ogni tipo di dato da un database. Quindi lavoro prevalentemente con degli array che invio agli script. I dati della risposta li visualizzo o in una tabella html (abbellita con plugin jquery ) se sono multipli o in una finestra di dialogo se sono singoli
 
Ultima modifica:
ache se con ritardo, può essere molto utile leggere gli "headers" usando il magico tag <xmp>
che permette la visualizzazione di codice xml nel browser
PHP:
<?php
    $err = "SOAP Fault: (faultcode: {$e->faultcode}, faultstring: {$e->faultstring})";

    echo "<p><h4>RICHIESTA TERMINATA CON ERRORE</h4></p>"."<p>$err</p>";
    error_log("RICHIESTA TERMINATA CON ERRORE", 0);


    print_r($e);       echo "<br /> <br />";
    echo show_var($e); echo "<br /> <br />";


    echo "REQUEST HEADERS ============" . "<br /><xmp>";
    var_dump($client->__getLastRequestHeaders()); echo "</xmp><p> </p>";

    echo "REQUEST ====================" . "<br /><xmp>";
    var_dump($client->__getLastRequest()); echo "</xmp><p> </p>";

    echo "RESPONSE HEADERS ===========" . "<br /><xmp>";
    var_dump($client->__getLastResponseHeaders()); echo "</xmp><p> </p>";

    echo "RESPONSE ===================" . "<br /><xmp>";
    var_dump($client->__getLastResponse()); echo "</xmp><p> </p>";


    trigger_error($err, E_USER_ERROR);
    die;
?>

risultato
Codice:
REQUEST HEADERS ============
string(261) "POST /ReportMensile730Web/ReportMensilePort HTTP/1.1
Host: invioSS730pTest.sanita.finanze.it
Connection: Keep-Alive
User-Agent: PHP-SOAP/5.4.9
Content-Type: text/xml; charset=utf-8
SOAPAction: "reportmensile.p730.sanita.finanze.it"
Content-Length: 857
"

REQUEST ====================
string(857) "<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://reportmensile.p730.sanita.finanze.it"><SOAP-ENV:Body><ns1:reportMensileRequest><ns1:opzionale1>0</ns1:opzionale1><ns1:opzionale2>0</ns1:opzionale2><ns1:opzionale3>0</ns1:opzionale3><ns1:pincode>5485370458</ns1:pincode><ns1:Proprietario><ns1:codiceRegione>604</ns1:codiceRegione><ns1:codiceAsl>120</ns1:codiceAsl><ns1:codiceSSA>010011</ns1:codiceSSA><ns1:cfProprietario>dZ40667PaZkzpW7Up4COEjoHtGTxL62EoOEyaNYvI66yU0mCp21rTcjIHIgQB6gYPZIOSGx+sLIweGhyqNHEjxq5NIlSoym8b5ZjW7+mLFFJHYSO2byPGxzupY4i1BcLSYq6O1o8wK3k/wJAsgfqFpdyyre91O8+d+ncvCIIS18=</ns1:cfProprietario></ns1:Proprietario><ns1:annoMese>201709</ns1:annoMese><ns1:tipoEstrazione>1</ns1:tipoEstrazione></ns1:reportMensileRequest></SOAP-ENV:Body></SOAP-ENV:Envelope>
"

RESPONSE HEADERS ===========
string(112) "HTTP/1.1 500 Internal Server Error
Content-Type: text/xml
X-Backside-Transport: FAIL FAIL
Connection: close
"

RESPONSE ===================
string(255) "<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Body>
<env:Fault>
<faultcode>env:Client</faultcode>
<faultstring>Credenziali non presenti</faultstring></env:Fault></env:Body></env:Envelope>"
 

Discussioni simili