問題タブ [dynpro]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2854 参照

abap - VA01 で列を無効にする

販売注文品目の列全体を無効にする必要があるという要件があります。フィールドはVBAP-ARKTXVBAP-KDMATです。

データを含む列を無効にする方法を見つけましたが、列全体ではありません。

USEREXIT_FIELD_MODIFICATIONを使用して、次のコードを使用してこれを実現しました。

列全体を無効にする方法はありますか?

ここに画像の説明を入力

0 投票する
2 に答える
1168 参照

class - クラス メソッドから (Report-)Function を呼び出して画面タイトルを変更する

特定のクラス メソッドがトリガーされたときに、dynpro でタイトルバーを変更したい。そのため、dynpro が配置されているレポートで、'SET TITLE' を使用してタイトルバーのコンテンツを変更する関数を呼び出すことができると考えました。

これは可能ですか?それとももっと良い方法がありますか?

ありがとう!

0 投票する
2 に答える
1911 参照

oop - SAP Classic Dynpro および OO プログラミング。なぜだめですか?

SAP の従来の Dynpro では OO を開発できないという記事をいくつか読みました。初心者なので誤解があるかもしれません。しかし、クラスとオブジェクトを使用しているときは、オブジェクト指向を開発していますよね?

Dynpro では、クラスを使用してオブジェクトを作成したり、それらのメソッドを使用したりすることもできます。では、なぜ Dynpro は OO ではないのでしょうか?

私はそれが基本的な質問であることを知っていますが、私がOOについて誤解した場合は、これを頭から取り除く必要があります:)

0 投票する
1 に答える
6866 参照

abap - GUI ステータスをコピーせずに CL_SALV_TREE にユーザー定義関数を追加することはできますか?

CL_SALV_TREEこのインスタンスが使用されているレポートに GUI ステータスをコピーせずに、 のインスタンスにユーザー定義関数を追加することはできますか?

私がやろうとしているのは、add_functionメソッドを使用してカスタム関数を追加することです。

ただし、ボタンは表示されません。

ボタンなし

少し前に でやろうとしたのを覚えていますがCL_SALV_TABLE、 を使用すると明示的な例外が発生しadd_functionました。

その時に試したのは。

未処理の例外による短いダンプで終了しますCX_SALV_METHOD_NOT_SUPPORTED。SAP 標準コードに表示されるのは

このコード片からadd_function、 object の method を持つ新しい関数を追加できると推測できますIF_SALV_C_TABLE_OBJECTS=>TREE

これまでのところ、次の回避策を使用しました。

残念ながら、このような場合、ボタンはステータス バーではなく、ツリーの直前の別の場所に表示されます。

ステータスバーにないボタン

0 投票する
1 に答える
4094 参照

abap - テーブル コントロールにすべての行が表示されない

ABAP 740 SP13 でテーブル コントロールのすべての行が表示されないという問題があります。

たとえば、次の 2 つの行を含むテーブルがあります。

LT_TRANSFER_CONFIRM_TC の値

これは、このコードが実行されるテーブルの状態です。

これはすぐに Process Before Output コードに入ります。

どこにstatus_0300ある:

とはtc_transfer_confirm_get_lines:

私の PBO のループの最初の繰り返しの終わりに、値はテーブルの最初の行であるls_transfer_confirm_tcと一致し、( in ) は に設定されます。lt_transfer_confirm_tctc_transfer_confirm-current_line1g_tc_transfer_confirm_linestc_transfer_confirm_get_lines10

ループの 2 回目の繰り返しは処理されません。カーソルは、ENDLOOP(最初の繰り返しから) という行に(ステートメントCURSOR tc_transfer_confirm-current_line.の最後であるため) ホップし、最後に、その行で停止することなく に移動します。このループの最後に、is initial 、is still 、およびis still . この質問の上部にある画像に示されているように、その間ずっと、テーブルにはまだ 2 つの行があります。LOOPENDLOOPMODULE tc_transfer_confirm_get_linesls_transfer_confirm_tctc_transfer_confirm-current_line1g_tc_transfer_confirm_lines10lt_transfer_confirm_tc

この時点で、画面は次のように表示されます。

SCREEN 0300 で表示されるテーブル コントロール

このループがテーブルの 2 行目を処理しないため、画面に表示されない理由がわかりません。

ありがとう。

0 投票する
1 に答える
4734 参照

abap - ABAPリストレポートのAT LINE SELECTION後の戻るボタンのイベント?

イベント ブロックAT LINE SELECTION(およびHIDE) を使用するリスト レポートがあります。

メイン リストの行をダブルクリックすると、AT LINE SELECTIONが処理され、メイン リストがテキスト 'Testline' で構成されるリストに置き換えられます。

緑色の戻るボタンをクリックすると、メイン リストが再び表示されます。

すべてが考慮されたとおりに機能します。

今私の質問に:

ユーザーが緑色の戻るボタンをクリックして詳細リストからメイン リストに移動したときに、レポートに通知する方法はありますか?

明らかな解決策AT USER-COMMANDは呼び出されません。これは、リストを更新するためにもう一度同じレポートを作成
するイベントです。SUBMIT

(ALV レポートでこれを行うことができることは知っていますが、単純なリスト レポートでは可能ですか?)

0 投票する
1 に答える
1656 参照

abap - ABAP : データベースから画面の I/O フィールドを埋める

ABAP を使用してプログラムを書き始めたばかりで、入力/出力フィールドを含む画面 (9007 という名前) があり、データベースから変数を入力したいと考えています。

最初は次のようになります。

ここで立ち往生しています。どうすればよいかわかりません..助けてくださいx)