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 segredos de programação? dicas para desenvolvedores

Software RSS Feed





Este artigo é para desenvolvedores avançados Microsoft CRM SDK C #. Ele descreve a técnica de programação SQL direto, quando SDK não tem a funcionalidade para fazer o job.Introduction. Parece que o Microsoft CRM torna-se mais e mais popular, em parte porque os músculos da Microsoft por trás disso. Agora é alvejado a todo o espectro da clientela do mercado horizontal e vertical. É totalmente integrado com outros Microsoft Business Soluções de produtos como o Microsoft Great Plains, Solomon, Navision (os dois últimos em curso). Aqui nós descrevemos a técnica de criação de actividade fechado e-mail usando o MS CRM SDK e SQL programming.Imaging directo algo como isto. Você precisa lidar com e-mails recebidos antes de ser confirmada a base de dados MS Exchange. Você precisa analisar se e-mails recebidos não tem no seu objecto GUID (GUID permitirá MS CRM Exchange Connector para mover e-mail para o Microsoft CRM e anexá-lo para o contato, conta ou chumbo) - então você ainda precisam de pesquisa de MS CRM no caso, se uma das contas, contatos ou leads tem endereço electrónico que combina com o e-mail remetente Endereço - então você precisa criar atividade fechado e-mail no MS CRM, anexado ao objeto e colocado em queue.How geral para criar o MS Exchange manipulador está fora do âmbito de aplicação, consulte este artigo: http://www.albaspectrum.com/Customizations_Whitepapers/Dexterity_SQL_VBA_Crystal/ExchangeHandlerExample.htm Agora o código abaixo é clássica MS CRM SDK e que irá criar e-mail Actividade: public Guid CreateEmailActivity (Guid userId, objectType int, Guid objectId, destinatario seqüência, crmUser CRMUser, string subject, string body) (try (log.debug ( "Prepare for Mail Activity Criando ");// bizUser proxy bizUser objectMicrosoft.Crm.Platform.Proxy.BizUser = Microsoft.Crm.Platform.Proxy.BizUser novo (); syspassword credenciais ICredentials = NetworkCredential (sysUserId, sysDomain); bizUser.Url = crmDir + "BizUser.srf"; credenciais bizUser.Credentials =; Microsoft.Crm.Platform.Proxy.CUserAuth userAuth = bizUser.WhoAmI ();// email objectMicrosoft.Crm.Platform.Proxy.CRMEmail crmemail proxy = new Microsoft.Crm.Platform.Proxy.CRMEmail (); email.Credentials = credentials; email.Url = crmDir + "CRMEmail.srf"; / / Set up the string XML para o strActivityXml activitystring = ""; strActivityXml + = "" ; strActivityXml + = "") + "]]>"; StrActivityXml + = ""; strActivityXml + = userId.ToString ( "B") + "; strActivityXml + = "";// Set up the string XML para a atividade partiesstring strPartiesXml =" "; strPartiesXml + = ""; strPartiesXml + = "" + crmUser.GetEmailAddress () + "; strPartiesXml + = '" + Microsoft.Crm.Platform.Types.ObjectType.otSystemUser.ToString () + "; strPartiesXml + ='" + crmUser.GetId (). toString ( "B ") +"; strPartiesXml + = ""; strPartiesXml + = Microsoft.Crm.Platform.Types.ACTIVITY_PARTY_TYPE.ACTIVITY_PARTY_TO_RECIPIENT.ToString (); strPartiesXml + = ""; strPartiesXml + = ""; strPartiesXml + = ""; strPartiesXml + = "" destinatario + + "; if (objectType == Microsoft.Crm.Platform.Types.ObjectType.otAccount) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otAccount.ToString () + "";) else if (objectType == Microsoft.Crm.Platform . Types.ObjectType.otContact) (strPartiesXml + = "" + Microsoft.Crm.Platform.Types.ObjectType.otContact.ToString () + "";) else if (objectType == Microsoft.Crm.Platform.Types.ObjectType.otLead) (strPartiesXml + = " "+ Microsoft.Crm.Platform.Types.ObjectType.otLead.ToString () + ";) strPartiesXml + =" "+ objectId.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 + "Source:" + e.Source);) (Exception e) (log.Debug (e.Message + "rn" + e.StackTrace);) return new Guid ();) Agora eu gostaria de compartilhar o truque com você - não existe nenhum método para fazer esta atividade fechada em MS CRM SDK 1.2 (se alguém sabe a um - Eu lhe devo aquário pequeno bolso - sorriso!). Obviamente, a Microsoft não suporta se você faz direto do SQL SDK ignorando programação. No entanto eu diria que esta não é a criação de objetos diretos - isto é e correção de bandeiras. Então aqui é o que temos - Este procedimento irá fazer o trabalho e fazer atividade fechado: public 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 (new OleDbParameter ( "stateCode", Microsoft.Crm.Platform.Types.ACTIVITY_STATE.ACTS_CLOSED)); command.Parameters.Add (new OleDbParameter ( "PriorityCode", Microsoft.Crm.Platform.Types.PRIORITY_CODE.PC_MEDIUM)); command.Parameters.Add (novo OleDbParameter ( "ActivityId", EmailId)); log.debug ( "Prepare-se para atualização de código de actividade" + emailId.ToString ( "B") + "em ActivityBase"); command.ExecuteNonQuery ();) (Exception e) ( log.Debug (e.Message + "rn" + e.StackTrace);)) personalizar feliz! Se você deseja que façamos o trabalho - dar-nos uma chamada 1-866-528-0577! help@albaspectrum.comAndrew Karasev é Diretor de Tecnologia da Alba Spectrum Technologies? E.U.A. Microsoft país

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