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
 

Microsoft CRM personalização? programação fechada email actividade

Software RSS Feed





O Microsoft CRM é atender a partir do Microsoft CRM e tentativa de quota de mercado de Siebel, Oracle e outros clientes tradicionais Relationship Management System vendedores. O Microsoft CRM usa todo o espectro da Microsoft recentes tecnologias:. Net, MS Exchange, MS Outlook, MS SQL Server, Replicação, indexação, o Active Directory, Windows 2000/2003 modelo de segurança, C #, VB.Net, HTML, XML Web Service, XLTP, Javascript para citar alguns. Today's Atividade é tema de e-mail tipo de programação - que geralmente lidam com estas personalizações quando você a melhorar o Microsoft Exchange CRM conector. Como você criar fechado atividade - esta é a discussão principal tópico. Iremos uso C #. NET codingOne dos papéis do nosso Exchange Event Handler / Sumidouro é criação MS CRM Fechado Actividade em movimentação de entrada e de saída mensagens. A interação com o Microsoft CRM usa dois abordado? utilizando MS CRM SDK (movimentação de entrada e saída XML mensagens) e via de acesso directo para o MS CRM Database. Vamos primeiro olhar para a criação Fechado Actividade algoritmo: 1. Primeiro precisamos entender a entidade que precisamos para criar atividade para: Conta, chumbo ou qualquer contato. A seleção deve usar critérios específicos? no nosso caso o endereço de e-mail é: if ((crmAccount = crmConnector.GetAccount (mailboxFrom))! = null) () else if ((crmContact = crmConnector.GetContact (mailboxFrom))! = null) () else if ((crmLead = crmConnector.GetLead (mailboxFrom))! = null) (2). Então temos de MS CRM GUID do usuário, que possui esta entidade, C # código como este: crmUser = crmConnector.GetUser (crmAccount.GetOwnerId ()); 3. Próxima etapa é encerrada Actividade criação: 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. O método para criar fechada atividade: public Guid CreateEmailActivity (Guid userid, int fromObjectType, Guid fromObjectId, int toObjectType, Guid toObjectId, string mailFrom, string MailTo, string assunto, string body) (try (log.Debug ( "Preparar para Mail Actividade Criando ");// BizUser proxy objectMicrosoft.Crm.Platform.Proxy.BizUser bizUser = new Microsoft.Crm.Platform.Proxy.BizUser (); ICredentials credenciais = new NetworkCredential (sysUserId, sysPassword, sysDomain); bizUser.Url = crmDir + "BizUser.srf"; bizUser.Credentials = credenciais; Microsoft.Crm.Platform.Proxy.CUserAuth userAuth = bizUser.WhoAmI ();// crmemail proxy objectMicrosoft.Crm.Platform.Proxy. crmemail email = novo Microsoft.Crm.Platform.Proxy.CRMEmail (); email.Credentials = credenciais; email.Url = crmDir + "CRMEmail.srf"; / / Configure o XML para a seqüência activitystring strActivityXml = ""; strActivityXml + = " "; strActivityXml + = "") + "]]>"; StrActivityXml + = ""; strActivityXml + = userId.ToString ( "B") + ""; strActivityXml + = "";// Configurar o XML string para a actividade partiesstring strPartiesXml = ""; strPartiesXml + = ""; strPartiesXml + = "" + mailto + ""; if (toObjectType == Microsoft.Crm.Platform.Types.ObjectType.otSystemUser) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otSystemUser.ToString () + "";) else se (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); / / Cria o e-mail objectGuid emailId = new Guid (email.Create (userAuth, strActivityXml, strPartiesXml)); emailId retorno;) 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. Para fazer com que a atividade acabou de criar ser exibido corretamente você precisa configurar as bandeiras que, de acordo com MS CRM normas: pública void UpdateActivityCodes (Guid emailId) (try (OleDbCommand command = conn.CreateCommand (); command.CommandText = "UPDATE ActivityBase SET DirectionCode = (?), StateCode = (?), PriorityCode = (?) ONDE ActivityId = (?)"; command.Prepare (); command.Parameters.Add (novo OleDbParameter ( "DirectionCode", Microsoft.Crm.Platform.Types.EVENT_DIRECTION.ED_INCOMING)); command.Parameters.Add (novo OleDbParameter ( "StateCode" , Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (novo OleDbParameter ( "PriorityCode", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add (novo OleDbParameter ( "ActivityId", emailId)); log.Debug ( "Prepare-se para atualizar actividade código" + emailId.ToString ( "B") + "em 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 QueueItemBase SET prioridade = (?), Estado = (?), QueueId = (?) ONDE ObjectId = (?)"; command.Prepare (); command.Parameters.Add (novo OleDbParameter ( "Prioridade", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add ( novo OleDbParameter ( "Estado", Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (novo OleDbParameter ( "QueueId", queueId)); command.Parameters.Add (novo OleDbParameter ( "ObjectId", emailId)); log. Debug ( "Prepare-se para atualização actividade fila código "+ emailId.ToString (" B ") +" em QueueItemBase "); command.ExecuteNonQuery ();) catch (Exception e) (log.Debug (e.Message +" "+ e.StackTrace);) ) Feliz personalização, execução e modificar! Se você quiser nos a fazer o trabalho - dar-nos uma chamada 1-866-528-0577! help@albaspectrum.comAbout O AuthorBoris Makushkin é Lead Software Developer em Alba Spectrum Technologies? E.U.A. nacional do Microsoft CRM, Microsoft Great Plains

Artigo Fonte: Messaggiamo.Com

Translation by Google Translator





Related:

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


Webmaster começa O Código do HTML
Adicionar este artigo para o seu site agora!

Webmaster enviar seus artigos
Nenhum registro necessário! Preencha o formulário e seu artigo está no Messaggiamo.Com Diretório!

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

Envie os seus artigos para Messaggiamo.Com Directory

Categorias


Copyright 2006-2011 Messaggiamo.Com - Mapa do Site - Privacy - Webmaster enviar seus artigos para Messaggiamo.Com Directory [0.01]
Hosting by webhosting24.com
Dedicated servers sponsored by server24.eu