問題タブ [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.
odata - OData および SAP Gateway サービスを使用して SAP バックエンド データを更新中にエラーが発生しました
OData および SAP Gateway サービスを使用して SAP バックエンドを更新しようとしています。実行中にエラーがスローされ、バックエンドでデータが更新されません。SAP CRM バックエンドで「アカウント」データを更新しようとしています。
エラー メッセージには、次の応答が含まれています。
ファイル {ServiceName}({BP_Number_of_that_Account}) が正常にアップロードされました
このアプリケーションは、SAP Netweaver ポータルにデプロイされています。ブレークポイントをバックエンドに置いたところ、バックエンドにさえ到達していないことがわかりました。
コードは次のようになります。
どんな助けでも大歓迎です、ありがとう。
odata - sapui5 テーブルには同じレコードのみが表示されます
Web サービスを作成し、SAPUI5 で oData プロトコルを使用してデータをバインドしようとしました。
私はテーブルを作成しました:
}
出力は次のようになります。
しかし、私が得るものは次のとおりです。
したがって、最後の項目が 2 回表示され、最初の項目は表示されません。Web サービス コードにブレーク ポイントを配置すると、正しく入力されます。
データ モデルは、次の方法で作成されます。
sapui5 - SAP UI5 odata の作成に失敗しました
SapUi5 を使用して、Netweaver Gateway に接続する webapp を構築しています。このアプリはデータを正常に消費します。サービスでオブジェクトを作成するのに問題があるだけです。
私が得る応答データは
500 Internal Server Error content-type application/xml - -
001560AA0E081DEB8CA398CC1690D406
XML ストリームの解析中にエラーが発生しました - 52FB96CF506729E0E1000000C0A8EA2A
ゲートウェイのエラー ログには次のように記載されています
例外 /IWCOR/CX_BAD_REQUEST が発生しました。
Gateway Client でデータを挿入すると、すべて正常に動作します。
編集
私のオブジェクトはこのように作成されます
そして私はそれをアップロードします
sapui5 - X-CSRF-TOKEN 検証が SAPUI5 で失敗した
SAPUI5 から SAP Net weaver Gatewayの作成サービスを呼び出しています。CSRF を取得するための次のコードを作成しましたが、取得できません。画像に示すように、ユーザー名とパスワードを入力するように求められます。
コード:
auth変数で CSRF-TOKEN を取得できます。しかし、SAP NET WEAVER GATEWAY のユーザー名とパスワードの入力を求める次の認証を求められますが、ログインに使用したユーザー名とパスワードを入力しても受け入れられません。
sapui5 - Web トランザクションへの SAPUI5 パラメータ転送
SAPUI5 イベント (例: リスト項目のクリック) を通じてトランザクションを開こうとしています。
そのトランザクションを開くと、SAPUI5 で選択されたリスト項目要素からのパラメーターがそのトランザクションに送信され、材料番号、工場など、トランザクションの特定の入力フィールドに入力されます。
質問:
まず、SAPUI5 から sap-web-transactions に移動するための最良の方法は何ですか?
第二に、パラメータを送信しながらナビゲートするにはどうすればよいですか? (ゲートウェイだと思いますが、どのように)
javascript - BreezeJs、saveChanges() - キャッチされていない TypeError: 未定義のプロパティ 'statusText' を読み取れません
Angular で BreezeJS を使用して、SAP Netweaver Gateway System によって提供される Restful OData サービスからデータを使用しています。アプリケーションは現在、サービスからメタデータを含むデータを正しく読み取っており、これはすべて期待どおりに EntityManager に保持されています。
ただし、エンティティの 1 つのステータスを変更して saveChanges() を実行すると、成功コールバックも失敗コールバックも呼び出されず、代わりにコンソール エラーが表示されます。
保存を呼び出すコードは次のとおりです。
manager は標準の Breeze EntityManager です。
コードはサーバー上で縮小されているため、デバッグが非常に困難ですが、これはコアの Breeze ライブラリの 1 つにスローされています。
以下のように、クライアントはサーバーに対して $batch POST リクエストを実行し、サーバーは 202 Accepted で応答しています。
これがここのどこかで見たことのあるものであることを願っています!
javascript - SAPUI5 日付を含む OData エンティティを作成 - CX_SXML_PARSE_ERROR で終わる誤った要求ペイロードを生成します
odata サービスを介して日付属性を持つエンティティを作成しようとしています。バックエンドはSAPシステムです。このエンティティには、3 つの主要な属性とその他の多数の属性しかありません。キーの日付が問題の根本原因であることを確認しました。
キー:
- Pernr タイプの文字列、
- begda タイプの日時
- endda タイプの日時。
以下のコード (動作しません) は、問題のトラブルシューティングを試みる際に大幅に簡略化されています。現時点では、エンティティ セットからエンティティを読み取り、すぐにまったく同じデータでエンティティを作成しようとします。
コード:
ゲートウェイ エラー ログに、xml 解析エラーが表示されます。このログでは、リクエスト データを確認でき、日付が文字列型で転送されていることがわかります。これらの日付はサービスで DateTimes として定義されているため、リクエストは拒否されます。例:
エンティティが読み取られるとき、バックエンドはタイプ情報を送信しません。次の例のように送信します。
実際、type=".." なしで同じ情報を保存しようとすると、うまくいきます。したがって、問題は ODataModel.create が xml に追加する不適切な型です。
私の質問は: ODataModel.create にこの型情報を追加しないように指示できますか? 型を推測するのはうまくいきません。
odata を使用して日付を読み書きする例を誰かが共有できますか?
事前にどうもありがとうございました。