Ir para o conteúdo principal

Microsoft Dynamics CRM´s Scrapbook

Ir para Pesquisa
Home
  

Microsoft Dynamics CRM´s Scrapbook > Postagens > Integração do Dynamics CRM com Linkedin
Integração do Dynamics CRM com Linkedin

Olá Pessoal,

Desde que algumas redes sociais têm aberto suas APIs, temos a oportunidade de fazer integrações bem legais com o Dynamics CRM, as quais nos permitem irmos mais além e proporcionarmos uma experiência diferenciada para o usuário.

Nesse aspecto, vale ressaltar um dos pilares do produto que é a extensibilidade. É bem verdade que vários dos concorrentes do Dynamics CRM garantem que não trazem estratégias enlatadas onde a empresa precisa se adaptar a elas, mas pelo que tenho visto no mercado, as adaptações são demoradas, dolorosas e caras.

Como diferencial, o Dynamics CRM oferece opções de customização do lado cliente e servidor, permitindo que de maneira muito fácil, consigamos que o produto atenda as necessidades da empresa.

Abaixo, um código em JScript que acessa a API do Linkedin e cria no formulário de Conta no Dynamics CRM uma exepriência diferenciada:

Linkedin_thumb_378EF175

Segue o código que deve ser implementado no evento “on-load” do formulário:

function LinkedInLoader(crmFormField) {
    var ll = this;
    ll.scriptSource = 'http://www.linkedin.com/companyInsider?script&useBorder=yes'
    ll.field = crmFormField;
    ll.container = crmFormField.parentNode;
    ll.nameToSearch = crmFormField.DataValue;
    ll.spanId = ll.field.id + '_linkedin';

    if (ll.container != null) {
        var span = document.createElement('span');
        span.id = ll.field.id + '_linkedin';

        var td1 = document.createElement('td');
        td1.innerHTML = ll.container.innerHTML;

        var td2 = document.createElement('td');
        td2.appendChild(span);
        td2.style.width = '15px';

        var tr = document.createElement('tr');
        tr.appendChild(td1);
        tr.appendChild(td2);

        var table = document.createElement('table');
        table.width = '100%';
        table.style.tableLayout = 'fixed';
        table.cellSpacing = 0;
        table.cellPading = 0;
        table.appendChild(tr);

        ll.container.innerHTML = table.outerHTML;
    }

    ll.ApplyCorrections = function() {
        var div = document.getElementById('company-insider-info-window');
        if (div != null) div.style.height = '275px';
        else window.setTimeout(ll.ApplyCorrections, 500);
    }

    ll.Enable = function() {
        new LinkedIn.CompanyInsiderPopup(ll.spanId, ll.nameToSearch);
        new LinkedIn.CompanyInsiderStylesheet();
        var span = document.getElementById(ll.spanId);
        if (span != null) span.attachEvent('onclick', ll.ApplyCorrections);
    }

    ll.OnScriptReadyState = function() {
        if ((event.srcElement.readyState == 'complete') ||
     (event.srcElement.readyState == 'loaded')) {
            ll.Enable();
        }
    }

    ll.Load = function() {       
        var script = document.createElement('script');
        script.type = 'text/javascript';
        script.src = ll.scriptSource;
        script.onreadystatechange = ll.OnScriptReadyState;
        document.getElementsByTagName('head')[0].appendChild(script);
    }
}

if (crmForm.FormType != 1) {
    // Define o campo que traz o nome da empresa. Mude de acordo com o utilizado no seu CRM.
    var linkedInLoader = new LinkedInLoader(crmForm.all.name);
    linkedInLoader.Load();
}

Simples não é?

[]´s

Carlos Amorim Junior
"Já ajudou a comunidade hoje?”
http://www.dynamicscrm.com.br

Comentários

Ainda não há comentários para esta postagem.

Título


Corpo *


Anexos