none
Todas as Tarefas de cada Ocorrência que possuam Grupo de Contas = ABC RRS feed

  • Pergunta

  • Estou com o seguinte problema:
    Preciso mostrar em uma aba chamada "Tarefas do Grupo" que criei em Ocorrências, todas as tarefas de todas as ocorrências as quais possuem Grupo de Contas = ABC.

    Info:
    - Possuo uma entidade chamada Grupo de Contas que possui vínculo com Ocorrências. 
    - Dentro do Form de ocorrências tenho como pegar o Grupo escolhido. 

     

    PS1.: O Juliano Basseto até já me ajudou a criar o fetch, mas não consigo colocar em um Grid para ser exibida no IFrame da aba "Tarefas do Grupo".

    PS2.: Já consegui criar uma pesquisa Avançada que traga justamente o que preciso, mas tb não tenho idéia de como colocar no Iframe/aba 

     

    Obrigado!

    Fabio

    quinta-feira, 23 de setembro de 2010 18:09

Respostas

  • Isso Fabio,

    mas agora você terá que desenvolver uma página que popule os dados recuperados (sendo por fetch, webservice ou filteredview).

     

    Pois isso não existe por default do CRM... ou seja, o que você procura (um grid com as linhas recuperadas, e com link para o registro) precisa se feito via html/asp.net para se exibido em um iframe na nova aba criada...

     

    Uma dica seria você usar oo webdeveloper do IE (F12) e ver como essa grid do CRM, para poder recriá-la em seu desenvolvimento.

     

    Abraço,

     


    Ricardo Alves
    www.ricardoalves.me
    • Sugerido como Resposta RicardoAlves sexta-feira, 24 de setembro de 2010 11:24
    • Marcado como Resposta Fabio Nav segunda-feira, 27 de setembro de 2010 18:27
    quinta-feira, 23 de setembro de 2010 21:27

Todas as Respostas

  • Olá Fabio, tudo ok?

     

    Nativamente não é possível. Você deve criar sua própria tela com um grid ou um combobox (ISV). Desta forma você pode passar o id da ocorrência pela url para a página dentro do IFrame e mostrar o conteúdo de sua consulta, com um link para o registro em questão...

     

    Abraço,

     


    Ricardo Alves
    www.ricardoalves.me
    • Sugerido como Resposta RicardoAlves sexta-feira, 24 de setembro de 2010 11:24
    quinta-feira, 23 de setembro de 2010 19:33
  • Fala Ricardo td bem!

    Ricardo mesmo tendo o fetch montado e trazendo corretamente o que preciso:

     

    crmForm.all.tab4Tab.onclick = function(){
    
    
    
    // Prepare variables to fetch accounts.
    
    var fetchMapping = "logical";
    
    var entityName = "task";
    
    var firstColumn = "regardingobjectid";
    
    var secondColumn = "subject";
    
    var linkEntity = "incident";
    
    var linkEntityTo ="regardingobjectid";
    
    var filterType = "and";
    
    var conditionAttribute = "new_grupodecontasidname";
    
    var operator = "eq";
    
    var value = "GBS";
    
    var authenticationHeader = GenerateAuthenticationHeader();
    
    
    
    // Prepare the SOAP message.
    
    var xml = "<?xml version='1.0' encoding='utf-8'?>"+ 
    
    "<soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'"+
    
    " xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'"+
    
    " xmlns:xsd='http://www.w3.org/2001/XMLSchema'>"+ 
    
    authenticationHeader+ 
    
    "<soap:Body>"+ 
    
    "<Fetch xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+ 
    
    "<fetchXml>&lt;fetch mapping='"+fetchMapping+"'&gt;"+ 
    
    "&lt;entity name='"+entityName+"'&gt;"+ 
    
    "&lt;attribute name='"+firstColumn+"'/&gt;"+ 
    
    "&lt;attribute name='"+secondColumn+"'/&gt;"+ 
    
    "&lt;link-entity name='"+linkEntity+"' to='"+linkEntityTo+"'&gt;"+ 
    
    "&lt;filter type='"+filterType+"'&gt;"+ 
    
    "&lt;condition attribute='"+conditionAttribute+"'"+
    
    " operator='"+operator+"' value='"+value+"'/&gt;"+ 
    
    "&lt;/filter&gt;"+ 
    
    "&lt;/link-entity&gt;"+ 
    
    "&lt;/entity&gt;"+ 
    
    "&lt;/fetch&gt;</fetchXml>"+ 
    
    "</Fetch>"+ 
    
    "</soap:Body>"+ 
    
    "</soap:Envelope>";
    
    // Prepare the xmlHttpObject and send the request.
    
    var xHReq = new ActiveXObject("Msxml2.XMLHTTP");
    
    xHReq.Open("POST", "/mscrmservices/2007/CrmService.asmx", false);
    
    xHReq.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2007/WebServices/Fetch");
    
    xHReq.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
    
    xHReq.setRequestHeader("Content-Length", xml.length);
    
    xHReq.send(xml);
    
    // Capture the result.
    
    var resultXml = xHReq.responseXML;
    
    
    
    // Check for errors.
    
    var errorCount = resultXml.selectNodes('//error').length;
    
    if (errorCount != 0)
    
    {
    
     var msg = resultXml.selectSingleNode('//description').nodeTypedValue;
    
     alert(msg);
    
    }
    
    // Process and display the results.
    
    else
    
    {
    
    
    
    // Capture the result and UnEncode it.
    
    var resultSet = new String();
    
    resultSet = resultXml.text;
    
    resultSet.replace('&lt;','<');
    
    resultSet.replace('&gt;','>');
    
    
    
    // Create an XML document that you can parse.
    
      var oXmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    
      oXmlDoc.async = false; 
    
    // Load the XML document that has the UnEncoded results.
    
      oXmlDoc.loadXML(resultSet);
    
    // Display the results.
    
      var results = oXmlDoc.getElementsByTagName('result');
    
       var msg = "\Account Id\t\t\t\tAccount Name\r";
    
    msg +="--------------------------------------------------------------------------------\r";
    
      for (i=0;i < results.length;i++)
    
      {
    
       var idValue = results[i].selectSingleNode('./regardingobjectid').nodeTypedValue;
    
       var name = results[i].selectSingleNode('./subject').nodeTypedValue;
    
       msg += idValue +"\t"+ name+"\r";
    
      }
    
      alert(msg);
    
    }
    
    }

     

    Valeu!

    Obrigado!

     

    Abraço

    Fabio

     

     

     

     

    quinta-feira, 23 de setembro de 2010 20:14
  • Isso Fabio,

    mas agora você terá que desenvolver uma página que popule os dados recuperados (sendo por fetch, webservice ou filteredview).

     

    Pois isso não existe por default do CRM... ou seja, o que você procura (um grid com as linhas recuperadas, e com link para o registro) precisa se feito via html/asp.net para se exibido em um iframe na nova aba criada...

     

    Uma dica seria você usar oo webdeveloper do IE (F12) e ver como essa grid do CRM, para poder recriá-la em seu desenvolvimento.

     

    Abraço,

     


    Ricardo Alves
    www.ricardoalves.me
    • Sugerido como Resposta RicardoAlves sexta-feira, 24 de setembro de 2010 11:24
    • Marcado como Resposta Fabio Nav segunda-feira, 27 de setembro de 2010 18:27
    quinta-feira, 23 de setembro de 2010 21:27
  • Valeu Ricardo!!!

     

    Vou implementar e te falo!

     

    GRato!

    AbraçoFabio

    quinta-feira, 23 de setembro de 2010 21:33