PROBLEMAS COM RESULTADO !

USUARIO.EXCLUIDOS 11/04/2004 11:50:16
#19902
Estou com problema estranho usando um MSFlexGrid com o nome de "grade"

o erro ocorre no evento click do botão adicionarProduto !!!

NumeroLinhas = NumeroLinhas + 1
grade.Rows = NumeroLinhas + 1

grade.Row = NumeroLinhas

' formato a grade
With frmVendas.grade

.Row = 0

.Col = 0
.Text = "Código"
.ColWidth(0) = 1100

.Col = 1
.Text = "Descrição"
.ColWidth(1) = 3500

.Col = 2
.Text = "Qtde."
.ColWidth(2) = 570

.Col = 3
.Text = "Un"
.ColWidth(3) = 450

.Col = 4
.Text = "Unitário"
.ColWidth(4) = 1200

.Col = 5
.Text = "Total Item"
.ColWidth(5) = 1200

If UsaDesconto = True Then

.Col = 6
.Text = "Desc%"
End If
End With

' adiciono dados a grade

frmVendas.grade.Col = 0
frmVendas.grade.Row = NumeroLinhas
frmVendas.grade.ColAlignment(1) = vbAlignRight
frmVendas.grade.Text = Trim(txtCodigo)
frmVendas.grade.Col = 1
frmVendas.grade.Text = Trim(TBPecas("Descricao"))
frmVendas.grade.Col = 2
frmVendas.grade.Text = Trim(Format(txtQuantidade, "00000"))
frmVendas.grade.Col = 3
frmVendas.grade.Text = rsTempUn("Un")
frmVendas.grade.Col = 4
frmVendas.grade.Text = TrimFormatTBPecas"ValorConsumidor"), "R$#,###0.00;(R$- #,###0.00)"))
frmVendas.grade.Col = 5
frmVendas.grade.Text = Trim(Format(txtTotal, "R$#,###0.00;(R$- #,###0.00)"))

' totalizo um label com o total do pedido pagando o valor da coluna 5 da grade

frmVendas.lblTotal = CDbl(frmVendas.lblTotal) + CDbl(frmVendas.grade.Text)
frmVendas.lblTotal = Format(frmVendas.lblTotal, "R$#,##0.00;(R$-#,##0.00)")

Funciona perfeito na minha maquina que roda o XP mas no cliente com Millenium não !!!! o que pode estar acontecendo ???

desde ja agradeço.
USUARIO.EXCLUIDOS 11/04/2004 11:55:17
#19904
Resposta escolhida
Pode estar relacionado não á versão do sistema operacional, mas á formatação numérica adotada pelo computador. Qual ou quais os erros ou problemas?
USUARIO.EXCLUIDOS 11/04/2004 12:18:27
#19907
A parte do código que faz a atualização do cálculo é
...
frmVendas.lblTotal = CDbl(frmVendas.lblTotal) + CDbl(frmVendas.grade.Text)
frmVendas.lblTotal = Format(frmVendas.lblTotal, "R$#,##0.00;(R$-#,##0.00)")
...

Suponho que você não teria como examinar por código quais valores estão contidos em frmVendas.grade.Text no momento da atualização. Mas pode estar ocorrendo de o frmVendas.grade.Text em questão não ser, na máquina cliente, por algum motivo ainda desconhecido, aquele que contém os valores esperados.
Por se tratar de um MSFlexGrid, você poderia (ou antes, deveria) trabalhar o conteúdo das células por meio de seu endereçamento completo. Assim, por exemplo, para lançar o valor de um TextBox em dada posição da grade, digamos, linha 5 coluna 5, faria:

...
frmVendas.grade.TextMatrix(5,5) = TextX.Text
...

Da mesma forma, para lançar um total em um label, referenciaria a linha e coluna com o valor requisitado.

...
frmVendas.lblTotal = CDbl(frmVendas.lblTotal) + CDbl(frmVendas.grade.TextMatrix(12,10)) ' Por exemplo
...

Tente e comente o resultado.
Tópico encerrado , respostas não são mais permitidas