Página 1 de 1

mascarar um dbgrid com mysql

Enviado: 29 Jan 2021 09:05
por pena
bom dia, não estou conseguindo mascarar um campo no dbgrid, isso com mysql, no dbf, sempre funcionou de boa, não sei o motivo se alguem puder me ajudar
uso o seguinte select

Código: Selecionar todos

Select P.Codigo,P.Produto,P.PrecoA,E.Estoque as estoque,E.U_Custo as custo from PRODUTOS AS P left join ESTOQUE AS E ON P.CODIGO = E.CODIGO LIMIT 100
o dbgrid eu monto assim

Código: Selecionar todos

    DEFINE GRID Grid_Produtos
        COL 36
        HEADERS { "Código" , "Descrição" , "Preço" , "Estoque" , "Custo" }
        HEIGHT 375
        JUSTIFY { BROWSE_JTFY_RIGHT , BROWSE_JTFY_LEFT ,  BROWSE_JTFY_RIGHT ,  BROWSE_JTFY_RIGHT,BROWSE_JTFY_RIGHT }
        ONDBLCLICK (FrmConsultaProduto_Grid_Produtos_Ondblclick())
        ROW 11
        SHOWHEADERS TRUE
        VALUE 0
        WIDTH 519
        WIDTHS { 62 , 325 , 90 , 80 , 80 }
    END GRID

Código: Selecionar todos

ADD ITEM {oRow:fieldGet(oRow:FieldPos('Codigo')),oRow:fieldGet( oRow:FieldPos('Produto')),oRow:fieldGet(oRow:FieldPos('Precoa')),oRow:fieldGet(oRow:FieldPos('Estoque')),oRow:fieldGet(oRow:FieldPos('custo'))} TO Grid_Produtos OF FrmConsultaProduto

o que acontece é no campo estoque ele tem 4 casas decimais, e gostaria de tratar ele com 2 casas, ta tentei assim

Código: Selecionar todos

Tran(oRow:FieldPos('Estoque'),"999,999.99")
Tran(oRow:FieldPos('Estoque'),"@e 999,999.99")
Tran(oRow:FieldPos('Estoque'),"@e 999.999,99")
se eu uso o transform ele retorna vazio

mascarar um dbgrid com mysql

Enviado: 03 Mar 2021 20:48
por luiz antonio da silva
Boa Noite Pena !

tente usar columncontrols para informar ao grid o formato de cada campo:

COLUMNCONTROLS { {'TEXTBOX','NUMERIC','$ 999,999.99'} , {'DATEPICKER','DROPDOWN'} , {'COMBOBOX',{'One','Two','Three'}} , { 'SPINNER' , 1 , 20 } , { 'CHECKBOX' , 'Yes' , 'No' } } ;

exemplo na pasta -> C:\hmg.3.4.4\SAMPLES\Controls\Grid\GRID_09

Abraço.
Luiz