Table of Contents

KVSKBAPaymentQRCodeMgmt

Procedures

GeneratePaymentQRCodeImage(Enum KVSKBAPaymentQRCodeType, Enum KVSKBAPaymentQRCodeDocType, Variant, Codeunit Temp Blob) : Boolean

procedure GeneratePaymentQRCodeImage(QRCodeType: Enum "KVSKBAPaymentQRCodeType"; SourceDocType: Enum "KVSKBAPaymentQRCodeDocType"; DocumentVariant: Variant; var QRCodeImageTempBlob: Codeunit "Temp Blob"): Boolean

GeneratePaymentQRCodeImage(Enum KVSKBAPaymentQRCodeDocType, Variant, Codeunit Temp Blob) : Boolean

procedure GeneratePaymentQRCodeImage(SourceDocType: Enum "KVSKBAPaymentQRCodeDocType"; DocumentVariant: Variant; var QRCodeImageTempBlob: Codeunit "Temp Blob"): Boolean

GeneratePaymentQRCodeImage4PostedSalesInvoice(Record Sales Invoice Header, Codeunit Temp Blob) : Boolean

procedure GeneratePaymentQRCodeImage4PostedSalesInvoice(SalesInvoiceHeader: Record "Sales Invoice Header"; var QRCodeImageTempBlob: Codeunit "Temp Blob"): Boolean

GeneratePaymentQRCodeImage4PostedServiceInvoice(Record Service Invoice Header, Codeunit Temp Blob) : Boolean

procedure GeneratePaymentQRCodeImage4PostedServiceInvoice(ServiceInvoiceHeader: Record "Service Invoice Header"; var QRCodeImageTempBlob: Codeunit "Temp Blob"): Boolean

GeneratePaymentQRCodeAsBase64(Enum KVSKBAPaymentQRCodeType, Enum KVSKBAPaymentQRCodeDocType, Variant) : Text

Summary: Generates a payment QR code image for the given posted document, using the given QR code standard, and returns it as a Base64 encoded PNG image, e.g. for use in a Word report layout.

procedure GeneratePaymentQRCodeAsBase64(QRCodeType: Enum "KVSKBAPaymentQRCodeType"; SourceDocType: Enum "KVSKBAPaymentQRCodeDocType"; DocumentVariant: Variant): Text

Parameters:

  • QRCodeType: The QR code payment standard to use, e.g. EPC069-12.
  • SourceDocType: The type of the source document, e.g. Sales Invoice or Service Invoice.
  • DocumentVariant: The posted document (matching SourceDocType) to generate the payment QR code for.

Returns: The QR code image (PNG) as a Base64 encoded string, or an empty string if the image could not be generated.

GeneratePaymentQRCodeAsBase64(Enum KVSKBAPaymentQRCodeDocType, Variant) : Text

Summary: Generates a payment QR code image for the given posted document, using the QR code standard configured on Company Information (field KVSKBAPaymentQRCodeType), and returns it as a Base64 encoded PNG image, e.g. for use in a Word report layout. If payment QR code printing is disabled on Company Information (field KVSKBAPrintPaymentQRCode), an empty string is returned.

procedure GeneratePaymentQRCodeAsBase64(SourceDocType: Enum "KVSKBAPaymentQRCodeDocType"; DocumentVariant: Variant): Text

Parameters:

  • SourceDocType: The type of the source document, e.g. Sales Invoice or Service Invoice.
  • DocumentVariant: The posted document (matching SourceDocType) to generate the payment QR code for.

Returns: The QR code image (PNG) as a Base64 encoded string, or an empty string if printing is disabled or the image could not be generated.

GeneratePaymentQRCodeAsBase644PostedSalesInvoice(Record Sales Invoice Header) : Text

Summary: Generates a SEPA payment QR code image for the given posted sales invoice and returns it as a Base64 encoded PNG image, e.g. for use in a Word report layout.

procedure GeneratePaymentQRCodeAsBase644PostedSalesInvoice(SalesInvoiceHeader: Record "Sales Invoice Header"): Text

Parameters:

  • SalesInvoiceHeader: The posted sales invoice to generate the payment QR code for.

Returns: The QR code image (PNG) as a Base64 encoded string, or an empty string if the image could not be generated.

GeneratePaymentQRCodeAsBase644PostedServiceInvoice(Record Service Invoice Header) : Text

Summary: Generates a SEPA payment QR code image for the given posted service invoice and returns it as a Base64 encoded PNG image, e.g. for use in a Word report layout.

procedure GeneratePaymentQRCodeAsBase644PostedServiceInvoice(ServiceInvoiceHeader: Record "Service Invoice Header"): Text

Parameters:

  • ServiceInvoiceHeader: The posted service invoice to generate the payment QR code for.

Returns: The QR code image (PNG) as a Base64 encoded string, or an empty string if the image could not be generated.

BuildQRCodeText(Enum KVSKBAPaymentQRCodeType, Enum KVSKBAPaymentQRCodeDocType, Variant) : Text

Summary: Builds the payment string for a payment QR code for the given posted document, using the given QR code standard. The payment string is built by the KVSKBAPaymentQRCodeGenerator implementation registered for QRCodeType, which in turn uses the document data (amount, currency, remittance info) provided by the KVSKBAPaymentQRCodeSourceDoc implementation registered for SourceDocType. To support an additional QR code standard, implement KVSKBAPaymentQRCodeGenerator in a new codeunit and register it as a new KVSKBAPaymentQRCodeType enum value - no changes to this procedure are required.

procedure BuildQRCodeText(QRCodeType: Enum "KVSKBAPaymentQRCodeType"; SourceDocType: Enum "KVSKBAPaymentQRCodeDocType"; DocumentVariant: Variant): Text

Parameters:

  • QRCodeType: The QR code payment standard to use, e.g. EPC069-12.
  • SourceDocType: The type of the source document, e.g. Sales Invoice or Service Invoice.
  • DocumentVariant: The posted document (matching SourceDocType) to build the payment QR code text for.

Returns: The payment string to encode into the QR code.

BuildEPCQRCodeText(Enum KVSKBAPaymentQRCodeDocType, Variant) : Text

Summary: Builds the payment string for a SEPA payment QR code ("GiroCode"/EPC069-12) for the given posted document.

procedure BuildEPCQRCodeText(SourceDocType: Enum "KVSKBAPaymentQRCodeDocType"; DocumentVariant: Variant): Text

Parameters:

  • SourceDocType: The type of the source document, e.g. Sales Invoice or Service Invoice.
  • DocumentVariant: The posted document (matching SourceDocType) to build the payment QR code text for.

Returns: The multi-line (LF separated) payment string as defined by the EPC069-12 standard.

BuildEPCQRCodeText4PostedSalesInvoice(Record Sales Invoice Header) : Text

Summary: Builds the payment string for a SEPA payment QR code ("GiroCode"/EPC069-12) for the given posted sales invoice, using the bank account information from Company Information as the beneficiary (payee).

procedure BuildEPCQRCodeText4PostedSalesInvoice(SalesInvoiceHeader: Record "Sales Invoice Header"): Text

Parameters:

  • SalesInvoiceHeader: The posted sales invoice to build the payment QR code text for.

Returns: The multi-line (LF separated) payment string as defined by the EPC069-12 standard.

BuildEPCQRCodeText4PostedServiceInvoice(Record Service Invoice Header) : Text

Summary: Builds the payment string for a SEPA payment QR code ("GiroCode"/EPC069-12) for the given posted service invoice, using the bank account information from Company Information as the beneficiary (payee).

procedure BuildEPCQRCodeText4PostedServiceInvoice(ServiceInvoiceHeader: Record "Service Invoice Header"): Text

Parameters:

  • ServiceInvoiceHeader: The posted service invoice to build the payment QR code text for.

Returns: The multi-line (LF separated) payment string as defined by the EPC069-12 standard.

IsPaymentQRCodePrintingEnabled() : Boolean

Summary: Checks whether printing a payment QR code on documents is enabled, based on the KVSKBAPrintPaymentQRCode field on Company Information. Use this to decide whether to show/print the QR code section on a document layout before calling one of the default-standard GeneratePaymentQRCodeImage/GeneratePaymentQRCodeAsBase64 overloads (i.e. the overloads without a QRCodeType parameter).

procedure IsPaymentQRCodePrintingEnabled(): Boolean

Returns: True if payment QR code printing is enabled on Company Information.