エンティティのメタデータを取得する必要があります。 厳密な要件:「エンティティスキーマ名」を持つフォーム上のフィールド値を読み取る。これで、そのEntityの主キースキーマ名を取得する必要があります。出来ますか?もしそうなら、私を助けてください。 例:そのフィールドに「lead」と入力すると、そのWeb APIが私に「leadid」を取得して別のフィールドに格納する必要があります。 2.「インシデント」と入力すると、そのウェブAPIが「インシデント」になりますweb apiを使用してエンティティメタデータを取得する
1
A
答えて
1
エンティティメタデータを取得する必要はありません。主キーは常に「エンティティスキーマ名」+「id」です。そのルールからの例外ではありません。それでもメタデータを取得したい場合は、呼び出すことによってそれを行うことができるようになります。エンティティ「アカウント」のすべての属性を返します
https://crmaddress/api/data/v8.2/EntityDefinitions(LogicalName='account')/Attributes?$select=LogicalName
は、主キーは任意の「@のodata.type」属性のないものです
1
ええ、私はそれはそれはエンティティー・スキーマ名+ ID(リード+ ID = leadid)だ各エンティティの主キーとしてスキーマ名だ場合は取得する必要がないことに同意するものとします。しかし、私たちはそれが良い習慣ではないと感じました。私たちは次のコードでこれを達成しました。正しいエンティティ・スキーマ名を指定すると、その主ID属性が別のフィールドに自動的に移入されます。 new_primarykey - 私はnew_entityschemaname fieldonでフォームをエンティティスキーマ名を入力することに主キースキーマ名を移入しています。
function getPrimaryKey() {
var Oldprimary = Xrm.Page.data.entity.attributes.get("new_primarykey").getValue();
var req = new XMLHttpRequest();
var entityName = Xrm.Page.data.entity.attributes.get("new_entityschemaname").getValue();
var url = Xrm.Page.context.getClientUrl() + "/api/data/v8.2/" + "EntityDefinitions?$select=PrimaryIdAttribute&$filter=SchemaName eq '" + entityName + "'";
req.open("GET", url, false);
req.setRequestHeader("OData-MaxVersion", "4.0");
req.setRequestHeader("OData-Version", "4.0");
req.setRequestHeader("Accept", "application/json");
req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
req.setRequestHeader("Prefer", "odata.include-annotations=\"*\"");
req.onreadystatechange = function() {
Xrm.Page.data.entity.attributes.get("new_primarykey").setValue("");
if (this.readyState === 4) {
req.onreadystatechange = null;
if (this.status === 200) {
var results = JSON.parse(this.response);
var primarykey = results.value[0].PrimaryIdAttribute;
Xrm.Page.data.entity.attributes.get("new_primarykey").setValue(primarykey);
}
else {
Xrm.Utility.alertDialog("Error");
}
}
}
req.send();
};
関連する問題
- 1. カスタムAPIを使用してAutoCompleteTextViewのWeb APIからデータを取得する
- 2. WebサービスAPIを使用してバージョン階層を取得
- 3. Web APIを使用してService Fabricのリモートエラーを取得
- 4. パッケージhttrを使用してWeb APIからデータを取得
- 5. Angular 2 Web APIを使用してIDからデータを取得
- 6. Web APIのヘルプページを取得してカスタムルーティング制約を使用する
- 7. Google Maps WebサービスAPIを使用してポリゴンを取得/作成する
- 8. ASP.net IDおよびWeb APIを使用してユーザーロールを取得する
- 9. CRM Web APIを使用してビューの列名を取得する
- 10. Web APIを使用してjsonをデータベースに保存し、jsonとして取得
- 11. "CompletionException:com.impetus.kundera.loader.MetamodelLoaderException:エンティティメタデータを取得して保存中にエラーが発生しました"
- 12. Facebook APIを使用してJavaを使用してページレビューを取得する
- 13. ドライブAPIを使用して写真のタイムスタンプを取得する
- 14. Rally APIを使用してユーザープロファイルを取得する
- 15. Apiから角を使用してデータを取得する
- 16. Aweber APIを使用してすべてのユーザーリストを取得
- 17. REST APIを使用して新しいリレーショナルアプリケーションパフォーマンスモニタリングデータを取得する
- 18. anglejsを使用してWeb APIからデータを取得できません。
- 19. Webサービスを使用してデータベースからデータを取得する
- 20. JSPでサーブレットを使用してWebページを取得する
- 21. bashを使用してWebコンテンツを取得する方法
- 22. Webサービスクエリを使用してDynamics CRMのカスタムフィールドを取得する
- 23. XPathを使用してWebページデータを取得する
- 24. Web Workerを使用してファイルからImageImageを取得する
- 25. angular.jsを使用してWebエンドポイントからデータを取得する
- 26. DataFrameを使用してWebページからデータを取得する
- 27. JSONを使用してWebサービスからデータを取得する
- 28. Google Sites API - Java - GoogleCredentialを使用してコンテンツフィードを取得する
- 29. Github API v3 APIを使用してすべてのイベントを取得するイベント
- 30. Google + API/Google People APIを使用してGoogle Plusフレンドリストを取得するiOS