Koncepcje rozwoju zaawansowanego
W tym rozdziale omówimy szczegółowo koncepcje zaawansowanego rozwoju SAP Smart Forms. W tym rozdziale zostaną omówione takie aspekty, jak węzły specjalne, przetwarzanie formularzy i moduły funkcyjne.
SAP Smart Forms - specjalne węzły
W SAP Smart Form dostępne są różne specjalne węzły, których można użyć jako części zaawansowanych koncepcji programistycznych. Aby dodać specjalne węzły w inteligentnej formie, należy przenieść je do drzewa nawigacyjnego.
Na każdej stronie kliknij prawym przyciskiem myszy → Otwórz menu kontekstowe → Utwórz → Logika przepływu → Polecenie.

Można użyć poniższej listy specjalnych typów węzłów -
Węzeł poleceń
Jest to powszechnie używane do wstawiania poleceń do różnych celów aplikacji. Możesz użyć węzła poleceń, aby wstawić dynamiczny podział strony w oknie głównym. Masz różne opcje w węźle poleceń, aby zastosować dynamiczny podział strony -
Go to New Page - To polecenie służy do podziału strony i jest dozwolone tylko w oknie głównym.
Reset Paragraph Numbering - Ta opcja może służyć do ustawiania licznika dla określonych akapitów konspektu.
Include Printer Control - Ta opcja służy do wysyłania sterowania drukowaniem do urządzenia wyjściowego.
Free Attributes of Spool Request - Ta opcja może służyć do definiowania atrybutów żądań buforowania.

Linie programu
Wiersze programu mogą służyć do wykonywania obliczeń sum i sum pośrednich. W strukturze drzewa można wstawiać wiersze programu.
Na karcie Atrybuty ogólne użyj tabel Parametry wejściowe i Parametry wyjściowe, aby przekazać pola globalne. Za pomocą kodu ABAP można uzyskać dostęp do pól globalnych wprowadzonych w tych tabelach.
Złożona sekcja
Ta opcja służy do łączenia kart typów węzłów, aby utworzyć węzeł przekroju złożonego, kliknij opcję Utwórz → Przekrój złożony.
Na karcie Atrybuty ogólne sekcji złożonej można zdefiniować ustawienia łączenia różnych stron kart, takich jak -
- Zakładka Event
- Karta Tabela i
- Karta Szablon.
SAP Smart Forms - przetwarzanie formularzy
W inteligentnej formie można użyć struktury drzewa pod kreatorem formularzy do zdefiniowania logiki formularza w celu wydrukowania tekstów, grafiki i różnych elementów w inteligentnym formularzu. Kiedy inteligentny formularz jest aktywowany, generowany jest moduł funkcyjny, a inteligentny formularz SAP przetwarza strukturę drzewa formularza i używa kodu programistycznego ABAP do wydrukowania zawartości formularza.
Dane wyjściowe inteligentnego formularza są określane przez gorsze węzły w strukturze drzewa, które tworzą Strony i okna w kreatorze formularzy. Dla każdego węzła w drzewie można zdefiniować opcje i warunki wyjściowe.
Węzeł jest przetwarzany w następujących scenariuszach -
Condition -
Gdy dla węzła jest ustawiony warunek, a system ocenia ten warunek. Jeśli okaże się, że jest fałszywy, węzeł i jego podrzędne węzły w strukturze drzewa nie są przetwarzane.
Węzły gorsze mogą być przetwarzane bezpośrednio w zależności od typu węzła.
Można również wykonać akcję przypisaną do węzła.
Kiedy definiujesz opcje wyjściowe dla węzła i jego węzła podrzędnego, a indywidualne opcje wyjściowe są przypisane do węzłów podrzędnych, to opcja nadpisuje opcję wyjściową węzła nadrzędnego.
Do przetwarzania węzła można użyć następujących typów warunków.
Simple IF Condition - Odbywa się to za pomocą opcji AND lub OR.
Complex IF condition - Jest używany przy użyciu linii programu.
Kombinacja zapytań dotyczących zdarzeń

SAP Smart Forms - moduły funkcyjne
Kiedy inteligentny formularz jest aktywowany, generowany jest moduł funkcyjny. Istnieje wiele standardowych parametrów, które można zastosować w module funkcyjnym. Te parametry pojawiają się bezpośrednio w interfejsie formularza i nie można ich zmienić. Aby aktywować inteligentny formularz, kliknijActivate Button na górze.

Gdy moduł funkcji jest wywoływany z aplikacji, można użyć tych parametrów do zdefiniowania formatu wyjściowego lub żądania buforowania lub do różnych innych celów.
Report - zcall_smartform.
Call Function - „/ 1BCDWB / SF00000279”
Tutaj SF00000279 - reprezentuje moduł funkcyjny.
Nie jest to jednak zalecany sposób wywoływania modułu funkcji, ponieważ nazwa modułu funkcyjnego jest generowana zgodnie z zakresem numerów w systemie. Po przeniesieniu inteligentnego formularza do systemu produkcyjnego generowany jest nowy moduł funkcyjny.
Aby sobie z tym poradzić, zaleca się użycie funkcji - SSF_FUNCTION_MODULE_NAME aby dynamicznie uzyskać nazwę modułu funkcji.
Report - zcall_smartform.
Data - fname TYP rs38l_fnam.
Call Function - „SSF_FUNCTION_MODULE_NAME”
Jak uzyskać nazwę modułu funkcyjnego?
Aby sprawdzić nazwę modułu funkcji dla inteligentnego formularza, przejdź do zakładki Środowisko u góry → Nazwa modułu funkcyjnego.

Moduł funkcyjny jest pokazany w następnym oknie -

Możesz również wykonać odwrotnie, używając Transaction SE 11 i idź do stołu - STXFADMI.