![]() |
#1 |
Участник
|
Dynamics AXBR: Performance em formulários
Источник: http://feedproxy.google.com/~r/daxbr/~3/xXKzU3SJbKo/
============== Caros, Estou em um projeto onde existem diversas filiais e os funcionários da matriz fazem tudo por uma determinada empresa, ou seja, usamos muitos formulários com o CrossCompany habilitado, também com métodos display e etc… tudo que torna um formulário demorado! Tendo em vista este problema, comecei uma saga para tentar melhorar a performance e logo no inicio eu percebi que se eu limitasse o tamanho do grid exibido, o formulário melhorava drasticamente sua performance, ou seja, ao invés de deixar o grid com tamanho Automático, eu coloquei 350px e o que antes levava quase 15 segundos para abrir, passou a abrir em 9 segundos e as vezes 10, a melhoria foi notada muito facilmente! Legal, até ai já tinha melhorado bastante, mas foi o suficiente para ver que o problema era em relação a “renderização” dos grids, e sendo assim, era ali que devia trabalhar! Depois disso, estudando o comportamento das Grids, eu vi o método autoSizeColumns, que quando false, trazia uma performance melhor ainda, ao formulário que levava 15 segundos, passou a levar 4 ou 5 para abrir! Logo em seguida, alguns usuários passaram a reclamar que quando tentavam abrir o formulário, o ax estava fechando, e percebi que devido as diferenças de instâncias (versão do ax e também do client) era gerado uma exceção, foi então que adicionei o código para verificar se o método estava implementado. Em resumo, o que deve ser feito: Formulário -> Grid -> Propriedade AutoDeclaration = yes; Formulário -> Método init: X++: public void init() { ; super(); //PICHLER - improve performance - BEGIN if ( new SysDictClass(classNum(FormGridControl)).hasObjectMethod(identifierStr(autoSizeColumns)) ) { OverviewGrid.autoSizeColumns(false); } //PICHLER - improve performance - END } Abraço, Pichler Источник: http://feedproxy.google.com/~r/daxbr/~3/xXKzU3SJbKo/
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору. Последний раз редактировалось Poleax; 10.05.2011 в 09:35. |
|
Теги |
syssetupformrun |
|
|