問題タブ [sapui5]
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.
json - listitem プロパティ (listbox から) を column プロパティ sapui5 にバインドする方法
リストアイテムを含むリストボックスがあります。ユーザーによって選択されたリストアイテムは、新しく作成されたテーブルの列になるため、リストアイテムのプロパティ「テキスト」を列のプロパティ「テキスト」にバインドする必要があります。プロパティ「visibility」と「sortOrder」についても同じことが言えます。listitem のプロパティ "visibility" と "order" が見つかりませんでした。JSONmodel を介してそれらを同じものにバインドします。それについてもっと経験がある人はいますか?2 番目の質問: これはバインドの試行ですが、動作しません。ロジックを確認してください。元。リストボックス + listItem の:
listitem の prop"text" を JSONmodel にバインドしようとした方法は次のとおりです。
テーブル列の例を次に示します。
ここにJSONモデルがあります:
しかし、それでもどこかで私は間違っていました。何か案は ?
sapui5 - テーブルの列と行の動的バインディング
テーブルの列と行の両方を動的にバインドするのに問題があります。
2 つのモデルがあり、1 つがテーブルの列情報を保持しているとします。
そしてデータを持つもの:
次に、モデルを設定します。
次に、ビューにテーブルを作成します。
私を悩ませているのは、TextView テンプレートの現在の列へのバインドです。これは動的(「col1」、「col2」など)であり、その場で実行する必要があります-とにかくそれがバインディングの目的であると思います-しかし、私はそれを機能させることができません...
シンプルで些細なものが欠けていると思いますが、今は少し迷っています...どんな助けも大歓迎です!
==============================
編集:列配列を反復処理し、addColumn() メソッドを使用して動作するようにしました:
...しかし、 bindColumns() / bindRows() アプローチを使用した、よりクリーンなアプローチがあることを望んでいました:
javascript - javascript クラスのコンストラクターを変更していますが、新しいコンストラクターが呼び出されませんか?
SAP UI5 フレームワークを使用しています。クラスのインスタンスを作成してから、クラスのコンストラクターを変更しています。クラスの 2 番目のインスタンスを作成している間、新しいコンストラクターは呼び出されません!
これが実際の例ですhttp://jsbin.com/voluc/2/edit
ありがとう
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 でデータを挿入すると、すべて正常に動作します。
編集
私のオブジェクトはこのように作成されます
そして私はそれをアップロードします
odata - 非同期 OData .create() リクエストを作成する方法は?
私の SAPUI5 アプリでは、OData モデル.create()
サービスの応答を待っている間 (UI に応答を返すのに時間がかかるため)、進行状況インジケーターによって作成されたアニメーションを実行する必要があります。
.create()
問題は、リクエストの送信後にアニメーションが停止することです。
.create()
非同期OData リクエストを作成する方法を知っている人はいますか?
私のコードは次のようになります。
sapui5 - X-CSRF-TOKEN 検証が SAPUI5 で失敗した
SAPUI5 から SAP Net weaver Gatewayの作成サービスを呼び出しています。CSRF を取得するための次のコードを作成しましたが、取得できません。画像に示すように、ユーザー名とパスワードを入力するように求められます。
コード:
auth変数で CSRF-TOKEN を取得できます。しかし、SAP NET WEAVER GATEWAY のユーザー名とパスワードの入力を求める次の認証を求められますが、ログインに使用したユーザー名とパスワードを入力しても受け入れられません。
sapui5 - データバインディング - getBindingContext() は相対パスではなく絶対パスを返します
行選択でイベントを発生させるテーブルがあります。ハンドラーで、選択した行のコンテキストを取得し、下位レベルの oData オブジェクトの新しいコンテキストを作成して、それをテキスト ビューにバインドします。
これを行うための美しく簡潔な方法があると確信していますが、現在私は:
バインディング パスを取得し、文字列を追加して下位レベルのオブジェクトへのパスを作成します: var path = oEvent.getParameters().listItem.getBindingContext().sPath + "/ComplianceNote";
これは / を最初の文字としてパスを返しています。私が理解していることから、これはサービスのルートオブジェクトであるか、「絶対」パスであることを意味します。私の現在の回避策は、最初の文字を削除することです:
次に、Text ビューをバインドできます。
これは問題なく動作しますが、コードの匂いが文字列をハッキングしているように思えます。私の質問は次のとおりです。
- パスが「相対」ではなく「絶対」として返される理由
- これを達成する正しい方法は何ですか。私は setBindContext や bindText などを見てきました。
乾杯、グレゴール