Sistema Ordem de Serviço
08/08/2004
0
preciso de uma idéia pra fazer o seguinte, tenho q fazer um cadastro de O.S. só q vai funcionar da seguinte maneira,
O código da O.S. ( chave primária) vai ter 13 dígitos, só q os quatro primeiros dígitos vão ser fixos, por exemplo
0200000000001
0200123625362
e o resto dos 9 dígitos vai ser auto incremente, de 1 em 1, como posso fazer isso, sendo q os 4 números fixos vão ter 2 sequências, sendo uma:
0200
e a outra
0500
Preciso de uma luz pra resolver.
Grato pela atenção.
O código da O.S. ( chave primária) vai ter 13 dígitos, só q os quatro primeiros dígitos vão ser fixos, por exemplo
0200000000001
0200123625362
e o resto dos 9 dígitos vai ser auto incremente, de 1 em 1, como posso fazer isso, sendo q os 4 números fixos vão ter 2 sequências, sendo uma:
0200
e a outra
0500
Preciso de uma luz pra resolver.
Grato pela atenção.
Piassa
Curtir tópico
+ 0
Responder
Posts
09/08/2004
Titanius
Olá,
Podes criar um GENERATOR, chamado GEN_OS.. ele vai guardar os increnmentos da numeracao... já que voce vai usar os primeiros numeros fixos, podemos fazer o seguinte:
Amigo neste código usei o Query do componente MDO, mude a linha de criacao do Query para o componente que você está usando, ou apenas adicione um componente da paleta no Form e pronto... aih nao precisa cria-lo..
Espero ter ajudado,
abracos.
Podes criar um GENERATOR, chamado GEN_OS.. ele vai guardar os increnmentos da numeracao... já que voce vai usar os primeiros numeros fixos, podemos fazer o seguinte:
var Generator: integer; NovoCodigo: string; begin cQuery := TMDOQuery.Create(Application); cQuery.Database := MDODatabase1; with cQuery do begin // pega o valor incrementado no banco e incrementa mais 1 SQL.Add(´select gen_id(GEN_OS, 1) from rdb$database´); Open; // joga o valor em uma variavel Generator := cQuery.Fields[0].AsInteger; // formata a variavel com os 4 primeiros numeros fixos e o // resto com o numero gerado e caso nao seja de 9 posicoes, // preenche o resto com 0 NovoCodigo := 0500 + FormatFloat(´000000000´, Generator); cQuery.Free; end;
Amigo neste código usei o Query do componente MDO, mude a linha de criacao do Query para o componente que você está usando, ou apenas adicione um componente da paleta no Form e pronto... aih nao precisa cria-lo..
Espero ter ajudado,
abracos.
Responder
Clique aqui para fazer login e interagir na Comunidade :)