Jump to content

Problemas no relatório


Ghost

Recommended Posts

Boa Noite venho aqui pedir ajuda a situação é seguinte tenho um relatório de vendas e eu queria fazer conforme a quantidade o preço aumentasse e quando vou por dois registos no relatório mas quando ponho só um registo apareçe um erro esquisito que é o seguinte

Conversion from string "" to type 'Double' is not valid.

O que é isto alguem me pode ajudar ou dar-me algumas dicas por favor 😕

Ghost

Diogo Fernandes

Link to comment
Share on other sites

Este erro está acontecendo porque em algum ponto você está entrando um string vazio como fonte para conversão em um Double. Sem ver o código é difícil saber onde isto está acontecendo, porém geralmente o Visual Studio pára na linha onde este tipo de erro occorre e mostra em destaque.

Fernando Lage Bastos - MCP/MCTS/MCPD

Link to comment
Share on other sites

       Dim LinhasPagina As Single = 0
	Dim PosicaoLinha As Single = 0
	Dim LinhaActual As Integer = 0

	Dim MargemEsquerda As Single = e.MarginBounds.Left
	Dim MargemSuperior As Single = e.MarginBounds.Top + 100
	Dim MargemDireita As Single = e.MarginBounds.Right + 40
	Dim MargemInferior As Single = e.MarginBounds.Bottom
	Dim CanetaImpressora As New Pen(Color.Black, 1)

	Dim FonteNegrito As New Font("Calibri", 10, FontStyle.Bold)
	Dim FonteTitulo As New Font("Calibri", 16, FontStyle.Bold)
	Dim FonteSubTitulo As New Font("Calibri", 13, FontStyle.Bold)
	Dim FonteRodape As New Font("Calibri", 9)
	Dim FonteNormal As New Font("Calibri", 10)

	e.Graphics.DrawImage(Image.FromFile(Application.StartupPath & "\Impressão.png"), 60, 10)
	e.Graphics.DrawLine(CanetaImpressora, MargemEsquerda + 400, 150, MargemDireita, 150)

	e.Graphics.DrawString("Rua da Republica - Figueira da Foz ", FonteNormal, Brushes.Black, MargemEsquerda - 30, 145, New StringFormat())
	e.Graphics.DrawString("3090 - 700 Figueira da Foz", FonteNormal, Brushes.Black, MargemEsquerda - 30, 170, New StringFormat())
	e.Graphics.DrawString("Contribuinte nº: 982288321", FonteNormal, Brushes.Black, MargemEsquerda - 30, 195, New StringFormat())

	e.Graphics.DrawString("Venda a Dinheiro", FonteSubTitulo, Brushes.Black, MargemEsquerda + 465, 120, New StringFormat())
	e.Graphics.DrawString("Venda nº", FonteNormal, Brushes.Black, MargemEsquerda + 405, 155, New StringFormat())
	e.Graphics.DrawString("Data", FonteNormal, Brushes.Black, MargemEsquerda + 490, 155, New StringFormat())
	e.Graphics.DrawString("Modo Pagamento", FonteNormal, Brushes.Black, MargemEsquerda + 560, 155, New StringFormat())
	e.Graphics.DrawLine(CanetaImpressora, MargemEsquerda + 400, 150, MargemDireita, 150)
	e.Graphics.DrawString(txtNVenda.Text, FonteNormal, Brushes.Black, 525, 175)
	e.Graphics.DrawString(dtpdataVendas.Text, FonteNormal, Brushes.Black, 575, 175)
	e.Graphics.DrawString(cboPagamento.Text, FonteNormal, Brushes.Black, 680, 175)
	e.Graphics.DrawLine(CanetaImpressora, MargemEsquerda + 400, 200, MargemDireita, 200)

	e.Graphics.DrawString("Exmo(s) Senhor(a):", FonteNormal, Brushes.Black, MargemEsquerda + 400, 220, New StringFormat())
	e.Graphics.DrawString(txtNome.Text, FonteNormal, Brushes.Black, 500, 240)
	e.Graphics.DrawString(txtMorada.Text, FonteNormal, Brushes.Black, 500, 265)
	e.Graphics.DrawString(txtCodPostal.Text, FonteNormal, Brushes.Black, 500, 290)


	e.Graphics.DrawLine(Pens.Black, MargemEsquerda, 395, 775, 395)
	e.Graphics.DrawRectangle(Pens.Black, MargemEsquerda, 370, 677, 400)
	e.Graphics.DrawRectangle(Pens.Black, MargemEsquerda, 370, 160, 400)
	e.Graphics.DrawRectangle(Pens.Black, MargemEsquerda, 370, 365, 400)
	e.Graphics.DrawRectangle(Pens.Black, MargemEsquerda, 370, 545, 400)

	e.Graphics.DrawString("Quantidade", FonteNegrito, Brushes.Black, MargemEsquerda + 45, 375)
	e.Graphics.DrawString("Descrição", FonteNegrito, Brushes.Black, 335, 375)
	e.Graphics.DrawString("Preço Unitário", FonteNegrito, Brushes.Black, 515, 375)
	e.Graphics.DrawString("Valor Líquido", FonteNegrito, Brushes.Black, 675, 375)
	e.Graphics.DrawRectangle(Pens.Black, 570, 800, 210, 102)
	e.Graphics.DrawString("Preço Base:", FonteNegrito, Brushes.Black, 585, 810)
	e.Graphics.DrawString("IVA:", FonteNegrito, Brushes.Black, 585, 840)
	e.Graphics.DrawString("Total:", FonteNegrito, Brushes.Black, 585, 870)

	Dim AlinnharDireita As New StringFormat
	AlinnharDireita.FormatFlags = StringFormatFlags.DirectionRightToLeft
	e.Graphics.DrawString(txtTotal.Text, FonteNormal, Brushes.Black, 765, 870, AlinnharDireita)
	e.Graphics.DrawString(txtPrecocIva.Text, FonteNormal, Brushes.Black, 765, 840, AlinnharDireita)
	e.Graphics.DrawString(txtPrecosIva.Text, FonteNormal, Brushes.Black, 765, 810, AlinnharDireita)
	e.Graphics.DrawString("Processado por com****dor", FonteNormal, Brushes.Black, MargemEsquerda, 1000)
	e.Graphics.DrawString("Obrigado pela sua visita", FonteSubTitulo, Brushes.Black, 540, 1000)
	LinhasPagina = CInt(e.MarginBounds.Height / FonteNormal.GetHeight(e.Graphics) - 9)

	While (LinhaActual < LinhasPagina And RegistoAtual < dgvVendas.Rows.Count + 1)
		e.Graphics.DrawString(txtQuantidade1.Text, FonteNormal, Brushes.Black, 160, 405)
		e.Graphics.DrawString(txtNomeVenda1.Text, FonteNormal, Brushes.Black, 310, 405)
		e.Graphics.DrawString(txtPreco1.Text, FonteNormal, Brushes.Black, 515, 405)
		e.Graphics.DrawString(FormatCurrency(txtPrecoTotal1.Text, 2, TriState.UseDefault), FonteNormal, Brushes.Black, 680, 405)

		e.Graphics.DrawString(txtQuantidade2.Text, FonteNormal, Brushes.Black, 160, 420)
		e.Graphics.DrawString(txtNomeVenda2.Text, FonteNormal, Brushes.Black, 300, 420)
		e.Graphics.DrawString(txtPreco2.Text, FonteNormal, Brushes.Black, 515, 420)
		e.Graphics.DrawString(FormatCurrency(txtPrecoTotal2.Text, 2, TriState.UseDefault), FonteNormal, Brushes.Black, 680, 420)

		e.Graphics.DrawString(txtNomeVenda3.Text, FonteNormal, Brushes.Black, 110, 435)
		e.Graphics.DrawString(txtPreco3.Text, FonteNormal, Brushes.Black, 440, 435)
		e.Graphics.DrawString(txtQuantidade3.Text, FonteNormal, Brushes.Black, 600, 435)
		'e.Graphics.DrawString(FormatCurrency(txtPrecoTotal3.Text, 2, TriState.UseDefault), FonteNormal, Brushes.Black, 715, 435)

		e.Graphics.DrawString(txtNomeVenda4.Text, FonteNormal, Brushes.Black, 110, 450)
		e.Graphics.DrawString(txtPreco4.Text, FonteNormal, Brushes.Black, 440, 450)
		e.Graphics.DrawString(txtQuantidade4.Text, FonteNormal, Brushes.Black, 600, 450)
		'e.Graphics.DrawString(FormatCurrency(txtPrecoTotal4.Text, 2, TriState.UseDefault), FonteNormal, Brushes.Black, 715, 450)

		e.Graphics.DrawString(txtNomeVenda5.Text, FonteNormal, Brushes.Black, 110, 465)
		e.Graphics.DrawString(txtPreco5.Text, FonteNormal, Brushes.Black, 440, 465)
		e.Graphics.DrawString(txtQuantidade5.Text, FonteNormal, Brushes.Black, 600, 465)
		'e.Graphics.DrawString(FormatCurrency(txtPrecoTotal5.Text, 2, TriState.UseDefault), FonteNormal, Brushes.Black, 715, 465)

		e.Graphics.DrawString(txtNomeVenda6.Text, FonteNormal, Brushes.Black, 110, 480)
		e.Graphics.DrawString(txtPreco6.Text, FonteNormal, Brushes.Black, 440, 480)
		e.Graphics.DrawString(txtQuantidade6.Text, FonteNormal, Brushes.Black, 600, 480)
		'e.Graphics.DrawString(FormatCurrency(txtPrecoTotal6.Text, 2, TriState.UseDefault), FonteNormal, Brushes.Black, 715, 480)

		LinhaActual += 1
		RegistoAtual += 1
	End While
	e.Graphics.DrawLine(CanetaImpressora, MargemEsquerda, MargemInferior + 25, MargemDireita - 20, MargemInferior + 25)
	e.Graphics.DrawString(Now.Date.ToShortDateString, FonteRodape, Brushes.Black, MargemEsquerda, MargemInferior + 33, New StringFormat())

	e.Graphics.DrawString("Página: " & PaginaActual, FonteRodape, Brushes.Black, MargemDireita - 70, MargemInferior + 33, New StringFormat())

	LinhaActual += 1
	PaginaActual += 1
	If (LinhaActual > LinhasPagina) Then
		e.HasMorePages = True
	Else
		e.HasMorePages = False
	End If

Alguem pode ajudar

e a linha que não dá é este e queria por em todos e não dá

e.Graphics.DrawString(FormatCurrency(txtQuantidade2.Text * txtPrecoTotal2.Text), FonteNormal, Brushes.Black, 700, 420)
Edited by Caça

Diogo Fernandes

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.