Inteligentne formularze w SAP ABAP
โก Inteligentne podsumowanie
Inteligentne formularze w SAP ABAP tworzy i utrzymuje formularze do masowego drukowania, z wyjลciem na drukarkฤ, faks, e-mail lub do Internetu. Ta strona wyjaลnia architekturฤ, wฤzลy Kreatora Formularzy, okna, tabele, szablony, style i generowany moduล funkcji.

Czym sฤ formularze inteligentne? SAP ABAP?
SAP Smart Forms sลuลผy do tworzenia i utrzymywania formularzy do masowego drukowania w SAP Systemy. Jako medium wyjลciowe SAP Formularze Smart Forms obsลugujฤ drukarkฤ, faks, pocztฤ elektronicznฤ i Internet (dziฤki wygenerowanemu wynikowi XML).
SAP wprowadziล SmartForms w 1998 roku, aby pokonaฤ ograniczenia w SAP Skrypty. Formularze SmartForm sฤ ลatwiejsze w opracowywaniu, utrzymaniu i transporcie niลผ formularze SmartForm SAP Scenariusz.
Porรณwnanie Smart Forms i SapScripts
- W SmartForms dostฤpnych jest wiele formatรณw stron, co nie ma miejsca w przypadku SAP Skrypty
- Moลผliwe jest posiadanie SmartForm bez okna gลรณwnego.
- Procedury moลผna pisaฤ w narzฤdziu SmartForms.
- SmartForms generuje moduล funkcyjny po aktywacji.
- W SmartForms nie moลผna tworzyฤ etykiet.
| kryteria | Inteligentne formularze | SAPscenariusz |
|---|---|---|
| Formaty stron | Kilka formatรณw stron w jednym formularzu | Format jednej strony na formularz |
| Gลรณwne okno | Nieobowiฤ zkowe | Wymagane jest dokลadnie jedno okno gลรณwne |
| procedury | Napisane wewnฤ trz samego formularza | Napisane w osobnym programie do druku |
| Aktywacja | Generuje moduล funkcyjny | Nie wygenerowano ลผadnego moduลu funkcji |
| Etykiety | Nie moลผna utworzyฤ | Moลผna utworzyฤ |
Zalety inteligentnych formularzy
- Pomagajฤ w dostosowywaniu formularzy bez koniecznoลci posiadania wiedzy programistycznej dziฤki caลkowicie graficznemu interfejsowi uลผytkownika
- Po aktywowaniu inteligentnego formularza system automatycznie generuje moduล funkcyjny w czasie wykonywania.
- Aby dokonaฤ jakichkolwiek zmian, musimy uลผyฤ funkcji Przeciฤ gnij i upuลฤ, Wytnij i Wklej. Dziaลania te nie obejmujฤ pisania linii kodowania ani uลผywania jฤzyka skryptowego.
- Moลผemy wstawiaฤ tabele statyczne i dynamiczne. Obejmujฤ one wysuw wiersza w poszczegรณlnych komรณrkach tabeli, wyzwalanie zdarzeล dla nagลรณwkรณw tabeli i sum czฤลciowych oraz sortowanie danych przed wydrukiem.
- Inteligentne formularze pozwalajฤ uลผytkownikowi na doลฤ czenie grafiki, ktรณra moลผe byฤ wyลwietlana jako czฤลฤ formularza lub jako grafika tลa. Podczas wydruku uลผytkownik moลผe w razie potrzeby wyลฤ czyฤ grafikฤ tลa.
- Publikowanie w Internecie jest moลผliwe przy uลผyciu wygenerowanych plikรณw XML wydajnoลฤ
Archistruktura SAP Inteligentny formularz
Diagram architektury przedstawia trzy zaangaลผowane warstwy. Formularz jest projektowany w Kreatorze Formularzy, aktywacja generuje moduล funkcji, a program drukowania wywoลuje ten moduล z danymi aplikacji. Nastฤpnie omรณwiono kroki projektowania pierwszej warstwy.
Przewodnik po inteligentnych formularzach
Przejdลบmy przez to SAP system-
- Wprowadลบ transakcjฤ SMARTFORMY w polu kod transakcji.
- Na nastฤpnym ekranie wprowadลบ nazwฤ formularza i kliknij przycisk Utwรณrz
Nastฤpny ekran jest podzielony na trzy sekcje:
Okno nawigacji skลadajฤ siฤ z wฤzลรณw i podwฤzลรณw. Zawierajฤ wszystkie elementy (tekst, okno itp.) naleลผฤ ce do form sokowych
- Okno konserwacji pokazuje atrybuty elementรณw
- Drukarka formularzy okno pokazuje ukลad strony
Ilekroฤ tworzymy inteligentne formularze, SAP tworzy/generuje moduล funkcyjny. W przeciwieลstwie do SAPskrypty, SAP FORMULARZE umoลผliwiajฤ zmianฤ jฤzyka.
W oknie nawigacyjnym znajdziesz
Globalne deklaracje dotyczฤ ce danych : Zdefiniowane tutaj dane mogฤ byฤ wykorzystywane w caลym smartformie do celรณw kodowania.
Interfejs formularza : Tutaj definiowane sฤ wszystkie dane, ktรณre bฤdฤ przekazywane do smartform z programu Print.
Klikniฤcie prawym przyciskiem myszy na stronach umoลผliwi utworzenie nowej strony, okna, grafiki lub adresu.
Druk bฤdzie odbywaล siฤ na podstawie pola โnastฤpna stronaโ.
Ale przetwarzanie odbฤdzie siฤ zgodnie z kolejnoลciฤ w oknie nawigacji!
W przypadku obrazรณw tลa i grafiki moลผna wybieraฤ obrazy bitmapowe czarno-biaลe lub kolorowe i zapisywaฤ je w postaci standardowych tekstรณw. Moลผesz ominฤ ฤ ekran smartform i otworzyฤ ekran Grafika formularza. Kod transakcji: Se78
Ustawienia w oknie Grafika w inteligentnym formularzu
Windows w inteligentnych formularzach
Istniejฤ dwa typy Windows
- Gลรณwny
- Wtรณrny
Waลผne punkty do zapamiฤtania
- Nie moลผesz mieฤ wiฤcej niลผ 1 gลรณwnego okna na stronie. Moลผesz mieฤ wiele okien drugorzฤdnych
- Cokolwiek drukujesz w oknie drugorzฤdnymโฆ musi byฤ statyczne. (Jeลli masz 20 wierszy w PO i istnieje ograniczenie strony, wiersze sฤ przenoszone do nastฤpnej strony w oknie gลรณwnym. np. w przypadku zawartoลci typu poprzednik i nastฤpca, bฤdฤ one drukowane sekwencyjnie w oknie gลรณwnym. Nie jest to dozwolone w oknach drugorzฤdnych.
Wewnฤ trz gลรณwnego okna moลผemy dodaฤ tekst jako wprowadzenie, aby dostosowaฤ wyglฤ d formularza.
Opcje wyjลciowe w kaลผdym oknie okreลlajฤ rozmiar linii, szerokoลฤ, kolory i tลo, ktรณre majฤ zostaฤ umieszczone.
Smartforms daje moลผliwoลฤ podania numeru adresowego, ktรณry prowadzony jest w centralnym zarzฤ dzaniu adresami. Adres zostanie pobrany bezpoลrednio z tabeli ADRC i zostanie wypeลniony w formularzu.
W Smartforms dostฤpne sฤ dwa rรณลผne edytory: Normal Editor
i Edytor Graficzny.
To ustawienie moลผna zmieniฤ za pomocฤ edytora konfiguracji w Narzฤdziach.
Tabele w oknie
W Malarzu tabel moลผna narysowaฤ format zgodnie z wymaganiami klienta (np. nagลรณwek, podnagลรณwek, element, suma czฤลciowa, suma koลcowa itd.)
Ukลad tabeli umoลผliwia okreลlenie:
- Liczba linii i komรณrek
- Wysokoลฤ kaลผdej linii
- Szerokoลฤ kaลผdej komรณrki
- Wyrรณwnanie stoลu w oknie
W tabeli przedstawiono rรณลผne typy linii, ktรณre zostanฤ uลผyte w tabeli. Typy linii definiujฤ rozmiar kaลผdej komรณrki i liczbฤ komรณrek w kaลผdej linii.
Przebieg programowania inteligentnych formularzy
Kiedy SAP Tworzony jest szablon Smart Form, uลผytkownik tworzy ukลad formularza, definiuje wymagane pola, warunki i specjalne instrukcje programowania w szablonie Smart Form za pomocฤ Smart Form Builder.
Po zakoลczeniu projektowania formularza naleลผy go aktywowaฤ, aby moลผna byลo go przetestowaฤ lub uzyskaฤ do niego dostฤp w programach drukujฤ cych. Aktywacja formularza inicjuje wygenerowanie moduลu funkcyjnego, ktรณry obsลuguje caลe przetwarzanie formularza.
Ten moduล funkcyjny wspรณลdziaลa z aplikacjฤ /programem drukujฤ cym w celu utworzenia wydruku na zdefiniowanym przez uลผytkownika noลniku wyjลciowym dla okreลlonego urzฤ dzenia.
W przypadku inteligentnych formularzy do przetwarzania inteligentnego formularza wykorzystujemy 2 moduลy funkcyjne. Do pierwszego moduลu funkcyjnego jako parametr importu przekazujemy nazwฤ inteligentnego formularza. Nastฤpnie zwraca nazwฤ dynamicznie generowanego moduลu funkcyjnego, ktรณry faktycznie wywoลa smartform.
Nazwฤ smartforma moลผna przekazaฤ do moduลu funkcyjnego โ 'SSF_FUNCTION_MODULE_NAME'
Spowoduje to zwrรณcenie nazwy moduลu funkcyjnego inteligentnego formularza, do ktรณrego siฤ odwoลuje.
Program Print bฤdzie dzwoniล do FM โNAZWA_MODULE_SSF_FUNCTION_MODULEโ aby uzyskaฤ nazwฤ moduลu funkcyjnego w czasie wykonywania. Nastฤpnie wywoลa uzyskany w ten sposรณb moduล funkcyjny w celu wykonania smartform.
Jak wywoลaฤ formularz inteligentny z programu do drukowania
Dwuetapowe wywoลanie opisane powyลผej jest zawsze zapisywane w ten sam sposรณb. Program najpierw rozpoznaje wygenerowanฤ nazwฤ, a nastฤpnie wykonuje jฤ z danymi aplikacji.
- Rozwiฤ ลผ nazwฤ moduลu funkcji: Przekaลผ nazwฤ formularza do SSF_FUNCTION_MODULE_NAME. Wygenerowana nazwa zmienia siฤ w kaลผdym systemie, dlatego nigdy nie naleลผy jej zakodowaฤ na staลe.
- Wywoลaj wygenerowany moduล dynamicznie: Uลผyj funkcji CALL FUNCTION ze zmiennฤ , ktรณra przechowuje rozwiฤ zanฤ nazwฤ, i przekaลผ dane przez parametry zdefiniowane w interfejsie formularza.
- Kontroluj wyjลcie: Wypeลnij strukturฤ sterujฤ cฤ SSFCTRLOP, aby pominฤ ฤ okno dialogowe drukowania lub zaลผฤ daฤ podglฤ du, a w strukturze SSFCOMPOP wpisz urzฤ dzenie wyjลciowe.
- Obsลuguj wyjฤ tki: Wygenerowany moduล zgลasza bลฤdy FORMATTING_ERROR, INTERNAL_ERROR, SEND_ERROR i USER_CANCELED, dlatego po wywoลaniu naleลผy sprawdziฤ SY-SUBRC.
DATA: lv_fm_name TYPE rs38l_fnam, ls_control TYPE ssfctrlop, ls_output TYPE ssfcompop. * 1. Get the name of the generated function module CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME' EXPORTING formname = 'Z_SMART_INVOICE' IMPORTING fm_name = lv_fm_name EXCEPTIONS no_form = 1 no_function_module = 2 OTHERS = 3. IF sy-subrc <> 0. MESSAGE e001(zsf). " Form not found ENDIF. * 2. Call the generated module with the form data ls_control-no_dialog = 'X'. ls_control-preview = 'X'. CALL FUNCTION lv_fm_name EXPORTING control_parameters = ls_control output_options = ls_output is_header = ls_header TABLES it_items = lt_items EXCEPTIONS formatting_error = 1 internal_error = 2 send_error = 3 user_canceled = 4 OTHERS = 5.
โ ๏ธ Ostrzeลผenie: Wygenerowana nazwa moduลu funkcji, na przykลad /1BCDWB/SF00000123, jest inna w kaลผdym systemie. Zawsze naleลผy jฤ rozstrzygaฤ za pomocฤ SSF_FUNCTION_MODULE_NAME, w przeciwnym razie program zakoลczy dziaลanie po transporcie.
Szablony
Szablonu moลผna uลผyฤ, gdy znany jest dokลadny rozmiar danych wyjลciowych lub gdy dane wyjลciowe majฤ ustalony format.
Np. formularz podatkowy/czek/formularz linii lotniczych/bilet kolejowy: wszystkie korzystajฤ z szablonรณw.
Gลรณwnฤ rรณลผnicฤ pomiฤdzy tabelฤ a szablonem jest to, ลผe w tabeli wysokoลฤ zmienia siฤ dynamicznie. W szablonie wiersz nazywamy โliniฤ โ.
Inteligentne style
Inteligentny styl zawiera:
- Dane nagลรณwka zawierajฤ ce wartoลci domyลlne stylu inteligentnego
- Formaty akapitรณw, w tym wciฤcia i odstฤpy, atrybuty czcionek, tabulatory oraz konspekt i numeracja
- Formaty znakรณw, w tym efekty (indeks gรณrny, dolny), kod kreskowy i atrybuty czcionek
- Kolory i podkreลlenia dla formatu akapitu lub znaku
Moลผesz uลผyฤ transakcji โsmartformsโ / โsmartstylesโ, aby stworzyฤ inteligentny styl.
๐ก Wskazรณwka: Przypisz styl Smart Style do atrybutรณw formularza, a nie do kaลผdego wฤzลa tekstowego. Jedna zmiana stylu bฤdzie wtedy dotyczyฤ kaลผdego akapitu formularza.
To wszystko w tym samouczku






















