BESCHREIBUNG
Im Standardumfang der TimeSafe Leistungserfassung werden die QR-IBAN und die Rechnungsnummer in die Referenz der QR-Rechnung integriert. Nachfolgend wird beschrieben, wie zusätzlich die Kunden-Nr. in die Referenz integriert werden kann.
VORGEHEN
Gehen Sie wie folgt vor, um die Kunden-Nr. in die Referenz einfliessen zu lassen:
- Wechseln Sie zu den Stammdaten
- Navigieren Sie zum Berichts-Manager
- Suchen Sie den Bericht „2001 Zusatzblatt: QR-Rechnung“
- Bearbeiten Sie das Layout des Berichts
- Wechseln Sie unten zur Ansicht „Script“
- Suchen Sie den Code
lZahlungsreferenz = BcQRRechnungZahlung.ErzeugeQRReferenz(lRechnungViewModel.Rechnung.Bankverbindung.QR_Referenz_ID, lRechnungViewModel.Rechnung.LInvoiceNo.ToString());
- Ersetzen Sie diesen Code durch folgenden Code:
var lQRReferenzLinkeNummer = BildeQRReferenzLinkeNummer(lRechnungViewModel);lZahlungsreferenz = BcQRRechnungZahlung.ErzeugeQRReferenz(lQRReferenzLinkeNummer, lRechnungViewModel.Rechnung.LInvoiceNo.ToString());
- Fügen Sie danach den nachfolgenden Code oberhalb von // Start Ereignis des Berichts ein
private static string Bilde10stelligeQRReferenzID(string pQRReferenzID)
{
if (pQRReferenzID == null) return string.Empty.PadRight(10, ‚0‘);
if (pQRReferenzID.Length > 10) return pQRReferenzID;
return pQRReferenzID.PadRight(10, ‚0‘);
}
private static string Bilde6stelligeKundenNr(string pKundenNr)
{
if (pKundenNr == null) return string.Empty.PadLeft(6, ‚0‘);
if (pKundenNr.Length > 6) return pKundenNr;
return pKundenNr.PadLeft(6, ‚0‘);
}
private static string BildeQRReferenzLinkeNummer(RechnungViewModel pRechnungViewModel)
{
// Die Referenz-Nr. wird wie folgt aufgebaut:
// Stelle 1..10: QR-Referenz-ID der Bankverbindung des Projekts, rechts aufgefüllt mit 0en
// Stelle 11..16: Kunden-Nr., links aufgefüllt mit 0en
string lQRReferenzID10stellig = Bilde10stelligeQRReferenzID(pRechnungViewModel.Rechnung.Bankverbindung.QR_Referenz_ID);
string lKundenNr6stellig = Bilde6stelligeKundenNr(pRechnungViewModel.KundenNr);
return lQRReferenzID10stellig + lKundenNr6stellig;
}