Liberação: 31/07/2026
#Suprimentos
Objetivo da mudança:
A usuária relatou que a importação de uma planilha com 7.080 itens levava aproximadamente 3 horas e 49 minutos apenas na penúltima etapa do processo, tornando o recurso de importação em massa inviável na prática. Foi identificada a causa principal do gargalo na função
fAtualizaCampos, localizada na unituntImportCadProdutoConfirma, onde o sistema abria e fechava uma transação no banco de dados individualmente para cada produto importado, gerando 7.080 operações de gravação forçada em disco. Também foram identificados pontos de lentidão na procedurepGravaLogAlteracaoCPR, que consultava o banco para cada campo alterado a fim de obter um número sequencial de log, e na funçãofAtualizaCamposAux, que consultava o banco individualmente para cada produto a fim de verificar a existência de registro auxiliar. A alteração modificou a forma de obtenção dos autoincrementos para busca em lote. Conforme o desenvolvedor, o maior ponto de lentidão restante é a gravação dos logs, com estimativa de que a importação de 47 mil itens demore em torno de aproximadamente 4 horas.Rotinas / Telas:
Útil > Operações Referentes a Produtos > Importação de Cadastro de Produtos , tela : Importação de Cadastro de Produtos (frmImportaCadProdutosTela) ;
Instruções sobre o que configurar:
Não há menção a configurações específicas ou CFG criada para esta alteração.
Instruções sobre como utilizar:
- Acesse a rotina Útil > Operações Referentes a Produtos > Importação de Cadastro de Produtos , tela : Importação de Cadastro de Produtos (frmImportaCadProdutosTela) ;
- Selecione a planilha a ser importada;
- O processo de importação passará a obter os autoincrementos em lote, reduzindo o tempo de execução da penúltima etapa;
- Para volumes elevados (ex.: 47 mil itens), o tempo estimado de processamento é de aproximadamente 4 horas, sendo a gravação de logs o principal ponto restante de lentidão.