Biuletyn techniczny. Funkcje dodatkowe dla Clarion Report Writer CDN OPT!MA Copyright 2006 COMARCH S.A

Biuletyn techniczny CDN OPT!MA 11.0 Funkcje dodatkowe dla Clarion Report Writer Copyright  2006 COMARCH S.A. Funkcje dodatkowe dla Clarion Report...
2 downloads 0 Views 81KB Size
Biuletyn techniczny CDN OPT!MA 11.0

Funkcje dodatkowe dla Clarion Report Writer

Copyright  2006 COMARCH S.A.

Funkcje dodatkowe dla Clarion Report Writer (CRW) System CDN OPT!MA oferuje zbiór kilkunastu funkcji napisanych specjalnie dla CRW. Zostały one zebrane w bibliotece OP_RF32.DLL. Przed wykorzystaniem w wydruku funkcji z tego pliku naleŜy ją odpowiednio zadeklarować w obrębie sekcji definicji wydruku „Externals”. Z poziomu narzędzia edycyjnego Report Writer słuŜy do tego kreator „External...” dostępna w menu „Files” głównego Report Writera. Samo definiowanie funkcji zewnętrznej jest stosunkowo proste – wystarczy podać nazwę pod jaką funkcja będzie dostępna w RW, zdefiniować ilość przekazywanych parametrów, oraz punkt wejścia w odpowiedniej bibliotece DLL. PoniŜej znajduje się przykład poprawnej deklaracji funkcji udostępnionej przez CDN OPT!MA:

Zadeklarowane funkcje mogą być uŜyte w polach wyliczanych ( RunTime Fields). Przy korzystaniu z tych funkcji naleŜy zwrócić uwagę iŜ potrafią one operować wyłącznie na danych typu STRING, co niestety trochę komplikuje wykorzystanie zwracanych wyników – konieczne jest wycięcie odpowiedniego fragmentu danych i wykonanie jego konwersji do odpowiedniego typu danych.

Specyfikacja funkcji modułu OP_RF32.DLL Dla kaŜdej funkcji opis zawiera: Nazwa funkcji z pliku op_rf32.dll Ilość parametrów wywołania (n) funkcji. Opis, przykład uŜycia, zwracany format danych w przypadku łączenia w wynikowym ciągu tekstowych kilku informacji.

Funkcje 1. RWF_WYKONAJZAPYTANIESQL Funkcja pozwalająca na wykonanie zapytania SQL. Parametry wywołania (5): •

cztery pierwsze to stringi (po 255 znaków) zawierające treść zapytania SQL

• piąty (równieŜ string) określa czy wynik zapytania ma być cache'owany (aby nie wołać kilka razy tych samych zapytań) - podanie dowolnego niepustego napisu powoduje Ŝe wyniki funkcji są cache'owane (cache jest czyszczony przed kaŜdym wydrukiem) Wynik funkcji to string(255).

Zapytanie musi być tak skonstruowane by zwracało wyłącznie jedną wartość typu STRING(255) (czyli liczba musi być przekonwertowana do stringu)

Funkcje dodatkowe do CRW

Str. 2

Przykładowe poprawne zapytanie: Przykład: SELECT cast(sum(TrN_RazemNetto) as Varchar) FROM CDN.Tranag WHERE TrN_DataDok = '2005-03-07'

i przełoŜenie na wywołanie funkcji: (' SELECT cast(sum(TrN_RazemNetto) as Varchar) FROM CDN.Tranag WHERE TrN_DataDok = '&CHR(39)&'2005-03-07'&CHR(39),'','Keszuj') - wyniki są keszowane (' SELECT cast(sum(TrN_RazemNetto) as Varchar) FROM CDN.Tranag WHERE TrN_DataDok = '&CHR(39)&'2005-03-07'&CHR(39),','','') - wyniki NIE są keszowane

2. RWF_KURSYWALUT Funkcja zwraca ciąg zawierający kolejno symbol waluty wartość kursu z bieŜącego dnia. Parametry wywołania (0): Nie posiada. Wartości dla poszczególnych walut przedzielone są znakiem ; Pierwsza waluta to waluta systemowa. Przykład zwracanej wartości to:’PLN 1; EUR 11; USD; 13.3333’

3. RWF_SYMBOLWALSYS Parametry wywołania (0): Nie posiada Funkcja zwraca symbol waluty systemowej. Np. PLN

4. RWF_FORMATUJZERAKONCOWE Parametry wywołania (3): 

Formatowana liczba



Ciąg na który podmieniane są znaki ‘0’



Znak separatora

5. RWF_POBIERZDANEOPERATORA Funkcja na podstawie ID operatora zwraca jego imię lub nazwisko. Parametry wywołania (2): •

ID operatora



Typ zwracanej wartości - NAZWISKO – IMIE - OPIS.

Np NazwaOperatora (TrN:TrN_OpeZalID , 'NAZWISKO' )

6. RWF_CZYIBANOK Funkcja sprawdza czy nr bankowy podany jako ciąg spełnia algorytm IBAN Parametry wywołania (1): •

Numer rachunku poddawany walidacji.

Funkcje dodatkowe do CRW

Str. 3

7. RWF_SLOWNIE Parametry wywołania (1): •

Konwertowana liczba.

Funkcja zwraca liczbę wyraŜoną słownie jako kwotę (uŜywając symboli zł i gr.)

8. RWF_SLOWNIE2 Funkcja konwertuje liczba do tekstu z moŜliwością odcięcia części groszy. Parametry wywołania (2): •

Liczba do konwersji



Parametr sterujący wyświetlaniem części dziesiętnej – (grosze).

Nie uŜywane.

9. RWF_SLOWNIEWAL Funkcja zwraca wartość „słownie„ dla podanego symbolu waluty. Parametry wywołania (3): •

Wartość



Parametr sterujący wyświetlaniem części dziesiętnej – (grosze).



Symbol waluty

Przykład : …Slownie( BruttoTot,1, TrN:TrN_Waluta ) Tekst jest tłumaczony z uŜycie symboli monetarnych przypisanych do danej waluty w jej formularzu w konfiguracji programu.

10. RWF_USTALLICZBEPRZEBIEGOW Funkcja ustala ilość powtórzeń drukowanych elementów ( sekcja DETAIL ). Parametry wywołania (1): Ilość przebiegów (sformatowana do napisu) Do drukowania faktury korygującej parametr _Ilosc naleŜy ustawić na ‘2’. Przykład: drukujemy rekordy 1,2,3; po ustawieniu tą funkcją liczby przebiegów na 2 na wydruku dostaniemy: 1,2,3,1,2,3

11. RWF_PRZEBIEG Funkcja zwraca informację o aktualnie wykonywanym przebiegu w wydruku: Parametry wywołania (0): Nie zawiera. Wynik: 3 znaki 10 znaków

- numer przebiegu - numer kolejny rekordu drukowanego w ramach jednego przebiegu

12. RWF_CCEXECS

Funkcje dodatkowe do CRW

Str. 4

Wykorzystywana do wywoływania obiektów JS Parametry wywołania (3): •

Nazwa obiektu który będzie kreowany.



Id obiektu ( moŜe być to filtr, rezultatem musi być jeden obiekt )



WyraŜenie JS, które jest ewaluowane.

Procedura przesiadkowa formularza dla dowolnej tabeli. Procedura tworzy obiekt sesji oraz obiekty biznesowe i dokonuje na nich operacji (w tym woła podaną przez parametr procedurę formularza).

ObjektJS( 'CDN.DokumentyHaMag' , TrN:TrN_TrNID , 'Platnosci ()' )

13. RWF_CCEXECSOPT Wykorzystywana do wywoływania obiektów JS Parametry wywołania (4): •

Nazwa obiektu który będzie kreowany.



Id obiektu ( moŜe być to filtr, rezultatem musi być jeden obiekt )



WyraŜenie JS, które jest ewaluowane.



Warunek wykonania. Wyliczenia zostaną ominięte jeśli parametr będzie zawierał ciąg ‘’.

Procedura tworzy obiekt sesji oraz obiekty biznesowe i dokonuje na nich operacji W przykładzie woła podaną przez parametr procedurę Płatności zadeklarowaną w formularzu wydruku pole Kod skryptu – zakładka Inne. Przykład: ObjektJS( 'CDN.DokumentyHaMag' , TrN:TrN_TrNID , 'Platnosci ()' )

14. RWF_CCGETPROPERTY Wykorzystywana do wywoływania property danego obiektu. Parametry wywołania (3): •

Nazwa obiektu który będzie kreowany.



Id obiektu ( moŜe być to filtr, rezultatem musi być jeden obiekt )



Property kreowanego obiektu.

Procedura tworzy obiekt sesji oraz obiekty biznesowe i dokonuje na nich operacji (w tym woła podaną przez parametr procedurę formularza). ObjektJS( 'CDN.DokumentyHaMag' , TrN:TrN_TrNID , 'DataDok' ) Zwrócona zostanie data dokumentu magazynowego o ID podanym jako drugi parametr.

15. RWF_CiapkiReplace Funkcja zamienia znak ' oraz " odpowiednio na \' oraz \" na potrzeby JScript'u Parametry wywołania (1): •

Ciąg podlegający podmianie.

Funkcje dodatkowe do CRW

Str. 5

Funkcja uŜywana jest przy przekazywaniu pola tekstowego z bazy jako parametru do wywołania funkcji skryptowych. Przykład : CIAPKIREPL(Twr:Twr_Kod)

Funkcje dodatkowe do CRW

Str. 6