2016-04-12 9 views
1

返信ボタンをクリックすると、送信元アドレス欄にemail-id(デフォルトチームのデフォルトキューのemail-id )。現在のシナリオには、ログインしたユーザーが入力されます。 動的crm 2011の返信メールアドレスをキューのメールアドレスに変更

は、私は、次のjsコードのonLoadを使用しますが、私はオブジェクトがGET属性値法が間違っているプロパティやメソッドgetAttributeValue

function CheckEnquiryReplyAddress() { 
 
// Only complete this validate on Create Form 
 
var formType = Xrm.Page.ui.getFormType(); 
 
var emailStatus = Xrm.Page.getAttributeValue("statecode").getValue(); 
 
var emailDirection = Xrm.Page.getAttributeValue("directioncode").getValue(); 
 

 

 

 
if (formType == 1 || (formType == 2 && emailStatus == "Open")) { 
 
               
 
             
 
    if (emailDirection == "1"){ 
 
    var previousEmailId=getExtraqsParam("_InReplyToId", window.parent.location.search); 
 

 
    //getting context from the parent window 
 
    var context = Xrm.Page.context; 
 

 
    try { 
 
    var serverUrl = context.getServerUrl(); 
 
    //The XRM OData end-point 
 
    var ODATA_ENDPOINT = "/XRMServices/2011/OrganizationData.svc"; 
 
    var query="/EmailSet?$select=ActivityId,ActivityTypeCode,DirectionCode,"; 
 
    query=query+"ToRecipients,Email_QueueItem/QueueId&$expand=Email_QueueItem&$filter=ActivityId eq guid'" + previousEmailId +"'"; 
 
    query =serverUrl+ODATA_ENDPOINT+ query; 
 

 
    var request= new XMLHttpRequest(); 
 
    request.open("GET", query, false); 
 
    request.setRequestHeader("Accept", "application/json"); 
 
    request.setRequestHeader("Content-Type", "application/json; charset=utf-8"); 
 
    request.onreadystatechange=function(){ CompleteEnquiryReplyCheck(request,serverUrl);} 
 
    request.send(null); 
 
    } 
 
    catch(e) { 
 
    alert(e.Description); 
 
    } 
 
    } 
 
} 
 

 
      
 
} 
 
function CompleteEnquiryReplyCheck(request,url) 
 
{ 
 
if (request.readyState==4) { 
 
    if(request.status==200) { 
 
    var queue=JSON.parse(request.responseText).d.results[0]; 
 
    
 
    if (queue != null) { 
 
    var queueId = queue.Email_QueueItem.results[0].QueueId.Id; 
 
    var lookup = new Array(); 
 
     var lookupItem = new Object(); 
 
    
 
    lookupItem.id = queueId; 
 
    lookupItem.name = queue.Email_QueueItem.results[0].QueueId.Name; 
 
    lookupItem.typename = "queue"; 
 
     
 
    lookup[0] = lookupItem; 
 
    
 
    Xrm.Page.getAttribute("from").setValue(lookup); 
 
    } 
 
    } 
 
    } 
 
}

答えて

1

をサポートしていません」というエラーを取得しています属性の値を取得するには、次を使用します。

var attributeValue = Xrm.Page.getAttribute("attributeName").getValue(); 

したがって、あなたの場合は

var emailStatus = Xrm.Page.getAttribute("statecode").getValue(); 
    var emailDirection = Xrm.Page.getAttribute("directioncode").getValue(); 
+0

ありがとうございました。しかし、今私は別の未定義のエラーに直面してgetExtapsParam var previousEmailId = getExtraqsParam( "_ InReplyToId"、window.parent.location.search); – user3495554

+0

"getExtraqsParam"メソッドを定義しましたか?そうでない場合は、そのコード行 "previousEmailId"で何を達成しようとしていますか? – dynamicallyCRM

+0

私はしていません。私がしようとしているのは、キューの電子メールアドレスを取得することです。私は返信をクリックすると、現在のユーザーIDを取得する代わりに、キュー電子メールIDを取得したい。 – user3495554

関連する問題