segunda-feira, 29 de outubro de 2012

Definir TimeOut de Sessão do IFD no Dynamics CRM 2011

          Abra o Windows PowerShell com permissão de Administrador no servidor do IFD e execute as instruções abaixo:
  • PS > Add-PSSnapin Microsoft.Adfs.PowerShell
  • PS > Get-ADFSRelyingPartyTrust -Name:"identificação_terceira_parte_confiável"
  • PS > Set-ADFSRelyingPartyTrust -TargetName "identificação_terceira_parte_confiável" -TokenLifetime 7200
           Utilizando esta configuração, o tempo de sessão será de 12 horas (7200 minutos).

          Caso não saiba a identificação da terceira parte confiável, basta acessar o Gerenciamento de AD FS 2.0, acessar o menu "Confianças de Terceira Parte Confiável" e localizar o nome para exibição.


terça-feira, 16 de outubro de 2012

Integrando Dynamics CRM 2011 com Sharepoint

         Antes de iniciarmos o processo de configuração da integração entre o SharePoint e o Dynamics CRM 2011 é necessário realizar a instalação do Shrepoint List (http://www.microsoft.com/pt-br/download/details.aspx?id=5283).

        Com o componente devidamente instalado no SharePoint, podemos iniciar o processo de configuração da integração.

  • No menu da esquerda do Dynamics, vá em "Configurações", "Gerenciamento de Documentos".


  • Clique em "Configurações de Gerenciamento de Documentos" e selecione as entidade em que deseja  realizar a instalação. Selecionada as entidade desejadas, informe a URL do SharePoint 2010 onde foi realizada a instalação do componente de lista do CRM.

  • Ao clicar em avançar a URL informada será validada. Em seguida será solicitado como deseja criar a estrutura de pastas. Marque a opção "Baseado na Entidade" para estruturar baseado em Conta ou Contato.
    • Se optar por baseado em Conta a estrutura permanecerá da seguinte forma: .../account/<nome da conta>/<nome da entidade>/<nome do registro>
    • Se optar por baseado em Contato a estrutura permanecerá da seguinte forma: .../contact/<nome do contato>/<nome da entidade>/<nome do registro>
    • Já se não optares pela estrutura baseada em conta ou em contato a estrutura permanecerá da seguinte forma: .../<nome da entidade>/<nome do registro>
  • Em seguida, ao clicar em "Avançar", a criação da biblioteca de documentos será iniciada. Pode ser exibido um diálogo de confirmação para cada entidade selecionada.
  • Uma vez o processo concluído, clique em "Concluir".

No Registro do CRM

         Concluída a configuração é possível passar a gerenciar os documentos da entidades selecionadas pelo SharePoint.
  • Para inserir documentos, selecione o registro desejado e clique em "Documentos" no menu da esquerda e clique em "OK" na caixa de diálogo que será exibida.
  • Ao confirmar uma pasta será criada no SharePoint onde os usuários poderão armazenar os documentos das contas, por exemplo.
  • Caso o componente SharePoint List não for instalado ou não estiver devidamente configurado, ao clicar no menu "Documentos" será aberto o local do SharePoint em um IFrame.

         Este é um pequeno exemplo da integração que pode ser realizada entre o Dynamics CRM e o SharePoint.

quinta-feira, 4 de outubro de 2012

Busca de Endereço Através do CEP no Dynamics CRM 2011

          Uma funcionalidade interessante que podemos implementar no Dynamics CRM 2011 é a busca do endereço de uma Conta através do CEP. Para realizarmos este processo, necessitamos editar o formulário da entidade e adicionarmos os JavaScripts necessários.
          Antes de iniciar a implementação da funcionalidade é necessário criar um Recurso da Web do tipo Script e importar a biblioteca JQuery no formulário, o download desta biblioteca pode ser realizado no site http://jquery.org/.
          Tento a biblioteca no formulário, criamos outro Recurso da Web, que no meu caso chamei de "BuscaEndereco", onde contém a função que realiza a busca do CEP. Abaixo eu tenho um exemplo desta função:

function BuscaCEP(){

var cep = Xrm.Page.getAttribute("address1_postalcode").getValue();


/*Limpa os Valores do Campos de Endereço*/

Xrm.Page.getAttribute("address1_line1").setValue('');
Xrm.Page.getAttribute("address1_line2").setValue('');
Xrm.Page.getAttribute("address1_city").setValue('');
Xrm.Page.getAttribute("address1_stateorprovince").setValue('');
Xrm.Page.getAttribute("address1_country").setValue('');

/*Faz a chamado do Web Service e popula os campos com o retorno obtido*/

$.getScript("http://cep.republicavirtual.com.br/web_cep.php?formato=javascript&cep=" + cep, function(){
        if(resultadoCEP["resultado"] == 1){
              var TipoLogradouro = resultadoCEP["tipo_logradouro"] + ' ' + resultadoCEP["logradouro"];
              Xrm.Page.getAttribute("address1_line1").setValue(unescape(TipoLogradouro)); 
              Xrm.Page.getAttribute("address1_line2").setValue(unescape(resultadoCEP["bairro"])); 
              Xrm.Page.getAttribute("address1_city").setValue(unescape(resultadoCEP["cidade"])); 
              Xrm.Page.getAttribute("address1_stateorprovince").setValue(unescape(resultadoCEP["uf"])); 
              Xrm.Page.getAttribute("address1_country").setValue("Brasil"); 
        } 

/*Mensagem de alerta caso o endereço não seja localizado*/

        if(resultadoCEP["resultado"] == 0){
              alert("Endereço não Localizado!");
        }
   });
}

          Implementados os dois Recursos da Web, é necessário determinar em que momento em que realizamos a chamada do Script. Neste caso realizamos a chamada do recurso "BuscaEndereco" no momento em que o CEP da conta é alterado. Para isso realizo a chamada da função "BuscaCEP" no OnChange do campo CEP.


          Realizada esta implementação, basta salvar e publicar o formulário, que ao alterar o CEP, os dados de endereço serão preenchidos automaticamente. Esta funcionalidade pode ser implementada nas demais entidades que possuem endereço.


sábado, 22 de setembro de 2012

Dynamics CRM 2011 - Workflow de Espera

         Em algumas situações no Dynamics CRM 2011, nos deparamos com a necessidade de criarmos um processo que aguarde até que uma condição seja satisfeita.
         Imaginamos o seguinte cenário: Quando uma Oportunidade é encerrada como ganha, necessito que seja enviado um e-mail para o cliente desta Oportunidade, comunicando este que a sua oportunidade foi ganha.
         Neste exemplo irei utilizar um processo de Workflow (Fluxo de Trabalho) com uma condição de espera, e este será executado quando a oportunidade for criada e aguardará até que uma de suas condições sejam satisfeitas.

1. Criar um novo Workflow: No menu Processos, clique em Novo.


2. Neste momento será necessário informar o nome do "Processo", a "Entidade" que este processo irá ser executado e a categoria do "Processo", que neste caso é "Fluxo de Trabalho" (Workflow). No meu exemplo este processo se chamará "Email Oportunidade Ganha".


3. Este fluxo se inicia quando uma oportunidade é criada. Um ponto importante antes de criarmos as regras do Workflow, é definirmos qual o seu escopo. Neste exemplo o escopo será definido como "Organização", pois assim o Workflow será disparado para todo e qualquer usuário que criar uma nova oportunidade. Em seguida adiciono uma nova etapa, sendo esta uma condição de espera.


4. Ao escolher a opção "Condição de Espera", será gerada uma nova etapa do Workflow.


5. Neste momento será necessário configurar a condição de espera, ou seja, o Workflow somente seguirá a execução quando a condição for atendida.


6. No passo seguinte iremos adicionar uma etapa em que enviará o e-mail comunicando o cliente desta oportunidade. Lembrando que neste exemplo não estou demonstrando como realizar a configuração do envio de e-mail, que pode ser realizado pelo "E-mail Router".



7. Após criar a etapa de envio do e-mail, será criada uma estrutura semelhante a imagem abaixo.

 

8. Após criarmos a etapa para realizar o envio de e-mail, será necessário configurá-la. Para isso clicamos no botão "Definir Propriedades", e preenchemos as informações do e-mail que será enviado.


9. Assim concluímos o processo que enviará o e-mail para o cliente provável, porém temos que tratar as demais condições possíveis para que o processo não permaneça em execução por tempo indeterminado. Para isso criamos uma etapa de "Ramificação Condicional".


10. Clicando sobre o link para realizar a configuração, será aberta a tela para configurarmos a ramificação de espera.


11. Ao contrário da condição anterior, caso esta condição seja satisfeita não temos nada a fazer a não ser encerrar o Workflow, para que este não permaneça em execução. Para isso adicionamos uma etapa de "Parar Fluxo de Trabalho".


12. Ao inserirmos esta etapa somente teremos que informar o status com que queremos encerrar o Workflow, neste caso estarei encerrando com êxito.


         Assim concluímos o Workflow de espera, sendo necessário somente realizar a ativação do mesmo para que este comece a ser executado. Assim que este for ativado, ao criarmos uma nova oportunidade o Workflow entrará em execução e somente finalizará a execução quando a oportunidade for ganha ou perdida.
         Este é um exemplo simples ao qual podemos utilizar um Workflow com uma condição de espera.

quinta-feira, 20 de setembro de 2012

Faixas do Outlook Desaparecem Após a Instalação do Cliente do Microsoft Dynamics CRM 2011


Caso a faixa de opções do Outlook desaparecer após a instalação do Cliente do Microsoft Dynamics CRM 2011 e não reaparecer, ao menos que o cliente instalado seja desativado, é necessário executar as seguintes etapas para solucionar o problema.

1.      Sair do Outlook;
2.      Vá em “Iniciar”, clique em “Executar” e digite “regedit”, assim entrará no registro do Windows;
3.      Localize a chave: HKEY_CLASSES_ROOT\TypeLib\{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}
4.      Localize a chave “2.4” e realize um backup, após realize a exclusão da mesma.
5.      Em seguida inicie o Outlook normalmente.