| Docs Hilfe
  AppSource  
Docs  /  fiskaltrust POS Interface  /  Anhang

 Informationen für Entwickler


2024/02/01 • 3 Min. Lesedauer

QR-Codes

Für die Erstellung der QR-Codes wird eine Funktion aus der NAVAX Extension Base verwendet. Weitere Informationen dazu finden Sie unter [Docs] NAVAX Extension Base - Informationen für Entwickler, QR-Codes Über das Event OnBeforeCreateQRCode in Codeunit "NCCR QR Code Mgt." kann eine andere Lösung integriert werden.

Berichte

Standardmäßig sind die Registrierkassendaten über reportextensions in folgende Berichte integriert:
Berichts-IDBerichtsname
1306Verkauf - Rechnung
1307Verkauf - Gutschrift
5911Service - Rechnung
5912Service - Gutschrift
Über eine Individualprogrammierung können die Registrierkassendaten auch in anderen Berichten, welche auf den selben gebuchten Tabellen basieren, integriert werden. Nachfolgendes Beispiel dient als Vorlage bzw. als Anleitung für die Integration in anderen Berichten und zeigt, wie die Registrierkasse im Report 1306 "Standard Sales - Invoice" integriert ist. Code und Layout des Beispiels können hier heruntergeladen werden: NCCRStandardSalesInvoice_20231219.zip

Hinweis

Das fiskaltrust POS Interface wurde mit dem Präfix "NCCR" entwickelt. NCCR steht für NAVAX Consulting Cash Register.

reportextension

reportextension 70167825 "NCCR Standard Sales - Invoice" extends "Standard Sales - Invoice"
{
    dataset
    {
        add(Header)
        {
            column(NCCRDataExists; NCCRReportDataMgt.GetSalesInvoiceNCCRData(Header))
            {
            }
            column(NCCRPosting; Header."NCCR Posting")
            {
            }
            column(NCCRHeader; NCCRReportDataMgt.GetTempNCCRHeader())
            {
            }
            column(NCCRFooter; NCCRReportDataMgt.GetTempNCCRFooter())
            {
            }
            column(NCCRPaymentAmount; NCCRReportDataMgt.GetNCCRPaymentAmount())
            {
                AutoFormatExpression = Header."Currency Code";
            }
            column(NCCRPaymentAmountText; NCCRReportDataMgt.GetNCCRPaymentAmountText())
            {
            }
            column(NCCRPaymentDiscountAmount; NCCRReportDataMgt.GetNCCRPaymentDiscountAmount())
            {
                AutoFormatExpression = Header."Currency Code";
            }
            column(NCCRPaymentDiscountAmountText; NCCRReportDataMgt.GetNCCRPaymentDiscountAmountText())
            {
            }
        }

        addafter(Line)
        {
            dataitem(NCCRQRCode; Integer)
            {
                DataItemTableView = sorting(Number);

                column(NCCRQRNumber; Number)
                {
                }
                column(NCCRQRText; TempSignatureNCCREntryDocumentData.GetData())
                {
                }
                column(NCCRQRImage; TempSignatureNCCREntryDocumentData."QR Code")
                {
                }
                column(NCCRQRImageHasValue; TempSignatureNCCREntryDocumentData."QR Code".HasValue())
                {
                }
                column(NCCRQRSize; Format(TempSignatureNCCREntryDocumentData."QR Code Size", 0, 2))
                {
                }

                trigger OnPreDataItem()
                begin
                    NCCRReportDataMgt.GetTempSignatureNCCREntryDocumentData(TempSignatureNCCREntryDocumentData);
                    SetRange(Number, 1, TempSignatureNCCREntryDocumentData.Count());
                end;

                trigger OnAfterGetRecord()
                begin
                    if (Number = 1) then
                        TempSignatureNCCREntryDocumentData.Find('-')
                    else
                        TempSignatureNCCREntryDocumentData.Next();
                    TempSignatureNCCREntryDocumentData.CalcFields("QR Code");
                end;
            }
        }
    }

    rendering
    {
        layout("NCCR Default Layout")
        {
            Type = RDLC;
            LayoutFile = './src/reportext/NCCRStandardSalesInvoice.rdlc';
            Caption = 'Cash Register Default Layout', Comment = 'DEU="Registrierkasse Standardlayout"';
        }
    }

    var
        TempSignatureNCCREntryDocumentData: Record "NCCR Entry Document Data" temporary;
        NCCRReportDataMgt: Codeunit "NCCR Report Data Mgt.";
}

Layout

Alle für die Registrierkasse notwendigen Layoutänderungen sind am Ende des Reports zu finden: Um die Registrierkassendaten bzw. diese Layoutänderungen in einen anderen Bericht zu integrieren, gehen Sie wie folgt vor:
  1. Laden Sie sich die Dateien des Beispiels über den Link weiter oben in diesem Thema herunter.
  2. Öffnen Sie die Datei NCCRStandardSalesInvoice.rdlc

    Tipp

    Ändern Sie die Dateiendung auf .rdl wenn Sie keine .rdlc Dateien bearbeiten können.
  3. Die Registrierkassendaten bzw. die Layoutänderungen setzen sich aus den 4 Teilbereichen NCCRHeaderTable, NCCRPaymentTable, NCCRQRTable und NCCRFooterTable zusammen. Markieren Sie alle 4 Bereiche von NCCRHeader bis NCCRFooter: Wenn alle 4 Bereiche ausgewählt sind, sollten 4 Verschiebe-Symbole angezeigt werden:

  4. Kopieren Sie den ausgewählten Bereich.
  5. Öffnen Sie das Layout des Berichts, in welches die Layoutänderungen integriert werden sollen.
  6. Schaffen Sie ausreichend Platz am Ende des Berichts und fügen Sie die Änderungen ein.


Feedback senden für
DE|EN Impressum
<>