お世話になります。
webapiで、検索フィールドの値を取得したいと考えておりますが、
GUIDが取得されますが、値を取得する方法をご教授お願いします。
下記コードで、検索フィールド(new_lk_place)の値を取得したいです。
/* *** エンティティ名 *** */
const ENTITY_JOB = "new_job";
// new_date :作業日時(日付フィールド)
// new_lk_place:作業場所(検索フィールド)
// new_comment :作業内容(テキストフィールド)
/* *** データ取得処理 *** */
// ①アクセスURL取得
// ②データ取得及び表示
function main(){
var entityList = [ENTITY_JOB];
for(var i = 0; i < entityList.length; i++){
// ①アクセスURL取得
var accessURL = getURL(entityList[i]);
// ②データ取得及び表示
if(accessURL != null && accessURL != "") {
getEntityData(entityList[i],accessURL);
}
}
}
/* *** アドレス取得処理 *** */
function getURL(entityName){
// エンティティURL
var entityUrl = Xrm.Page.context.getClientUrl();
entityUrl += '/api/data/v';
var version = Xrm.Page.context.getVersion().split(".");
entityUrl += version[0] + "." + version[1] + "/";
entityUrl += entityName;
// 抽出フィールド及びフィルター条件
var options = "";
switch(entityName){
// 作業活動
case ENTITY_JOB:
options = '$select=new_date';
options += ',new_lk_place';
options += ',new_comment';
options += "&$filter=";
options += "new_comment" + " ne " + null;
break;
}
return (entityUrl + '?' + options);
}
/* *** データ取得処理 *** */
function getEntityData(entityName,accessUrl){
var xhr = new XMLHttpRequest();
xhr.open("GET", encodeURI(accessUrl), false);
xhr.setRequestHeader('Accept', 'application/json');
xhr.setRequestHeader('Content-Type', 'application/json; charset=utf-8');
xhr.setRequestHeader('OData-MaxVersion', '4.0');
xhr.setRequestHeader('OData-Version', '4.0');
xhr.setRequestHeader('Prefer', 'odata.include-annotations="*"');
// ハンドラ登録
xhr.onreadystatechange = function () {
if(this.readyState == 4) {
if(this.status == 200) {
var entityData = JSON.parse(this.response);
if(entityData["value"].length <= 0){
return;
}
else{
// 表示処理
viewEntityData(entityName,entityData);
}
}
else {
var error = JSON.parse(this.response).error;
Xrm.Utility.alertDialog(error.message, function () { });
}
}
};
xhr.send();
xhr.abort();
}
/* *** 表示処理 *** */
function viewEntityData(entityName,entityData){
var viewData = "";
for(var i = 0; i < entityData["value"].length; i++){
switch(entityName){
// 作業活動
case ENTITY_JOB:
viewData += entityData["value"][i].new_date + ":";
viewData += entityData["value"][i].new_lk_place + ":";
viewData += entityData["value"][i].new_comment + "\n";
break;
}
}
alert(entityName + ":" + viewData);
}