English version
German version
Spanish version
French version
Italian version
Portuguese / Brazilian version
Dutch version
Greek version
Russian version
Japanese version
Korean version
Simplified Chinese version
Traditional Chinese version
Hindi version
Czech version
Slovak version
Bulgarian version
 

De personalización de Microsoft CRM? la programación cerrada la actividad de correo electrónico

Software RSS Feed





Microsoft CRM es la respuesta de Microsoft CRM y tratar de conseguir la cuota de mercado de Siebel, Oracle y otros tradicionales de clientes Gestión de relaciones con los proveedores del sistema. De Microsoft CRM utiliza todo el espectro de Microsoft tecnologías recientes:. Net, MS Exchange, MS Outlook, MS SQL Server, la replicación, indexación, Active Directory, Windows 2000/2003 modelo de seguridad, C #, VB.Net, HTML, XML Web Service, XLTP, Javascript para nombrar unos pocos. a día de hoy tema es la actividad de la programación de tipo de correo electrónico - por lo general frente a estas personalizaciones al mejorar Microsoft Exchange Connector CRM. ¿Cómo se crea cerrado actividad - este es el tema de discusión principal. Vamos el uso de C #. codingOne neto de las funciones de nuestro Canje de controlador de eventos / Pica es la creación de la actividad MS CRM Cerrado en el manejo de mensajes de correo electrónico entrantes y salientes. La interacción con Microsoft CRM utiliza dos se acercaron? utilizando MS CRM SDK (manejo de entrada y salida de mensajes XML) y a través de acceso directo a la base de datos MS CRM. Primero veamos en el Cerrado algoritmo de actividad de creación: 1. En primer lugar tenemos que entender la entidad que tenemos que crear actividad: Cuenta, de plomo o de contacto. La selección debe utilizar criterios específicos? en nuestro caso esta es la dirección de correo electrónico: if ((crmAccount = crmConnector.GetAccount (mailboxFrom))! = null) () else if ((crmContact = crmConnector.GetContact (mailboxFrom))! = null) () else if ((crmLead = crmConnector.GetLead (mailboxFrom))! = null) () 2. Entonces tenemos que obtener orientación de los usuarios de MS CRM, que posee esta entidad, C # código como este: crmUser = crmConnector.GetUser (crmAccount.GetOwnerId ()); 3. El siguiente paso es cerrar la creación de la actividad: emailId = crmConnector.CreateEmailActivity (crmUser.GetId (), Microsoft.Crm.Platform.Types.ObjectType.otAccount, crmAccount.GetId (), Microsoft.Crm.Platform.Types.ObjectType.otSystemUser, crmUser.GetId (), crmAccount.GetEmailAddress (), crmUser.GetEmailAddress (),, sSubject sBody), 4. El método para crear actividad cerrado: Guid público CreateEmailActivity (GUID userid, fromObjectType int, Guid fromObjectId, toObjectType int, Guid toObjectId, mailFrom cadena, mailto string, string asunto, el cuerpo de cadena) (try (log.debug ( "Preparación para la actividad de correo Creación ");// BizUser proxy objectMicrosoft.Crm.Platform.Proxy.BizUser bizUser = Microsoft.Crm.Platform.Proxy.BizUser nuevo (); sysPassword ICredentials credenciales = new NetworkCredential (sysUserId,, sysDomain); bizUser.Url = crmDir + "BizUser.srf"; bizUser.Credentials = credenciales; userAuth Microsoft.Crm.Platform.Proxy.CUserAuth = bizUser.WhoAmI ();// objectMicrosoft.Crm.Platform.Proxy proxy crmemail. email crmemail = Microsoft.Crm.Platform.Proxy.CRMEmail nuevo (); email.Credentials = credenciales; email.Url = crmDir + "CRMEmail.srf"; / / Configurar la cadena XML para la strActivityXml activitystring = ""; strActivityXml + = " "; strActivityXml + = "") + "]]>"; StrActivityXml + = ""; strActivityXml + = userId.ToString ( "B") + ""; strActivityXml + = "";// configurar la cadena XML para la actividad partiesstring strPartiesXml = ""; strPartiesXml + = ""; strPartiesXml + = "" + mailTo + ""; si (toObjectType == Microsoft.Crm.Platform.Types.ObjectType.otSystemUser) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otSystemUser.ToString () + "";) else if (toObjectType == Microsoft.Crm.Platform.Types.ObjectType.otAccount) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otAccount.ToString () + "";) else if (toObjectType == Microsoft.Crm.Platform . Types.ObjectType.otContact) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otContact.ToString () + "";) else if (toObjectType == Microsoft.Crm.Platform.Types.ObjectType.otLead) (strPartiesXml + = " "+ Microsoft.Crm.Platform.Types.ObjectType.otLead.ToString () + "";) strPartiesXml + = ' "+ toObjectId.ToString (" B ") +" "; strPartiesXml + =" "; strPartiesXml + = Microsoft.Crm.Platform.Types.ACTIVITY_PARTY_TYPE.ACTIVITY_PARTY_TO_RECIPIENT.ToString (); strPartiesXml + = ""; strPartiesXml + = ""; strPartiesXml + = ""; strPartiesXml + = "" + mailFrom + ""; si (fromObjectType == Microsoft.Crm.Platform.Types.ObjectType.otSystemUser) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otSystemUser.ToString () + "";) else if (fromObjectType == Microsoft.Crm.Platform.Types.ObjectType.otAccount) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otAccount.ToString () + "";) else if (fromObjectType == Microsoft.Crm.Platform . Types.ObjectType.otContact) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otContact.ToString () + "";) else if (fromObjectType == Microsoft.Crm.Platform.Types.ObjectType.otLead) (strPartiesXml + = " "+ Microsoft.Crm.Platform.Types.ObjectType.otLead.ToString () + "";) strPartiesXml + = ' "+ fromObjectId.ToString (" B ") +" "; strPartiesXml + =" "; strPartiesXml + = Microsoft.Crm.Platform.Types.ACTIVITY_PARTY_TYPE.ACTIVITY_PARTY_SENDER.ToString (); strPartiesXml + = ""; strPartiesXml + = ""; strPartiesXml + = ""; log.debug (strPartiesXml); / / Crear el e-mail objectGuid emailId = new Guid (email.Create (userAuth, strActivityXml, strPartiesXml)); regreso emailId;) catch (System.Web.Services.Protocols.SoapException e) (log.debug ( "ErrorMessage:" e.Message + + "" + E. Detail.OuterXml + "Fuente:" + e.Source);) catch (Exception e) (log.debug (e.Message + "" + e.StackTrace);) return nuevo GUID ();) 5. Para hacer que la actividad recién creada se muestre correctamente es necesario configurar son banderas de acuerdo a la norma MS CRM: Público UpdateActivityCodes void (GUID emailId) (try (OleDbCommand command = conn.CreateCommand (); command.CommandText = "UPDATE SET ActivityBase DirectionCode = (?), statecode = (?), PriorityCode = (?) DONDE ActivityId = (?)"; command.Prepare (); command.Parameters.Add (OleDbParameter nuevo ( "DirectionCode", Microsoft.Crm.Platform.Types.EVENT_DIRECTION.ED_INCOMING)); command.Parameters.Add (OleDbParameter nuevo ( "statecode", , Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (OleDbParameter nuevo ( "PriorityCode", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add (nuevo OleDbParameter ( "ActivityId", emailId)); log.debug ( "Preparación para actualizar el código de actividad" + emailId.ToString ( "B") + "en ActivityBase"); command.ExecuteNonQuery ();) catch (Exception e) ( log.debug (e.Message + "" + ), e.StackTrace;)) public void UpdateActivityQueueCodes (GUID emailId, Guid queueId) (try (OleDbCommand command = conn.CreateCommand (); command.CommandText = "UPDATE SET QueueItemBase prioridad = (?), Estado = (?), QueueId = (?) DONDE ObjectId = (?)"; command.Prepare (); command.Parameters.Add (OleDbParameter nuevo ( "Priority", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add ( OleDbParameter nuevo ( "Estado", Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (OleDbParameter nuevo ( "QueueId", queueId)); command.Parameters.Add (OleDbParameter nuevo ( "ObjectId", emailId)); de registro. debug ( "Preparación para actualizar Código de la cola de la actividad "+ emailId.ToString (" B ") +" en QueueItemBase "); command.ExecuteNonQuery ();) catch (Exception e) (log.debug (e.Message +" "+ e.StackTrace);) personalizar) Feliz, aplicación y modificación: Si desea nosotros para hacer el trabajo - darnos una llamada 1-866-528-0577! El help@albaspectrum.comAbout AuthorBoris Makushkin es el plomo Programación en Alba Spectrum Technologies? EE.UU. en todo el país de Microsoft CRM, Microsoft Great Plains

Artículo Fuente: Messaggiamo.Com

Translation by Google Translator





Related:

» Seo Elite: New Seo Software!
» AntiSpywareBOT
» Reverse Mobile
» Error Nuker


Webmaster obtener el código html
Añadir este artículo a su sitio web ahora!

Webmaster Envíe sus artículos
No es necesario que se registre! Completa el formulario y su artículo está en el Messaggiamo.Com Directorio!

Add to Google RSS Feed See our mobile site See our desktop site Follow us on Twitter!

Envíe sus artículos a Messaggiamo.Com Directorio

Categorías


Derechos de autor 2006-2011 Messaggiamo.Com - Mapa del sitio - Privacy - Webmaster enviar sus artículos a Messaggiamo.Com Directorio [0.01]
Hosting by webhosting24.com
Dedicated servers sponsored by server24.eu