[sqlwin] Falha KERNEL32.DLL com SalTblCopyRows

2000-12-08 Por tôpico Dulio



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

2000-12-08 Por tôpico Ledenilso Monção

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

2000-12-08 Por tôpico Reginaldo





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]