Microsoft CRM персонализиране? програмиране затворени имейл дейност
Microsoft CRM е CRM отговор от Microsoft и се опитват да се пазарен дял от Siebel, Oracle и други традиционни клиенти система за управление на продавача. Microsoft CRM се ползва от всички спектри на Microsoft последните технологии:. Net, MS Exchange, MS Outlook, MS SQL Server, репликация, индексиране, Active Directory, Windows 2000/2003 сигурност модел, C #, VB.Net, HTML, XML Web Service, XLTP, Javascript да назовем само няколко. Днешните Темата е за дейността на програмирането имейл вид - обикновено се справят с тези персонализации, когато подобряване на Microsoft Exchange CRM конектор. Как да създадете затворена дейност - това е основната тема в дискусията. Ние ще използването C #. Нетните codingOne от задачите на нашата борса събитие Ръчка / мивка е създаването MS CRM Затворен дейност при обработка на входящите и изходящите имейл съобщения. Взаимодействието с Microsoft CRM използва два подхожда? използване на MS CRM SDK (обработка входящите и изходящите съобщения XML) и чрез пряк достъп до база данни MS CRM. Нека първо погледнем в затворен алгоритъм за дейността създаване: 1. Първо ние трябва да разберем на предприятието трябва да създадем активност за: профил, олово или контакт. Изборът трябва да се използват специфични критерии? В нашия случай това е-мейл адрес: ако ((crmAccount = crmConnector.GetAccount (mailboxFrom))! = NULL) () иначе ако ((crmContact = crmConnector.GetContact (mailboxFrom))! = NULL) () иначе ако ((crmLead = crmConnector.GetLead (mailboxFrom))! = NULL) () 2. Тогава ние трябва да се GUID на MS CRM потребител, който е собственик на този субект, C # код като този: crmUser = crmConnector.GetUser (crmAccount.GetOwnerId ()) 3. Следваща стъпка е затворен за дейността създаването: 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. Метод за създаване на затворен дейност: публично Guid CreateEmailActivity (GUID потребителското име, INT fromObjectType, Guid fromObjectId, INT toObjectType, Guid toObjectId, низ mailFrom, за mailto канапи, предмет низ низ тяло) ((опитайте log.Debug ("Подгответе се за Mail дейност Създаване ");// BizUser прокси bizUser objectMicrosoft.Crm.Platform.Proxy.BizUser = нови Microsoft.Crm.Platform.Proxy.BizUser (); ICredentials пълномощията = нови NetworkCredential (sysUserId, sysPassword, sysDomain); bizUser.Url = crmDir + "BizUser.srf"; bizUser.Credentials = пълномощията; Microsoft.Crm.Platform.Proxy.CUserAuth userAuth = bizUser.WhoAmI ();// CRMEmail прокси objectMicrosoft.Crm.Platform.Proxy. CRMEmail имейл = нови Microsoft.Crm.Platform.Proxy.CRMEmail (); email.Credentials = пълномощията; email.Url = crmDir + "CRMEmail.srf"; / / Създаване на XML низ за activitystring strActivityXml = ""; strActivityXml + = " "; strActivityXml + = "") + "]]>"; StrActivityXml + = ""; strActivityXml + = userId.ToString ("Б") + ""; strActivityXml + = "";// Създаване на XML низ за дейността partiesstring strPartiesXml = ""; strPartiesXml + = ""; strPartiesXml + = "" + за mailto + ""; ако (toObjectType == Microsoft.Crm.Platform.Types.ObjectType.otSystemUser) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otSystemUser.ToString () + "";) останало ако (toObjectType == Microsoft.Crm.Platform.Types.ObjectType.otAccount) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otAccount.ToString () + "";) иначе ако (toObjectType == Microsoft.Crm.Platform . Types.ObjectType.otContact) (StrPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otContact.ToString () + "";) иначе ако (toObjectType == Microsoft.Crm.Platform.Types.ObjectType.otLead) (strPartiesXml + = " "+ Microsoft.Crm.Platform.Types.ObjectType.otLead.ToString () + "";) strPartiesXml + = "" + toObjectId.ToString ("Б") + ""; strPartiesXml + = ""; strPartiesXml + = Microsoft.Crm.Platform.Types.ACTIVITY_PARTY_TYPE.ACTIVITY_PARTY_TO_RECIPIENT.ToString (); strPartiesXml + = ""; strPartiesXml + = ""; strPartiesXml + = ""; strPartiesXml + = "" + mailFrom + ""; ако (fromObjectType == Microsoft.Crm.Platform.Types.ObjectType.otSystemUser) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otSystemUser.ToString () + "";) иначе ако (fromObjectType == Microsoft.Crm.Platform.Types.ObjectType.otAccount) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otAccount.ToString () + "";) иначе ако (fromObjectType == Microsoft.Crm.Platform . Types.ObjectType.otContact) (StrPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otContact.ToString () + "";) иначе ако (fromObjectType == Microsoft.Crm.Platform.Types.ObjectType.otLead) (strPartiesXml + = " "+ Microsoft.Crm.Platform.Types.ObjectType.otLead.ToString () + "";) strPartiesXml + = "" + fromObjectId.ToString ("Б") + ""; strPartiesXml + = ""; strPartiesXml + = Microsoft.Crm.Platform.Types.ACTIVITY_PARTY_TYPE.ACTIVITY_PARTY_SENDER.ToString (); strPartiesXml + = ""; strPartiesXml + = ""; strPartiesXml + = ""; log.Debug (strPartiesXml); / / Създаване на електронна поща emailId objectGuid = нови Guid (email.Create (userAuth, strActivityXml, strPartiesXml)); връщане emailId;) улов (System.Web.Services.Protocols.SoapException д) (log.Debug ("ErrorMessage:" + e.Message + "" + E. Detail.OuterXml + "Източник:" + e.Source);) улов (Изключение д) (log.Debug (e.Message + "" + e.StackTrace);) Пътувам Guid ();) 5. За да направите дейност току-що създадената бъде показана правилно, което трябва да настройка е флагове Според г-жа стандарти CRM: Публичен нищожен UpdateActivityCodes (GUID emailId) ((опитайте OleDbCommand команда = conn.CreateCommand (); command.CommandText = "UPDATE ActivityBase SET DirectionCode = (?), StateCode = (?), PriorityCode = (?) когато ActivityId = (?)"; Command.Prepare (); command.Parameters.Add (ново OleDbParameter ("DirectionCode", Microsoft.Crm.Platform.Types.EVENT_DIRECTION.ED_INCOMING)); command.Parameters.Add (ново OleDbParameter ("StateCode" , Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (ново OleDbParameter ("PriorityCode", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add (ново OleDbParameter ("ActivityId", emailId)); log.Debug ("Подгответе се да актуализира код за дейност" + emailId.ToString ("Б") + "в ActivityBase"); command.ExecuteNonQuery ();) улов (Изключение д) ( log.Debug (e.Message + "" + e.StackTrace);)) обществени нищожен UpdateActivityQueueCodes (GUID emailId, Guid queueId) ((опитайте OleDbCommand команда = conn.CreateCommand (); command.CommandText = "UPDATE QueueItemBase поставям първенство = (?), държавните = (?), QueueId = (?) Когато ObjectId = (?)"; command.Prepare (); command.Parameters.Add (ново OleDbParameter ("Приоритет", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add ( нови OleDbParameter ("държава", Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (ново OleDbParameter ("QueueId", queueId)); command.Parameters.Add (ново OleDbParameter ("ObjectId", emailId)); дневника. Debug ("Подгответе се актуализира код за дейност опашката "+ emailId.ToString (" Б ") +" в QueueItemBase "); command.ExecuteNonQuery ();) улов (Изключение д) (log.Debug (e.Message +" "+ e.StackTrace);) ) Честит персонализиране, прилагането и изменението! Ако искате нас, за да си свършат работата - обадете ни се 1-866-528-0577! help@albaspectrum.comAbout на AuthorBoris Makushkin е Водещ разработчик на софтуер в Алба Спектър технологии? САЩ национален Microsoft CRM, Microsoft Great Plains
Член Източник: Messaggiamo.Com
Related:
» Seo Elite: New Seo Software!
» AntiSpywareBOT
» Reverse Mobile
» Error Nuker
уебмастъра Вземи Html кодекс
Добави тази статия на вашия сайт сега!
уебмастъра Подайте членове
Не е необходима регистрация! Попълнете формата и статията ви е в Messaggiamo.Com директория!