Fazendo um CAST() de INTEGER para VARCHAR

Firebird

21/09/2004

Boa tarde galera,
eis que ocorre o seguinte problema, preciso recuperar um valor [que é sequencial] de uma tabela, incrementá-lo e gravar em outras duas, fiz da seguinte forma:
SELECT NREDUCAO FROM ECFGRDTOTAL WHERE ID_PDV = :sppID_PDV INTO :sppNUMERO_REDUCAO;

Aqui esta a parte que recupero o valor
nReduZ = CAST(sppNUMERO_REDUCAO AS INTEGER); nReduZ = nReduZ + 1;

Transformo em um inteiro e incremento
sppNUMERO_REDUCAO = CAST(nReduZ AS VARCHAR(6));

Preciso transformar novamente em varchar, pois a mascara é ´#´
iCont = 0; WHILE (STRLEN(sppNUMERO_REDUCAO)<6) DO sppNUMERO_REDUCAO = (´0´||sppNUMERO_REDUCAO);

Preenche de zeros a esquerda ate o tamanho d 6 caracteres..

O problema é, usando o valor 3 como exemplo, quando eu transformo em varchar de tamanho 6, ele me retorna 3.0000, mas eu precisaria do valor assim 000003, como procedo para resolver isso?
Vlw!
[]´s


Skaarj

Skaarj

Curtidas 0

Respostas

Afarias

Afarias

21/09/2004

qual o tipo da variável nReduZ ??


T+


GOSTEI 0
Skaarj

Skaarj

21/09/2004

vlw cara
:oops:


GOSTEI 0
Afarias

Afarias

21/09/2004

:wink:



T+


GOSTEI 0
POSTAR