[sqlwin] Falha KERNEL32.DLL com SalTblCopyRows
Caros colegas, Gostaria da ajuda de vcs para solução do seguinte problema: Possuo uma child table (propriedade discardable NO, max row 32000, e com 11 colunas) que é populada com SalTblPopulate. Percorrendo essa tabela (SalTblFindNextRow) algumas linhas podem ser deletadas(SalTblDeleteRow - TBL_Adjust). Essa tabela está sendo enviada para um qrp mas as linhas deletadas estavam sendo enviadas tbém(???). Para afastar esse problema utilizamos a SalTblCopyRows seguida SalTblReset e uma SalTblPasteRows (na mesma tbl) em que as linhas deletadas não são copiadas/coladas. Testes com dados aleatórios (poucas linhas - 100) a rotina funciona perfeitamente mas agora, com dados reais, essa tabela é populada com aproximadamente 1000 linhas e quando o Centura tenta executar a SalTblCopyRows (debug) apresenta a seguinte mensagem de erro: "CBI15 causou uma falha de página inválida no módulo KERNEL32.DLL em 0137:bff782af ... esvaziamento de pilha: ..." (memória das máquinas: 32MB) Obrigado, Dúlio[EMAIL PROTECTED] /[EMAIL PROTECTED] / [EMAIL PROTECTED]
Re: [sqlwin] Falha KERNEL32.DLL com SalTblCopyRows
dúlio tive este proplema no centura 1.1 , era o tamanho da child table e do frame em que esta estava que não cabia no monitor que eu estava usando, diminui o tamanho da child table e do frame e nào deu mais proplema espero ter ajudado, pois sofri muito com iste erro. ledenilso At 11:36 08/12/2000 -0200, you wrote: Caros colegas, Gostaria da ajuda de vcs para solução do seguinte problema: Possuo uma child table (propriedade discardable NO, max row 32000, e com 11 colunas) que é populada com SalTblPopulate. Percorrendo essa tabela (SalTblFindNextRow) algumas linhas podem ser deletadas(SalTblDeleteRow - TBL_Adjust). Essa tabela está sendo enviada para um qrp mas as linhas deletadas estavam sendo enviadas tbém(???). Para afastar esse problema utilizamos a SalTblCopyRows seguida SalTblReset e uma SalTblPasteRows (na mesma tbl) em que as linhas deletadas não são copiadas/coladas. Testes com dados aleatórios (poucas linhas - 100) a rotina funciona perfeitamente mas agora, com dados reais, essa tabela é populada com aproximadamente 1000 linhas e quando o Centura tenta executar a SalTblCopyRows (debug) apresenta a seguinte mensagem de erro: "CBI15 causou uma falha de página inválida no módulo KERNEL32.DLL em 0137:bff782af ... esvaziamento de pilha: ..." (memória das máquinas: 32MB) Obrigado, Dúlio [EMAIL PROTECTED] / [EMAIL PROTECTED] / [EMAIL PROTECTED] ÝÝÝLista de Centura SQLWindows Administrador : [EMAIL PROTECTED] [ http://www.centuraexplorer.com ] Para sair desta lista mande mensagem para: [EMAIL PROTECTED] sem nada no Subject e com o comando a seguir no corpo da msg: "unsubscribe sqlwin" (sem as aspas) ÝÝÝ
Re: [sqlwin] Falha KERNEL32.DLL com SalTblCopyRows
Dulio, como vc envia as linhas para o relatório ? vc pode fazer isso linha a linha testando o retorno da função SalTblFetchRow(...) exemplo: On SAM_ReportFetchNext Loop nResult = SalTblFetchRow ( hWndTbl, nRow ) Set nRow = nRow + 1 if nResult = TBL_RowFetched Return TRUE else if nResult = TBL_NoMoreRows Return FALSE else if nResult = TBL_RowDeleted observe que o teste nResult = TBL_RowDeleted é dispensavel eu só coloquei para exemplificar. Desta forma vc nao precisa utilizar as funções SalTblCopyRows e SalTblPasteRows. Como o retorno da função SalTblFetchRow só pode ser RowFetched, TBL_NoMoreRows, TBL_RowDeleted o loop so tera efeito para RowDeleted ja que nas outras condiçoes o Return entra em ação.. Espere ter ajudado... Reginaldo Garcia Sadepe Informática www.sadepe.com.br 0xx65 - 624-4574 -Mensagem original-De: Dulio <[EMAIL PROTECTED]>Para: [EMAIL PROTECTED] <[EMAIL PROTECTED]>Data: Sexta-feira, 8 de Dezembro de 2000 11:27Assunto: [sqlwin] Falha KERNEL32.DLL com SalTblCopyRows Caros colegas, Gostaria da ajuda de vcs para solução do seguinte problema: Possuo uma child table (propriedade discardable NO, max row 32000, e com 11 colunas) que é populada com SalTblPopulate. Percorrendo essa tabela (SalTblFindNextRow) algumas linhas podem ser deletadas(SalTblDeleteRow - TBL_Adjust). Essa tabela está sendo enviada para um qrp mas as linhas deletadas estavam sendo enviadas tbém(???). Para afastar esse problema utilizamos a SalTblCopyRows seguida SalTblReset e uma SalTblPasteRows (na mesma tbl) em que as linhas deletadas não são copiadas/coladas. Testes com dados aleatórios (poucas linhas - 100) a rotina funciona perfeitamente mas agora, com dados reais, essa tabela é populada com aproximadamente 1000 linhas e quando o Centura tenta executar a SalTblCopyRows (debug) apresenta a seguinte mensagem de erro: "CBI15 causou uma falha de página inválida no módulo KERNEL32.DLL em 0137:bff782af ... esvaziamento de pilha: ..." (memória das máquinas: 32MB) Obrigado, Dúlio[EMAIL PROTECTED] /[EMAIL PROTECTED] / [EMAIL PROTECTED]