730 precompilato + di uno snippet

msccmra51

Utente Attivo
9 Set 2017
78
3
8
Ah, l'ho dovuto semplificare come dicevo allora
Codice:
$SoapClientParam = array
    (
    "location"       => "x",
    "login"          => $login,
    "password"       => $password,
    "authentication" => SOAP_AUTHENTICATION_BASIC,
    "trace"          => true,
    "exceptions"     => false,
    "stream_context" => stream_context_create(array
    (
        "ssl" => array
        (
            "verify_peer"          => FALSE,
            "verify_peer_name"     => FALSE,
            "capture_session_meta" => TRUE,
        ),
    )),
    );
 

msccmra51

Utente Attivo
9 Set 2017
78
3
8
Oggi mi sono accorto che è impossibile modificare o cancellare un documento sul sistemaTs. Dal mio SW ottenevo l'errore che vedete qui giù e pensavo fosse colpa mia. Poi sono entrato nel sito sistemaTs e neppure li sono inplementate le funzionii. Spero si decidano a farlo. Non voglio essere irriverente ma come lavorano questi?
 

Allegati

  • mio.PNG
    mio.PNG
    13,2 KB · Visite: 218
  • sogei.PNG
    sogei.PNG
    51,8 KB · Visite: 216

marino51

Utente Attivo
28 Feb 2013
3.204
207
63
Lombardia
Ma se il cittadino si oppone io non la mando
ciao,
la risposta la trovi in FAQ quali sono i nuovi campi previsti dal dm19/10/2020,
hai terminato la lettura delle FAQ troppo presto

l'xml includesse il BOM di UTF-8 come numero fattura
hai salvato il file csv usando la codifica "utf-8 con bom",
"se salvi con nome" un file, con blocco note di vindows, guarda la "codifica" che precede il bottone "salva"
 

msccmra51

Utente Attivo
9 Set 2017
78
3
8
ciao,
la risposta la trovi in FAQ quali sono i nuovi campi previsti dal dm19/10/2020,
hai terminato la lettura delle FAQ troppo presto
Si Marino, più su dicevo di aver trovato la risposta ai miei dubbi. Succede anche a te di non poter cancellare o modificare?
 

malakian

Nuovo Utente
31 Dic 2020
6
0
1
ciao,
la risposta la trovi in FAQ quali sono i nuovi campi previsti dal dm19/10/2020,
hai terminato la lettura delle FAQ troppo presto


hai salvato il file csv usando la codifica "utf-8 con bom",
"se salvi con nome" un file, con blocco note di vindows, guarda la "codifica" che precede il bottone "salva"
si probabilmente ho salvato da Excel come "CSV UTF-8 comma delimited" (mannaggia a me, ho perso 2 giorni per capirlo :rolleyes: )

Nel frattempo ho risolto anche gli altri problemi e ho spedito tutte le fatture. Grazie!
 

Salvatore Albano

Nuovo Utente
15 Gen 2016
11
0
1
Buongiorno a tutti, ho modificato il mio tracciato con i nuovi campi obbligatori.
Quando invio il file, tramite wsdl, ottengo il seguente errore:

SoapFault Object ( [message:protected] => Error Fetching http headers [string:Exception:private] => [code:protected] => 0 [file:protected] => C:\dapp\lib\Dentalapp\CORPORATE\file_conf\Commerciale\script\sistema_ts\FattureInviaWsdl.php [line:protected] => 46 [trace:Exception:private] => Array (


qualcuno di voi si è già imbattuto in questa problematica?

Grazie
 

Salvatore Albano

Nuovo Utente
15 Gen 2016
11
0
1
Buongiorno a tutti, ho modificato il mio tracciato con i nuovi campi obbligatori.
Quando invio il file, tramite wsdl, ottengo il seguente errore:

<code>
SoapFault Object ( [message:protected] => Error Fetching http headers [string:Exception:private] => [code:protected] => 0 [file:protected] => C:\dapp\lib\Dentalapp\CORPORATE\file_conf\Commerciale\script\sistema_ts\FattureInviaWsdl.php [line:protected] => 46 [trace:Exception:private] => Array (

</code>
qualcuno di voi si è già imbattuto in questa problematica?

Grazie
 

msccmra51

Utente Attivo
9 Set 2017
78
3
8
Buongiorno a tutti, ho modificato il mio tracciato con i nuovi campi obbligatori.
Quando invio il file, tramite wsdl, ottengo il seguente errore:

SoapFault Object ( [message:protected] => Error Fetching http headers [string:Exception:private] => [code:protected] => 0 [file:protected] => C:\dapp\lib\Dentalapp\CORPORATE\file_conf\Commerciale\script\sistema_ts\FattureInviaWsdl.php [line:protected] => 46 [trace:Exception:private] => Array (


qualcuno di voi si è già imbattuto in questa problematica?

Grazie
Io genero l'XML manualmente, ho preferito fare così proprio per avere un controllo sicuro su come verrà. Non so se il tuo problema faccia riferimento a questo ma dato che vedo un errore Object forse è li il problema
 

LavorareperilMale

Nuovo Utente
4 Gen 2021
4
0
1
Ciao a tutte e a tutti, innanzi tutto grazie per i preziosi consigli che si trovano in questo thread.

La mia situazione è probabilmente più semplice delle vostre, devo caricare spese per un fisioterapista che ha già una applicazione in PHP+MySQL. In passato esportavo semplicemente le fatture estraendole con SELECT e poi usavo una variazione di un codice in python (leggendo dal mio file CSV invece che da un excel), un upload sincrono una spesa alla volta. Questo il repository da cui partivo: https://github.com/timendum/sistemats

Quest'anno però la situazione è cambiata e mi dicono che l'invio deve essere fatto mensilmente anziché annualmente, quindi

Ho scritto questa cosa qui: https://github.com/lavorareperilmale/s5ap (Sistema Sincrono Spesa Singola Soggetto Altri Professionisti), con l'idea di avere un cron job che manda una volta al mese, prima in test e il giorno dopo in prod, piu' o meno in questo modo:

PHP:
use lavorareperilmale\s5ap\Connettore;
// [...]

$connettore = new Connettore(); // Senza parametri per ambiente di test
// oppure per prod usare i propri dati:
// $connettore = new Connettore('Nome ut.','Password','Pin','CFProprietario','Piva');

foreach ($fatture as $fattura ) {
    // Assumendo che $fatture siano le fatture che si vogliono inviare
    $response = $connettore->invia(
                            $fattura->data_fattura,
                            $fattura->id_fattura,
                            $fattura->data_pagamento,
                            $fattura->cliente->codice_fiscale,
                            number_format($fattura->valore,2)
    );
    if ( is_soap_fault($response) ) {
        // Qualcosa e' andato storto. Si puo' stampare messaggio con:
        echo $response->getMessage(); // Vedi https://www.php.net/manual/en/class.soapfault.php
        die("Qualcosa e' andato storto");
    }

    if ( $response->esitoChiamata == 0 || $response->esitoChiamata == 2 ) {
        // Invio andato a buon fine, magari con warnings
        echo $response->protocollo;
        // io qui aggiorno il DB fatture con il protocollo
    } else {
        // Errore nell'invio: dump della risposta
        echo (serialize($response));
    }
// Alla fine invio una email in automatico con il riassunto.

Ho provato sia in test che in prod e "a me funziona", nel mio caso si parla di circa 50-100 fatture/mese. Posso entrare nei dettagli se vi interessa, ma il mio scopo principale era creare un'astrazione che mi consentisse di dimenticarmi della cifratura dei cf e dei pin e del formato dei tracciati (almeno fino alla prossima volta che cambia qualcosa).

Il codice e' fatto in poco tempo dopo il mio (altro) lavoro, quindi diciamo un po' alla
percio' se volete fare submit di qualche PR, you are welcome!

Ciao e grazie ancora,
LPM.
 

krokus

Nuovo Utente
9 Gen 2021
3
0
1
Ciao a tutte e a tutti, innanzi tutto grazie per i preziosi consigli che si trovano in questo thread.

La mia situazione è probabilmente più semplice delle vostre, devo caricare spese per un fisioterapista che ha già una applicazione in PHP+MySQL. In passato esportavo semplicemente le fatture estraendole con SELECT e poi usavo una variazione di un codice in python (leggendo dal mio file CSV invece che da un excel), un upload sincrono una spesa alla volta. Questo il repository da cui partivo: https://github.com/timendum/sistemats

Quest'anno però la situazione è cambiata e mi dicono che l'invio deve essere fatto mensilmente anziché annualmente, quindi

Ho scritto questa cosa qui: https://github.com/lavorareperilmale/s5ap (Sistema Sincrono Spesa Singola Soggetto Altri Professionisti), con l'idea di avere un cron job che manda una volta al mese, prima in test e il giorno dopo in prod, piu' o meno in questo modo:

PHP:
use lavorareperilmale\s5ap\Connettore;
// [...]

$connettore = new Connettore(); // Senza parametri per ambiente di test
// oppure per prod usare i propri dati:
// $connettore = new Connettore('Nome ut.','Password','Pin','CFProprietario','Piva');

foreach ($fatture as $fattura ) {
    // Assumendo che $fatture siano le fatture che si vogliono inviare
    $response = $connettore->invia(
                            $fattura->data_fattura,
                            $fattura->id_fattura,
                            $fattura->data_pagamento,
                            $fattura->cliente->codice_fiscale,
                            number_format($fattura->valore,2)
    );
    if ( is_soap_fault($response) ) {
        // Qualcosa e' andato storto. Si puo' stampare messaggio con:
        echo $response->getMessage(); // Vedi https://www.php.net/manual/en/class.soapfault.php
        die("Qualcosa e' andato storto");
    }

    if ( $response->esitoChiamata == 0 || $response->esitoChiamata == 2 ) {
        // Invio andato a buon fine, magari con warnings
        echo $response->protocollo;
        // io qui aggiorno il DB fatture con il protocollo
    } else {
        // Errore nell'invio: dump della risposta
        echo (serialize($response));
    }
// Alla fine invio una email in automatico con il riassunto.

Ho provato sia in test che in prod e "a me funziona", nel mio caso si parla di circa 50-100 fatture/mese. Posso entrare nei dettagli se vi interessa, ma il mio scopo principale era creare un'astrazione che mi consentisse di dimenticarmi della cifratura dei cf e dei pin e del formato dei tracciati (almeno fino alla prossima volta che cambia qualcosa).

Il codice e' fatto in poco tempo dopo il mio (altro) lavoro, quindi diciamo un po' alla
percio' se volete fare submit di qualche PR, you are welcome!

Ciao e grazie ancora,
LPM.

ciao lavorareperilmale, stavo utilizzando in una mia applicazione il tuo approccio perchè più simile alle mie esigenze e ti ringrazio anticipatamente per il contributo dato. Ricevo senza problemi il n° di protocollo dell'invio. Stavo inviando più fatture ciclando l'intero script e questa cosa mi piace poco. Potresti specificare come hai definito l'array di [$fatture] per inviare piu fatture insieme?
 

LavorareperilMale

Nuovo Utente
4 Gen 2021
4
0
1
ciao lavorareperilmale, stavo utilizzando in una mia applicazione il tuo approccio perchè più simile alle mie esigenze e ti ringrazio anticipatamente per il contributo dato. Ricevo senza problemi il n° di protocollo dell'invio. Stavo inviando più fatture ciclando l'intero script e questa cosa mi piace poco. Potresti specificare come hai definito l'array di [$fatture] per inviare piu fatture insieme?

Ciao scusa ho visto solo ora il messaggio. Non sono sicuro di avere ben capito la domanda, ma nel mio caso $fatture e' una query di un modello Laravel, una cosa del tipo
PHP:
$fatture = Fatture::where(...)->where(...)->get()

Tu come ti connetti al DB? Anche se usassi mysqli, penso potresti fare una cosa di questo tipo, invece di foreach:
PHP:
while($obj = $result->fetch_object()) {
  $num_fattura = $obj->id; // (sostituisci a id il nome della colonna)
  $data_fattura = $obj->data_emissione // come sopra
  ...
  $response = $connettore->invia($data_fattura, $num_fattura...)
 
}
 

krokus

Nuovo Utente
9 Gen 2021
3
0
1
Ciao scusa ho visto solo ora il messaggio. Non sono sicuro di avere ben capito la domanda, ma nel mio caso $fatture e' una query di un modello Laravel, una cosa del tipo
PHP:
$fatture = Fatture::where(...)->where(...)->get()

Tu come ti connetti al DB? Anche se usassi mysqli, penso potresti fare una cosa di questo tipo, invece di foreach:
PHP:
while($obj = $result->fetch_object()) {
  $num_fattura = $obj->id; // (sostituisci a id il nome della colonna)
  $data_fattura = $obj->data_emissione // come sopra
  ...
  $response = $connettore->invia($data_fattura, $num_fattura...)

}

LavorareperilMale, si giusto, funziona benissimo, effettuo anche io un ciclo per scorrere i miei record. Io ho utilizzato il tuo codice senza Laravel però mi sono reso conto che in test, per inviare 100 fatture, impiega mediamente più di un minuto, per 1000 fatture ho impiegato circa 12 minuti però "almeno" il webservices non è andato in timeout.

Chiedo anche agli altri utenti, il tempo che impiegate con l'invio massivo è così alto?

LavorareperilMale, poi ho notato che utilizzi la natura dell'operazione settata a "N2.1". Non so se nel tuo caso specifico bisogna utilizzare questa dicitura ma la natura delle operazioni mediche esenti da iva è "N4" senza sotto codici (art. 10 n. 18 DPR 633/72) dagli un'occhiata.

Ti aggiorno sull'esito dell'implementazione delle ricevute utilizzando il tuo metodo.
 

LavorareperilMale

Nuovo Utente
4 Gen 2021
4
0
1
Chiedo anche agli altri utenti, il tempo che impiegate con l'invio massivo è così alto?

LavorareperilMale, poi ho notato che utilizzi la natura dell'operazione settata a "N2.1". Non so se nel tuo caso specifico bisogna utilizzare questa dicitura ma la natura delle operazioni mediche esenti da iva è "N4" senza sotto codici (art. 10 n. 18 DPR 633/72) dagli un'occhiata.

Ti aggiorno sull'esito dell'implementazione delle ricevute utilizzando il tuo metodo.

Piu' o meno il tempo e' quello.
Non ho problemi di timeout perche' non lo faccio via web server ma da un comando in un cron.
Si' hai ragione sulla natura IVA, e' un pezzo rimasto da una vecchia fattura estero.
 

LavorareperilMale

Nuovo Utente
4 Gen 2021
4
0
1
LavorareperilMale, poi ho notato che utilizzi la natura dell'operazione settata a "N2.1". Non so se nel tuo caso specifico bisogna utilizzare questa dicitura ma la natura delle operazioni mediche esenti da iva è "N4" senza sotto codici (art. 10 n. 18 DPR 633/72) dagli un'occhiata.

se fai pull della nuova versione ora ha N4 come default value.
 

msccmra51

Utente Attivo
9 Set 2017
78
3
8
Il servizio di cancellazione e variazione documenti è stato ripristinato sia in test che in produzione
 

charger

Nuovo Utente
12 Gen 2021
9
0
1
Un caro saluto a tutti e grazie per avermi accettato.

Sto impazzendo anche io per far funzionare questi benedetti invii...ho letto tutta la discussione e le ho provate un po' tutte, ma non ne esco.

Sono riuscito a far funzionare l'invio, quantomeno, lo script mi diceva che il file era inviato, però la verifica diceva che le credenziale non erano corrette.

Esiste per caso una versione dello script funzionante con php7.2?

Poi non ho capito se le credenziali di test che si trovano nel kit di sviluppo possono essere usate così come forrnite oppure se vanno cifrate...grazie a tutti.

Aiutatemi!
 

charger

Nuovo Utente
12 Gen 2021
9
0
1
Integro la situazione con due schermate: nella prima vedete l'invio che sembra corretto, nella seconda l'errore

Schermata 2021-01-12 alle 17.14.17.png


ECCO IL PROBLEMA

Schermata 2021-01-12 alle 17.14.46.png
 

marino51

Utente Attivo
28 Feb 2013
3.204
207
63
Lombardia
Esiste per caso una versione dello script funzionante con php7.2?
io sono fermo alla versione 5.6, per quanto letto qui, mi sembra che non vi siano particolari difficoltà ad usare gli stessi script con versioni di php più recenti

Sono riuscito a far funzionare l'invio, quantomeno, lo script mi diceva che il file era inviato, però la verifica diceva che le credenziale non erano corrette.
le credenziali devono essere coerenti con i contenuti del file inviato,
nel kit trovi lo user id e password a cui sono associati una serie di valori tra cui il codice fiscale, la partita iva ed altro
certo che se usi uno specifico esempio, le credenziali sono quelle indicate nell'esempio ed i contenuti del file devono corrispondere agli altri elementi dell'esempio stesso

Poi non ho capito se le credenziali di test che si trovano nel kit di sviluppo possono essere usate così come forrnite oppure se vanno cifrate...
puoi vedere la documentazione inclusa nel kit,
in alcune situazioni sono usate in chiaro, in altre sono cifrate,
ma sono così dal 2016, primo anno di invio dei dati del 2015 e speriamo che nessuno si inventi di cambiare !

ciascuno script,

invio,
ricevuta,
esito,
dettaglio errori,
Interrogazione Puntuale Documenti,
Report Mensile Documenti,

utilizza le credenziali e i parametri addizionali che sono stati indicati nell'invio
per questo esiste uno script "credenziali.php" che contiene tutte queste informazioni
in modo da renderle disponibili (include) a ciascuno script che venga eseguito
 

charger

Nuovo Utente
12 Gen 2021
9
0
1
io sono fermo alla versione 5.6, per quanto letto qui, mi sembra che non vi siano particolari difficoltà ad usare gli stessi script con versioni di php più recenti


le credenziali devono essere coerenti con i contenuti del file inviato,
nel kit trovi lo user id e password a cui sono associati una serie di valori tra cui il codice fiscale, la partita iva ed altro
certo che se usi uno specifico esempio, le credenziali sono quelle indicate nell'esempio ed i contenuti del file devono corrispondere agli altri elementi dell'esempio stesso


puoi vedere la documentazione inclusa nel kit,
in alcune situazioni sono usate in chiaro, in altre sono cifrate,
ma sono così dal 2016, primo anno di invio dei dati del 2015 e speriamo che nessuno si inventi di cambiare !

ciascuno script,

invio,
ricevuta,
esito,
dettaglio errori,
Interrogazione Puntuale Documenti,
Report Mensile Documenti,

utilizza le credenziali e i parametri addizionali che sono stati indicati nell'invio
per questo esiste uno script "credenziali.php" che contiene tutte queste informazioni
in modo da renderle disponibili (include) a ciascuno script che viene eseguito


Grazie, alla fine ho trovato il problema: sbagliavo l'endpoint per chiedere la ricevuta.

Mi confermi una cosa? Posso creare gli xml di decine di fatture e mandarli in una volta con un solo zip?
 
Discussioni simili
Autore Titolo Forum Risposte Data
pup3770 campo precompilato MySQL 1
novello88 [EXCEL] Calendario precompilato Windows e Software 1
A cancellare form precompilato Classic ASP 2
B Campo form precompilato Classic ASP 3
A For in uno switch PHP 1
A Riprodurre uno schema colore Photoshop 15
L Non riesco a riprodurre uno sfondo Photoshop 0
R Distribuire uno Script "Facebook Auto Post" PHP 0
rebeca Come Unire file PST in Uno? Windows e Software 0
M temi premium Shopify da 180$ l'uno a prezzi bassissimi Altri Annunci 0
A eliminare caratteri speciali mettendo uno spazio PHP 0
U Cerco un graphic designer e uno sviluppatore Android Offerte e Richieste di Lavoro e/o Collaborazione 1
C Salve a tutti, sono uno studente Presentati al Forum 1
G Fare uno sfondo con il prato e degli alberi Photoshop 0
K Help: problema con uno script di booking in php! PHP 0
A Creare con Javascript un percorso all'interno di uno spazio Javascript 0
D [Javascript] inserire uno script in un file php Javascript 6
P [PHP] Contare quante volte uno stesso id si ripete nella tabella PHP 12
giorgiacampus Vendo un account Instagram da 5,7k e uno da quasi 3k Annunci servizi di Social Media Marketing 2
T interpretare uno script php non fatto da me... PHP 3
M [PHP] valore dentro uno shortcode PHP 0
T Artisti: Uno o due profili Instagram? Social Media Marketing 2
S [PHP] Ricercare Uno Specifico Carattere In Una Precisa Posizione PHP 3
T mostrare il riultato di uno script php Ajax 2
momeraths [WordPress] Problema creazione di uno shortcode WordPress 2
A [Javascript] [RISOLTO] Doppio "submit", in uno stesso "Form" , che puntino ad "action" diversi Javascript 1
L Smartphone per fotografiaSto cercando uno smartphone che scatta foto in RAW/DNG e che possa sostitui Smartphone e tablet 2
F [MySQL] Select con due condizioni su uno stesso campo MySQL 7
L [PHP] Inserire google recaptcha in uno form contatti PHP 1
T [PHP] Relazione uno a uno PHP 1
4potere Quanto pagare ad uno studente per i testi in ottica seo per il sito? SEO e Posizionamento 2
F [HTML] Effetto fade su ogni immagine contenute in uno slider HTML e CSS 16
ANDREA20 Creare carrello della spesa e applicare uno sconto E-Commerce 6
M Formazione per diventare uno specialista di Sicurezza Informatica Sicurezza e Virus 3
Gabriele Visioli Come creare uno spoiler in una pagina o post WordPress 1
M Ricercare uno specifico carattere in una precisa posizione PHP 5
novello88 Quanti domini gestisce uno specifico provider? Domini 1
felino [Wordpress] Custom Post Type: plugin per creare uno slider nei widget WordPress 0
M Creare stampe pdf con tabelle relazione uno a molti PHP 0
ecosito CSS: è possibile cambiare font con uno non di uso comune? HTML e CSS 11
M Relazione uno a molti PHP 59
B Problema di visualizzazione di uno Slider in jquery jQuery 4
M Problema relazione uno a molti con 3 tabelle MySQL 4
felino [Oracle] Eseguire uno split di un record Oracle 1
A Visualizzare minuti con due cifre anche se il valore del tag ne riporta solo uno jQuery 1
A Visualizzare minuti con due cifre anche se il valore del tag ne riporta solo uno jQuery 0
Mr. Alex D. Come far apparire un testo preimpostato in una casella di un form di uno script php? PHP 1
felino Google My Business: uno strano errore... Social Media Marketing 3
otto9due Piccolo conflitto jquery.. Chi gli da uno sguardo? jQuery 6
S Un aiuto su uno script di ricerca avanzata in php che sto verificando. PHP 1

Discussioni simili