Ciao Roberto, grazie per l'update.
Se riesci segnala anche queste due cose:
1) l'impossibilità di poter gestire i campi della comunicazione relativi alla persona fisica della società che si assume la responsabilità della comunicazione (Dati del Soggetto tenuto alla comunicazione).
...nella funzione BuildRecordTypeB() ho aggiunto:
//FB
//Responsabile fiscale della società
IF (VATReportSetup."Resp fiscale Azienda - CodFisca"<>'') THEN BEGIN
WritePositionalValue(382,16,ConstFormat::CF,VATReportSetup."Resp fiscale Azienda - CodFisca",FALSE);
WritePositionalValue(398,2,ConstFormat::NU,'01',FALSE); //B53
WritePositionalValue(400,8,ConstFormat::DT,'00000000',FALSE);
WritePositionalValue(408,8,ConstFormat::DT,'00000000',FALSE);
WritePositionalValue(416,24,ConstFormat::AN, VATReportSetup."Resp fiscale Azienda - Cognome",TRUE);
WritePositionalValue(440,20,ConstFormat::AN, VATReportSetup."Resp fiscale Azienda - Nome",TRUE);
WritePositionalValue(460,1,ConstFormat::AN, VATReportSetup."Resp fiscale Azienda - Sesso",TRUE);
WritePositionalValue(461,8,ConstFormat::DT, FormatDate(VATReportSetup."Resp fiscale Azienda - Data Nasc",ConstFormat::DT),FALSE);
WritePositionalValue(469,40,ConstFormat::AN, VATReportSetup."Resp fiscale Azienda - Nato a",TRUE);
WritePositionalValue(509,2,ConstFormat::PN,VATReportSetup."Resp fiscale Azienda - Nato Prov",FALSE);
END;
2) Un'altra nota riguarda invece l'intermediario che trasmette la comunicazione (Impegno alla trasmissione telematica). Il report attuale determina che la comunicazione avviene tramite un intermediario se il codice CAF ("Intermediary CAF Reg. No.") è compilato. Il problema è che l'intermediario che trasmette la comunicazione potrebbe anche non essere iscritto all'albo del CAF. Quindi suggerirei di creare un nuovo campo nel setup ("Report Tramite intermediario") che piloti la scelta:
...nella funzione BuildRecordTypeA()
//FB
//IF VATReportSetup."Intermediary CAF Reg. No." <> '' THEN BEGIN
IF (VATReportSetup."Report Tramite intermediario") THEN
BEGIN
WritePositionalValue(21,2,ConstFormat::NU,'10',FALSE);
WritePositionalValue(23,16,ConstFormat::AN, VATReportSetup."CodFisca Intermediario",FALSE);
END
ELSE
BEGIN
WritePositionalValue(21,2,ConstFormat::NU,'01',FALSE);
WritePositionalValue(23,16,ConstFormat::AN, VATReportSetup."VAT Registration No.",FALSE);
END;
ciao
fabio