高度な開発コンセプト

この章では、SAP SmartFormsの高度な開発コンセプトについて詳しく説明します。この章では、特殊ノード、フォーム処理、汎用モジュールなどの側面についても説明します。

SAPスマートフォーム–特別なノード

SAP Smart Formには、高度な開発コンセプトの一部として使用できるさまざまな特殊ノードがあります。スマートフォームで特別なノードを追加するには、それをナビゲーションツリーに移動する必要があります。

各ページで、右クリック→[コンテキストメニューを開く]→[作成]→[フローロジック]→[コマンド]を選択します。

以下の特別なノードタイプのリストを使用できます-

コマンドノード

これは通常、さまざまなアプリケーションの目的でコマンドを挿入するために使用されます。コマンドノードを使用して、メインウィンドウに動的改ページを挿入できます。コマンドノードの下に、動的改ページを適用するためのさまざまなオプションがあります-

  • Go to New Page −このコマンドは改ページを提供するために使用され、メインウィンドウでのみ許可されます。

  • Reset Paragraph Numbering −このオプションは、指定されたアウトライン段落のカウンターを設定するために使用できます。

  • Include Printer Control −このオプションは、印刷制御を出力デバイスに送信するために使用されます。

  • Free Attributes of Spool Request −このオプションは、スプール依頼の属性を定義するために使用できます。

プログラムライン

プログラム行を使用して、合計と小計の計算を実行できます。ツリー構造にプログラム行を挿入できます。

[一般属性]タブで、[入力パラメーター]テーブルと[出力パラメーター]テーブルを使用して、グローバルフィールドを渡します。ABAPコードを使用すると、これらのテーブルに入力されたグローバル項目にアクセスすることができます。

複雑なセクション

このオプションを使用してノードタイプのタブページを結合し、複雑なセクションノードを作成するには、[作成]→[複雑なセクション]をクリックします。

複合セクションの[一般属性]タブでは、次のようなさまざまなタブページを組み合わせるための設定を定義できます。

  • [イベント]タブ
  • テーブルタブと
  • テンプレートタブ。

SAPスマートフォーム–フォーム処理

スマートフォームでは、フォームビルダーの下のツリー構造を使用してフォームロジックを定義し、スマートフォームのテキスト、グラフィックス、およびさまざまな要素を印刷します。スマートフォームが有効化されると、汎用モジュールが生成され、SAPスマートフォームがフォームのツリー構造を処理し、ABAPプログラミングコードを使用してフォームの内容を印刷します。

スマートフォームの出力は、フォームビルダーのページとウィンドウを構成するツリー構造の下位ノードによって決定されます。ツリー内のノードごとに、出力オプションと条件を定義できます。

ノードは次のシナリオで処理されます-

Condition

  • ノードに条件が設定され、システムが条件を評価する場合。falseが見つかった場合、ツリー構造内のノードとその下位ノードは処理されません。

  • 下位ノードは、ノードタイプに応じて直接処理できます。

  • ノードに割り当てられたアクションも処理できます。

  • ノードとその下位ノードの出力オプションを定義し、個々の出力オプションを下位ノードに割り当てると、optionは上位ノードの出力オプションを上書きします。

次の条件タイプは、ノードの処理に使用できます。

  • Simple IF Condition −これはANDまたはORオプションを使用して行われます。

  • Complex IF condition −これはプログラム行を使用して使用されます。

イベントクエリの組み合わせ

SAP Smart Forms –汎用モジュール

スマートフォームが有効化されると、汎用モジュールが生成されます。汎用モジュールに適用できるさまざまな標準パラメータがあります。これらのパラメータはフォームインターフェイスに直接表示され、変更することはできません。スマートフォームをアクティブにするには、をクリックしますActivate Button 頂点で。

汎用モジュールがアプリケーションから呼び出されると、これらのパラメータを使用して、出力フォーマットやスプール依頼、またはその他のさまざまな目的を定義することができます。

  • Report −zcall_smartform。

  • Call Function − '/ 1BCDWB / SF00000279'

ここで、SF00000279 –汎用モジュールを表します。

ただし、汎用モジュール名はシステムの番号範囲に従って生成されるため、これは汎用モジュールを呼び出すための推奨される方法ではありません。スマートフォームを本番システムに転送すると、新しい汎用モジュールが生成されます。

これを処理するには、関数–を使用することをお勧めします SSF_FUNCTION_MODULE_NAME 汎用モジュール名を動的に取得します。

  • Report −zcall_smartform。

  • Data − fnameTYPErs38l_fnam。

  • Call Function −'SSF_FUNCTION_MODULE_NAME '

汎用モジュール名を取得する方法は?

スマートフォームの汎用モジュール名を確認するには、上部の[環境]タブ→[汎用モジュール名]に移動します。

汎用モジュールは次のウィンドウに表示されます-

を使用してその逆を実行することもできます Transaction SE 11 そしてテーブルに行く– STXFADMI