Sap-scripts-quick-guide
SAPスクリプト-概要
SAPスクリプトは、フォーマットされたドキュメントを生成するため、およびビジネスドキュメントを印刷および転送する外部目的のために使用されます。 書式設定されたドキュメントには、ロゴ、表、およびその他の書式設定オブジェクトが含まれます。 通常のABAPコードでは不可能な形式の書式設定済みテキストを印刷できます。
SAPスクリプトは、次のコンポーネントで構成されています-
- アプリケーショントランザクションによって自動的に呼び出されるテキスト行を入力および編集するための Editor 。
- 出力デバイスからテキストを準備し、印刷用のさまざまなフォーマットオプションを提供する Invisible Composer 。
- アプリケーションコンポーネントにスクリプトコンポーネントを含めるために、*プログラミングインターフェイス*が含まれています。
- メンテナンストランザクションを使用して、印刷レイアウト用の*スタイル*および*フォーム*を作成します。
- テキスト、フォーム、およびその他の印刷形式のスタイルを保存する*中央データベース*。
印刷プログラムが実行されると、フォームとデータベースからデータが取得され、出力が印刷されます。
次の画像は、上記のSAPスクリプトの主要コンポーネントを示しています。
スクリプトを設計するには、 Transaction code-SE71 を使用します
SAP Easy accessにトランザクションコードを入力すると、次の画面が開きます。
プログラムの名前を入力し、保存ボタンをクリックして保存します。
段落、ページ、およびウィンドウを作成し、ウィンドウを要素に割り当てます。 スクリプトを作成し、スクリプトを呼び出すレポートを作成します。
SAPスクリプト-スマートフォーム
SAP Smart Formsは、SAPスクリプトよりも機能と主要機能を強化するためにSAPによって導入されました。 Smart Formsでは、SAPスクリプトと比較するときに最小限のコーディングが必要です。
スマートフォームにはスクリプトよりもさまざまな利点があるため、SAPスクリプトをスマートフォームに置き換えることをお勧めします。
SAPスクリプトとスマートフォームの主な違いは次のとおりです-
- SAPスクリプトの場合は不可能なスマートフォームで複数のページ形式を作成できます。 すべてのページは、SAPスクリプトの同じ形式に従います。
- スマートフォームでラベルを作成することはできません。
- スマートフォームは、ウィンドウなしで作成できます。
- スマートフォームをアクティブにすると、機能モジュールが生成されます。 スマートフォームを使用して背景グラフィックを作成することもできます。 ただし、SAPスクリプトを使用することはできません。
- スマートフォームのメンテナンスコストは低く、SAPスクリプトのコストは高くなります。
- SAPスクリプトと比較して、スマートフォームの生成に必要な時間が短縮されます。
- スマートフォームは、XML形式でのWeb公開をサポートしています。 ただし、SAPスクリプトではサポートされていません。 スマートフォームはXML出力を生成し、Webで表示できます。
SAPスクリプト-フォームペインタ
- フォームペインタツール*は、SAPscriptフォームのグラフィカルレイアウトと、フォームを操作するためのさまざまな機能を提供します。 次の例では、標準SAPscriptフォームRVINVOICE01からレイアウト構造をコピーした後に請求書フォームを作成し、フォームペインタツールにアクセスしてレイアウトを表示します。
フォームペインタを開きます。 SAPメニューをナビゲートするか、* SE71トランザクションコード*を使用して、画面を要求できます。
- ステップ1 *-フォームペインタのリクエスト画面で、フォームおよび言語フィールドにSAPscriptフォームの名前と言語をそれぞれ入力します。 これらのフィールドにそれぞれ「RVINVOICE01」と「EN」を入力しましょう。
- ステップ2 *-上記のスクリーンショットに示すように、[サブオブジェクト]グループボックスで[ページレイアウト]ラジオボタンを選択します。
- ステップ3 *-[ユーティリティ]→[クライアントからコピー]を選択して、RVINVOICE01フォームのコピーを作成します。
「クライアント間でフォームをコピー」画面が表示されます。
- ステップ4 *-「クライアント間でフォームをコピー」(次)画面で、フォームの元の名前「RVINVOICE01」をフォーム名フィールドに入力し、ソースクライアントの番号を「ソースクライアント」フィールドに「000」 、および[ターゲットフォーム]フィールドにターゲットフォームの名前を「ZINV_01」と入力します。 他の設定が変更されていないことを確認してください。
- ステップ5 *-「クライアント間でフォームをコピー」画面で「実行」アイコンをクリックします。 [オブジェクトディレクトリエントリの作成]ダイアログボックスが表示されます。 パッケージ名を入力して、オブジェクトを保存します。 保存アイコンをクリックします。
ZINV_01フォームはRVINVOICE01フォームからコピーされ、「クライアント間でフォームをコピー」画面に表示されます。
戻るアイコンを2回クリックし、コピーされたフォームZINV_01の名前を含むフォームペインタ:リクエスト画面に戻ります。
[表示]ボタンをクリックすると、次のスクリーンショットに示すように、[フォームZINV_01:ページの最初のレイアウト]ウィンドウと[フォーム:ページレイアウトの変更:ZINV_01]画面が表示されます。
「フォームZINV_01:ページの最初のレイアウト」ウィンドウに、フォームの初期レイアウトが表示されます。 フォームのレイアウトには、HEADER、ADDRESS、INFO、INFO1、およびMAINの5つのウィンドウが含まれます。 これらのウィンドウの説明は、PCエディターでアクセスできます。
たとえば、メインウィンドウを選択し、[フォーム:ページレイアウトの変更:ZINV_01]画面で[テキスト]アイコンをクリックするだけで、すべてのマージン値を表示できます。
SAPスクリプト-レイアウトセット
- レイアウトセット*は、プログラミングインターフェイスを使用してドキュメントを出力する一種のプログラムです。 レイアウトセットはSAPスクリプトの一部であり、印刷ページのレイアウトを定義するために使用され、テキスト要素を使用して、印刷プログラムから呼び出すことができる出力ブロックを提供します。 レイアウトセット自体にはデータが含まれておらず、ドキュメントのデータの選択は印刷プログラムを使用して行われます。
印刷プログラムが呼び出されると、データベースからのデータが選択され、レイアウトセットに渡されます。 印刷プログラムが実行されると、ドキュメントが印刷されます。
レイアウトセットには、次の要素が含まれています-
ヘッダ
レイアウトセットヘッダーには、管理情報と他のコンポーネントの設定も含まれます。
段落
Paragraphは、テキストとフォントの段落をフォーマットするために必要なすべての情報を提供します。 段落を作成するには、次のスクリーンショットに示すように、段落形式をクリックします。
ページ数
出力が長すぎて1ページに収まらない場合は、新しいページを作成して残りの部分を印刷できます。 異なるページ設定で残りの部分を表示できます。
ページを作成するには、[ページ]タブに移動します。 ページ名を入力し、説明を入力します。
ページウィンドウ
タイプMAINの全ウィンドウがある場合、改ページがSAPスクリプトによって自動的にトリガーされ、出力の残りのテキストが後続ページのメインウィンドウに表示されます。 タイプMAINのページウィンドウは、レイアウトセット全体で同じ幅です。
文字列
これらは、出力テキストのフォント設定を定義するために使用されます。 段落内の特定の単語の段落設定を上書きできます。
Windows
出力ドキュメントは、Windowsを使用してページに整理できます。 レイアウトセットでは、次の種類のウィンドウがあります-
- メイン-デフォルトで作成されるメインウィンドウは1つだけです。 このウィンドウは複数のページにまたがることができます。
- 定数-複数の定数ウィンドウがあり、各定数ウィンドウはページごとに1回使用できます。
- 可変ウィンドウ-可変ウィンドウの内容は、ウィンドウが表示される各ページで再び処理されます。
SAPスクリプト-印刷プログラム
SAPスクリプトでは、 Print Program を使用して、実際のフォームを印刷し、データベーステーブルからデータを取得し、フォームを選択して、定義された形式でテキスト要素を印刷します。 データベースからデータを取得し、それをユーザー入力と組み合わせ、データをフォーマットして印刷します。
すべての印刷プログラムとフォームは、テーブル TNAPR に保存されます。
印刷プログラムでは、さまざまな機能モジュールが使用されます。 印刷プログラムを開始するには、OPEN_FORM機能モジュールが使用され、プログラムを終了するには、CLOSE_FORM機能モジュールが使用されます。
アプリケーションタイプを入力し、上部の[出力タイプ]をクリックします。
次のスクリーンショットでは、選択したサービスのアプリケーション名を確認できます。
印刷プログラム-例
以下は、顧客データ、日付、フライト予約などの会社関連情報を含む請求書を作成するサンプル印刷プログラムです。
セクション1-顧客データの取得
セクション2-フォームを開く
上記の汎用モジュールでは、パラメータ-
- FORM はフォームの名前を示します。
- DEVICE は、PRINTER(スプールを使用した印刷)、TELEFAX(ファックス出力)、またはSCREEN(画面への出力)です。
- OPTIONS は、さまざまな属性(印刷プレビュー、部数)を制御するためのITCPOタイプの構造を示しています。
セクション3-テーブル見出しの印刷
- ELEMENT 汎用モジュールは、印刷される「textelement」を表示し、「WINDOW」は印刷されるフォームのウィンドウを示します。
- TYPE は、TOP、BOTTOM、BODYなどのウィンドウの出力領域を示します。
- FUNCTION は、置換、追加、または追加するテキストを示します。
セクション4-顧客の予約を印刷する
セクション5-フォームを閉じる
最後にこの汎用モジュールを呼び出しますが、エクスポートパラメータはありません。
SAPスクリプト-ウィンドウの作成
ページを作成したら、ページ上にウィンドウを作成できます。 1つのページに複数のウィンドウを含めることができます。 ウィンドウを作成するには、[Windows]タブをクリックする必要があります。
次のウィンドウでは、ページ内のウィンドウの画面リストが表示されます。
各フォームには、MAINタイプのウィンドウが1つあります。 このようなウィンドウは、フォームのメインウィンドウと呼ばれます。 SAPscriptフォームの場合、メインウィンドウには次の機能があります-
- これを使用して改ページを制御します。
- これには、複数のページに使用できるテキスト本文が含まれています。
- 割り当てられたページウィンドウの上下の余白にあるテキスト要素を修正できます。
- メインウィンドウのテキストは、複数のページにまたがることができます。 テキストが1ページを埋める場合、出力は次のページと後続のページのウィンドウで続行されます。 最大99のメインウィンドウ00-98を作成できます。
- ステップ1 *-新しいウィンドウを作成するには、メニューバーの[編集]オプションをクリックし、[要素の作成]をクリックします。
ポップアップが生成されます。
- ステップ2 *-ウィンドウの名前と短い説明を入力する必要があります。Enterキーを押します。 目盛りをクリックして、ウィンドウを作成します。
- ステップ3 *-ウィンドウを配置するには、[ページウィンドウ]ボタンをクリックする必要があります。 そのウィンドウをページのどこに配置するかを知るように求められます。
- ステップ4 *-メニューバーの[編集]オプション、[編集]→[要素の作成]をクリックします。
ページレイアウトから新しいウィンドウを作成することもできます。 SE71トランザクションでレイアウトオプションが表示されない場合は、フォームペインタを有効にする必要があります。 フォームペインタを有効にするには、設定→フォームペインタに移動します。
[グラフィカルフォームペインタ]チェックボックスオプションを選択する必要があります。
- ステップ5 *-グラフィカルフォームペインタを選択すると、トランザクションSE71でレイアウトオプションが使用可能になります。 レイアウトをクリックすると、ページレイアウトが開きます。
レイアウトを使用して、ウィンドウの位置を簡単にドラッグできるGUIエディターを提供します。
デフォルトでは、レイアウトにメインウィンドウが表示されます。
- ステップ6 *-新しいウィンドウを作成するには、[レイアウト]→[ウィンドウの作成]を右クリックします。
- ステップ7 *-次の画面で、ウィンドウの名前を入力する必要があります。
- 意味を入力してください
- 左マージン
- 右マージン
- ステップ8 *-このウィンドウを保存するには、保存オプションSaveを選択します。 Window1という名前の新しいウィンドウが作成されます。
[ページにリンクされたテキスト]ウィンドウを表示するには、上部の[テキスト要素]オプションに移動します。
SAPスクリプト-出力エリア
メインウィンドウまたはページウィンドウでテキストを出力するには、さまざまな出力領域を選択できます。
- 上余白(メインウィンドウの上部領域)
- 下マージン(メインウィンドウの下部)
- メインウィンドウの本体(上部領域と下部マージンの間の領域)
上マージン
ページレイアウトでは、上部領域は常にメインウィンドウの先頭に表示されます。 上部の領域を使用して、複数ページをカバーするテーブルの後続ページの見出しを自動的に出力できます。
印刷プログラムを使用して上部マージン領域に配置された出力は、一度にフォーマットされませんが、最初はSAPスクリプトに内部的に保存されます。 フォーマットは、印刷プログラムが本文領域にテキストを書き込むとすぐに発生します。 変数もその瞬間に取得および置換されます。
メインウィンドウのボディ領域は、プログラムが上部マージンの定義部分に到達する前に塗りつぶされます。 この定義は、後続のページの上部領域として使用されます。 本文領域にテキストを書き込んだ後、上部領域の見出しを削除することはできないと言えます。
下マージン
下マージンは、メインウィンドウの最後にあります。 下部領域は、本文領域の出力を完了すると、現在のページに対して定義されます。 ページに十分なスペースが残っていない場合は、ページレイアウトの次のページに出力の下部テキストが生成されます。
印刷プログラムがメインウィンドウの下部領域に出力テキストを生成する場合、後続のページのこれらの行を(上部行と同様に)記憶します。 同時に、コンポーザーはこれらの行を処理して、Bottomエリアに必要なスペースとBodyエリア用に残されたスペースを決定します。 この時点で、現在のページの下部領域に設定されている変数が置き換えられます。
SAPスクリプト-テキストモジュール
SAPscriptの* textモジュール*は、テキストヘッダーおよび実際のテキスト行の管理情報コンポーネントから作成されます。 テキストヘッダーにはに関する情報が含まれています-
- テキストモジュールのタイトル
- 作成日時
- 最終変更情報
- 割り当てられたスタイル
- テキスト形式
テキストタイプ-テキストノードのテキストモジュール-を使用して、システム内の既存のテキストモジュールを参照します。 これにより、いくつかの形式のテキストモジュールからテキストを簡単に使用できます。 さらに、これらのテキストを維持するためにフォームの説明全体をロードする必要はありません。
テキストモジュールは、次の2つの方法で使用することができます-
参照-これはテキストモジュールを指します。 テキストはPCエディターで読み取り専用で表示され、フォームを印刷するときに含まれます。
コピー-これはテキストモジュールをコピーするために使用されます。 システムはモジュールのテキストをコピーし、テキストノードを編集可能なテキスト要素に自動的に変換します。
アプリケーション固有のフォームテキストを管理するために、アプリケーションは、*トランザクションコードSE75 *を使用して、従属テキストIDで独自のテキストオブジェクトを定義します。
アプリケーション用のテキストオブジェクトとテキストIDを作成するには、ラジオボタンを選択して[変更]をクリックします。
テキストオブジェクトを作成するには、[作成]ボタンをクリックします。 この情報を入力するように求められます。 テキストオブジェクトとテキストIDを使用して、一般的な標準テキストを入力できます。
標準テキストを維持するには、*トランザクションコード:SO10 *を使用します
テキストモジュールは、スマートフォームでも使用できます。 テキストモジュールを作成および変更するには、次のスクリーンショットに示すように、トランザクションスマートフォームを使用し、テキストモジュールを選択します。 作成ボタンをクリックします。
SAPスクリプト-テキストのグループ化
SAPスクリプトでは、*テキストのグループ化*によりテキストの処理が向上し、スクリプトの内部プロセスの制御も容易になります。 テキストは、テキストオブジェクトとテキストIDで構成されます。
テキストオブジェクト
テキストオブジェクトは、他のビジネスアプリケーションのオブジェクトにリンクでき、コンテキスト関係を定義します。 これとは別に、テキストオブジェクトは、さまざまな処理パラメータを決定するためにも使用されます。 テキストモジュールを保存するとき、テキストモジュールをテキストデータベースに直接書き込むかどうかは、オブジェクトに依存します。
SAPスクリプトのテキストオブジェクトとそれぞれの属性は、TTXOBテーブルで定義されます。
テキストID
オブジェクトのテキストを区別するには、SAPスクリプトで呼び出され、テキストIDと呼ばれるグループ化属性が必要です。 テキストIDは、同じテキストオブジェクトを記述するさまざまなテキストを識別するために使用されます。 テキストIDとその属性は、TTXIDテーブルで定義する必要があります。
オブジェクトには1つのテキストでは不十分であるため、オブジェクトの複数の特性を定義するには、テキストIDで識別される複数のテキストが必要です。
アプリケーション固有のフォームテキストを管理するために、アプリケーションは、*トランザクションコードSE75 *を使用して、従属テキストIDで独自のテキストオブジェクトを定義します。
アプリケーションのテキストオブジェクトとテキストIDを作成するには、ラジオボタンを選択し、変更をクリックします。
SAPスクリプト-フォーマットオプション
SAPscriptでは、テキスト出力形式は段落形式で制御されますが、テキストとスタイルを組み合わせることができます。 出力形式では、プレースホルダーを使用して柔軟なデータを作成できます。 SAPscriptでは、プレースホルダはシンボルと呼ばれ、後の時点までテキストに追加されないデータを表示するために使用されます。
これらは出力のフォーマットに使用され、テキスト内のすべてのシンボルは実際の現在の値に置き換えられます。 この置換は、テキストモジュールの出力でのみ行われ、元のテキストモジュールは同じままです。
SAPscriptには4種類のシンボルがあります-
- システムシンボル-さまざまなタイプのシステムシンボルをテーブルから取得できます-SAPSCRIPT、SYST、TTSXY。 これらはグローバル変数であり、システムテーブルから取得されます。
- 標準シンボル-それらはTTDTGテーブルで事前定義され、維持されています。 これらは、スクリプトの言語設定に基づいています。
- プログラムシンボル-これは、データベーステーブルまたは内部テーブルからのデータを表します。 印刷プログラムは、これらのシンボルに必要なデータを提供するために使用されます。
- テキストシンボル-これらはローカルで定義され、ドキュメント内の繰り返し用語またはテキストフラグメントを定義するために使用されます。
プレースホルダー/シンボル構造
各シンボルには名前が付けられ、シンボルの呼び出しは他のテキストも含むテキスト行で行われます。 これらのシンボルは通常のテキストとは区別され、呼び出しは、シンボルまたはモジュールの他のセクションへの呼び出しを識別するように実行されます。
シンボルを使用している間、次のルールを使用する必要があります-
- シンボルの名前に空白文字を使用しないでください。
- シンボルの直前と直後には、常にアンパサンド「&」を使用してください。
- シンボル間で発生するエディターの改行は使用しないでください。
- シンボル名では大文字と小文字が区別されず、最大130文字が含まれ、最初の32文字のみがシンボルの識別に使用されることに注意してください。
有効なシンボルの例
- &シンボル&
- &MY_symbol&
- &日付&
無効なシンボルの例
- *&mysymbol *-終了文字が含まれていません
- &symbol(Z&-閉じ括弧なし
- &my symbol&-これでは、シンボル名にスペースが含まれています
- &mysymbol)&-これでは、名前に無効な文字が含まれています
SAPScriptで使用される一般的なシンボル
Current Date | &DATE& |
Current Day Number | &DAY& |
Current Month Number | &MONTH& |
Current Year Number | &YEAR& |
Minutes Component of Current Time | &MINUTES& |
Seconds Component of Current Time | &SECONDS& |
Current Page Number | &PAGE& |
Output Length | &symbol(length)& |
Omitting the Leading Sign | &symbol(S)& |
Leading Sign to the Left | &symbol(<)& |
Leading Sign to the Right | &symbol(>)& |
Omitting Leading Zeros | &symbol(Z)& |
Space Compression | &symbol©& |
Number of Decimal Places | &symbol(.N)& |
Omitting the Separator for ‘Thousands’ | &symbol(T)& |
Specifying an Exponent for Floating Point Numbers | &symbol(EN)& |
SAPスクリプト-出力タイプ
SAPscriptを使用して、内部使用に必要な印刷フォームや電子メール経由で送信される電子メールメッセージなど、さまざまな出力タイプを設定できます。 PDF形式またはその他の必要な形式で出力タイプを取得することもできます。
フォームの印刷など、さまざまな出力タイプを使用できます。出力タイプの[印刷]を選択すると、ドキュメントが印刷されます。 同様に、出力タイプとしてFAX、電子メール、PDFを選択できます。 出力タイプとして[ファックス]を選択すると、ドキュメントのファックスが送信されます。
すべての出力タイプはNASTテーブルに保存されます。 設定された出力タイプを確認するには、 Transaction code – NACE を使用できます。
新しい画面で、アプリケーションタイプを選択する必要があります:販売用のV1、請求用のV3、入荷用のE1など
次の例では、発注書アプリケーションが選択されています。 設定された出力タイプを確認するには、画面上部の[出力タイプ]ボタンをクリックします。
SAPscriptで出力タイプを確認するには、出力形式を選択し、次のスクリーンショットに示すように、画面の左側にある[ルーチンの処理]をクリックします。 詳細に移動すると、SAPscriptの正確な出力タイプを見つけることができます。
設定された出力タイプとフォームルーチンについて、次の詳細を確認できます。
ドキュメントの出力タイプを確認するには、 Transaction code- VF03 を使用します
請求伝票番号を選択して、Enterを押します。
[移動]→[ヘッダー]メニューで[出力]を選択します。
利用可能なリストから選択した出力タイプを確認できます。 利用可能なオプションは-
- 印刷出力-印刷フォームで出力を送信します。
- Fax -出力をFAXマシンに送信します。
- 外部送信-出力を外部システムに送信します。
- Telex -出力をテレプリンターに送信します。
- EDI -標準化されたメッセージフォーマットにより、あるコンピューターシステムから別のコンピューターシステムにデータを転送します。
- 簡易メール-出力を電子メールで送信します。
- 特殊機能-請求書の送信などの特殊機能を実行するため
- イベント-ワークフローからメッセージ制御へのイベントをトリガーします。
- Distribution -出力を分散システムのアプリケーションに送信して、相互に通信します。
- タスク-SAP Business Workflow。
SAPスクリプト-印刷出力の制御
文書の印刷出力を制御するために、汎用モジュールで異なるパラメーター( PRINT_TEXT および OPEN_FORM )を渡すことができます。 PRINT_TEXT汎用モジュールは、パラメータHEADERおよびLINESで指定されたテキストモジュールを出力デバイス用に準備し、出力するために使用されます。 印刷の出力形式は、テキストヘッダーのフィールド TDSTYLE および TDFORM から取得されます。
TDPAGESLCT | SAPscript: Select print page |
TDPREVIEW | SAPscript: Show print view |
TDNOPREV | SAPscript: Disable print view |
TDNOPRINT | SAPscript: Disable printing from within print view |
TDTITLE | SAPscript: Text for title line in the output selection screen |
TDPROGRAM | SAPscript: Program name for replacing symbols |
TDTEST | SAPscript: Test printout |
TDIEXIT | SAPscript: Return immediately after printing |
TDGETOTF | SAPscript: Return OTF table, no print output |
TDSCRNPOS | SAPscript: Display position of OTF on screen |
TDDEST | Spool: Name of the output device |
TDPRINTE | Spool: Name of the device type |
TDCOPIES | Spool: Number of copies |
TDNEWID | Spool: New request |
TDIMMED | Spool: Print request immediately |
TDDELETE | Spool: Delete request after printing |
TDLIFETIME | Spool: Retention time of the request |
TDDATASET | Spool: Identification of the request |
TDSUFFIX1 | Spool: Suffix 1 of the request |
TDSUFFIX2 | Spool: Suffix 2 of the request |
TDARMOD | Spool: Archiving mode |
TDCOVER | Spool: Print cover page |
TDCOVTITLE | Spool: Cover page: Title text |
TDRECEIVER | Spool: Cover page: Recipient name |
TDDIVISION | Spool: Cover page: Division name |
主な機能モジュール
以下は、印刷出力を制御するために使用できる主要な機能モジュールです-
TDPREVIEW
これは、印刷する前に画面に出力を表示するために使用されます。 この汎用モジュールは常にSPOOL要求を作成し、バックグラウンド処理では解釈されません。
- ‘X’ −印刷ビューが必要
- ’’ −印刷ビューは不要
TDPAGESELECT
この汎用モジュールを使用して、印刷出力で印刷するページを選択できます。 個々のページまたはページの範囲を選択することも、組み合わせを選択することもできます。 ページ番号フィールドを選択しない場合、すべてのページが印刷されます。
ここのページ番号は、フォーム内の論理番号ではなく、SAPscript印刷の物理ページを示していることに注意してください。
- 2 -個々のページ番号2を印刷します
- 1-5 -これは、両方のページを含むすべてのページ1から5を印刷します
- 2- -2ページ目から最後までのすべてのページを印刷します
これらの値を組み合わせるには、これらの間にコンマを入れて組み合わせを使用できます。 2、1-5、2-
TDTITLE
この汎用モジュールは、印刷選択のタイトル行のテキストを選択するために使用されます。
TDSCHEDULE
この汎用モジュールは、SPOOL要求をすぐに送信するか、夜間に印刷するかを決定するために使用されます。
- ‘IMM’ − SPOOLリクエストをすぐに送信するには
- ‘NIG’ −夜間にリクエストを送信する
このフィールドに値が選択されていない場合、デフォルトでは、システムはそれをIMMとして受け取ります。
SAPスクリプト-データ形式
- データ形式*は、スタイルとフォームを定義するために使用され、Interchange Text Format(ITF)とも呼ばれます。 SAPscriptを使用して作成されたすべてのテキストには、特定のデータ形式があります。 データ形式は2つのフィールドで構成されています-
- フォーマットフィールド
- 実際の行の内容
このITF形式の特定の要素は、新しい行用に固定されています。
ITF要素は、スタイルとフォームを定義するために使用されます。 これらの属性でさえ、ITF形式では維持されません。 コンポーザは、印刷バージョンを表す形式に変換される出力用のITFテキストを準備します。これは、出力テキスト形式(OTF)と呼ばれます。
生データ出力形式
印刷出力を取得するには、これらの技術を使用することができます-
SAPScript
SmartForms
PDFベースの印刷フォーム
RDI出力モードでSAPscriptフォーマットを選択する必要があります。
SAPScriptの書式設定を SmartForms およびPDFベースの印刷フォームと比較する場合、SmartformsはSAPScriptの進歩であり、XSF形式でXMLベースの生データ出力を取得するために使用されます。 * PDFベースの印刷フォーム*は、コンテキスト評価の有無にかかわらず、XFPとして知られる生データ出力形式を提供します。
SAPスクリプト-エクスポート
SAPscriptはバージョン管理を提供しないため、スクリプトの各バージョンをローカルシステムにエクスポートされたファイルとして保存することをお勧めします。 あるクライアントから別のクライアントにSAPscriptをコピーする場合は、エクスポート/インポートを使用するか、オプションをコピーできます。
ファイルをエクスポートする
SAPscriptをローカルファイルにエクスポートするには、テーブル RSTXSCRP を使用します。
SAPscriptをシステム上のローカルファイルにエクスポートする手順を以下に示します。これらは、要件を満たすために後で変更できます。
ステップ1 *-トランザクションコードの実行- *SE38 およびプログラム RSTXSCRP の実行
- ステップ2 *-プログラム名を入力して実行します。
ここで、リストから目的のオブジェクトタイプ(フォーム/スタイル/標準テキスト/デバイスタイプ)を選択する必要があります。
- ステップ3 *-SAPスクリプトをローカルにエクスポートするには、[フォーム]を選択します。
- ステップ4 *-Modeパラメーターを選択します。 ここでは、モードパラメータとして[エクスポート]を選択します。
- エクスポートとは、ローカルファイルへのダウンロードを意味します。
- インポートとは、ローカルファイルからのアップロードを意味します。
- ステップ5 *-エクスポートするオブジェクト名を入力します。
デフォルトのエクスポートパスは次の形式です-C:\ temp \ '''''''** &&&&
上部のアイコンからレポートを実行すると、ローカルシステムにスクリプトを保存する場所を選択するよう求められます。
SAPスクリプト-インポート
インポートとは、ローカルファイルからアップロードすることです。 ローカルファイルからスクリプトをコピーする場合は、[インポート]オプションを使用できます。
ファイルをインポートする
ローカルマシンからSAPscriptのインポートを実行するには、*トランザクションコード:SE38 *を実行します。
ステップ1 *-トランザクションコードSE38でプログラム *RSTXSCRP を実行します。
- ステップ2 *-プログラムを入力して実行します。
ここで、リストから目的のオブジェクトタイプ(フォーム/スタイル/標準テキスト/デバイスタイプ)を選択する必要があります。
- ステップ3 *-SAPスクリプトをローカルにエクスポートするには、[フォーム]を選択します。
- ステップ4 *-Modeパラメーターを選択します。 インポートとは、ローカルファイルからアップロードすることです。 モードパラメータで[インポート]を選択します。
- ステップ5 *-エクスポートするオブジェクト名を入力します。
'ステップ6 *-インポートパスを入力-C:\ temp \ '* &&&&
上記の方法を使用すると、次の手順を使用して、1つのクライアント512からクライアント500にSAPscriptをコピーできます-
- ステップ1 *-クライアント512にログインします。
ステップ2 *-トランザクションコード- *SE38 または SA38 を実行し、ABAPプログラムを実行します: RSTXSCRP
- ステップ3 *-モードパラメータ:EXPORTを入力し、SAPScriptをシステムにローカルに保存します。
スクリプトをインポートするには-
- ステップ1 *-クライアント500にログインします。
ステップ2 *-トランザクション *SE38 または SA38 を実行し、ABAPプログラムを実行します: RSTXSCRP
- ステップ3 *-モードパラメータを入力:IMPORT
あるクライアントから別のクライアントにスクリプトをコピーする他のオプションは、次の手順を使用することです。
ステップ1 *-トランザクションコード *SE71 を使用します。
- ステップ2 *-コピー500を実行するクライアントにログインします。
- ステップ3 *-トランザクションコードの実行:SE71→[ユーティリティ]→[クライアントからコピー]をクリックします
- ステップ4 *-ソースフォーム、ソースクライアント、およびターゲットクライアントを入力します。
- ステップ5 *-[実行]ボタンをクリックします。
SAPスクリプト-コントロールテーブル
SAPscriptには、テキストオブジェクトの定義、テキストIDの定義、およびそれらの説明を定義するために使用されるさまざまなコントロールテーブルが含まれています。
コントロールテーブルを維持するには、トランザクションコードを使用します。 SE75
TTXOB | Definition of the text objects |
TTXOT | Description of the text objects |
TTXID | Definition of the text IDs |
TTXIT | Description of the text IDs |
制御テーブル-TTXOB
このテーブルには、SAPscriptがサポートするすべてのテキストオブジェクトの定義が含まれています。 SAPscript汎用モジュールを使用すると、このテーブルにオブジェクトが保存されているテキストを処理できます。 定義がテーブルTTXOBに保持されていない関数にオブジェクトが渡されると、例外オブジェクトがトリガーされます。
このテーブルは、トランザクション SE75 を使用して管理できます。
表にはさまざまなパラメータがあります-
- エディタの線幅-これは、エディタ内のテキストに許可される最大線幅を示します。
- デフォルトスタイル-新しいテキストモジュールを作成すると、システムはこのフィールドで指定されたスタイルを自動的に割り当てます。
- デフォルトのフォーム-新しいテキストモジュールを作成すると、システムはそれに指定されたフォームを提案します。
- テキスト形式-これはテキストの形式を決定するために使用され、形式に従って、システムは適切なエディターを呼び出します。
制御テーブル-TTXOT
この表には、テキストオブジェクトの簡単な説明が含まれています。
制御テーブル-TTXID
このテーブルには、テキストオブジェクトに割り当てられ、SAPscriptでサポートされているすべてのテキストIDが含まれています。
この表で使用されているさまざまなパラメータが含まれます-
- TDSHOWNAME-テキストの名前を表示します。
- TDTEXTTYPE-テキストの形式を決定します。
- TDKEYSTRUC-テキストモジュールの名前フィールドのキー構造を記述する構造の名前を保存できます。
- TDOBLIGAT-(予約)
- TDDELPROT-(予約)
- TDINCLRES-(予約)
- TDINCLID-2番目のテキストの内容を最初のテキストに含める。
オブジェクトのテストIDの定義を表示するには、任意のオブジェクトを選択して、[テキストID]をクリックします。 テキストIDごとに上記のすべてのパラメーターを確認できます。
制御テーブル-TTXIT
この表には、テキストIDの簡単な説明が含まれています。
SAPスクリプト-テキストとグラフィックス
ロゴ、画像など、グラフィックをSAPscriptに追加することもできます。 スクリプトでグラフィックを使用するには、グラフィックをR/3システムにインポートする必要があります。 これは、トランザクションコード SE78 を使用して実行できます。または、レポート RSTXLDMC を実行することもできます。
グラフの名前を入力する必要があり、サポートされている画像タイプは .tmp ファイルまたは .bmp ファイルです。 .tif 形式の画像をR/3システムに直接インポートできます。画像は標準テキストとして保存され、「Include」ステートメントを使用してSAPscriptに含めることができます。
SAPscriptへのグラフの追加
ステップ1 *-トランザクションコード *SE78 を実行します。
- ステップ2 *-ツリーを展開し、左側からビットマップ画像を選択します。 [インポート]ボタンをクリックします。
ステップ3 *- *.bmp 画像を選択するには、次のスクリーンショットに示すように矢印をクリックします。
- ステップ4 *-ファイルを選択したら、グラフの名前と説明を入力します。 続行ボタンをクリックします。
- ステップ5 *-アプリケーションツールバーの[プレビュー]ボタンをクリックします。
次のスクリーンショットに示すように、画像のロゴを見ることができます。
これにより、ロゴ、画像をSAPシステムに追加できます。
SAPスクリプト-制御コマンド
SAPscriptでは、* controlコマンド*を使用して、SAPscriptコンポーザで処理される出力フォーマットを制御できます。 コンポーザーは、エディターに表示されたフォームのテキストを印刷に使用されるフォームに変換します。
制御コマンドは、通常のテキスト行と同じ方法でテキストエディターに配置されます。 次の構造が制御コマンドに使用されます-
- 制御コマンドは段落形式で入力されます/:
- 各行に制御コマンドを1つだけ入力する必要があります。
- 制御コマンドはテキストで入力されます。
- 制御コマンドとそのパラメーターが複数行にならないようにする必要があります。
- 制御コマンドにエラーが含まれる場合、制御コマンドを含む行はコメント行と見なされ、印刷されません。
以下は、SAPscriptで使用できる一般的な制御コマンドです-
明示的な改ページ:NEW-PAGE
この制御コマンドを使用して、任意の時点でテキストの改ページを強制できます。
例
/:NEW-PAGE [ページ名]
空白行内に暗黙的な改ページが発生しないようにしてください。そうしないと、予期しない空白ページが印刷される可能性があります。
改ページの防止:保護
このページ保護制御コマンドを使用すると、1ページに完全な段落を印刷できます。
メインウィンドウ:NEW-WINDOW
この制御コマンドは、メインウィンドウの1つがいっぱいになったときに使用されます。 次に、そのページの次のメインウィンドウが表示されます。
以下は、出力を制御するためにSAPscriptで使用できる他の一般的な制御コマンドです-
- SET DATE MASK -日付フィールドをフォーマットするには
- DEFINE -値をテキストシンボルに割り当てるには
- SET TIME MASK -時間フィールドをフォーマットするには
- SET COUNTRY -国依存の書式設定
- SET SIGN -先行標識を配置するには
- RESET -番号付き段落を初期化するには
- TOP -メインウィンドウでヘッダーテキストを設定するには
- BOTTOM -メインウィンドウでフッターテキストを設定するには
- IF -条件付きテキストを追加するには
- STYLE -スタイルを変更するには
- INCLUDE -他のテキストを含める
例
MYTEXT OBJECT TEXT ID STを含める
インクルード名オブジェクト名ID名パラグラフ名言語名
SAPスクリプト-スクリプトのコピー
SAPシステムでは、スクリプトをローカルシステムにコピーしたり、あるクライアントから別のクライアントにコピーしたりできます。 SAPscriptはバージョン管理機能を提供しないため、スクリプトをローカルに保存する必要があります。
あるクライアントから別のクライアントにスクリプトをコピーするには、トランザクションコード SE71 を使用します。
- ステップ1 *-コピー500を実行するクライアントにログインします
- ステップ2 *-Tコードの実行:SE71-[ユーティリティ]→[クライアントからコピー]をクリックします
- ステップ3 *-ソースフォーム、ソースクライアント、ターゲットクライアントを入力します。
- ステップ4 *-[実行]をクリックします。
ソースフォームがクライアントで使用できない場合、次のスクリーンショットに示すように、フォームテストがクライアントxxxで使用できないことを示すメッセージが表示されます。
SAPスクリプト-標準テキスト
SAPの標準テキストを使用して、データベースに保存された値を出力ドキュメントに表示できます。これは、トランザクションコードを使用して実行できます。
例
すべての請求書に契約条件を印刷し、各請求書にこれらの法的契約条件を直接含めたいとします。 標準テキストを作成して、請求書で使用できます。
- ステップ1 *-トランザクションSO10を実行する
さまざまなテキストオプションがあります。 これは、検索オプションを使用して確認できます。
- ステップ2 *-標準テキストを選択し、緑色のチェックマークをクリックしてEnterをクリックします。
- ステップ3 *-テキストを選択するには、[実行]をクリックします。 すべての標準テキストのリストが表示されます。
ステップ4 *-リストから次のいずれかを選択します。 ここでは、 *FI_CASH_SI を選択し、[表示]オプションをクリックします。
デフォルトでは、次のテキストが表示されます。
- ステップ5 *-これをスクリプトに追加する必要があります。
- ステップ6 *-変更するフォームを選択します。 下部の変更オプションを選択してクリックします。 次に、「移動」→「エディターの変更」をクリックします。
- ステップ7 *-テキスト名、オブジェクトID、言語などを入力します。
同様の方法で、画面上部の挿入オプションを使用して、テキストシンボル、システムシンボル、ドキュメント、ハイパーテキストを挿入できます。
SO10トランザクションを使用すると、独自の標準テキストを作成して名前を付け、後でスクリプトで使用することもできます。
何かを書いて、標準テキストとして保存できます。
これをフォームに直接含めることができます。 フォームを開き、[変更]ボタンをクリックします。 「移動」→「エディターの変更」をクリックします。
制御コマンドを使用すると、以前に作成した標準テキストをスクリプトに挿入できます。
システム記号
システムシンボルはシステムによって維持され、その値はシステムによって提供されます。 システムシンボルの例には、時間、日付、時間、分、秒、ページなどがあります。
標準記号
トランザクション SM30 を使用して、標準シンボルを維持できます。 標準的なシンボルの例は、ありがとう、心からなどです。 これらはテーブルTTDGに保存されます。
プログラム記号
データベースフィールドのプレースホルダーであり、印刷プログラムのグローバルプログラムシンボルとしても機能します。
SAPスクリプト-ワープロ
要件に応じて、異なるエディターを使用してテキストを作成できます。 システム構成およびプラットフォームに応じて、Microsoft Wordエディター、行エディター、またはPCエディターを使用できます。 これらのエディターはすべて、ワードプロセッシングおよびテキストの作成と編集に使用されます。 これらのエディターは、フォームの印刷および文書の作成に使用できます。
PCエディター
PCエディターはテキストの作成と編集に使用され、下位互換性があります。 行エディターで作成されたテキストを使用できます。
Microsoftエディターがインストールされている場合、ラインエディターが使用できないときにPCエディターに切り替えることができます。 MS Wordエディターがインストールされていない場合は、PCエディターと行エディターを切り替えることができます。 PCエディターを使用したワードプロセッシングは、ワードプロセッシングでワードドキュメントを作成する一般的な方法に似ています。
以下の機能は、PCエディターでのワードプロセッシングに使用できます-
- 段落とテキストを直接割り当てることができます。
- テキストを直接カット/ペーストできます。
- PCエディターを使用すると、統合エラーチェックを実行して構文を検証できます。
- 太字フォント、さまざまなフォントサイズなどの特殊なテキスト構造と文字形式の表示を使用できます。
デフォルトでは、SAPシステムの各アプリケーションでPCエディターが呼び出されます。 行エディターを開くには、「移動」→「エディターの変更」をクリックします。
ラインエディター
行エディタを使用してテキストを作成および編集し、標準レターなどの標準フォームを印刷したり、販売注文、請求書などのドキュメントを作成したりします。 印刷用。
前述のように、Microsoftエディターがインストールされている場合、ラインエディターが使用できないときにPCエディターに切り替えることができます。 MS Wordエディターがインストールされていない場合は、PCエディターと行エディターを切り替えることができます。 PCエディターでテキストを作成すると、システムは形式とスタイルを変更し、それに応じてテキストを表示します。
行エディターから他のエディターに切り替えるには、→エディターの変更に移動します。
Microsoft Wordエディター
Microsoftワードエディタを使用してテキストを作成および編集し、標準のレターなどの標準フォームを印刷したり、販売注文、請求書などのドキュメントを作成したりします。 印刷用。 このエディターは、Windows 200xおよびWindows XPでのみ使用可能です。
UnicodeシステムでSAPがサポートするすべての言語でMicrosoft Wordエディターを使用できます。 非Unicodeシステムでは、このエディターはヘブライ語でのみ使用可能です。
MSワードエディタを使用して、他のエディタで作成されたテキストを開き、下位互換性を提供できます。
MS Wordエディターの言語を選択するには、スタート→コントロールパネル→地域と言語のオプション→キーボードと言語に移動します。
SAPシステムに含まれていない言語を使用することもできます。これらの言語は、MS Office言語オプションで有効化する必要があります。
[プログラム]→[Microsoft Office]→[Microsoft Officeツール]→[Microsoft Office]→[言語設定]に移動します。
追加する言語を選択します。 リストから任意の言語を選択して、[追加]ボタンをクリックできます。
他のエディターに切り替えるには、→エディターの変更に移動します。
SAPscriptのエディターとしてのMicrosoft Wordの設定
MS Wordをエディターとして設定するには、Microsoft Office 2000以降のバージョンが必要です。 インストールしてアクティブにする必要があります。 Unicodeおよび非Unicodeシステムの両方のエディターとしてMS Wordを使用できます。 セキュリティレベルを中に設定し、すべてのアドインをインストールして、テンプレートを受け入れる必要があります。
- ステップ1 *-セキュリティレベルを定義するには、[ツール]→[マクロ]→[セキュリティ]に移動します。
ステップ2 *-システムでMicrosoft Editorを有効にするには、トランザクション *i18N を呼び出します
- ステップ3 *-i18Nカスタマイズオプションに移動し、Microsoft Word Editorを選択します。
ステップ4 *-システムでi18Nカスタマイズが利用できない場合、トランザクションSE38でプログラム *RSCPINST を選択して、MS Wordをエディターとして設定できます。
ステップ5 *-トランザクション *SE38 を呼び出して、次の画面でプログラムを入力します。
- ステップ6 *-プログラム名を入力し、F8を押して新しい画面に移動します。 次のスクリーンショットに示すように、「移動」→「MS Wordをエディターとして設定」をクリックします。
SAPスクリプト-ドキュメントの作成
SAPシステムでは、SAPシステムがエディターを呼び出さない場合、ドキュメントを手動で作成および変更することもできます。 ドキュメントを作成するには、以下のパスに従う必要があります-
ツール→SAPスクリプト→標準テキストまたはトランザクションSO10の呼び出し
ドキュメントを作成するには、次の詳細を入力する必要があります-
テキスト名
これは、ドキュメントの名前を示しています。 名前には、文字、数字、スペース、および特殊文字を使用できます。 ただし、*などの特殊文字は使用できません。
テキストID
これは、ドキュメントが属するアプリケーションを定義します。 標準テキストは、SAPアプリケーションに固有ではないドキュメント、またはシステムテキストとSAPアプリケーションは、アプリケーション固有のドキュメントに独自のテキストIDを使用します。
言語
これは、ドキュメントをシステムに保存する言語を示しています。
ドキュメントにはさまざまなオプションを設定できます。 Word文書のように機能します。 ドキュメントのプロパティを定義するには、オプションに移動します。
SAPスクリプト-ドキュメントの更新
SAPスクリプトでは、 SO10 トランザクションを使用して、SAPシステムの既存の標準テキストを更新できます。 [変更]オプションを使用して既存のドキュメントを変更したり、表示オプションを使用してドキュメントを表示したりできます。 [警告]ウィンドウの[許可]ボタンをクリックします。
ドキュメントが変更モードで開かれていることがわかります。 次のテキストをコピーするか、システムで直接変更を加えることができます。
文書に変更を加えるために使用できるさまざまな単語関数があります。 ドキュメントが変更されると、デフォルトの場所に保存されます。
SAPスクリプト-ドキュメントの検索
SAPシステムで文書を検索することもできます。 テキストID、テキスト名、言語などのさまざまなパラメーターに基づいて、または著者名に基づいて検索を実行できます。
検索を実行するには、ツール→SAPscript→標準テキストに移動するか、トランザクション SO10 を呼び出します。
標準テキストを入力して、「検索」をクリックします。 ダイアログウィンドウが開き、次の検索条件から選択できます。
- テキスト名
- テキストID
- 言語
- 著者
SAPスクリプト-文書の保存
文書をSAPシステムに保存すると、SAPデータベースに保存されます。 検索オプションを使用すると、データベース内のすべてのドキュメントのリストを表示できます。 事前定義されたドキュメントと、システムで作成されたカスタマイズされたドキュメントを表示できます。
文書を保存するには、テキスト→保存に移動します。
次のドキュメントを編集用に開き、ドキュメントに変更を加えたとしましょう。
文書を保存するには、上部の[テキスト]オプション→[保存]に移動します。
ドキュメントの異なるバージョンを維持することもできます。 また、ドキュメントは自動的に保存されないため、長いドキュメントを定期的に保存する必要があります。 文書を保存せずにSAPシステムからログオフすると、文書は失われます。
ドキュメントのバージョンを維持するには、[名前を付けて保存]をクリックして、テキスト名、テキストID、および言語を入力します。
バージョンを表示するには、[検索]オプションの下の使用可能なドキュメントのリストでドキュメントを検索できます。
SAPスクリプト-文書の削除
SAPシステムで文書を削除することができます。 文書を削除する場合は、SAPScript→標準テキスト→テキスト名を入力して、変更をクリックします。
ドキュメントがエディターで開きます。 文書を削除するには、テキスト→削除→はいに進みます。
メッセージが表示されます-ドキュメントが削除されました。 削除されたドキュメントをSAPシステムで復元することはできません。
SAPスクリプト-ドキュメントの印刷プレビュー
SAPスクリプトでは、印刷前に文書をプレビューすることもできます。 ドキュメントの印刷プレビューを実行するには、テキスト→印刷プレビューに移動します。
次のテキストを含むドキュメントを開きました-
[テキスト]→[印刷プレビュー]に移動すると、ドキュメントの印刷形式が表示されます。 さまざまな印刷プレビューオプションを選択できます。
印刷プレビューまたは印刷用に特定のページを選択できます。 オプションから[印刷プレビュー]を選択すると、次のスクリーンショットに示すように、既存のドキュメントのプレビューを見ることができます。
SAPスクリプト-フォーマット変換
SAPscriptはInterchange Text Format(ITF)に保存されており、ワープロを使用してRich Text Format(RTF)およびASCII形式に変換できます。 形式変換を実行してITFをRTF形式に変換するには、文書テンプレートからSAPスクリプト段落への形式変換を実行する必要があります。
SAPscriptエディタを使用すると、次の形式の変換を実行することができます-
- RTF、ASCII、HTML形式のテキストをシステム上のローカルファイルにエクスポートできます。
- ローカルファイルをRTF、ITF、ASCII形式の形式でインポートすることもできます。
RTFファイルのインポートとエクスポート
RTFファイルのエクスポート中に、1つの段落または文字形式を1つの段落または文字スタイルにマッピングできます。
RTFファイルのインポート中、2つの部分に分割できます。1段落形式は1段落スクリプト形式に正確にマッピングされ、1文字形式は最大4つのSAPスクリプト文字スタイルにマッピングできます。
RTFエクスポートを実行するには、テキスト→ダウンロードに移動します。
リッチテキスト形式(RTF)を選択し、転送→完全なファイルパス、ドキュメントテンプレート、フォームまたはスタイルを入力して、転送を選択する必要があります。
RTFインポートを実行するには、テキスト→アップロードに移動します。
リッチテキスト形式(RTF)を選択し、転送→完全なファイルパスとドキュメントテンプレートを選択します。 次に、転送を選択します。
SAPスクリプト-生データインターフェース
SAP ScriptingのRaw Data Interfaceを使用すると、外部のテキスト管理システムに接続できます。 このインターフェースには、SAPシステムのSAPスクリプトフォームからのすべてのデータが含まれますが、フォントサイズ、色、タイプなどのレイアウト情報は含まれません。 インターフェイスを介して接続されている外部システムは、レイアウトを管理し、データ管理を実行します。
Raw Data Interfaceを使用すると、外部システムに簡単に接続できますが、フォームが外部システムで正しく印刷され、レイアウトが管理されているかどうかを確認するメカニズムはありません。
外部システム統合のためにRaw Dataインターフェイス(RDI)を有効にするには、SAPシステムで次の設定を実行する必要があります-
- 出力デバイス-RDI統合を実行するには、外部印刷用に構成する必要がある出力デバイスが少なくとも1つ必要です。
- * RDIを介した外部システムへの印刷*-SAPシステムで外部印刷用のフォームにフラグを立てることができます。このカスタマイズ設定を選択しない場合、アプリケーション設定がフォームに適用されます。
- 外部システムでのフォーム定義-外部テキストシステムで印刷される各フォームについて、外部テキストシステムでフォーム定義を定義する必要があります。
- 印刷ステータス管理-RDIを介して外部システムに印刷するすべてのフォームでは、印刷フォームが失敗したすべてのドキュメントの印刷ステータスを維持する必要があります。
テーブル名 STXRDID は、SAPscript RDIに関するすべての情報を維持するために使用されます。 トランザクションコード- SE11 または SE80 を使用して、この表の情報を表示できます。
これはトランザクションコードです: SE11 。 データベーステーブル名を指定して、[表示]をクリックします。
これはトランザクションコードです: SE80 。 テーブル名を入力し、「実行」をクリックします。
生データインターフェイスの出力形式
印刷出力を取得するには、これらの技術を使用することができます-
SAPScript
SmartForms
PDFベースの印刷フォーム
RDI出力モードでSAPscriptフォーマットを選択する必要があります。
SAPScriptの書式設定を SmartForms およびPDFベースの印刷フォームと比較する場合、SmartformsはSAPScriptの進歩であり、XSF形式でXMLベースの生データ出力を取得するために使用されます。 * PDFベースの印刷フォーム*は、コンテキスト評価の有無にかかわらず、XFPとして知られる生データ出力形式を提供します。
SAPスクリプト-出力モードのスプール
RDI出力形式は、4種類のレコード値で構成されています。 各レコードには、ヘッダー(H)、データ(D)、ソート(S)、およびコントロール(C)のレコードタイプを示すフラグが含まれています。
- ヘッダーレコード
- データ記録
- レコードを並べ替える
- 制御記録
ヘッダーレコード
印刷のために外部テキストシステムに送信する各フォームは、ヘッダーレコード構造を示すフラグ-Hで始まります。 ドキュメントのヘッダー部分には、次のフィールドが含まれています-
- フォーム名
- 書類番号
- RDIバージョン
- 言語
- デバイスタイプ
- ヘッダーレコード構造のクライアントおよび他の多くのフィールド
レコードを並べ替える
このフィールドはソートフィールドの後にあり、フラグ-Sで表されます。 各フォームには、10個の内部ソートフィールドと5個の外部ソートフィールドが含まれ、各フィールドの長さは32文字です。
データ記録
これはソートレコードの後にあり、データレコード構造を示すフラグ-Dが含まれています。 次のフィールドが含まれています-
- フォームウィンドウ名
- 次のメインウィンドウの開始
- テキスト要素の名前
- テキスト要素の開始
- テキスト要素内のシンボルを識別するシンボル名
- シンボルの値
制御記録
各ドキュメントには、フラグ-Cで表される制御レコードが含まれており、フォーム内のデータを解釈するために使用されます。 コントロールレコードは、次の詳細を提供します-
- コードページと言語情報-insertステートメントを使用して他の言語のテキストを追加すると、システムはコードページと言語を含む制御レコードを追加してデータレコードを書き込みます。 コードページの場合-CODEPAGEキーワードが使用され、言語の場合-LANGUAGEキーワードが使用されます。 + 例-CCODEPAGE 1000 LANGUAGE DE
- ページ名-コントロールレコードを使用して、新しいページを開始するときに、コントロールレコードを追加してページ名を指定します。 ページ名を指定するために使用されるキーワード-PAGENAME。 + 例-CPAGENAME SECOND
SAPスクリプト-出力モードIDOC
IDOCは Intermediate Document の略で、SAPから他のシステムに印刷するためのドキュメント/フォームを転送するために使用されます。 この出力方法を使用すると、ヘッダー、ソート、データ、および制御レコードの構造は変わりませんが、フラグ-H、S、D、およびCは失われます。 ソート、データ、および制御に使用される個別のセグメントがあります- E1RDI_BODY 。このセグメントは制御レコードの前にあります。
汎用モジュール START_FORM および END_FORM を使用して、単一の要求で複数の文書を印刷すると、単一のIDOCが作成され、IDOCのステータスは30に設定されます。
SAPスクリプト-システムでのスクリプトの作成
スクリプトを開始するには、トランザクション SE71 を実行する必要があります。これにより、フォームペインタが開きます。
フォームペインタのリクエスト画面で、フォームおよび言語フィールドにそれぞれSAPscriptフォームの名前と言語を入力します。 これらのフィールドにそれぞれ「RVINVOICE01」と「EN」を入力しましょう。
Paragraphは、テキストとフォントの段落をフォーマットするために必要なすべての情報を提供します。 段落を作成するには、次のスクリーンショットに示すように、「段落形式」タブをクリックします。
左マージン、右マージン、配置、行間隔を入力して、段落形式を定義します。
次のスクリーンショットに示すように、[文字形式]タブをクリックして文字形式と意味を入力します。
フォーマットオプションに次の設定を入力します-
- フォーマット
- 意味
- Size
次に、ドキュメントのレイアウトを定義する必要があります。 [レイアウト]タブをクリックして、ウィンドウをデザインします。
レイアウトを使用すると、ウィンドウの位置をドラッグできるGUIエディターが提供され、使いやすくなります。
デフォルトでは、レイアウトにメインウィンドウが表示されます。 新しいウィンドウを作成するには、次のスクリーンショットに示すように、レイアウト→ウィンドウの作成を右クリックします。
グラフ/ロゴをレイアウトパーツに追加することもできます。 [ウィンドウ]タブの横にある[グラフ]ボタンに移動して、詳細を入力します。
それぞれのウィンドウに要素を作成するには、[テキストの編集]ボタンをクリックします。
このスクリプトを呼び出すために、トランザクションSE38でドライバープログラムを定義できます。 汎用モジュールを使用して、呼び出し元プログラムを定義します-
- START_FORM
- WRITE_FORM
- END_FORM
- CLOSE_FORM
これは、スクリプトを開発し、複数のウィンドウを追加し、フォームの段落とレイアウトを定義する方法です。