Logowanie
Nadaj nowe hasło
Jeśli jesteś już klientem to wprowadź swój adres e-mail i potwierdź hasłem. Logowanie umożliwia zakup nowych programów po cenach promocyjnych, rozszerzenie posiadanego oprogramowania, zamówienie abonamentu na aktualizacje oraz konsultacje serwisowe.
Nie masz konta?Zarejestruj się
|
Program zawiera moduł własnych eksportów SQL, umożliwiający wygenerowanie dowolnego pliku eksportowego (tekstowego, xml) za pomocą zapytań SQL. Funkcjonalność może być pomocna np. przy konstruowaniu pliku wymiany danych z systemem bankowym.
Definiowanie eksportu SQL
Dostęp do definiowania eksportów SQL umożliwia pozycja menu głównego Definicje - Eksporty SQL.
Definiujemy:
Nazwa - nazwa identyfikująca nowy eksport
Tabela - nazwa tabeli w aplikacji identyfikująca okno, w którym będzie dostępny nowy eksport oraz w kontekście, której będzie konstruowane zapytanie SQL (UWAGA! nie mylić nazwy tabeli w bazie z nazwą tabeli w aplikacji; lista tabel jest dostępna tutaj Lista modułów danych i tabel)
Definicja - definicja zapytania lub polecenia SQL. Dwuklik myszy na tym polu powoduje otwarcie okna wygodnego edytora zapytań SQL
Przykład
1.Definicja
Nazwa - Eksport przelewów do systemu X
Tabela - PRZELEWY – oznacza, że eksport pojawi się w oknie PRZELEWY w menu Eksport danych
Definicja -
select cast(sum([Kwota]) as varchar(15))+';'+cast(count(*) as varchar(5))+';' from NPRZELEW where [X_I] in <CURIDESET>
go
select [Nazwa_odbiorcy_1]+';'+[Nazwa_odbiorcy_2]+';'+[Nr_rachunku_odbiorcy]+';'+cast([Kwota] as varchar(15))+';'+[Tytulem_1]+';' from NPRZELEW where [X_I] in <CURIDESET>
go
Pierwszy framgment (do klauzuli go) oznacza, że z tabeli NPRZELEW zostaną zsumowane pola [Kwota] oraz ilość rekordów i pokazane w pierwszej linijce pliku (zapytanie zwraca tylko 1 rekord).
Drugi fragment zwraca sformatowany łańcuch tekstowy złożony z pól [Nazwa_odbiorcy_1],[Nazwa_odbiorcy_2],[Nr_rachunku_odbiorcy],[Kwota],[Tytulem_1] z tabeli NPRZELEW rozdzielonych znakiem średnika. Ponieważ zapytanie zwraca kilka rekordów, w pliku pojawi się też taka ilość linii.
Za każdym razem w klauzuli where użyto zmiennej <CURIDESET>, która oznacza zestaw ide rekordów tabeli w oknie (czyli np. zafiltrowanej od działu do działu, albo paczkę przelewów). De facto jest to łańcuch w postaci np.'(1,2,5,8)', gdzie liczby oznaczają wartości pola [X_I] z tabeli, którą właśnie widać w oknie.
2.Wykonanie eksportu
W oknie Przelewy stojąc na jakiejś paczce przelewów klikając PPM wywołujemu Eksport danych/Eksport przelewów do systemu X. Ponieważ w oknie widać tylko przelewy z danej paczki, tylko takie zostaną wyeksportowane. Otrzymamy plik o zawartości jak poniżej:
22809.03;12;
R2bilansowy Artur;ul.Rozliczeniowa 0/0, 00-000 Wrocław-Psie Pole;0000000000000000;1948.28;Lp nr 1/O6;
R2chorobowa Barbara;ul.Płacowa 0/0, Bielany Wrocławskie, 00-000 Wrocław;0000000000000000;1851.87;Lp nr 1/O6;
R2macierzyńska Marianna;ul.Przykładowców 0/0, Wrocław-Śródmieście, 00-000 Wroc;0000000000000000;1038.66;Lp nr 1/O6;
R2nieobecna Katarzyna;ul.Sprawdzona 0/0, Wrocław-Fabryczna, 00-000 Wrocław;0000000000000000;1006.56;Lp nr 1/O6;
R2pożyczka Magdalena;ul.Firmowa 0b/0, Wrocław-Stare Miasto, 00-000 Wrocław;0000000000000000;1314.54;Lp nr 1/O6;
R2samochodzik Dariusz;ul.Księgowości 0/0, Wrocław-Krzyki, 00-000 Wrocław;0000000000000000;2665.08;Lp nr 1/O6;
R2urlopowski Jan;ul.Resetowa 0, Wrocław-Stare Miasto, 00-000 Wrocław;0000000000000000;1461.80;Lp nr 1/O6;
R2zuspodstawa Kamil;ul.Przykładowa 0/0, 00-000 Oleśnica;0000000000000000;10208.63;Lp nr 2/O6;
R2samochodzik Dariusz;ul.Księgowości 0/0, Wrocław-Krzyki, 00-000 Wrocław;0000000000000000;445.22;Lp nr 3/O6;
R2zuspodstawa Kamil;ul.Przykładowa 0/0, 00-000 Oleśnica;0000000000000000;445.22;Lp nr 3/O6;
R2samochodzik Dariusz;ul.Księgowości 0/0, Wrocław-Krzyki, 00-000 Wrocław;0000000000000000;195.54;Lp nr 4/O6;
R2urlopowski Jan;ul.Resetowa 0, Wrocław-Stare Miasto, 00-000 Wrocław;0000000000000000;227.63;Lp nr 4/O6;