<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Meu nome é Peterson Ferreira. Este blog contém novidades, dicas e informações para consultores, desenvolvedores e usuários do Microsoft Dynamics AX. Aproveitem!</description><title>Dynamics AX Brasil</title><generator>Tumblr (3.0; @dynamicsaxbr)</generator><link>http://dynamicsaxbr.com/</link><item><title>Virtualização das dimensões financeiras</title><description>&lt;p&gt;Estou trabalhando em um projeto, onde surgiu a necessidade de virtualizarmos as dimensões financeiras. Depois de alguns problemas, chegamos ao conjunto de tabelas exatas para que seja realizada a virtualização desta funcionalidade no ax, veja abaixo:&lt;/p&gt;

&lt;h5&gt;Tabelas&lt;/h5&gt;

&lt;ul&gt;&lt;li&gt;Dimensions&lt;/li&gt;
&lt;li&gt;DimensionActiveHierarchyBackup&lt;/li&gt;
&lt;li&gt;DimensionHierarchyCombination&lt;/li&gt;
&lt;li&gt;DimensionCollection&lt;/li&gt;
&lt;li&gt;DimensionPriorityTable&lt;/li&gt;
&lt;li&gt;DimensionSetCombination&lt;/li&gt;
&lt;li&gt;DimensionSetCombinationDuplicate&lt;/li&gt;
&lt;li&gt;DimensionSetCombinationTemp&lt;/li&gt;
&lt;li&gt;DimensionSetCombinationValidated&lt;/li&gt;
&lt;li&gt;DimensionSetHierarchyTable&lt;/li&gt;
&lt;li&gt;DimensionSetRuleTable&lt;/li&gt;
&lt;li&gt;DimensionSetRuleCollection&lt;/li&gt;
&lt;li&gt;DimensionSetTable&lt;/li&gt;
&lt;li&gt;LedgerRowDef&lt;/li&gt;
&lt;li&gt;LedgerRowDefErrorLog&lt;/li&gt;
&lt;li&gt;LedgerRowDefLine&lt;/li&gt;
&lt;li&gt;LedgerRowDefLineCalc&lt;/li&gt;
&lt;li&gt;LedgerTable&lt;/li&gt;
&lt;/ul&gt;&lt;h5&gt;Importante&lt;/h5&gt;

&lt;p&gt;Criar uma “TableCollection” somente para esse conjunto de tabelas.&lt;/p&gt;

&lt;p&gt;Espero ter ajudado.&lt;/p&gt;

&lt;p&gt;Abraços.&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/16440415612</link><guid>http://dynamicsaxbr.com/post/16440415612</guid><pubDate>Tue, 24 Jan 2012 21:56:15 -0400</pubDate><category>DAX 2009</category><category>Dicas</category><dc:creator>refactoringever</dc:creator></item><item><title>[NFe 2.0] Solucionando problemas SEFAZ-PR </title><description>&lt;p&gt;Bom dia pessoal,&lt;/p&gt;

&lt;p&gt;Recentemente entrei em um novo projeto onde foi necessário realizar a comunicação com o &lt;a href="http://www.fazenda.pr.gov.br/" target="_blank"&gt;SEFAZ-PR&lt;/a&gt; (o mais chato diga-se de passagem) para emissão da NF-e. Onde encontramos algumas dificuldades e gostaría de compartilhar com a solução.&lt;/p&gt;

&lt;h3&gt;O Problema&lt;/h3&gt;

&lt;p&gt;Quando enviamos o xml para o SEFAZ-PR validar recebemos o código de rejeição 215(Erro de validação no schema), mesmo que ele tenha sido validado contra o schema oficial.&lt;/p&gt;

&lt;h3&gt;Causa e explicação&lt;/h3&gt;

&lt;p&gt;De acordo com os comunicados que podem ser lidos &lt;a href="http://www.sped.fazenda.pr.gov.br/modules/noticias/article.php?storyid=202&amp;tit=03032011-1415-NF-e-versao-2.00-rejeicoes-215-esclarecimentos" target="_blank"&gt;aqui&lt;/a&gt; e &lt;a href="http://www.sped.fazenda.pr.gov.br/modules/noticias/article.php?storyid=196&amp;tit=20012011-1349-NF-e-versao-2.00-rejeicoes-215" target="_blank"&gt;aqui&lt;/a&gt;. A SEFAZ-PR explica que o xml está sendo rejeitado devido a falta de declaração do atributo namespace na tag NFe. Por exemplo:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;XML enviado ao SEFAZ-PR:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&lt;NFe&gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&lt;infNFe&lt;/span&gt; &lt;span class="na"&gt;Id=&lt;/span&gt;&lt;span class="s"&gt;"NFe41110303126900000259550000000150531000244250"&lt;/span&gt; &lt;span class="na"&gt;versao=&lt;/span&gt;&lt;span class="s"&gt;"2.00"&lt;/span&gt;&lt;span class="nt"&gt;&gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&lt;ide&gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&lt;/ide&gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&lt;/infNFe&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&lt;/NFe&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;XML esperado pelo SEFAZ-PR:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&lt;NFe&lt;/span&gt; &lt;span class="na"&gt;xmlns=&lt;/span&gt;&lt;span class="s"&gt;"www.portalfiscal.inf.br/nfe"&lt;/span&gt;&lt;span class="nt"&gt;&gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&lt;infNFe&lt;/span&gt; &lt;span class="na"&gt;Id=&lt;/span&gt;&lt;span class="s"&gt;"NFe41110303126900000259550000000150531000244250"&lt;/span&gt; &lt;span class="na"&gt;versao=&lt;/span&gt;&lt;span class="s"&gt;"2.00"&lt;/span&gt;&lt;span class="nt"&gt;&gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&lt;ide&gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&lt;/ide&gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&lt;/infNFe&gt;&lt;/span&gt;
&lt;span class="nt"&gt;&lt;/NFe&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;O que ocorre é que o WCF com a intenção de melhorar a performance da comunicação, retira as duplicidades do arquivo XML, consequentemente reduzindo o tamanho do arquivo.
Sendo assim a namespace da tag NFe é retirada, pois a mesma namespace é declarada na tag enviNFe.&lt;/p&gt;

&lt;p&gt;O problema é que somente a SEFAZ-PR faz a validação da namespace na tag NFe, ou seja, não se trata de um bug do AX e sim uma validação extra exclusiva do SEFAZ-PR.&lt;/p&gt;

&lt;h3&gt;Solução&lt;/h3&gt;

&lt;p&gt;Para solucionar este problema foi disponibilizada uma DLL para que o AX realize a comunicação com o SEFAZ-PR sem a otimização do XML, disponível para download &lt;a href="http://dl.dropbox.com/u/17489555/DAX/NFe/NFe.dll" target="_blank"&gt;aqui&lt;/a&gt;. Feito o download siga os seguintes passos:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Copie a dll para pasta bin do client do AX, algo parecido com isso: C:\Program Files (x86)\Microsoft Dynamics AX\50\Client\Bin&lt;/li&gt;
&lt;li&gt;Copie  a dll para a pasta bin do server do AX, algo parecido com isso: C:\Program Files\Microsoft Dynamics AX\50\Server\&lt;instancia desejada&gt;\Bin&lt;/instancia&gt;&lt;/li&gt;
&lt;li&gt;Abra o DAX, e adicione uma nova referência apontando para a dll do client. AOT &gt; References &gt; Botão direito &gt; Add references &gt; Browse.&lt;/li&gt;
&lt;li&gt;Abra o método “createBinding” da classe EFDocMsgTransport_WebServiceV4_BR, classe responsável pela comunicação entre AX x SEFAZ-PR e cole o código abaixo.&lt;/li&gt;
&lt;li&gt;Reinicie a AOS.&lt;/li&gt;
&lt;/ul&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="k"&gt;private&lt;/span&gt; &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Channels&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Binding&lt;/span&gt; &lt;span class="n"&gt;createBinding&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Channels&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Binding&lt;/span&gt;                        &lt;span class="n"&gt;binding&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Channels&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;BindingElement&lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;               &lt;span class="n"&gt;bindingElementArray&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="n"&gt;NFe&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;CustomTextMessageBindingElement&lt;/span&gt;                                                &lt;span class="n"&gt;customTextMessageBindingElement&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Channels&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;HttpsTransportBindingElement&lt;/span&gt;   &lt;span class="n"&gt;transportBinding&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;;&lt;/span&gt;
 
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;isHttps&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="c1"&gt;// BP Deviation Documented&lt;/span&gt;
        &lt;span class="n"&gt;customTextMessageBindingElement&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;NFe&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;CustomTextMessageBindingElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="n"&gt;utf&lt;/span&gt;&lt;span class="p"&gt;-&lt;/span&gt;&lt;span class="m"&gt;8&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;"application/soap+xml"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Channels&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;MessageVersion&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;get_Soap12&lt;/span&gt;&lt;span class="p"&gt;());&lt;/span&gt;
 
        &lt;span class="c1"&gt;// BP Deviation Documented&lt;/span&gt;
        &lt;span class="n"&gt;transportBinding&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Channels&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;HttpsTransportBindingElement&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
        &lt;span class="n"&gt;transportBinding&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;set_RequireClientCertificate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;true&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
 
        &lt;span class="c1"&gt;// BP Deviation Documented&lt;/span&gt;
        &lt;span class="n"&gt;bindingElementArray&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Channels&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;BindingElement&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="p"&gt;]();&lt;/span&gt;
        &lt;span class="n"&gt;bindingElementArray&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;SetValue&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;customTextMessageBindingElement&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;bindingElementArray&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;SetValue&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;transportBinding&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
 
        &lt;span class="c1"&gt;// BP Deviation Documented&lt;/span&gt;
        &lt;span class="n"&gt;binding&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Channels&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;CustomBinding&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;bindingElementArray&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="k"&gt;else&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="c1"&gt;// BP Deviation Documented&lt;/span&gt;
        &lt;span class="n"&gt;binding&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;System&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ServiceModel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;BasicHttpBinding&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
 
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;binding&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Feito isso o AX não irá mais retirar o namespace e o código de rejeição 215 desaparece :D.&lt;/p&gt;

&lt;p&gt;Outro erro encontrado, mas já explorado pelo Matiazzo em seu weblog, &lt;a href="http://daxdev.com.br/blog/nfe-v2-00-problemas-de-integra-ccedil-atilde-o-com-a-sefaz-pr-ba/" target="_blank"&gt;veja&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;br/&gt;
Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/11461587782</link><guid>http://dynamicsaxbr.com/post/11461587782</guid><pubDate>Fri, 14 Oct 2011 23:23:08 -0300</pubDate><category>DAX 2009</category><category>NFe</category><dc:creator>refactoringever</dc:creator></item><item><title>[DYNAMICS AX 2012] Boas Práticas para Testes</title><description>&lt;p&gt;Está disponível o novo whitepaper falando sobre as boas práticas nos testes do DAX 2012! Segue alguns tópicos falados e o link:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;ul&gt;&lt;li&gt;Práticas de condução de qualidade no início do ciclo de desenvolvimento.&lt;/li&gt;
  &lt;li&gt;Recomendações para o teste e ferramentas de ALM.&lt;/li&gt;
  &lt;li&gt;Ajudar a decidir sobre automação de teste.&lt;/li&gt;
  &lt;li&gt;Exemplos de boas práticas que usamos no desenvolvimento Dynamics AX 2012.&lt;/li&gt;
  &lt;/ul&gt;&lt;/blockquote&gt;

&lt;p&gt;Link para &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=27565" target="_blank"&gt;download&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;br/&gt;
Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10924078131</link><guid>http://dynamicsaxbr.com/post/10924078131</guid><pubDate>Sun, 02 Oct 2011 02:47:07 -0300</pubDate><category>DAX 2012</category><category>Boas Práticas</category><dc:creator>refactoringever</dc:creator></item><item><title>Remover Tags HTML de uma String</title><description>&lt;p&gt;Na semana passada um amigo me pediu ajuda em um problema pouco comum no DAX. &lt;strong&gt;Como remover tags HTML de uma String.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Como participei de um projeto em que o AX era o backoffice de um e-commerce, e precisávamos realizar toda a integração, eu já tinha a solução e resolvi compartilhar aqui no blog. Talvez você já tenha feito um método para resolver este problema, mas o AX já traz isso pronto pra você!&lt;/p&gt;

&lt;h3&gt;Solução&lt;/h3&gt;

&lt;p&gt;Dentro do AX temos um “Helper” para manipular elementos de uma página HTML, ou seja uma classe que possui uma série de métodos estáticos para ajudar a trabalhar com HTML. Vejamos como remover as tags html de uma string:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="c1"&gt;//Start&lt;/span&gt;
&lt;span class="k"&gt;static&lt;/span&gt; &lt;span class="k"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;removeHtml&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Args&lt;/span&gt; &lt;span class="n"&gt;_args&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;str&lt;/span&gt; &lt;span class="n"&gt;html&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"&lt;title&gt;Dynamics AX Brasil&lt;/title&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;;&lt;/span&gt;

    &lt;span class="n"&gt;html&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Web&lt;/span&gt;&lt;span class="p"&gt;::&lt;/span&gt;&lt;span class="n"&gt;stripHTML&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;html&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    
    &lt;span class="n"&gt;info&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;html&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="c1"&gt;//=&gt; Dynamics AX Brasil&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="c1"&gt;//End&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;No exemplo acima o método &lt;em&gt;stripHTML&lt;/em&gt; pode receber 3 parâmetros, são eles:&lt;/p&gt;

&lt;ol&gt;&lt;li&gt;String a ser retirada as tags HTML.&lt;/li&gt;
&lt;li&gt;Se deseja inserir quebra de linha após o elemento “p”.&lt;/li&gt;
&lt;li&gt;Se deseja inserir quebra de linha após o elemento “br”.&lt;/li&gt;
&lt;/ol&gt;&lt;h3&gt;Conclusão&lt;/h3&gt;

&lt;p&gt;Além deste método a classe Web possui vários outros, que como já foi dito, pode lhe ajudar no trabalho com o HTML.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;br/&gt;
Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10837020153</link><guid>http://dynamicsaxbr.com/post/10837020153</guid><pubDate>Fri, 30 Sep 2011 01:01:06 -0300</pubDate><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>[NEWS] Certificações: Dynamics AX 2012</title><description>&lt;p&gt;Os novos exames de certificação do DAX 2012 estão disponíveis para os que quiserem se certificar, segue dos links e tópicos abordados nos exames:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.microsoft.com/learning/en/us/Exam.aspx?ID=MB6-869&amp;Locale=en-us" target="_blank"&gt;MB6-869: Microsoft Dynamics AX 2012 Development Introduction&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;ul&gt;&lt;li&gt;Understanding Dynamics AX 2012 Architecture&lt;/li&gt;
  &lt;li&gt;Managing the Data Dictionary&lt;/li&gt;
  &lt;li&gt;Managing the User Interface&lt;/li&gt;
  &lt;li&gt;Managing Security&lt;/li&gt;
  &lt;li&gt;Working with X++ Control Statements&lt;/li&gt;
  &lt;li&gt;Managing Objects and Classes&lt;/li&gt;
  &lt;li&gt;Accessing the Database&lt;/li&gt;
  &lt;li&gt;Managing Exception Handling&lt;/li&gt;
  &lt;/ul&gt;&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://www.microsoft.com/learning/en/us/Exam.aspx?ID=MB6-872&amp;Locale=en-us" target="_blank"&gt;MB6-872: Microsoft Dynamics AX 2012 Installation and Configuration&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;ul&gt;&lt;li&gt;Planning to Install Microsoft Dynamics AX 2012 and Understanding the Organizational Model&lt;/li&gt;
  &lt;li&gt;Installing Microsoft Dynamics AX 2012&lt;/li&gt;
  &lt;li&gt;Managing Users and Security&lt;/li&gt;
  &lt;li&gt;Managing Services and Workflow&lt;/li&gt;
  &lt;li&gt;Managing Analytics and Reporting&lt;/li&gt;
  &lt;li&gt;Managing Enterprise Portals&lt;/li&gt;
  &lt;li&gt;Managing Administration&lt;/li&gt;
  &lt;/ul&gt;&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://www.microsoft.com/learning/en/us/Exam.aspx?ID=MB6-871&amp;Locale=en-us" target="_blank"&gt;MB6-871: Microsoft Dynamics AX 2012 Financials&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;ul&gt;&lt;li&gt;Managing Financials I&lt;/li&gt;
  &lt;li&gt;Managing Financials II&lt;/li&gt;
  &lt;li&gt;Managing Fixed Assets&lt;/li&gt;
  &lt;/ul&gt;&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://www.microsoft.com/learning/en/us/Exam.aspx?ID=MB6-870&amp;Locale=en-us" target="_blank"&gt;MB6-870: Microsoft Dynamics AX 2012 Trade and Logistics&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;ul&gt;&lt;li&gt;Managing the Supply Chain Foundation&lt;/li&gt;
  &lt;li&gt;Managing Distribution and Trade&lt;/li&gt;
  &lt;li&gt;Managing Bills of Materials&lt;/li&gt;
  &lt;/ul&gt;&lt;/blockquote&gt;

&lt;p&gt;A Microsoft também disponibiliza treinamentos on-line que podem ser encontrados &lt;a href="http://learning.microsoft.com/Manager/BrowseResults.aspx?browseval=pt&amp;pid=257%2523263%2523265&amp;cid=265&amp;nav=productandtechnology%3aProducts+and+Technologies%2fDynamics+%2fMicrosoft+Dynamics+AX%2fMicrosoft+Dynamics+AX+2012&amp;nav=trainingtype%3aE-Learning%2f&amp;qry=&amp;navclicked=1" target="_blank"&gt;aqui&lt;/a&gt;. E para quem tem acesso ao PartnerSource, pode baixar os novos manuais de estudo/preparação.&lt;/p&gt;

&lt;p&gt;Abraços, &lt;br/&gt;
Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10708707156</link><guid>http://dynamicsaxbr.com/post/10708707156</guid><pubDate>Mon, 26 Sep 2011 21:47:50 -0300</pubDate><category>DAX 2012</category><category>Desenvolvimento</category><category>Funcional</category><dc:creator>refactoringever</dc:creator></item><item><title>[NEWS] Dynamics AX Brasil | Jobs </title><description>&lt;p&gt;Como todos devem saber (principalmente o setor de recursos humanos das empresas) da dificuldade, em encontrar profissionais capacitados e com disponibilidade no Dynamics AX. A mesma dificuldade se aplica a que está procurando novas oportunidades para sua carreira, pois os anúncios ficam dispersos e na maioria das vezes são difíceis de entender.&lt;/p&gt;

&lt;h3&gt;Porque ?&lt;/h3&gt;

&lt;p&gt;Pensando nisso resolvi unir o útil ao agradável, ou seja, a dificuldade das empresas encontrarem profissionais com a dificuldade dos profissionais procurarem oportunidades e decidir criar um espaço centralizado e fácil de compartilhar estas informações, apresento a vocês o
&lt;a href="http://jobs.dynamicsaxbr.com" target="_blank"&gt;Dynamics AX Brasil | Jobs&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lrzrjxDs2y1qlrw3y.png" alt="Dynamics AX Brasil | Jobs"/&gt;&lt;/p&gt;

&lt;h3&gt;Como funciona ?&lt;/h3&gt;

&lt;p&gt;É muito simples, as empresas cadastram a oportunidade no &lt;a href="http://jobs.dynamicsaxbr.com" target="_blank"&gt;Dynamics AX Brasil | Jobs&lt;/a&gt;,  colocando todas as informações necessárias, e as mesmas ficarão disponíveis na página inicial do site por 30 dias.&lt;/p&gt;

&lt;p&gt;Quando uma oportunidade estiver disponível será possível visualizar ela individualmente para ver todas as especificações e habilidades necessárias. Caso haja o interesse do candidato, no final da página haverá as instruções de como participar do processo seletivo, olhem:&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lrzs7gDKV11qlrw3y.png" alt="Exemplo de visualização | Dynamics AX Brasil"/&gt;&lt;/p&gt;

&lt;h3&gt;Ajude a divulgar&lt;/h3&gt;

&lt;p&gt;Conto com a ajuda de todos na divulgação/feedback:&lt;br/&gt;
Twitter - &lt;a href="http://twitter.com/daxjobs" target="_blank"&gt;@daxjobs&lt;/a&gt; &lt;br/&gt;
Endereço - &lt;a href="http://jobs.dynamicsaxbr.com" target="_blank"&gt;Dynamics AX Brasil | Jobs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bom pessoal é isso o serviço ficou bem simples, mas espero que possa ajudar a melhorar a qualidade e eficiência na busca de profissionais de Dynamics AX.&lt;/p&gt;

&lt;p&gt;Abraços, &lt;br/&gt;
Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10566692630</link><guid>http://dynamicsaxbr.com/post/10566692630</guid><pubDate>Fri, 23 Sep 2011 17:31:19 -0300</pubDate><category>Diversos</category><category>Jobs</category><dc:creator>refactoringever</dc:creator></item><item><title>[OFF-TOPIC] Dois anos de "Dynamics AX Brasil"</title><description>&lt;p&gt;Nem parece mas já foram dois anos escrevendo artigos e ajudando a divulgar o Dynamics AX no Brasil, muitas coisas aconteceram e estou muito satisfeito com o resultado.&lt;/p&gt;

&lt;p&gt;Em comemoração, lancei este novo layout (mais limpo) onde melhorei a distribuição do conteúdo para facilitar a leitura.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lru5n3xyqp1qlrw3y.png" alt="Novo layout"/&gt;&lt;/p&gt;

&lt;p&gt;Qualquer sugestão ou reclamação em relação ao conteúdo do blog ou ao novo layout, entre em contato comigo! Aguardo seu feedback!&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10452461664</link><guid>http://dynamicsaxbr.com/post/10452461664</guid><pubDate>Tue, 20 Sep 2011 17:43:40 -0300</pubDate><category>Diversos</category><dc:creator>refactoringever</dc:creator></item><item><title>Segue uma visão geral da arquitetura do DAX 2012 e das...</title><description>&lt;img src="http://30.media.tumblr.com/tumblr_lrms45IbZP1r3rnjko1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Segue uma visão geral da arquitetura do DAX 2012 e das tecnologias suportadas por ele!
Na minha opinião o MorphX estar ligado diretamente ao Visual Studio foi uma das melhores mudanças!&lt;/p&gt;

&lt;p&gt;Baixem o DAX 2012 no &lt;a href="https://partner.microsoft.com/brasil/40014020" target="_blank"&gt;Partner Source&lt;/a&gt; e aproveitem!&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10284737361</link><guid>http://dynamicsaxbr.com/post/10284737361</guid><pubDate>Fri, 16 Sep 2011 16:43:00 -0300</pubDate><category>Arquitetura</category><category>DAX 2012</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>[DYNAMICS AX 2012] Model Repository</title><description>&lt;p&gt;Bom dia pessoal!&lt;/p&gt;

&lt;p&gt;Depois de quase um ano sem posts consegui um tempo para compartilhar um pouco de conhecimento com vocês!
Como todos devem saber o AX 2012 está na área, muitos já devem ter brincado com ele, mas tenho certeza que a maioria ainda nem sabe como é a nova interface, assim, hoje darei início a uma série de posts falando das novidades e novas funcionalidades no desenvolvimento do AX 2012.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Oque é o Model Repository ?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Quando o AX era instalado nas últimas versões, eram criados arquivos compartilhados com extensões *AOD e *ALD, respectivamente, os objetos e as labels. Na nova versão estes objetos estarão no Model Repository:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;O conteúdo dos arquivos *AOD agora são armazenados no Model Store&lt;/li&gt;
&lt;li&gt;Os arquivos *ALD são armazenados no Model Store&lt;/li&gt;
&lt;li&gt;O Model Store é armazenado no SQL&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Muitos agora devem estar se perguntando como funcionará e quais benefícios trará para o desenvolvimento.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Vantagens&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Poderemos utilizar todas as vantagens que o SQL nos trás para manusear as camadas&lt;/li&gt;
&lt;li&gt;As labes estarão integradas com o Data Model&lt;/li&gt;
&lt;li&gt;Maior facilidade no rastreamento e capacidade de realizar diagnósticos&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Como funciona?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Como já havia dito anteriormente nas versões anteriores o AX buscava todas as suas dependências nos arquivos, no AX 2012 ele passará a buscar diretamente do SQL. Assim como nos arquivos teremos várias Models ou seja elas são únicas por camadas. Exemplo: A VARModel será responsável pelos objetos da camada VAR.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Gerenciamento das Models&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;O AX 2012 nos disponibiliza as seguintes ferramentas para que possamos trabalhar com os Models:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;AXUtil.exe command-line utility: Esta é uma ferramenta de linha de comando criada especificamente para trabalhar com o AX 2012, e nela poderemos criar, exportar, importar, instalar e desinstalar as Models.&lt;/li&gt;
&lt;li&gt;Programmatically: Os desenvolvedores terão uma DLL para trabalhar com as Models chamada: axutilib.dll.&lt;/li&gt;
&lt;li&gt;PowerShell cmdlets: Para quem já trabalha e conhece, será disponibilizado comandos para criar, exportar, importar, instalar e desinstalar as Models.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Bom pessoal acho que com isso da para ter uma idéia geral de como será a nova arquitetura de camadas do AX 2012.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10442213991</link><guid>http://dynamicsaxbr.com/post/10442213991</guid><pubDate>Fri, 17 Jun 2011 21:47:00 -0300</pubDate><category>DAX 2012</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>Criando Workflow no Dynamics AX em 3 passos</title><description>&lt;p&gt;Bom dia pessoal,&lt;/p&gt;

&lt;p&gt;Hoje de manhã o Minoru mandou pelo Buzz um link muito bom ensinando a criar workflow no Dynamics AX com apenas alguns clicks  .&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.amer-ax.com/?cpage=1" target="_blank"&gt;Create Dynamics AX Workflows in Three Easy Steps&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Eu ja fiz alguns testes, e esse wizard é para criar o básico mesmo, caso necesite uma validação a mais, precisa de um pouco mais de conhecimento, mas ja é um ótimo começo.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10442163169</link><guid>http://dynamicsaxbr.com/post/10442163169</guid><pubDate>Mon, 26 Jul 2010 21:47:00 -0300</pubDate><category>Workflow</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>Acessando Query e QueryRun de um FormDataSource</title><description>&lt;p&gt;Fala pessoal beleza?&lt;/p&gt;

&lt;p&gt;Vamos lá, não vi exemplos ainda na internet sobre isso e acho que vai ser legal todos saberem.
Todos sabem, que para acessar o datasource do formulário coloca-se um sufixo “_ds” após o nome do datasource.
Para acessar diretamente o objeto “Query” ou o objeto “QueryRun” pode-se usar o sufixo “_q” ou “_qr” conforme o exemplo abaixo:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="c1"&gt;//Start&lt;/span&gt;
&lt;span class="k"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;accessObjects&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="c1"&gt;//Acessando a Query diretamente&lt;/span&gt;
    &lt;span class="n"&gt;InventTable_q&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;dataSourceTable&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tablenum&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;InventTable&lt;/span&gt;&lt;span class="p"&gt;)).&lt;/span&gt;&lt;span class="n"&gt;clearRanges&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="n"&gt;InventTable_q&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;dataSourceTable&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;tablenum&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;InventTable&lt;/span&gt;&lt;span class="p"&gt;)).&lt;/span&gt;&lt;span class="n"&gt;addRange&lt;/span&gt;&lt;span class="p"&gt;(.....);&lt;/span&gt;
 
    &lt;span class="c1"&gt;//Acessando o objeto QueryRun&lt;/span&gt;
    &lt;span class="k"&gt;while&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;InventTable_qr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;next&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
    &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="c1"&gt;//End&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;É isso galera, se alguém tiver algum dúvida só COMETAR.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10442111105</link><guid>http://dynamicsaxbr.com/post/10442111105</guid><pubDate>Tue, 13 Jul 2010 21:47:00 -0300</pubDate><category>X++</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>Microsoft Dynamics AX Design Patterns</title><description>&lt;p&gt;Fala galera, beleza??&lt;/p&gt;

&lt;p&gt;Estava dando uma olhada no MSDN e sem querer encontrei dois links que me chamaram muito a atenção e tenho certeza que muitos irão gostar.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa851876(v=AX.10).aspx" target="_blank"&gt;Microsoft Dynamics AX Design Patterns&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa587365(v=AX.10).aspx" target="_blank"&gt;Microsoft Dynamics AX Class Design Patterns&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Vale a pena dar uma lida.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10441882812</link><guid>http://dynamicsaxbr.com/post/10441882812</guid><pubDate>Sun, 20 Jun 2010 21:47:00 -0300</pubDate><category>Boas Práticas</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>Criando Classes, melhores práticas!</title><description>&lt;p&gt;Boa noite galera,&lt;/p&gt;

&lt;p&gt;Estava fuçando os blogs de AX e encontrei um post bem interessante falando sobre boas práticas ao se criar classes no DAX.&lt;/p&gt;

&lt;p&gt;Não vou traduzir aqui pra vocês porque o post é um pouco extenso, mas tenho certeza que vale muito a pena dar uma olhada:
&lt;a href="http://www.artofcreation.be/2010/05/18/creating-a-class-the-best-practice-way/" target="_blank"&gt;&lt;a href="http://www.artofcreation.be" target="_blank"&gt;www.artofcreation.be&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Por hoje é isso pessoal, desculpem a falta de atualização no blog, em breve colocarei posts bem interessantes.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10441852515</link><guid>http://dynamicsaxbr.com/post/10441852515</guid><pubDate>Mon, 14 Jun 2010 21:47:00 -0300</pubDate><category>Boas Práticas</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>Fala galera beleza??

Estou postando aqui um vídeo do editor do...</title><description>&lt;iframe width="400" height="328" src="http://www.youtube.com/embed/YguOMHfehzA?wmode=transparent&amp;autohide=1&amp;egm=0&amp;hd=1&amp;iv_load_policy=3&amp;modestbranding=1&amp;rel=0&amp;showinfo=0&amp;showsearch=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Fala galera beleza??&lt;/p&gt;

&lt;p&gt;Estou postando aqui um vídeo do editor do AX 6.0, que meu amigo Lázaro me enviou.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10442037069</link><guid>http://dynamicsaxbr.com/post/10442037069</guid><pubDate>Tue, 25 May 2010 21:47:00 -0300</pubDate><category>Diversos</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>[NEWS] Dynamics AX 6.0 &amp; Workflow 4.0</title><description>&lt;p&gt;Fala galera,&lt;/p&gt;

&lt;p&gt;Encontrei um post um tanto interessante falando sobre o Workflow no Dynamics AX 6.0 vale a pena dar uma lida:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://ax4all.blogspot.com/2010/05/dynamics-ax-60-and-wf4.html" target="_blank"&gt;&lt;a href="http://ax4all.blogspot.com/2010/05/dynamics-ax-60-and-wf4.html" target="_blank"&gt;http://ax4all.blogspot.com/2010/05/dynamics-ax-60-and-wf4.html&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10441675474</link><guid>http://dynamicsaxbr.com/post/10441675474</guid><pubDate>Mon, 03 May 2010 21:47:00 -0300</pubDate><category>Diversos</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>Trabalhando com IMAGENS no X++</title><description>&lt;p&gt;Fala pessoal beleza?&lt;/p&gt;

&lt;p&gt;Ontem estava lendo no &lt;a href="http://www.axaptapedia.com/Image_Class" target="_blank"&gt;Axaptapedia&lt;/a&gt; um artigo que falava sobre a classe de imagens.
Tentei fazer os exemplo que estavam disponíveis mas nenhum funcionou direito. Então resolvi criar um que mostra exatamente a funcionalidade da classe IMAGE do dynamics ax.&lt;/p&gt;

&lt;p&gt;Quem tiver interesse, basta baixar o XPO &lt;a href="https://skydrive.live.com/?cid=70a54b1522bb2068&amp;id=70A54B1522BB2068%21234" target="_blank"&gt;aqui&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Os exemplos ficaram bem fáceis de entender, espero que gostem e qualquer dúvida COMENTEM!!!&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10439761026</link><guid>http://dynamicsaxbr.com/post/10439761026</guid><pubDate>Fri, 30 Apr 2010 08:45:00 -0300</pubDate><category>X++</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item><item><title>Vídeos Dynamics AX (Vimeo)</title><description>&lt;a href="http://www.vimeo.com/tag:dynamicsax"&gt;Vídeos Dynamics AX (Vimeo)&lt;/a&gt;: &lt;p&gt;Fala pessoal beleza?&lt;/p&gt;

&lt;p&gt;Segue alguns vídeos que encontrei bem interessantes:&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10439721734</link><guid>http://dynamicsaxbr.com/post/10439721734</guid><pubDate>Fri, 23 Apr 2010 08:45:00 -0300</pubDate><category>DAX 2009</category><category>DAX 2012</category><dc:creator>refactoringever</dc:creator></item><item><title>Exercícios Funcionais (for dummies) – Dynamics AX 2009</title><description>&lt;p&gt;Fala pessoal beleza?&lt;/p&gt;

&lt;p&gt;Estava navegando na net, e achei um site bem interessante!
Um mini-treinamento funcional, isso mesmo, mostra algumas tarefas básicas funcionais (vários módulos), ideais para nós desenvolvedores que muitas vezes deixamos o “funcional” um pouco de lado, mas como todos sabemos não conseguimos viver sem ele!!&lt;/p&gt;

&lt;p&gt;Segue o link:
&lt;a href="http://www.sunriseconsult.com/FunctionalDemos.aspx" target="_blank"&gt;&lt;a href="http://www.sunriseconsult.com/FunctionalDemos.aspx" target="_blank"&gt;http://www.sunriseconsult.com/FunctionalDemos.aspx&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;PS: Ja vou avisando estudar funcional, não é igual X++ (é meio chatinho confesso).&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10439693073</link><guid>http://dynamicsaxbr.com/post/10439693073</guid><pubDate>Mon, 19 Apr 2010 08:45:00 -0300</pubDate><category>Funcional</category><dc:creator>refactoringever</dc:creator></item><item><title>Utilitário de Preenchimento</title><description>&lt;p&gt;Boa tarde pessoal…&lt;/p&gt;

&lt;p&gt;Hoje vou postar aqui sobre uma ferramente muito legal que o Dynamics AX 2009 possui e meu amigo Paulo Sergio me mostrou, que se chama “Utilitário de Preenchimento.”
Agora todo munde deve estar se perguntando oque é isso ou pra que serve isso ?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;O que é?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;É uma ferramenta que o AX 2009 possui para fazer carga na base de dados em massa.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pra que server?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;É bem simples, sabe aqueles “jobs” que todos nós fazemos para preencher um determinado campo com o mesmo valor? Utilizando o utilitário de preenchimento podemos fazer isso com apenas alguns cliques.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Como utilizar?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Para ativar o utilitário é bem simples vá em Administração&gt; Configurações&gt; Sistema&gt; Configuração.
Depois disso procure o módulo Administração e Habilite o checkbox “Utilitário de Preenchmento”.&lt;/p&gt;

&lt;p&gt;Feito isso basta clicar com o botão direito em qualquer campo do AX 2009, selecionar a opção “Utilitário de Preenchimento” e seguir o passo a passo.&lt;/p&gt;

&lt;p&gt;PS: Não vou colocar hoje aqui como funciona pois achei bem simples de utilizar, caso alguém tenha dificuldades em utilizar só postar ou mandar email que coloco um tutorial.&lt;/p&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10439667498</link><guid>http://dynamicsaxbr.com/post/10439667498</guid><pubDate>Sat, 17 Apr 2010 08:45:00 -0300</pubDate><category>Funcional</category><category>Dicas</category><dc:creator>refactoringever</dc:creator></item><item><title>Pegar datasource filtrado em um formulário</title><description>&lt;p&gt;Fala pessoal…&lt;/p&gt;

&lt;p&gt;Vou postar hoje uma dica bem legal que fiquei me debatendo como fazer ontem, e pode ser a dúvida de outros.
É bem simples, mas como falei pode ser a dúvida de outros:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="c1"&gt;//Inicio &lt;dynamicsaxbr&gt;&lt;/span&gt;
&lt;span class="n"&gt;DataSource_ds&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;queryRun&lt;/span&gt;&lt;span class="p"&gt;().&lt;/span&gt;&lt;span class="n"&gt;query&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="c1"&gt;//Fim&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Com issso você pode instânciar um objeto QueryRun e fazer o loop nos resultados, assim:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="c1"&gt;//Start&lt;/span&gt;
&lt;span class="n"&gt;QueryRun&lt;/span&gt;    &lt;span class="n"&gt;queryRun&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;queryRun&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;QueryRun&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;Query&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;InventTable_ds&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;queryRun&lt;/span&gt;&lt;span class="p"&gt;().&lt;/span&gt;&lt;span class="n"&gt;query&lt;/span&gt;&lt;span class="p"&gt;()));&lt;/span&gt;
 
&lt;span class="k"&gt;while&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;queryRun&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;next&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;//Faça&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="c1"&gt;//End&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Abraços,&lt;/p&gt;

&lt;p&gt;Peterson Ferreira&lt;/p&gt;</description><link>http://dynamicsaxbr.com/post/10443734780</link><guid>http://dynamicsaxbr.com/post/10443734780</guid><pubDate>Thu, 15 Apr 2010 21:47:00 -0300</pubDate><category>Dicas</category><category>X++</category><category>Desenvolvimento</category><dc:creator>refactoringever</dc:creator></item></channel></rss>

