evertonlb Posted December 12, 2015 Report Share Posted December 12, 2015 Boa tarde pessoas!! Estou com um problema muito interessante. Tenho um relatório de "fechamento de caixa" que está meu deixando louco!!! Este relatório de fechamento é um relatório que pega vários dados de vários arquivos ( DBF ).. vê o que foi vendido, o que foi cobrado, as saídas de grana e entradas.. enfim um relatório de fechamento normal, comum... o que esta acontecendo é que este bendito relatório só funciona quando ninguém mais esta no sistema. Se tiver 2 micros executando o meu software o relatório não sai. O micro fica "pensando", "pensando" e não sai nada. Depois de 10 minutos eu clico em qqer lugar e me da a mensagem que o software não responde!!!! Se somente um micro tiver executando o software e mandar sair o relatório demora uns 15 a 20 segundos... tempo que considero aceitável... Mas o engraçado é que é somente este relatório... os outros funciona muito bem... Se eu tirar os relatórios de vendas, recebimentos, crédito e débito ou cancelamentos separadamente.. sai no mesmo segundo, praticamente imediato ao clique no botão, mas este "fechamento" não.. parece que se acha especial, que quer ser diferente dos outros! rsrsrsrs Bom, o relatório é igual aos outros, não mudo nada, só tenho todas as pesquisas com softseek on, pois pego tudo por data! Alguém já passou por isso? Alguém tem alguma dica? Ronaldbuch 1 Quote Link to comment Share on other sites More sharing options...
Ariston Santos Posted December 12, 2015 Report Share Posted December 12, 2015 Já passei por isso antes. No meu caso era em apenas um dos DBFs que estava demorando. Para descobrir isso, fiz algo do tipo: SysRefresh() ; MsgInfo("Ja passei do DBF tal","Ok") Quando descobrir qual o DBF que estava demorando, melhorei o tipo de filtro. Parei de usar SET FILTER TO e passei a usar um filtro de índice temporário, tipo INDEX ON DATA TAG... WHILE( DATA >= DataInicial .AND. DATA <= DataFinal) no DBF que estava demorando. No meu caso, isso resolveu. evertonlb 1 Quote Link to comment Share on other sites More sharing options...
kleyber Posted December 13, 2015 Report Share Posted December 13, 2015 Everton, Crie um DBF temporário com os campos do relatório e jogue o processamento pra dentro dele. Aí é só usar o DBF temporário pra imprimir o teu relatório. Outra coisa a se verificar é como está pegando os dados de cada dbf no teu relatório. Comente todos os DBFs e vá abrindo um a um e vais vendo qual deles gera a lentidão. Só uma idéia. evertonlb 1 Quote Link to comment Share on other sites More sharing options...
evertonlb Posted December 13, 2015 Author Report Share Posted December 13, 2015 Obrigado pelas dicas Ariston e Kleyber.. Vou checar estas aberturas e filtros. A ideia do temporário pode ser uma saída mesmo! Vamos lá.. mãos a obra! Att. Everton Quote Link to comment Share on other sites More sharing options...
evertonlb Posted December 15, 2015 Author Report Share Posted December 15, 2015 Olha.. que coisa.. remendo novo em roupa velha não dá certo mesmo!!! Comecei o relatório do zero, demorei um pouco para acertar as contas e em pouco mais de 2 horas o relatório ficou pronto, inclusive gerando gráficos. Agora não leva 3 segundos para que o relatório seja emitido, e isso que mandei fazer o fechamento em 3 computadores ao mesmo tempo... Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.