marca para deleção (dbdelete())

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
matrix
Usuário Nível 3
Usuário Nível 3
Mensagens: 131
Registrado em: 06 Jul 2004 08:41
Localização: Paraná
Contato:

marca para deleção (dbdelete())

Mensagem por matrix »

pessaoal,

Uso Clipper 5.2 c/ NTX, estou criando um arquivo temporario na emissão de pedidos, separando os produtos daquele respectivo pedido.......entum quando deleto um registro do pedido, faço a seguinte busca (nPedido+nSeqPro), e como no arquivo temporario tem poucos itens é marcado como deletado, mas no arquivo fixo, que deve ter cerca de 15.000 registros, nao marca, entaum quando entro no pedido, lá está ele novamente..........

O que me dizem"???? é problema com os indices???
"Ter Problemas é Inevitável, ser derrotado por eles é opcional.!!"
Cida
Usuário Nível 1
Usuário Nível 1
Mensagens: 15
Registrado em: 25 Jul 2004 20:39
Localização: São Paulo

Mensagem por Cida »

Bom dia Matrix

Deixa eu ver se entendi seu problema:

Vc tem 2 arquivos um que é temporário e outro fixo, o temporário você marca como deletado e o fixo não marca mesmo você fazendo a busca (nPedido+nSeqPro) ? É isso?

Se for isso vc deve verificar como criou o indice para essa busca:

Como nPedido e nSeqPro são numéricos o indice criado para os campos deve estar da seguinte forma:

str(nPedido,tamanho do campo, 0) + str(nSeqPro, tamanho do campo, 0)

Exemplo:

se o nPedido for numérico de 7 = str(nPedido,7,0) e nSeqPro numérico de 3 = str(nSeqPro,3,0)

Isso você vai fazer quando for criar seus indices.

Depois quando for efetuar a busca não se esqueça de tratar suas variáveis.

Ah verifique também se vc não marcou o registro como deletado antes de fazer a busca no arquivo fixo.

Esse tipo de problema aconteceu comigo., quando indexamos campos numericos sem transformá-los para string se perde na busca, procure sempre criar indices para campos numéricos da forma com que sugeri acima, ok?

Espero ter ajudado.

Um abraço
Avatar do usuário
matrix
Usuário Nível 3
Usuário Nível 3
Mensagens: 131
Registrado em: 06 Jul 2004 08:41
Localização: Paraná
Contato:

Mensagem por matrix »

só tem mais um porem, se o DBF estiver com poucos registros o processo funciona, mas com o decorrer do tempo agora nao marca mais no arquivo fixo, mas no temp como sempre é pequeno ele é marcado.......................
"Ter Problemas é Inevitável, ser derrotado por eles é opcional.!!"
Avatar do usuário
matrix
Usuário Nível 3
Usuário Nível 3
Mensagens: 131
Registrado em: 06 Jul 2004 08:41
Localização: Paraná
Contato:

Mensagem por matrix »

valeu pessoal, tirei uns 300 kg, das costas.................transformei os indices de numerico usando strzero, e solucionado.

Abraços.
"Ter Problemas é Inevitável, ser derrotado por eles é opcional.!!"
Responder