Eder Postado Outubro 30, 2007 Denunciar Share Postado Outubro 30, 2007 Ola...pessoal.Eu tou usando no OnPrint do QrExpr1 este codigo:LitrosBomba:=strtofloat(value); no QrExpr2 este codigo: LitrosAbaste:=strtofloat(value); e em outro Qrexpr o total que ficaria assim: Value:='Saldo do Período: '+floattostr(LitrosBomba - LitrosAbaste)+' Litros';Estas variaveis acima são Globais.até aqui tudo bem..funciona...o problema é que eu gostaria de formatar estes resultados que vão aparecendo nestes Qrexpr pois estão saindo tipo assim: 999555,21eu gostaria de formatar assim: 999.555,21 (com o ponto).até coloquei na mascara dos qrexpr...mas ai da erro quando são acionadas as variaveis..Como eu resolveria este problema??Grato Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Outubro 30, 2007 Denunciar Share Postado Outubro 30, 2007 Oi Eder ... o problema se resolve assim:Value:='Saldo do Período: '+format(%n,[LitrosBomba - LitrosAbaste]+' Litros';abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Eder Postado Outubro 31, 2007 Autor Denunciar Share Postado Outubro 31, 2007 ola JonasValue:='Saldo do Período: '+format(%n,[LitrosBomba - LitrosAbaste]+' Litros';Carinha ta dando erro!!!!naquele parenteses que você colocou!!Grato Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Outubro 31, 2007 Denunciar Share Postado Outubro 31, 2007 faltou fechar o parentesesValue:='Saldo do Período: '+format(%n,[LitrosBomba - LitrosAbaste])+' Litros'; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Outubro 31, 2007 Denunciar Share Postado Outubro 31, 2007 Eu tou usando no OnPrint do QrExpr1 este codigo:LitrosBomba:=strtofloat(value); no QrExpr2 este codigo: LitrosAbaste:=strtofloat(value); e em outro Qrexpr o total que ficaria assim: Value:='Saldo do Período: '+floattostr(LitrosBomba - LitrosAbaste)+' Litros';Estas variaveis acima são Globais.Eder, a propriedade Mask serve apenas para formatar a saída quando o "valor" (resultado) do seu QRExpr é apenas numérico.Caso você tenha utilizado estas variáveis globais apenas para montar o resultado no seu último QRExpr (pela contrução, não parece uma totalização), então acho que uma sugestão mais "limpa" poderia ser você utilizar a propriedade Value dos expressions para calcular o valor total. Assim, você não interceptaria os eventos para os dois primeiros expressions, apenas o último. Exemplificando:QRExpr.Value.dblResult := QRExpr1.Value.dblResult - QRExpr2.Value.dblResult;isto poderia ser realizado no BeforePrint da banda onde estes expressions estão; Em teoria, funciona corretamente. Teste. ;)mas como você pretende colocar o resultado e uma frase, o exemplo do Jhonas (para esta parte) deve funcionar parcialmente pois falta informar a precisão (casas decimais):Value := 'Saldo do Período: '+format(%.2n,[LitrosBomba - LitrosAbaste])+' Litros';Juntando isto ao que coloquei antes,Value := 'Saldo do Período: '+format(%.2n,[QRExpr1.Value.dblResult - QRExpr2.Value.dblResult])+' Litros';Se você precisar mostrar o separador de milhar, então vai ter que fazer uso da função FormatFloat.A título de sugestão, para este último resultado um QRLabel já serviria, não há necessidade de ser um QRExpr (isso é opcional)Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Eder Postado Outubro 31, 2007 Autor Denunciar Share Postado Outubro 31, 2007 Ola.Eder, a propriedade Mask serve apenas para formatar a saída quando o "valor" (resultado) do seu QRExpr é apenas numérico.R.: okCaso você tenha utilizado estas variáveis globais apenas para montar o resultado no seu último QRExpr (pela contrução, não parece uma totalização), então acho que uma sugestão mais "limpa" poderia ser você utilizar a propriedade Value dos expressions para calcular o valor total. Assim, você não interceptaria os eventos para os dois primeiros expressions, apenas o último. Exemplificando:QRExpr.Value.dblResult := QRExpr1.Value.dblResult - QRExpr2.Value.dblResult;isto poderia ser realizado no BeforePrint da banda onde estes expressions estão; Em teoria, funciona corretamente. Teste.R.: Carinha deu erro [Error] Bomba_Res.pas(168): Left side cannot be assigned toMicheus....o relatorio esta assim:tem um qrexpr2 numa banda que recebe um valortem outro QrExpr24 que esta numa OUTRA band que recebe outro valorentão eu teria que colocar o resultado num QrLabel ou QrExpr que me mostre na teoria assim:QrLabelResultado.caption:=QrExpr2 - QxExpr24e o formato teria que ser assim: 1.252.352,20Valeu muito grato Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Outubro 31, 2007 Denunciar Share Postado Outubro 31, 2007 QRExpr.Value.dblResult := QRExpr1.Value.dblResult - QRExpr2.Value.dblResult;isto poderia ser realizado no BeforePrint da banda onde estes expressions estão; Em teoria, funciona corretamente. Teste.R.: Carinha deu erro [Error] Bomba_Res.pas(168): Left side cannot be assigned topor isso que eu disse "teoricamente" e "teste". :rolleyes: Isso significa que não é possível atribuir algum valor a QRExpr.Value.dblResult.então eu teria que colocar o resultado num QrLabel ou QrExpr que me mostre na teoria assim:QrLabelResultado.caption:=QrExpr2 - QxExpr24e o formato teria que ser assim: 1.252.352,20que era a outra opção que falei: QRLabel + FormatFloat.Com a possibilidade de utilizar o QRLabel para mostrar, você poderia tentar fazer:var Valor :Double; begin QrLabelResultado.caption := FormatFloat('Saldo do Período: #,###,##0.00 litros', QRExpr1.Value.dblResult - QRExpr2.Value.dblResult); end;quanto mais pontos de milhar precisar a frente, basta acrescentar "###,". Com esta formatação, a única coisa certa é que você terá 1 casa antes da vírgula e 2 após dela (são ref. aos zeros que você vê), o resto será ajustado conforme necessário.por exemplo: 1050,5 formatado assim: FormatFloat('Saldo do Período: #,###,##0.00 litros', 1050.5);resulta em: "Saldo do Período: 1.050,50 litros"Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Eder Postado Novembro 1, 2007 Autor Denunciar Share Postado Novembro 1, 2007 (editado) Opa...Deu Certo..Valeu a ajuda e explicaçãoGratot+ :D Editado Novembro 1, 2007 por Eder Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Eder
Ola...pessoal.
Eu tou usando no OnPrint do QrExpr1 este codigo:
no QrExpr2 este codigo: e em outro Qrexpr o total que ficaria assim:Estas variaveis acima são Globais.
até aqui tudo bem..funciona...
o problema é que eu gostaria de formatar estes resultados que vão aparecendo nestes Qrexpr pois estão saindo tipo assim: 999555,21
eu gostaria de formatar assim: 999.555,21 (com o ponto).
até coloquei na mascara dos qrexpr...mas ai da erro quando são acionadas as variaveis..
Como eu resolveria este problema??
Grato
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.