Ich mache einen Windows-Dienst, der auf die Erstellungsnachricht einer benutzerdefinierten Aktivitäts-SMS auslöst. Dieses Programm sendet die tatsächlichen SMS mit einem SMS-Dienstanbieter von Drittanbietern.Wie bekomme ich die Guids und das Handy von einer Party List?
Daher muss ich die Mobiltelefonnummern für jeden Kontakt/Führung/Benutzer/Konto in das Feld "An" der SMS-Aktivität erhalten. Dies ist ein Feld vom Typ: Party List.
Zusätzlich habe ich ein anderes Feld („new_msisdn“), die ich es verwenden, wenn „auf“ Feld leer sein. (In diesem Feld Benutzer Telefonnummern direkt eingeben)
Ich bin derzeit mit dem folgenden Code :
EntityCollection results = CrmService.RetrieveMultiple(query);
string msisdn;
string newmessage;
Entity entity;
int encode;
bool flash;
res = new Message[results.Entities.Count];
if (results != null && results.Entities.Count > 0)
{
try
{
for (int i = 0; i < results.Entities.Count; i++)
{
entity = results.Entities[i];
msisdn = (string)entity["new_msisdn"];
// I have to add an condition here to check if "to" is not empty , then get mobilephones.
newmessage = (string)entity["new_message"];
encode = ((OptionSetValue)entity["new_messagetype"]).Value;
flash = (bool)entity["new_flashsms"];
res[i] = new Message();
res[i].crmId = entity.Id;
res[i].senderNumber = msisdn;
res[i].sendDate = DateTime.Now;
res[i].message = newmessage;
if (encode == 1)
res[i].encoding = 1;
else
res[i].encoding = 2;
if (flash)
res[i].flash = 2;
else res[i].flash = 1;
}
}
Ich habe keine Ideen, dies zu tun. Übrigens verwende ich CRM 2015.
Vielen Dank für Ihre Antwort. Aber ich fand es besser, die Entity-Referenz zu verwenden, die den Namen der Entity und ihre GUID enthält – Farhad
Farhad, ich dachte, du willst Guid und MobileNumber bekommen. Wenn Sie möchten, dass der Name Entity Object dieses Attribut auch haben kann. Ich habe versucht, auf Ihren Ansatz zu antworten, die Daten in einer Entitätssammlung zu erhalten und diese Daten dann weiter zu verwenden. Entity Reference ist auch eine andere Option, um die GUID zu erhalten. Aber für die Handynummer müssen Sie möglicherweise erneut die Datenbank mit diesem guid und logischen Namen treffen. Da Sie bereits eine Sammlung von Berechtigungen haben, können Sie das nicht wiederverwenden. Das vermeidet unnötige DB-Treffer richtig. – Renjith
Vielen Dank Renjith. Ihre Antwort zeigt mir den Weg. Übrigens, Sie haben recht, beide Lösungen sind korrekt, aber Ihre wird weniger Treffer verursachen. – Farhad