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
 

Personalizzazione di Microsoft CRM? chiuso l'attività di programmazione e-mail

Software RSS Feed





Microsoft CRM è il CRM risposta di Microsoft e tentare di ottenere una quota di mercato da Siebel, Oracle e altri tradizionali fornitori Client Relationship Management System. Microsoft CRM utilizza tutto lo spettro di Microsoft recenti tecnologie:. Net, MS Exchange, MS Outlook, MS SQL Server, la replica, indicizzazione, Active Directory, Windows 2000/2003 modello di sicurezza, C #, VB.Net, HTML, XML Web Service, XLTP, Javascript per citarne alcuni. oggi argomento è l'attività di programmazione di tipo e-mail - di solito trattare con queste personalizzazioni, quando si migliora di Microsoft Exchange Connector CRM. Come si fa a creare chiuso l'attività - questo è l'argomento principale di discussione. We'll usare C #. codingOne netto dei ruoli dei nostri Exchange Event Handler / Sink è la creazione di attività di MS CRM chiuso nella movimentazione in entrata e in uscita messaggi e-mail. L'interazione con Microsoft CRM utilizza due avvicinato? utilizzando MS CRM SDK (movimentazione in entrata e in uscita messaggi XML) e tramite l'accesso diretto al database di MS CRM. Diamo una prima occhiata al chiuso algoritmo di creazione di attività: 1. In primo luogo abbiamo bisogno di capire l'entità abbiamo bisogno di creare attività per: Account, piombo o di contatto. La scelta dovrebbe utilizzare criteri specifici? nel nostro caso questo è l'indirizzo email: if ((crmAccount = crmConnector.GetAccount (mailboxFrom))! = null) () else if ((crmContact = crmConnector.GetContact (mailboxFrom))! = null) () else if ((crmLead = crmConnector.GetLead (mailboxFrom))! = null) () 2. Allora dobbiamo ottenere GUID della MS utente CRM, chi possiede questa entità, codice C # in questo modo: crmUser = crmConnector.GetUser (crmAccount.GetOwnerId ()); 3. Il prossimo passo è chiusa la creazione di attività: 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 (), sBody, sSubject), 4. Il metodo per creare attività di chiusura: public Guid CreateEmailActivity (Guid userid, fromObjectType int, Guid fromObjectId, toObjectType int, Guid toObjectId, mailFrom string, mailto string, string oggetto, string body) (try (log.Debug ( "Prepare for mail ATTIVITA ' ");// Creazione BizUser bizUser proxy objectMicrosoft.Crm.Platform.Proxy.BizUser = new Microsoft.Crm.Platform.Proxy.BizUser (); sysPassword credenziali ICredentials = new NetworkCredential (sysUserId,, sysDomain); bizUser.Url = crmDir + "BizUser.srf"; bizUser.Credentials = credenziali; userAuth Microsoft.Crm.Platform.Proxy.CUserAuth = bizUser.WhoAmI ();// CRMEmail objectMicrosoft.Crm.Platform.Proxy proxy. CRMEmail email = Microsoft.Crm.Platform.Proxy.CRMEmail new (); email.Credentials = credenziali; email.Url = crmDir + "CRMEmail.srf"; / / Imposta la stringa XML per il strActivityXml activitystring = ""; strActivityXml + = " "; strActivityXml + = "") + "]]>"; StrActivityXml + = ""; strActivityXml + = userId.ToString ( "B") + ""; strActivityXml + = "";// impostare la stringa di XML per l'attività partiesstring strPartiesXml = ""; strPartiesXml + = ""; strPartiesXml + = "" + mailTo + ""; if (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 + ""; if (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); / / Create the e-mail objectGuid emailId = new Guid (email.Create (userAuth, strActivityXml, strPartiesXml)); return emailId;) catch (System.Web.Services.Protocols.SoapException e) (log.Debug ( "ErrorMessage:" e.Message + + "" + E. Detail.OuterXml + "Fonte:" + e.Source);) catch (Exception e) (log.Debug (e.Message + "" + e.StackTrace);) return new Guid ();) 5. Per rendere l'attività appena creato essere visualizzati correttamente dovete impostare è bandiere secondo le norme di MS CRM: pubblico UpdateActivityCodes void (Guid emailId) (try (comando OleDbCommand = conn.CreateCommand (); command.CommandText = "UPDATE ActivityBase SET DirectionCode = (?), statecode = (?), PriorityCode = (?) WHERE ActivityId = (?)"; command.Prepare (); command.Parameters.Add (nuovo OleDbParameter ( "DirectionCode", Microsoft.Crm.Platform.Types.EVENT_DIRECTION.ED_INCOMING)); command.Parameters.Add (nuovo OleDbParameter ( "statecode" , Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (nuovo OleDbParameter ( "PriorityCode", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add (nuovo OleDbParameter ( "ActivityId", emailId)); log.Debug ( "Preparatevi ad aggiornare il codice attività" + emailId.ToString ( "B") + "in ActivityBase"); command.ExecuteNonQuery ();) catch (Exception e) ( log.Debug (e.Message + "" + ) e.StackTrace;)) public void UpdateActivityQueueCodes (Guid emailId, Guid queueId) (try (comando OleDbCommand = conn.CreateCommand (); command.CommandText = "UPDATE QueueItemBase SET Priority = (?), Stato = (?), QueueId = (?) WHERE ObjectId = (?)"; command.Prepare (); command.Parameters.Add (nuovo OleDbParameter ( "Priority", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add ( nuovo OleDbParameter ( "Stato", Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (nuovo OleDbParameter ( "QueueId", queueId)); command.Parameters.Add (nuovo OleDbParameter ( "ObjectId", emailId)); log. debug ( "Preparazione per l'aggiornamento Codice di coda di attività "+ emailId.ToString (" B ") +" in QueueItemBase "); command.ExecuteNonQuery ();) catch (Exception e) (log.Debug (e.Message +" "+ e.StackTrace);) Happy) personalizzazione, l'implementazione e la modifica! Se si desidera noi a fare il lavoro - di darci una chiamata 1-866-528-0577! Il help@albaspectrum.comAbout AuthorBoris Makushkin è Lead Software Developer in Alba Technologies Spectrum? Nazionale USA di Microsoft CRM, Microsoft Great Plains

Fonte dell'articolo: Messaggiamo.Com

Translation by Google Translator





Related:

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


Webmaster prendi il Codice Html
Aggiungi questo articolo al tuo sito ora!

Webmaster invia i tuoi Articoli
Nessuna registrazione richiesta. Compila il form e i tuoi articoli sono nella Directory di Messaggiamo.Com

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

Invia i tuoi articoli alla Directory di Messaggiamo.Com

Categorie


Copyright 2006-2011 Messaggiamo.Com - Mappa del Sito - Privacy - Webmaster invia i tuoi articoli alla Directory di Messaggiamo.Com [0.01]
Hosting by webhosting24.com
Dedicated servers sponsored by server24.eu