4Each • Exibir tópico - Rowid

Rowid

Duvidas sobre EMS 2, EMS 5 e HCM

Rowid

Mensagempor Will em 27 Jul 2010, 12:00

Olá pessoal, tenho um programa que me fornece o valor de um rowid, gostaria de saber se a partir deste valor tem como descobrir de qual tabela o mesmo se refere?
Will
Usuário Analista
Usuário Analista
 
Mensagens: 186
Registro: 24 Ago 2009, 09:26

Re: Rowid

Mensagempor kirchner em 27 Jul 2010, 12:25

Will,

Isto não é sempre possível. Não existe relação 1 <-> 1 entre tabela e rowid.
O mesmo valor de rowid pode existir em tabelas diferentes.

Se todas as tabelas estiverem na mesma área, e o registro não foi "movido", é possível identificar. Pensei em 2 formas:

- você abre o banco na mão, localiza o bloco e o registro na mão, e pega o número da tabela que está contido no cabeçalho do registro;

- ou, faz algo assim para cada tabela:
Código: Selecionar todos
FOR EACH <tabela> WHERE ROWID(<tabela>) = <meu rowid>:
    DISP <tabela>.
END.


A tabela que mostrar alguma coisa é a que você procura.
Abraço,
Marcos
kirchner
Suporte
Suporte
 
Mensagens: 227
Registro: 24 Fev 2010, 11:06

Re: Rowid

Mensagempor Will em 27 Jul 2010, 14:19

cara na verdade consegui resolver meu problema, no programa ex0115b.p ele passa por parâmetro o rowid da tabela ped-ent para a rotina de carga dos itens. Isto segundo documentação da datasul, mas verifiqueique a tabela em questão é a proces.embal-volum.

Vlwwwwww
Will
Usuário Analista
Usuário Analista
 
Mensagens: 186
Registro: 24 Ago 2009, 09:26


Voltar para EMS 2 , 5 e HCM

Quem está online

Usuários navegando neste fórum: CommonCrawl [Bot] e 0 visitantes