問題タブ [sap-gui]

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 投票する
2 に答える
2418 参照

c# - C# で現在のセッションを SAP GUI にアタッチする方法

SAP GUI を自動化しようとしています。SAP GUI を起動して接続できるライブラリ SAPFEWSELib を使用しました。これで、デスクトップ ショートカット プロセスが作成されました (SAP の組み込みユーティリティを使用)。そのため、毎回起動して接続する代わりに、特定の画面に直接移動して、そこから次のステップを自動化できます。これを達成するには、私は-

  1. デスクトップ ショートカットをトリガーして SAP を起動する
  2. 現在の SAP セッションをアタッチし、SAPFEWSELib ライブラリを使用して C# で自動化を実行します

試しましvar session = SapGuiApp.ActiveSession;たが、セッションがnullになります。SAP セッションを SapGuiApp にアタッチする他の方法はありますか?

注 - SAPFEWSELibを使用してアクセスできるオブジェクトSapGuiAppのタイプです。GuiApplication

参考文献-

  1. c# を使用して SAP GUI を自動化するにはどうすればよいですか
  2. https://scn.sap.com/thread/159742
0 投票する
2 に答える
4298 参照

vba - リストの終わりを見つけるためのアルゴリズム (SAP GUI)

SAP GUI 画面のリストに要素を追加するスクリプトを書いています。現在、SAP GUI を使用している場合、実際に画面上にない限り何も「存在しない」ように見えるため、最初のステップではリストの最後を見つける必要があります。

これは、各要素をスクロールして、空白かどうかを確認することで実現しました。

ただし、既存のリストが非常に大きい場合、これには長い時間がかかります。どうにか早く終息する方法を模索中です。私が知っているいくつかの真実/制限:

  1. リストの長さを知らないと思います。
  2. リストverticalScrollbar.positionの最後をはるかに超えて命令することはできません。
    たとえば。リストに 62 個の要素が含まれている場合、機能し.verticalScrollbar.Position = 100ません。
  3. 上記の例の場合、SAP はエラーをスローしません。何も起こらず、次のコード行が実行されます。
  4. 要素へのすべての参照は、画面上の位置に関するものです。たとえば、5 桁下にスクロールすると、リスト全体の 6 番目の要素が実際には 1 としてインデックス付けされます。
  5. 一方、verticalScrollbar.Position絶対的です

私は次のことを考えています(非常に疑似コードで):

...など、i1 つずつ反復するまで続けます。

この種の「検索」を行う一般的に受け入れられているより良い方法はありますか? どんな入力でも大歓迎です。ありがとう

0 投票する
0 に答える
1730 参照

vba - VBA スクリプトは SAP GUI エラーを読み取ることができますか?

希望はありませんが、vba スクリプトが SAP GUI によってスローされているエラーを特定する方法があるかどうか疑問に思っています。たとえば、トランザクションが別のユーザーによってロックされている場合です。
現在、このエラーが発生した場合、スクリプトはそれを考慮せずに次の行に進みます (これは通常、押したボタンがまだ存在しないため、エラーになります)。可能であれば、ユーザーが修正できるように、次の行の前にそのエラーを特定したいと思います。

場合によっては、スクリプトにエラーを想定させる回避策を実行すると、on error resume nextしかし、それは私をうんざりさせ、すべての状況で機能するとは限りません。

例:

明確にするために、私は次のようなものに到達しようとしています:

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

abap - WebDynpro ABAP アプリケーション開発の問題

WebDynpro Abap を開発しようとしていますが、次のエラーに直面しています。

エラー画像

この問題を解決する方法を教えてもらえますか、または承認がありません。

ありがとう、エリザ

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

excel - SAP の xls ファイルかどうかを確認します

特定のレポートを作成するには、SAP から複数の xls ファイルを自動的にエクスポートする必要があります。ここまでは、SAP GUI スクリプトを使用して、トランザクション コードと DIR 番号 (ドキュメントごとに一意) を入力しました。xlsファイルを1つだけダウンロードすると、これは完全に機能します。ただし、複数のxlsをダウンロードする必要があります。

画像でわかるように、xls ファイルは 2 番目の位置にあります。つまり、私のスクリプトでは、2 番目の位置にあるすべてのファイルをエクスポートするだけです。たとえば、2 番目に PDF がある場合、自動的に PDF がエクスポートされ、レポートを作成できません。

位置を表示する SAP GUI

ここではエクスポートする 2 番目の「ノード」を選択するため、最後の 2 行が重要です。ここで、xls ファイルかどうかを確認する必要があります。

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

c# - 80040154 Class not registered execption を解決するために必要なこと

ターゲット マシンでプロジェクトを実行しようとしたときにのみ、次のエラーに直面しています。

[エラー] ExecuteTestScriptsOnSAP_GUI: CLSID {B90F32AD-859E-4EDD-BFAE-C9216849520C} のコンポーネントの COM クラス ファクトリを取得できませんでした。次のエラーが発生しました: 80040154 クラスが登録されていません (HRESULT からの例外: 0x8004015 4 (REGDB_E_CLASSNOTREG))。

私の開発マシンでは問題なく動作しているようです。

私はSAP gui 7.40自分のプロジェクトから起動しようとしていますが、それはへの参照を持っていますInterop.SAPFEWSELib.dll

上記の.dllファイルはsapfewse.ocx、プロジェクトへの依存関係として最初に追加されたときにビルドされました。

この問題を解決するために何ができるか教えてください。