Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Carcleo

[Resolvido] Onde estara meu erro?

Recommended Posts

Olá pessoal.

Ai vai mais um probleminha com impressão com print Document.

 

Bom, esta é o BeginPrint:

Acontece que estou fazendo um wile no MySqlDataReader para listar os ítens do pedido.

Só que quando vou listar valores com vírgula tipo dinheiro ou peso, o wile (sei la se é ele. Pelo menos acho que é!), tira a virgula e arredonda o valor.

Tipo:

 

leitor("valorunitario") = deveria retornar 2,36 e esta retornando 2 puro (e arredondando)
leitor("peso") = deveria retornar 2,75 e esta retornando 3 puro (e arredondando)

 

Onde estara meu erro?

 

Private Sub Begin_Print(ByVal sender As Object, ByVal e As Printing.PrintEventArgs)
If codigoped.Text <> "" Then
ccodigo = codigoped.Text
End If
Dim strConnString As String = "server=localhost;userid=root;password=;database=Vendas"
conexao = New MySqlConnection(strConnString)
conexao.Open()
'pegando o numero total de linhas
Dim PrintStringdetalhespedidoscount As String = "Select Count(*) from detalhespedidos where pedidoID= " & ccodigo & " order by produtoID"
Dim cmdcount As New MySqlCommand(PrintStringdetalhespedidoscount, conexao)
totalLinhas = CInt(cmdcount.ExecuteScalar())
Dim PrintStringdetalhespedidos As String = "Select * from detalhespedidos where pedidoID= " & ccodigo & " order by produtoID"
Dim cmd As New MySqlCommand(PrintStringdetalhespedidos, conexao)
leitor = cmd.ExecuteReader()
PaginaAtual = 1
End Sub

 

Aqui, faço a leitura dos dados:

 

While (LinhaAtual < LinhasPorPagina AndAlso leitor.Read())
produtoID = leitor("produtoID")
unidade = leitor("unidade")
descricao = leitor("descricao")
preco = leitor("preco")
'preco = String.Format("{0:#.#0}", leitor("preco").ToString)  'tentativa que fiz que não deu certo
quantidade = leitor("quantidade")
subtotal =  leitor("subtotal")
'subtotal = String.Format("{0:#.#0}", leitor("subtotal").ToString)  'tentativa que fiz que não deu certo
PosicaoDaLinha = MargemSuperior + (LinhaAtual * FonteNormal.GetHeight(e.Graphics)) + 100
e.Graphics.DrawString(produtoID, FonteNormal, Brushes.Black, MargemEsquerda, PosicaoDaLinha, New StringFormat())
e.Graphics.DrawString(unidade, FonteNormal, Brushes.Black, MargemEsquerda + 50, PosicaoDaLinha, New StringFormat())
e.Graphics.DrawString(descricao, FonteNormal, Brushes.Black, MargemEsquerda + 100, PosicaoDaLinha, New StringFormat())
e.Graphics.DrawString(preco, FonteNormal, Brushes.Black, MargemEsquerda + 350, PosicaoDaLinha, New StringFormat())
e.Graphics.DrawString(quantidade, FonteNormal, Brushes.Black, MargemEsquerda + 450, PosicaoDaLinha, New StringFormat())
e.Graphics.DrawString(subtotal, FonteNormal, Brushes.Black, MargemEsquerda + 550, PosicaoDaLinha, New StringFormat())
LinhaAtual += 1
End While

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.