Ao salvar um novo registro, posicionar o ponteiro nele.
Colegas,
Como faço para posicionar o apontador da minha tabela no registro que acabo de inserir.
Exemplificando: Tenho uma tabela com dez produtos e incluo o 11º. Quero que o apontador da tabela, após gravar o registro, aponte para o 11º registro.
Já tentei de várias formas, mas nenhuma foi eficaz.
Obrigado.
Como faço para posicionar o apontador da minha tabela no registro que acabo de inserir.
Exemplificando: Tenho uma tabela com dez produtos e incluo o 11º. Quero que o apontador da tabela, após gravar o registro, aponte para o 11º registro.
Já tentei de várias formas, mas nenhuma foi eficaz.
Obrigado.
Vinciguerra
Curtidas 0
Respostas
Lucky Skywalker
01/12/2003
Se você estiver usando o Insert, crie uma variável (Ex.: var cont_reg:integer). Iguale o registro (cont_reg:=table.Recno;) e após executar o Post crie uma linha table1.Refresh e depois table1.Recno:=cont_reg.
Acho que pode funcionar.
Acho que pode funcionar.
GOSTEI 0
Nigro
01/12/2003
Supondo que você esteja com uma tabela indexada, basta dar um locate nesse registro, usando uma variável que irá armazenar o valor para essa busca, mas creio que de uma forma geral o ponteiro não mudar ao fechar um transição (interbase) .
GOSTEI 0
Lucky Skywalker
01/12/2003
Se você estiver usando trigger->
Tenha uma query para gerar o trigger.
Crie uma variável pública no seu datamódulo chamada no caso de cont_reg:integer;
Na opção OnNewRecord da sua tabela gere o seguinte código:
with dmbasico.Query1 do
try
Open;
dmbasico.<TABLE1CODIGO>.AsInteger := Fields[0].AsInteger;
cont_reg:=dmbasico.TABLE1.RecNo;
finally
Close;
end;
Quando o trigger criar o registro o número dele será aramazenado em cont_reg.
Após, abra sua tabela, dê um Refresh e digite o seguinte:
TABLE1.Recno:=cont_reg;
você terá ponterizado o seu último registro cadastrado.
Tenha uma query para gerar o trigger.
Crie uma variável pública no seu datamódulo chamada no caso de cont_reg:integer;
Na opção OnNewRecord da sua tabela gere o seguinte código:
with dmbasico.Query1 do
try
Open;
dmbasico.<TABLE1CODIGO>.AsInteger := Fields[0].AsInteger;
cont_reg:=dmbasico.TABLE1.RecNo;
finally
Close;
end;
Quando o trigger criar o registro o número dele será aramazenado em cont_reg.
Após, abra sua tabela, dê um Refresh e digite o seguinte:
TABLE1.Recno:=cont_reg;
você terá ponterizado o seu último registro cadastrado.
GOSTEI 0