問題タブ [sap-gateway]
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.
c# - Microsoft 用の Sap ゲートウェイを使用する WCF または ASP.net Web サービス
私の質問が広すぎて答えられないことを願っています.Webサービス(wcfまたはasp.netのいずれか)を作成して、Windowsデスクトップソフトウェアをさまざまなデータソースに接続することを計画しています。そのうちの1つはsapデータベースです。SAP Gateway for Microsoft を使用することは、このアプローチにとって最良のアイデアですか? つまり、デスクトップ アプリケーションがデータを要求し、Web サービスがデータの取得元またはデータの保存先 (mssql データベース、as400、sap など) を決定します。
javascript - Fiori のセッション タイムアウト: SAP UI5 またはゲートウェイ レイヤーは、ユーザーのセッションがタイムアウトしたときに呼び出されるイベントを提供しますか?
SAP Fioriでのリソース ロックに取り組んでいます。さらに詳しく説明すると、ユーザーがログインしてアプリケーションを開いたときにリソースをロックし、ログアウトまたはログアウトしたときにリソースのロックを解除しようとしています。
main.controller.js にあり、ユーザーがログアウトするアクションを実行した場合に呼び出されるonExit()イベント ハンドラーを認識しています。これは、ユーザーのセッションがタイムアウトした場合を除くすべてのシナリオを処理します。
セッションがタイムアウトすると呼び出されるメソッド(UI5/ゲートウェイレイヤー)を知っている人はいますか?
これがどのように処理されるかは、ユーザーのセッションがタイムアウトした場合、ユーザーが画面を更新するまで何も起こりません。この時点で、データを取得するために Odata 呼び出しが行われます。これがゲートウェイに到達すると、セッションがタイムアウトしたことが確認され、再ログイン アクションがトリガーされます。
私が間違っている場合は修正してください。正しい場合、それを行うイベントハンドラーが何であるかを誰かが知っていますか?
また、私はこれについてかなり読みました。これは、楽観的および悲観的同時実行に該当します。楽観的なアプローチではなく、悲観的なアプローチを試してみたい
etags を使用したアプローチ。
よろしくお願いいたします。
また、ポリシーに違反するため、コードを公式に投稿することはできませんが、質問がある場合はお気軽にお問い合わせください。最善を尽くします:)。さらに、これは事実調査の使命です。
odata - odata get サービスにヘッダーを追加する方法
私は次のodataサービスに取り組んでいます:
https://10.49.78.69:8083/gateway/odata/SAP/SOA_LOGIN_GET_DATA;v=1/InspectionSet
このサービスは、次の 4 つのヘッダーが定義されている場合にのみ実行されます。
次のようにフィルターを使用してみましたが、成功しませんでした。
[ https://10.49.78.69:8083/gateway/odata/SAP/SOA_LOGIN_GET_DATA;v=1/InspectionSet ?$filter=UserName eq 'SHEENAR' and Password eq 'Sheenar#123' and InterfaceID eq 'ADFCA_CRM_SBL_023' and LanguageType eq 「ENU」
推測ヘッダーは具体的に宣言する必要があります。
SAP UI5でデータをモデルに設定する際に、これらのヘッダーをどのように書き込むことができるかを親切に提案してください。
sapui5 - 現在のLaunchpadユーザーの顧客ID KUNNRを取得するには?
ゲートウェイを使用して SAP ERP バックエンド システムから販売データにアクセスするためのカスタム Fiori を作成しています。
ユースケースは、「顧客がランチパッドにログインし、Fiori アプリを開き、顧客 ID に基づいてすべての販売アイテムを表示する」です。顧客 ID は SAP に保存され、SAP のテーブルkna1-kunnr
の選択に含める必要があります。vbak
派手なものはありません。
今、私は自問します: どうすれば顧客 ID / kunnr を取得できますか? 現在ログインしているユーザーから何が得られますか? ゲートウェイ プロジェクト コードをデバッグするとき、それは実際に格納されている名前ですか、sy-uname
それとももっと良いものを取得できますか?
顧客 ID / kunnr を引き続き取得するにはどうすればよいですか? GET_CUSTOMER_ID_OF_USER
SAP ERP で呼び出したい関数モジュールはありますか?
それとも、実際に 1 人のユーザーのセールス ドキュメントを入手するための他の / より良い方法はありますか?
更新 これまでのご回答ありがとうございます。デフォルトの Fiori 実装をチェックして、内部を取得します。しかし、私たちはすでにここにいるので、私の質問をもう少し具体的にしたいと思います。
次のように、Component.js で OData モデルを作成します。
user
password
Fiori Launchpad でユーザー資格情報として現在入力されているものであると想定されています。どうすればそれらにアクセスできますか? またはのようなSAPUI5 APIはありますgetCurrentUser
かgetCurrentSession
?実際にこのユーザーチェックを行う必要がありますか?
odata - OData サービス ビルダーで RFC パラメータの精度を変更しますか?
タイプが、精度が 13 、スケールが 3 のBAPI_TRADINGCONTRACT_GET_LIST
プロパティがあるSAP 関数を使用しています。編集したいのですが、実行できません。スケール値を 2 に変更するにはどうすればよいですか?reqquality
edm.decimal
または、RFC モジュールのプロパティを編集するにはどうすればよいですか? または、プロパティを処理する他の手順はありますか?
permissions - SAP ゲートウェイ ランタイム odata パスのアクセス許可
ユーザーが SAP ゲートウェイ サービスの特定の odata リソースを呼び出すことができるようにランタイム アクセス許可を変更する標準的な方法はありますか?
たとえば、カスタマイズのいくつかの設定に基づいて、以下の odata パスとuser/foo
を/bar
禁止するx
必要があります。HTTP GET/POST/DELETE <host>:<port>/foo/test
HTTP GET/POST/DELETE <host>:<port>/bar/test
x
HTTP GET/POST/DELETE <host>:<port>/something
OK
odata 要求を実装するすべてのメソッドでチェックを実装する必要がなく、これを 1 か所で制御できる方法はありますか?
sapui5 - get_entity メソッドの呼び出し方法
SAP FIORI アプリの開発を始めたばかりです。
SAP ユーザーの詳細用に単純な oData モデルを作成し、次の 2 つの方法を実装しました。
get_entityset
- 個人番号とフルネームを含むユーザーのリストを受け取りますget_entity
- 単一ユーザーの詳細を (ユーザー名ごとに) 受け取ります。
ブラウザからサービスを呼び出すと、すべて正常に動作します。get_entity
Master-Detail FIORI アプリの詳細ページをロードするときにメソッドを呼び出すにはどうすればよいですか。WebIDE のマスター/ディテール テンプレートを使用しましたが、get_entitset
呼び出されるだけで、詳細画面は設定されたデータのみを使用します。
データバインディングをどのように定義すればよいですか(詳細コントローラーで推測します)?
sap-gateway - SAP Gateway プロジェクト: プロジェクトのコピー後に日付モデルのインポート機能を再度有効にする方法は?
t-code SEGW を使用して、RFC 関数モジュールに基づくいくつかのデータ モデルを含む SAP ゲートウェイ プロジェクトを作成しました。データ構造は、便利な「インポート」機能に基づいています。
顧客の要求により、プロジェクトを別の顧客所有の名前空間にコピーする必要がありました。
コピー後、フィールドをデータ モデルにインポートする機能が失われました。
新しいエンティティを作成するとき、インポートする可能性はまだあります。完全に機能するプロジェクトを $tmp にコピーすると、インポート機能が再び失われます。
確かに、エンティティを手動で編集することはできますが、面倒でエラーが発生しやすくなります。
私の質問ですが、コピーした SAP Gateway プロジェクトのインポート機能を再度有効にする方法はありますか?