Array
(
    [0] => stdClass Object
        (
            [Votos_Balanceados] => 1
            [id] => 581479
            [titulo] => Como passar para o Firebird  (retencao   [decimal  5,2])  um texto do maskedit ??
            [dataCadastro] => DateTime Object
                (
                    [date] => 2017-05-17 10:39:03
                    [timezone_type] => 3
                    [timezone] => America/Sao_Paulo
                )

            [isFirstPost] => -1
            [idUsuario] => 328942
            [status] => A
            [isExample] => -1
            [NomeUsuario] => Gutierry Antonio Neto Pereira
            [Login] => gutierrydsn
            [Apelido] => GutierryDSN
            [Foto] => 328942_20160426164420.JPG
            [Conteudo] => troque a "," por "." antes de da o strToFloat.
        )

)

Como passar para o Firebird (retencao [decimal 5,2]) um texto do maskedit ??

Hemerson
   - 17 mai 2017

Tenho um maskedit formatado para percentual (EdtRetencao) >> 2,05
Como gravar isso no firebird, o texto vai mas lá quando chega neste campo, coloquei DECIMAL 5,2 (nao sei se seria o correto esse tipo escolhido para decimal no firebird).. entao lógico dá erro porque o campo no firebird é numerico.
Minha dificuldade é colocar isso no update da query.
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.Add('UPDATE EMPRESAS ');
SQLQuery1.SQL.Add('SET RAZAO = '+quotedstr(EdtRazao.text));
SQLQuery1.SQL.Add(',CODIGO = '+quotedstr(EdtCodigo.text));
SQLQuery1.SQL.Add(',EMAIL = '+quotedstr(Edtemail.text));
SQLQuery1.SQL.Add(',RETENCAO = '+quotedstr(EdtRetencao.text));
Esta ultima linha é o problema... ela tem que ir para o fire numerico e nao texto... mas se eu usar o strToFloat( a instrucao dá erro !)

Post mais votado

Gutierrydsn
   - 17 mai 2017

troque a "," por "." antes de da o strToFloat.

Daniel Araújo
|
MVP
Pontos: 4220
    17 mai 2017

Olá Emerson!

Faz assim:
#Código

SQLQuery1.SQL.Add(',RETENCAO = ' + StringReplace(EdtRetencao.text, ',', '.', [rfReplaceAll]));


Se a resposta foi útil dê um like!

Daniel Araújo
Programador Sagaz

Hemerson
   - 19 mai 2017

Ok! colegas, funcionou... Obrigado