Hello, I'm trying Export XMLPort txt file from data of several companies and it works but I need that between companies
when XMLItem pass to the next company don't let blank spaces between rows in the text file exported.
This is the code
textelement(Root) { tableelement(Companys; Company) { tableelement(CustLE; "Cust. Ledger Entry") { SourceTableView = SORTING("Customer No.", Open, Positive, "Due Date", "Currency Code"); CalcFields = "Original Amt. (LCY)", "Remaining Amt. (LCY)", "Amount (LCY)"; RequestFilterFields = "Customer No.", "Posting Date", "Document No.", "Doc. Status"; fieldelement(PostingDate; CustLE."Posting Date") { } fieldelement(DocumentType; CustLE."Document Type") { } fieldelement(DocumentNo; CustLE."Document No.") { } fieldelement(BillNo; CustLE."Bill No.") { } fieldelement(DocumentSituation; CustLE."Document Situation") { } fieldelement(DocumentStatus; CustLE."Document Status") { } fieldelement(CustomerNo; CustLE."Customer No.") { } textelement(RazonSocial) { } textelement(Bloqueado) { } fieldelement(Description; CustLE."Description") { } fieldelement(Delegacioncobro; CustLE."Delegacion cobro") { } fieldelement(CurrencyCode; CustLE."Currency Code") { } fieldelement(OriginalAmtLCY; CustLE."Original Amt. (LCY)") { } fieldelement(AmountLCY; CustLE."Amount (LCY)") { } fieldelement(RemainingAmtLCY; CustLE."Remaining Amt. (LCY)") { } fieldelement(DueDate; CustLE."Due Date") { } fieldelement(OnHold; CustLE."On Hold") { } fieldelement(Reversed; CustLE."Reversed") { } fieldelement(EntryNo; CustLE."Entry No.") { } textelement(FormaDePago) { } fieldelement(ClosedatDate; CustLE."Closed at Date") { } fieldelement(Open; CustLE."Open") { } textelement(PrimerPlazoPago) { } fieldelement(AvisoFaltaPago; CustLE."Aviso Falta Pago") { } fieldelement(CreditoyCaución; CustLE."Crédito y Caución") { } textelement(CuentaVentas) { } fieldelement(SubCliente; CustLE."SubCliente") { } //fieldelement(Dotado; custle."Doc. Status") { } //FDG-28/12/21-Inicio textelement(Company_Name) { } //FDG-28/12/21-Fin trigger OnPreXmlItem() /*var CompanyCarreras: Record "Company Carreras";*/ begin //FDG-28/12/21-Inicio /*if NOT CompanyCarreras.Get(Companys.Name) then currXMLport.Skip();*/ //CustLE.ChangeCompany(Companys.Name); Company_Name := Companys.Name; //FDG-28/12/21-Fin IF optEstado = optEstado::Pendientes THEN CustLE.SETRANGE(Open, TRUE); IF optEstado = optEstado::Cerrados THEN CustLE.SETRANGE(Open, FALSE); end; trigger OnAfterGetRecord() var GLEntry: Record "G/L Entry"; pCliente: Record Customer; pTerminos: Record "Payment Terms"; pFacturas: Record "Sales Invoice Header"; pAbonos: Record "Sales Cr.Memo Header"; pCartera: Record "Cartera Doc."; pCarteraPosted: Record "Posted Cartera Doc."; pCarteraClosed: Record "Closed Cartera Doc."; begin FormaDePago := ''; RazonSocial := ''; Bloqueado := ''; PrimerPlazoPago := '0'; pCliente.RESET; IF pCliente.GET(CustLE."Customer No.") THEN BEGIN RazonSocial := pCliente.Name; Bloqueado := FORMAT(pCliente.Blocked); IF pCliente."Payment Terms Code" <> '' THEN BEGIN pTerminos.RESET; pTerminos.SETRANGE(pTerminos.Code, pCliente."Payment Terms Code"); IF pTerminos.FINDFIRST THEN BEGIN IF FORMAT(pTerminos."Due Date Calculation") <> '' THEN BEGIN //CONASA - 26-01-10 PrimerPlazoPago := FORMAT(pTerminos."Due Date Calculation"); IF COPYSTR(PrimerPlazoPago, STRLEN(PrimerPlazoPago), 1) = 'D' THEN PrimerPlazoPago := COPYSTR(PrimerPlazoPago, 1, STRLEN(PrimerPlazoPago) - 1); IF COPYSTR(PrimerPlazoPago, STRLEN(PrimerPlazoPago), 1) = 'M' THEN BEGIN EVALUATE(PrimerPlazo, COPYSTR(PrimerPlazoPago, 1, STRLEN(PrimerPlazoPago) - 1)); PrimerPlazo := PrimerPlazo * 30; PrimerPlazoPago := FORMAT(PrimerPlazo); END; END; END; END; END; CASE CustLE."Document Type" OF CustLE."Document Type"::Invoice: IF pFacturas.GET(CustLE."Document No.") THEN FormaDePago := pFacturas."Payment Method Code"; CustLE."Document Type"::"Credit Memo": IF pAbonos.GET(CustLE."Document No.") THEN FormaDePago := pAbonos."Payment Method Code"; CustLE."Document Type"::Bill: BEGIN pCartera.RESET; pCartera.SETRANGE(Type, pCartera.Type::Receivable); pCartera.SETRANGE("Entry No.", CustLE."Entry No."); IF pCartera.FINDFIRST THEN FormaDePago := pCartera."Payment Method Code" ELSE BEGIN pCarteraPosted.RESET; pCarteraPosted.SETRANGE(Type, pCarteraPosted.Type::Receivable); pCarteraPosted.SETRANGE("Entry No.", CustLE."Entry No."); IF pCarteraPosted.FINDFIRST THEN FormaDePago := pCarteraPosted."Payment Method Code" ELSE BEGIN pCarteraClosed.RESET; pCarteraClosed.SETRANGE(Type, pCarteraClosed.Type::Receivable); pCarteraClosed.SETRANGE("Entry No.", CustLE."Entry No."); IF pCarteraClosed.FINDFIRST THEN FormaDePago := pCarteraClosed."Payment Method Code"; END; END; END; END; //CONASA - Añadir la cuenta de ventas del movimiento (si tiene) CuentaVentas := ''; GLEntry.RESET; GLEntry.SETCURRENTKEY("Document No.", "Posting Date"); GLEntry.SETRANGE("Document No.", CustLE."Document No."); GLEntry.SETRANGE("Posting Date", CustLE."Posting Date"); GLEntry.SETFILTER("G/L Account No.", '7*'); IF GLEntry.FINDFIRST THEN CuentaVentas := GLEntry."G/L Account No."; end; } //FDG-28/12/21-Inicio trigger OnAfterGetRecord() begin Clear(CompanyCarreras); if NOT CompanyCarreras.Get(Companys.Name) then currXMLport.Skip(); CustLE.ChangeCompany(Companys.Name); end; //FDG-28/12/21-Fin } }
Do you know any property can help me. Thanks