1
Yapmak istediğim, Yanıtla düğmesine tıklandığında Kimden adresi alanı e-posta kimliğiyle doldurulur (varsayılan ekibin varsayılan kuyruğunun e-posta kimliği). Mevcut senaryo, oturum açmış kullanıcı ile doldurulur. Yanıt e-posta adresini dinamik crm 2011 kuyruğundaki e-posta adresine değiştirin.
aşağıdaki js kodu onLoad kullanılan, ancak nesne olsun özellik değeri yöntemi yanlıştır özellik veya yöntem getAttributeValuefunction 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);
}
}
}
}
Teşekkürler, bu işe yarıyor. Ama şimdi getExtapsParam var bir başka tanımlanmamış hatayla karşılaşıyorum varEmailId = getExtraqsParam ("_ InReplyToId", window.parent.location.search); – user3495554
Eğer bir yöntem "getExtraqsParam" tanımladıysanız, eğer buraya yazabilirsiniz, eğer değilse, "previousEmailId" kod satırında ne elde etmeye çalışıyorsunuz? – dynamicallyCRM
Yapmadım. Yapmaya çalıştığım şey, kuyruk e-posta adresini almaktır. Yanıtı verdikten sonra geçerli kullanıcı kimliğini alır, bunun yerine sıra e-posta kimliğini almak istiyorum. – user3495554