2009-03-09 26 views
1

ABAPはstdoutとstderrへの書き込みを許可していますか?私はジョブスケジューラ(Cronacle)を介してSAPシステムへのインタフェース接続をテストするための小さなプログラムを書く必要があります。たとえば、「He​​llo World!」を開始/書き込みします。 +日付+標準出力/終了時刻。私はこの一見トライアルなプログラムに任せられた.netプログラマであり、私は立ち往生しています。ABAP StdoutとStderr

答えて

1

Appliactionログ(トランザクションSLG0、SLG1)テーブルBAL *をトレースするための非常に非常にクールですタスク、異なるユーザーアカウント、ユーザーには見えない、古いトレースエントリの消去は、それらを作成している間に決めることができます。それ以上私はデバッグする必要はありません天国です。

1

実行中のSAPがABAPスタックを持つUNIX/Linuxベースのシステムであると仮定しています。 SAPは根本的なOSを可能な限り抽象化しようとします。この技術は、Windows上で少し変更を加えて保持されます。

OSと対話するには、SM49の「外部OSコマンド」を参照してください。ここでcatを実行し、コンソールに書き出す値を渡すコマンドを設定できます。

私はあなたがメッセージをホストシステム上のファイルに書き込む方が良いと思います。そうするために。

OPEN DATASET i_file FOR OUTPUT IN TEXT MODE ENCODING DEFAULT. 

次に、を使用してファイルにデータを書き込みます。

あなたの完了は、あなたはその後、AL11にファイルの内容を見て、ホストから直接それを拾うことができ

CLOSE DATASET i_file. 

を忘れないでください、その後

TRANSFER wa_text TO i_file. 

。 UNIXホストで印刷されているメッセージを表示したい場合。コンソールで接続し、+ F/var/log/tailを少なくしてください。窓には、同等の代用品があると確信しています。

1

質問しているような「デバッグ情報」を書くには、いくつかのオプションがあります。ここでは、アプリケーションログ(SLG1およびSBAL *汎用モジュール)とファイルへの書き込みの2つの可能性について説明します。

ただし、状況に応じて、プログラムをバックグラウンドで実行していると言います。その場合、MESSAGEでメッセージを発行するのが最善の方法です(メッセージの発行をSY-BATCHの値をチェックしてバックグラウンド処理に制限することができます)。

SM37に行くと、バックグラウンドで実行中のプログラムによって発行されたメッセージがジョブログに表示されます。

関連する問題