Ciao ragazzi, e veramente complimenti per il bel lavoro, in particolare a Marino e Rudy, vi devo una birra o due
, condivido il suggerimento di pubblicare su GitHub in modo da raccogliere anche la mia donazione agli autori!
Scrivo qui perché ho due problemini interessanti
Ho scaricato i sorgenti e adattato
FattureGeneraXMLdaTXT.php
in modo da recepire gli ultimi aggiornamenti richiesti per l'invio delle fatture di mia moglie (Biologa Nutrizionista, categoria Atri Professionisti) per quest'anno, ovvero:
PHP:
$pagamentoTracciato = $documentoSpesa->addChild('pagamentoTracciato', $col[_ColPagTracciato]);
$tipoDocumento = $documentoSpesa->addChild('tipoDocumento', 'F');
$flagOpposizione = $documentoSpesa->addChild('flagOpposizione', '0');
$naturaIVA = $voceSpesa->addChild('naturaIVA', 'N4');
in questo modo ottengo, per una fattura di esempio il bellissimo XML che segue:
XML:
<?xml version="1.0" encoding="utf-8"?>
<precompilata xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="730_precompilata.xsd">
<proprietario>
<cfProprietario>Ix4OzmfPxB0TTwS6+Hc0enwIhMtunRUkB4CjlDDDns5pCy2iZJ4Qxy+C/X8mMpLRz37tOXnklkkPml5Di32wtQlXpCL2qais/ZjSmwwLldUFvxQPRrwsOSgbH0yK3n+cfgXHbuyTFmjKBAT1dkc5xJ4sTW6qPlaMEIJIevQXvrQ=</cfProprietario>
</proprietario>
<documentoSpesa>
<idSpesa>
<pIva>00265910661</pIva>
<dataEmissione>2020-01-07</dataEmissione>
<numDocumentoFiscale>
<dispositivo>1</dispositivo>
<numDocumento>1</numDocumento>
</numDocumentoFiscale>
</idSpesa>
<dataPagamento>2020-01-07</dataPagamento>
<flagOperazione>I</flagOperazione>
<cfCittadino>DsinnfxT7GCe+bZsbwq/q0FP99qJCIYVn4PM0k7crNea+2O60gTMzhL6uQ+2pZjyEwWNFIYMVdjbeTTqcFpzvTjNY2W/5WGfcEeDxYerKBN0jmyu3f43PqC1yxKU59lGHgj5yu+bZgCvaSDtkAblZ/IvniSJ65KChIL3eSDlUHQ=</cfCittadino>
<pagamentoTracciato>NO</pagamentoTracciato>
<tipoDocumento>F</tipoDocumento>
<flagOpposizione>0</flagOpposizione>
<voceSpesa>
<tipoSpesa>SR</tipoSpesa>
<importo>40.00</importo>
<naturaIVA>N4</naturaIVA>
</voceSpesa>
</documentoSpesa>
</precompilata>
che su
www.xmlvalidation.com viene validato con il nuovo xsd del kit
730_precompilata.xsd
, ma una volta che procedo con l'invio ottengo l'errore:
E011 FILE NON CONFORME ALLO SCHEMA DI VALIDAZIONE
leggevo a diversi capitavano errori simili a causa di date non coerenti o P.IVA più lunghe.. io è da due giorni che ci sbatto la testa senza venirne a capo..
Il secondo problema invece riguarda lo script di invio. Ora una volta generato il file ho provveduto alla spedizione tramite SoapUI perché nei log di
FattureInviaWsdl.php
trovo l'errore
PHP Fatal error: Uncaught Error: Call to undefined function each() in C:\Users\...\730precompilato\FattureInviaWsdl.php:30
l'istruzione è
while (list ($key, $val) = each ($output) ) echo $val."<br />"; echo "<p> </p>";
Codice:
[30-Dec-2020 22:12:25 UTC] main .\FattureInviaWsdl.php
[30-Dec-2020 22:12:25 UTC] TEST RUN ***************
[30-Dec-2020 22:12:25 UTC] name : Dr. PROVA
[30-Dec-2020 22:12:25 UTC] login : PROVAX00X00X000Y
[30-Dec-2020 22:12:25 UTC] password : Salve123
[30-Dec-2020 22:12:25 UTC] cfProprietario : PROVAX00X00X000Y
[30-Dec-2020 22:12:25 UTC] cfProprietarioCifrato : Ix4OzmfPxB0TTwS6+Hc0enwIhMtunRUkB4CjlDDDns5pCy2iZJ4Qxy+C/X8mMpLRz37tOXnklkkPml5Di32wtQlXpCL2qais/ZjSmwwLldUFvxQPRrwsOSgbH0yK3n+cfgXHbuyTFmjKBAT1dkc5xJ4sTW6qPlaMEIJIevQXvrQ=
[30-Dec-2020 22:12:25 UTC] piProprietario : 00265910661
[30-Dec-2020 22:12:25 UTC] pincodeInviante : 1234567890
[30-Dec-2020 22:12:25 UTC] pincodeInvianteCifrato : HmhwvMEtyHOwDm5K3YEQ9RZiNAkJ+FvRwXodiABj9HpRbdQUaLa4cyYZU8YqaBsSs4Lq6u85uDci6xowmF7ZrVgLhZ83q4nSi8bSvVDPS5pPStBlOJfvo8AisqDiKdJvEPbkIhBVnbmf28gh28G/vQLkp2RgVEYinPA0LUCz8PQ=
[30-Dec-2020 22:12:25 UTC] PHP Warning: Undefined array key 1 in C:\Users\Guido\Dropbox\Cartella Condivisa Guido-Luana\Nutrizione Luana\Fatturazione Elettronica e Tessera Sanitaria\Sistema Tessera Sanitaria 2021\php_scripts_GR\Nuova versione\730precompilato\Credenziali.php on line 133
[30-Dec-2020 22:12:25 UTC] File trattato : Fatture730.zip
[30-Dec-2020 22:12:25 UTC] carico in memoria il file Fatture730.zip
[30-Dec-2020 22:12:25 UTC] definisco il file wsdl InvioTelematicoSpeseSanitarie730p.wsdl
[30-Dec-2020 22:12:25 UTC] definisco the soap server location https://invioSS730pTest.sanita.finanze.it/InvioTelematicoSS730pMtomWeb/InvioTelematicoSS730pMtomPort
[30-Dec-2020 22:12:25 UTC] PHP Fatal error: Uncaught Error: Call to undefined function each() in C:\Users\...\730precompilato\FattureInviaWsdl.php:30
Stack trace:
#0 {main}
thrown in C:\Users\...\730precompilato\FattureInviaWsdl.php on line 30
L'errore può dipendere dal fatto che sto usando php 8 ? (da assoluto ignorante di php ho scaricato l'ultima versione che ho trovato sul sito, mentre poi ho letto voi usate la 5.xx )
Grazie mille, e buon San Silvestro