Generator(Trigger) x Firebird
Bom dia pessoal,
Espero que vcs possam me ajudar, tenho o seguinte probema, um campo CÓDIGO de minha tabela é fixo com 6(seis) dígitos - varchar
Eu consigo gerar via trigger-generator um novo código, só que ele é Integer.
A pergunta: qual função eu posso utilizar para fazer a transformação deste Integer em varchar com tamanho fixo de 6 preenchendo com zeros à esquerda para completar este lenght.
OBS: esta função tem que ser dentro da própria Trigger, antes de fazer o Post
Abraços,
Merques Xavier
Curtidas 0
Respostas
Marcelo Senaga
26/06/2013
O cast não resolveria?
http://www.firebirdfaq.org/faq362/
http://www.firebirdfaq.org/faq362/
GOSTEI 0
Junior Miranda
26/06/2013
Bom dia!!!
Se você utiliza uma versão igual ou superior a 2.1, poderá utilizar a função LPAD().
Caso utilize uma versão inferior, poderá criar uma função externa(UDF).
Um exemplo básico do uso da função:
Valor de entrada: 2;
LPAD(VALOR DE ENTRADA,TAMANHO,CARACTER USADO A ESQUERDA);
LPAD(2,6,'0');
Retornaria: 000002.
Espero que tenha compreendido! Havendo dúvidas, é só postar...
Se você utiliza uma versão igual ou superior a 2.1, poderá utilizar a função LPAD().
Caso utilize uma versão inferior, poderá criar uma função externa(UDF).
Um exemplo básico do uso da função:
Valor de entrada: 2;
LPAD(VALOR DE ENTRADA,TAMANHO,CARACTER USADO A ESQUERDA);
LPAD(2,6,'0');
Retornaria: 000002.
Espero que tenha compreendido! Havendo dúvidas, é só postar...
GOSTEI 0
Junior Miranda
26/06/2013
Bom dia!!!
Se você utiliza uma versão igual ou superior a 2.1, poderá utilizar a função LPAD().
Caso utilize uma versão inferior, poderá criar uma função externa(UDF).
Um exemplo básico do uso da função:
Valor de entrada: 2;
LPAD(VALOR DE ENTRADA,TAMANHO,CARACTER USADO A ESQUERDA);
LPAD(2,6,'0');
Retornaria: 000002.
Espero que tenha compreendido! Havendo dúvidas, é só postar...
Se você utiliza uma versão igual ou superior a 2.1, poderá utilizar a função LPAD().
Caso utilize uma versão inferior, poderá criar uma função externa(UDF).
Um exemplo básico do uso da função:
Valor de entrada: 2;
LPAD(VALOR DE ENTRADA,TAMANHO,CARACTER USADO A ESQUERDA);
LPAD(2,6,'0');
Retornaria: 000002.
Espero que tenha compreendido! Havendo dúvidas, é só postar...
GOSTEI 0
Merques Xavier
26/06/2013
Valeu Kra, consegui resolver o problema por aqui...
GOSTEI 0