Standaryzacja systemów płatności skutkuje nie tylko powstaniem nowych standardów, ale także nowych dokumentów zbudowanych na tych standardach. System raportowania powinien oferować swoim użytkownikom szybki i wygodny sposób tworzenia tego typu standardowych dokumentów.
EPC jest standardem Europejskiej Rady Płatności. Został on opracowany w celu uproszczenia kodowania informacji o płatnościach w Jednolitym Obszarze Płatności w Euro przy użyciu kodu QR. Taki kod kreskowy zawiera wszystkie informacje niezbędne do dokonania płatności. Przykład zakodowanych informacji można zobaczyć w poniższej tabeli.
Service Tag: |
BCD |
Version: |
001 |
Character set: |
1 |
Identification: |
SCT |
BIC: |
BPOTBEB1 |
Name: |
Red Cross |
IBAN: |
BE72000000001616 |
Amount: |
EUR1 |
Reason (4 chars max): |
CHAR |
Ref of invoice: |
Empty line or REFINVOICE |
Or text: |
Urgency fund or Empty line |
Information: |
Sample EPC QR code |
FastReport VCL posiada specjalne klasy wstępnych konfiguracji, które upraszczają rozmieszczenie takich danych i organizują je jako obiekty. Klasa TfrxEPCPaymentPreset jest przeznaczona do szybkiego generowania kodu QR w formacie EPC.
Przyjrzyjmy się, jak dodać kod QR w formacie EPC i podłączyć do niego dane z przykładu. Jest on oparty na raporcie z naszej aplikacji demonstracyjnej "Nested Groups". Raport został nieco zmieniony, aby wyświetlać listę zakupionych pozycji dla każdej firmy. Chcemy dodać kod EPC QR na końcu dokumentu płatności każdej z firm, aby klient mógł dokonać szybkiej płatności.
Wybierz obiekt kodu kreskowego typu "QRCode" z palety komponentów FastReport VCL i umieść go na pasku stopki.
Kliknij obiekt kodu kreskowego i przejdź do właściwości ExpressionPreset, rozwiń ją i wybierz TfrxEPCPaymentPreset w pozycji PresetClass.
Ustawienia zostały przypisane i można do nich teraz uzyskać dostęp, rozwijając właściwość DataObject w Inspektorze obiektów.
Następnie należy powiązać pola z odpowiednimi danymi. Przeciągnij wymagane pola z drzewa danych do określonej właściwości w inspektorze obiektów.
Aby wprowadzić dane statyczne, należy użyć pojedynczych cudzysłowów, ponieważ pola te są wyrażeniami. Na przykład, aby określić stałą wartość we właściwości IBAN, należy użyć formatu "BE000000000000000000".
Połączmy wszystkie dane potrzebne do zbudowania kodu, przypisując im odpowiednie właściwości.
Użytkownik może uruchomić raport i upewnić się, że kod kreskowy jest generowany w odpowiednim formacie.
To nie wszystkie możliwości tej klasy ustawień. Właściwość DrawOptions pozwala kontrolować ustawienia ramki i dodatkowe informacje zgodnie ze standardem scan2pay.
Przyjrzyjmy się bliżej tym właściwościom:
FillColor: kolor tła wypełnienia kodu kreskowego.
FrameColor: kolor ramki z zaokrąglonymi krawędziami.
FrameVisible: włącza lub wyłącza ramkę wewnątrz kodu kreskowego.
FrameWidth: grubość wewnętrznej ramki.
Hint: dodatkowe informacje tekstowe
HintType: określa miejsce wyświetlania dodatkowych informacji:
- htEPCNone - do ukrywania dodatkowych informacji;
- htEPCLeft - wzdłuż lewej krawędzi ramki;
- htEPCRight - wzdłuż prawej krawędzi ramki;
- htEPCTop - wzdłuż górnej krawędzi ramki;
- htEPCRight - wzdłuż dolnej krawędzi ramki;
Wypełnij pola w sposób pokazany na powyższym zrzucie ekranu i uruchom raport w celu wykonania.
W rezultacie otrzymaliśmy kod kreskowy scan2pay. Ustawienia te są nietypowe, ponieważ ramka i tekst są rysowane wewnątrz obiektu (w odróżnieniu od ramki wokół obiektu, za którą odpowiada właściwość Frame), a taka ramka będzie wyświetlana poprawnie we wszystkich formatach eksportowanych plików.