quinta-feira, 23 de maio de 2013

CRM IFD - Habilitar Exportação de Planilha Dinâmica

Existem alterações interessantes que podem ser feitas no Metadados do CRM - infelizmente não especificadas no SDK do próprio produto - como por exemplo, habilitar o recurso de exportação de planilha dinâmica do excel no CRM para IFD.
Por padrão, o CRM cria no excel uma [connection string] que aponta diretamente para o Servidor de Banco de Dados do CRM para buscar os dados. Porém, via IFD, esta conexão não é mais válida, pois você pode estar fora do domínio onde o servidor de banco do CRM se encontra.

Pois bem, para habilitar este recurso no IFD, faça o seguinte:

CRM 4.0
- Entre no servidor de aplicação do CRM;
- Abra o Regedit
- Vá até HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM
- E crie uma [DWORD Value] chamada UseWebQueryForLiveExport com o valor 1

CRM 2011
- Entre no servidor de aplicação do CRM;
- Abra o console do PowerShell do Windows (Iniciar => Todos os Programas => Acessórios => Windows PowerShell)
- Digite:
- Add-PSSnapin Microsoft.Crm.PowerShell
- $setting = New-Object "Microsoft.Xrm.Sdk.Deployment.ConfigurationEntity"
- $setting.LogicalName = "Organization"
- $setting.Attributes = New-Object "Microsoft.Xrm.Sdk.Deployment.AttributeCollection"
- $keypair = New-Object "System.Collections.Generic.KeyValuePair[String,Object]" ("UseWebQueryForLiveExport",$True)
- $setting.Attributes.Add($keypair)
- Set-CrmAdvancedSetting -Entity $setting

Fontes:
- Microsoft Office Excel worksheets exported from Microsoft Dynamics CRM are slow to open
- Organization Table Metadata (Advanced Settings)

[]s

quarta-feira, 8 de maio de 2013

Dica - Limpar rapidamente Cache de Aplicações .NET

Uma tarefa 'normal' do .NET Framework no Windows é o uso constante da pequena área de memória rápida, integrada a unidade central de processamento, também conhecida como [Cache].

Porém, em alguns casos, isto pode dificultar a vida do desenvolvedor que constantemente atualiza sua DLL ou EXE e aplica estes novos arquivos no servidor do cliente para testes.

Por exemplo, você tem certeza que atualizou aquela sua DLL, EXE, DTSX (para desenvolvimento em SSIS), enfim, mas observa o mesmo resultado antes da sua alteração. Com isto, em casos extremos, muitos desenvolvedores [reiniciam] o servidor. Portanto, como dica rápida, segue um utilitário do .NET Framework para limpeza de Cache de Aplicação. Segue os passos:

1 - Encontrar o utilitário MAGE.EXE no Windows.

Geralmente este utilitário fica em
[C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin] ou
[C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\x64]

Entre em um destes diretórios e execute (via DOS):

MAGE.EXE -cc

Desta forma você vai conseguir limpar o cache de todas as aplicações gerenciadas pelo .NET Framework de forma bem rápida, executar novamente sua aplicação e ver os resultados de sua última alteração!...

[]s

sexta-feira, 3 de maio de 2013

VM [Hyper-V] com acesso a Internet

Realmente não é uma tarefa trivial configurar uma VM em Hyper-V para acessar a internet. Exige alguns conhecimentos de rede e, para tanto, segue abaixo um passo-a-passo para utilizar o compartilhamento de internet do Windows na sua VM:

1 - Abra o gerenciador do Hyper-V e crie uma [Internal Virtual Switch]



2 - Abra o gerenciador de Serviços do Windows e habilite a opção [Routing and Remoting Access], iniciando este serviço, inclusive com o Startup Type como Automatic:



3 - Abra o gerenciador de redes [Network and Sharing Center] e clique na opção [Change Adapter Settings]



4 - Clique em propriedades do adaptador [que possui conexão com a Internet] - no meu caso o adaptador [Ethernet] - marque todas as opções da lista de itens de Networking, Exceto as duas marcadas em vermelho da imagem abaixo:



5 - Ainda nesta lista, instale a Feature [Protocol] para os itens [IPV6 e IPV4] (mesmo não existindo protocolos, clique no botão OK da tela [Select Network Protocol])



6 - Acesse novamente as Propriedades do adaptador de rede que contém o acesso a Internet (no meu exemplo - Ethernet) e Compartilhe a conexão de internet com o adaptador do Hyper-V que você criou no passo 1:



7 - Crie um adaptador do tipo [Legacy] na sua VM, pelo Hyper-V Manager, escolhendo como [Virtual Switch] o que foi criado no passo 1:



Pronto...desta forma, teremos internet dentro da VM! Inclusive note que você vai poder acessar os diretórios da sua máquina Host dentro da VM também, basicamente digitando o "caminho de rede" do diretório da máquina Host:



That's It!