[firebase-br] Mudar tamanho campo numérico

Samuel M. Basso samuelbasso em gmail.com
Seg Jul 11 17:54:32 -03 2011


Tenho também o mesmo problema Andre.

A unica forma do type funcionar nesse casó é aumentar também o o tamanho do
campo exemplo NUMERIC(20,4), testa para você ver.

Porém dependendo do tamanho o delphi se perde completamente e até hoje não
consegui resolver, tem simples funções de jogar um campo para o outro e o
delphi arredonda valores mesmo tendo 6 casas decimais.



2011/7/11 andre conrado <acf.andre em gmail.com>

> Olá amigos!
>
> Eu estava para posta esse mesmo assunto, mas antes resolvi pesquisar e
> encontrei esta thread. Mas infelizmente ninguém respondeu ao nosso
> amigo Samuel. Então tomarei a liberdade de humildemente questioná-los.
>
> Estou com FB 2.5 e WINXP.
>
> Tenho algumas tabelas as quais preciso alterar alguns campos de
> NUMERIC(18,2) para NUMERIC(18,4).
>
> Tentei executar o comando:
>
> ALTER TABLE FOLHA ALTER SALARIO TYPE NUMERIC(18,4).
>
> Mas ocorre o erro:
>
>  unsuccessful metadata update
>  New scale specified for column FERIAS must be at most 2.
>
>
> A tabela acima está vazia e o campo não tem nenhuma dependência.
>
> Até agora a única forma que consegui resolver foi 'DROPA' o campo da
> tabela e 'ADD' novamente com a precisão desejada.
>
> O problema que são várias tabelas e vários campos. Alguns estão com
> dependência, mas isso eu posso 'comentar' as SP e efetuar as mudanças.
>
> Alguém pode me ajudar?
>
>
> Em 26/05/11, Eduardo Jedliczka<edujed em gmail.com> escreveu:
> > Este é um problema como o DELPHI mapeia internamente os campos do banco
> de
> > dados, pois o currency tem EXATAMENTE 4 casas decimais.
> >
> > abraço,
> >
> > ==========================
> > Eduardo Jedliczka
> > Apucarana - Pr
> > ==========================
> >
> >
> >
> > Em 26 de maio de 2011 09:33, Samuel M. Basso
> > <samuelbasso em gmail.com>escreveu:
> >
> >> Bom dia.
> >>
> >> Alterando aos poucos os dois numeradores ele aceita. Conforme exemplo
> >> abaixo:
> >>
> >> ALTER TABLE ITEM_ENTRADA ALTER VLR_UNIT TYPE NUMERIC(15,6);
> >>
> >> Porem tentei alterar no sistema os campos com essa nova precisão porem
> ao
> >> compilar todo lugar onde eles estavam sendo usado esta dando erro.
> >>
> >> [Error] UEntrada.pas(1549): Incompatible types: 'Currency' and 'TBcd'
> >> [Error] UEntrada.pas(1549): Incompatible types: 'Float' and 'TBcd'
> >>
> >>
> >> Acredito que ao alterar a precisão ele mudou o tipo de campo, assim onde
> >> estava sendo usado está dando problemas.
> >>
> >>
> >> 2011/5/26 Hugo Jose de Sousa <newprojectsystem em gmail.com>
> >>
> >> > Mas se por acaso você usar o IBexpert é só entrar no campo e editar .
> >> >
> >> > o script fica tipo assim :
> >> >
> >> > update RDB$FIELDS set
> >> > RDB$FIELD_SCALE = -10
> >> > where RDB$FIELD_NAME = 'RDB$2681'
> >> > ______________________________________________
> >> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> >> > http://www.firebase.com.br/fb/artigo.php?id=1107
> >> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >> >
> >>
> >>
> >>
> >> --
> >>
> >>
> >> Atenciosamente,
> >>
> >> *Samuel M. Basso*
> >> Fone: (54) 3462-5522
> >> Cel: (54) 8135-3723
> >> Skype: samuelbasso
> >> E-mail/MSN: samuelbasso em gmail.com
> >> Web site: www.otimizy.com.br
> >> ______________________________________________
> >> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >> Para saber como gerenciar/excluir seu cadastro na lista, use:
> >> http://www.firebase.com.br/fb/artigo.php?id=1107
> >> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >>
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
>
>
> --
> Um Abraço,
> André Conrado.
>
> 055 21 9176-7013 - Claro
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 


Atenciosamente,

*Samuel M. Basso*
Fone: (54) 3462-5522
Cel: (54) 8135-3723
Skype: samuelbasso
Twitter: @samuelbasso
E-mail/MSN: samuelbasso em gmail.com
Web site: www.otimizy.com.br



Mais detalhes sobre a lista de discussão lista