Fatturazione elettronica B2B: programmi

di il
814 risposte

814 Risposte - Pagina 27

  • Re: Fatturazione elettronica B2B: programmi

    Le ho provate tutte per poter Convertire con Delphi un file XML ma non ci sono riuscito.
    Purtroppo, il programma che ha fatto +xm2+ che è una figata pazzesca, mi è si utile ma io devo fare la stessa cosa nel gestionale che la mia azienda utilizza.
    Mi spiego meglio, la mia azienda ha da diversi anni una soluzione sviluppate dapprima in Delphi6 e successivamente in Delphi7. Il gestionale creato ad Hoc per la mia azienda è in continua evoluzione. Io dovrei praticamente importare nel mio stistema informatico la fattura elettronica, riesco ad importare la testata della stessa e di conseguenza protocollarla, il problema è che la fattura deve essere poi allegata al protocollo in formato elettronico. Ad oggi noi importiamo il PDF che ci viene inviato e lo visualizziamo, il problema è che io vorrei che una volta che il file XML è stato scaricato, in un solo passaggio il mio software faccia questo:
    1) Leggo il file XML
    2) Genero il protocollo
    3) Genero il PDF
    4) Lo allego
    Con il sorgente di +m2+ sono certo di riuscirci per questo volevo includere la routine nel mio gestionale.
    Ovviamete se vi sono librerie particolari mi piacerebbe poterle avere.
  • Re: Fatturazione elettronica B2B: programmi

    +m2+ ha scritto:


    f3rr0 ha scritto:


    A me interesserebbe sapere cosa hai usato per xml2pdf. Edocengine?
    Anche. non è difficile, ecco un frammento
    
    
    function g_xmltopdf(i_form:TObject;i_nomexml:string;i_nomexsl:string;i_nomepdf:string;i_openaftercreate:boolean=true):string;
    var
       myXMLDocument1:  TXMLDocument;
       myXSLPageProducer1: TXSLPageProducer;
       mymemo1:tmemo;
       myHTMLViewer1 :THTMLViewer;
       mygtHtmlViewInterface1: TgtHtmlViewInterface;
       mygtPDFEngine1: TgtPDFEngine;
    
    begin
       result:='';
      (...)
       mymemo1                 := TMemo.Create(nil);
       myXMLDocument1          := TXMLDocument.Create(TForm(i_form));
       myXSLPageProducer1      := TXSLPageProducer.Create(TForm(i_form));
       myhtmlviewer1           := Thtmlviewer.Create(tform(i_form));
       mygtHtmlViewInterface1  := TgtHtmlViewInterface.Create(tform(i_form));
       mygtPDFEngine1          := TgtPDFEngine.Create(TForm(i_form));
    
       myMemo1.WordWrap := False;
    
       mygtPDFEngine1.FileExtension := 'pdf';
       mygtPDFEngine1.FileDescription := 'Adobe PDF Files';
       mygtPDFEngine1.InputXRes := 96;
       mygtPDFEngine1.InputYRes := 96;
       mygtPDFEngine1.ReferencePoint := rpBand;
       mygtPDFEngine1.FontEncoding := feWinAnsiEncoding;
    
       mygtHtmlViewInterface1.Engine := mygtPDFEngine1;
       mygtHtmlViewInterface1.DoBeginDoc := True;
       mygtHtmlViewInterface1.DoEndDoc := True;
    
       myhtmlviewer1.Parent := TForm(i_form);
       myhtmlviewer1.Left := 802;
       myhtmlviewer1.Top := 104;
       myhtmlviewer1.Width := 652;
       myhtmlviewer1.Height := 107;
       myhtmlviewer1.TabOrder := 14;
       myhtmlviewer1.BorderStyle := htFocused;
       myhtmlviewer1.Visible := False;
       myhtmlviewer1.HistoryMaxCount := 0;
       myhtmlviewer1.DefFontName := 'Times New Roman';
       myhtmlviewer1.DefPreFontName := 'Courier New';
       myhtmlviewer1.NoSelect := False;
       myhtmlviewer1.CharSet := DEFAULT_CHARSET;
       myhtmlviewer1.PrintMarginLeft := 2.000000000000000000;
       myhtmlviewer1.PrintMarginRight := 2.000000000000000000;
       myhtmlviewer1.PrintMarginTop := 2.000000000000000000;
       myhtmlviewer1.PrintMarginBottom := 2.000000000000000000;
       myhtmlviewer1.PrintScale := 1.000000000000000000;
    
       try
           myXMLDocument1.Active := False;
           myXSLPageProducer1.FileName := i_nomexsl;
           myXMLDocument1.FileName := i_nomexml;
           myXSLPageProducer1.XMLData := myXMLDocument1;
           myXMLDocument1.Active := True;
           mymemo1.Text := myXSLPageProducer1.Content;
           myXMLDocument1.Active := False;
    
           myHTMLViewer1.LoadFromString(mymemo1.Text);
    
           mygtHtmlViewInterface1.Engine := mygtPDFEngine1;
           mygtPDFEngine1.Preferences.OpenAfterCreate:=i_openaftercreate;
           mygtPDFEngine1.Preferences.ShowSetupDialog := false;
           mygtPDFEngine1.FileName := i_nomepdf;
           mygtHtmlViewInterface1.RenderDocument(myHTMLViewer1);
    
      except
           on E: Exception do
               loggaNow('ECCEZIONE 2710: '+E.Message);
      end;
       if FileExists(i_nomepdf) then
           result:=i_nomepdf;
      mymemo1.Free;
      myXMLDocument1.Free;
      myXSLPageProducer1.free;
      myhtmlviewer1.Free;
      mygtHtmlViewInterface1.Free;
      mygtPDFEngine1.Free;
    end;
    Mi serve la libreria se no mi dà errore.
  • Re: Fatturazione elettronica B2B: programmi

    XML2PDF continua qui

    Fatturazione elettronica B2B: programmeli - xml2pdf

    https://www.iprogrammatori.it/forum-programmazione/fatturazione-elettronica/fatturazione-elettronica-b2b-programmeli-xml2pdf-t37541.html

    con tanto di elle in meno
  • Re: Fatturazione elettronica B2B: programmi

    Jano78 ha scritto:


    Mi serve la libreria se no mi dà errore.
    Et voilà
    Le altre, se non sbaglio, fanno già parte di Delphi.
    N
  • Re: Fatturazione elettronica B2B: programmi

    Ragazzi, sono nei casini.
    Un mio cliente, commercialista di un suo cliente che gestisce più punti vendita affiliati Conad, lamenta la ricezione -da parte del suo cliente- di una fattura non gestibile col mio gestionale.
    Inizialmente è stato richiesto a Conad di indicare all'interno della fattura, da qualcvhe parte, un codice che distinguesse il punto vendita di scarico della merce, e loro che hanno fatto? Il "codice punto vendita" (tra l'altro, non individuabile) lo hanno inserito nella denominazione del file... Il file ricevuto è il seguente "20190103_183512.308_IT02470300373_2OQt_201901033605.xml": vi sembra normale?
    Il mio gestionale conserva in archivio (Firebird.VarChar(27)) il nome del file che, comunque, alla lettura, viene spostato in una cartella specifica di conservazione. Possibile che solo per Conad debba modificare (raddoppio) l'ampiezza del campo? Ed anche se estraessi il nome "standard" dal file per memorizzarlo, come collego tale nome memorizzato col nome del file che non può essere modificato in conservazione?
    E poi, non era obbligatorio impostare il nome del file come indicato dal Ministero (IdPaese+IdFiscale+_+ProgressivoEmissione)?
    E poi, il tag ProgressivoEmissione (vado a memoria, non sono andato a controllare il nome del tag) non deve contenere lo stesso dato inserito nel nome del file dopo underscore? Invece lì cii hanno messo come progressivo ermissione un numeraccio di 8 cifre... che non è presente nella denominazione del file.
    Che ne dite? La faccio una strigliata telefonica al responsabile IT della Conad? O mi debbo piangere il problema e modificare il gestionale rendendolo addirittura personalizzato per il cliente specifico? Cacchio!!!
    Antonio BIANCA
  • Re: Fatturazione elettronica B2B: programmi

    Era ben più logico usare iddocumento in datiordineacquisto a memoria 2212
    Cosa intendi per file ricevuto?
    per email normale, o consegnato da sdi?


    Il tag progressivo non ha legami col nome del file. Esso (il nome) viene usato idiotamente da sogei come chiave
  • Re: Fatturazione elettronica B2B: programmi

    Il programmello tposto (aggiornato) è ora qui
    https://www.iprogrammatori.it/forum-programmazione/fatturazione-elettronica/fatturazione-elettronica-b2b-programmeli-tposto-t37561.html

    Essenzialmente esplicita il codice da usare per le riconciliazioni accettazione\consegna PEC, e salva il file inviato in formato EML
  • Re: Fatturazione elettronica B2B: programmi

    Function g_xmltopdf(i_form:TObject;i_nomexml:string;i_nomexsl:string;i_nomepdf:string;i_openaftercreate:boolean=true):string;
    Ho capito come funziona la funzione, l'unico dubbio è su i_form che è un TObject, quando chiamo la funzione, il parametro i_form a cosa lo devo rendere uguale?

    g_xmltopdf(?, 'pippo.xml';'fogliostile.xls', 'pluto.pdf'');

    il "?" sta per non ho capito cosa metterci.

    Jano
  • Re: Fatturazione elettronica B2B: programmi

    Ciao, +m2+,
    ho girato la domanda per email alla segreteria del sito intermediario di Conad Bari che si incarica della spedizione a SDI delle fatture degli associati e di ricevere da SDI le stesse fatture (mi vien da ridere... quelle che spedisce poi le riceve...). I file ricevuti dal SDI, co si sono espressi, vengono poi messi a disposizione degli associati.
    Riguardo al file hanno riferito che c'è stato un errore, che il file non doveva essere quello (era un file di lavoro interno...?!?), ma un altro ("IT02470300373_2689562.XML").
    La sintassi del nome, però, continua a non essere quella prevista dal Ministero e mi sembra strano che l'AdE dica per iscritto che la parte successiva all'underscore DEVE contenere MASSIMO 5 caratteri alfanumerici ed a Conad abbia permesso di inoltrare file con 7 caratteri... mah!
    Mi metterò in contatto con la segretaria e vi farò sapere.
    Antonio
  • Re: Fatturazione elettronica B2B: programmi

    Jano78 ha scritto:


    Function g_xmltopdf(i_form:TObject;i_nomexml:string;i_nomexsl:string;i_nomepdf:string;i_openaftercreate:boolean=true):string;
    Ho capito come funziona la funzione, l'unico dubbio è su i_form che è un TObject, quando chiamo la funzione, il parametro i_form a cosa lo devo rendere uguale?

    g_xmltopdf(?, 'pippo.xml';'fogliostile.xls', 'pluto.pdf'');

    il "?" sta per non ho capito cosa metterci.

    Jano

    Una tform per esempio
    
    nomescritto:=g_xmltopdf(frmfelmain,filexml,filexsl,filepdf,false);
    
  • Re: Fatturazione elettronica B2B: programmi

    niobi ha scritto:


    Ciao, +m2+,
    ...("IT02470300373_2689562.XML").
    La sintassi del nome, però, continua a non essere quella prevista dal Ministero e mi sembra strano che l'AdE dica per iscritto che la parte successiva all'underscore DEVE contenere MASSIMO 5 caratteri alfanumerici ed a Conad abbia permesso di inoltrare file con 7 caratteri... mah!
    Mi metterò in contatto con la segretaria e vi farò sapere.
    Antonio
    A me risultano scartati tutti i file con più di 5, MA riconosco che è un pezzo che non provo, non ci vuol niente che gli idioti SOGEI abbiano cambiato qualcosa.
  • Re: Fatturazione elettronica B2B: programmi

    Portate pazienza, ma seguire l'encomiabile lavoro di +m2+, a causa della divisione dei 3d, sta diventando un gran lavoro
    Suddividere i vari moduli in tanti 3d diversi non fa che disperdere le energie per cercare qua' e la' gli aggiornamenti apportati, le correzioni, i consigli degli utilizzatori, ecc
    Col rischio, sicuro, di perdere informazioni importanti perche' magari si sono visitati 6 3d e non tutti e 7
    Capisco che il parere di un singolo conti poco, ma secondo me era mooolto meglio prima
    La discussione che va avanti, e gli aggiornamenti riportati nei primi messaggi
    Spero, mi auguro, auspico, un cambiamento di rotta
  • Re: Fatturazione elettronica B2B: programmi

    Per +m2+
    Dove e' possibile recuperare il tuo Tpiva.exe ?
    Dal link fornito qualche settimana fa non sembra piu' scaricabbole
  • Re: Fatturazione elettronica B2B: programmi

    amorosik ha scritto:


    Per +m2+
    Dove e' possibile recuperare il tuo Tpiva.exe ?
    Dal link fornito qualche settimana fa non sembra piu' scaricabbole
    Evidentemente dopo un po' l'hosting gratuito decade.
    Devo ricaricarlo.
    ---
    Volendo lo metto dentro xml2pdf (c'è già), cioè gli faccio creare un file di nome fisso.
    In tal modo lo mantengo allineato.
  • Re: Fatturazione elettronica B2B: programmi

    amorosik ha scritto:


    ...ma secondo me era mooolto meglio prima
    La discussione che va avanti, e gli aggiornamenti riportati nei primi messaggi
    Spero, mi auguro, auspico, un cambiamento di rotta
    Non sono io a decidere
Devi accedere o registrarti per scrivere nel forum
814 risposte