Consulta a banco em insert e update.

Pessoal, Socorro!

Preciso fazer o seguinte e não sei por onde começar. Tenho que fazer o cadastro de pessoas em um banco. Cada pessoa tem a sua ordem de antiguidade. Então, no insert e no update tenho que verificar no banco de dados se existe alguém com aquela antiguidade. Se tiver, faço o insert e preciso incrementar 1 para as pessoas que vêm depois do incluído.

Por exemplo: a antiguidade do insertado é 230. Então, do atual 230 para trás devem ser incrementado 1 na antiguidade.
Se fosse no PHP convencional, daria para desenrolar, mas como estou iniciando no SC, estou meio perdido.

Desde já, agradeço a ajuda dos companheiros.

Marcelo,

Isso você não consegue reselver com o auto increment do banco de dados?

Explica melhor o que quer fazer…

Bom dia Leandro,

Trabalho em um quarte da FAB. Estou fazendo um pequeno sistema para fazer a gestão do pessoal. No militarismo existe a antiguidade do militar. Sempre tem um mais antigo e um mais moderno. Com isso quando chega uma pessoa nova ou sai, a ordem da antiguidade da unidade muda. Quem era 135 pula para 136 e por aí vai.

Já consegui fazer com que o scripcase no evento onAfterInsert faça a inserção dos dados da pessoa e verifique se existe alguém com aquela antiguidade. Agora preciso descobrir como fazer no scripcase para encontrar o total de registros de uma tabela. Usarei esse total em um FOR para fazer um update nas antiguidades. Você sabe como encontrar esse total?

Grato,

No evento onAfterInsert, você vai usar a macro sc_lookup para fazer o select para pegar o valor do último registro.

Crie um CAMPO qualquer e quando você for fazer o insert, seu código deverá ficar mais ou menos assim no onAfterInsert:

sc_lookup(dataset,"SELECT CAMPO FROM TABELA");
{CAMPO} = {dataset[0][0]} + 1;

sc_execute("INSERT INTO tabela (col1,col2,...) VALUES({CAMPO},col2,...)");

Isso deve funcionar para o que vc precisa.