CODIGO FONTE PARA IMPRIMIR ETIQUETAS EM VB6
Caro VILSONFRIES
Para obter esta impressão ou resultado com 2 casas decimais de uma variável numérica é necessãorio retirar a expressão CDbl()
Para converter uma variável com separador de centena e milhar e com duas casas decimais utilize a Expressão:
Format(txtValor.Text, [Ô]#,##0.00[Ô])
Será apresentado 10.000,90
ou
FormatNumber([Ô]10000,90000000[Ô], 2, True, True, True)
Será apresentado 10.000,90
Só um detalhe para as duas expressões
Se vc que que apresente apenas 2 casas decimais e tem um valor apresentado no txtValor.text = 1000,009 com 3 casas decimais
o valor impresso sera arredondado para 1.000,01
Boa Sorte
Para obter esta impressão ou resultado com 2 casas decimais de uma variável numérica é necessãorio retirar a expressão CDbl()
Para converter uma variável com separador de centena e milhar e com duas casas decimais utilize a Expressão:
Format(txtValor.Text, [Ô]#,##0.00[Ô])
Será apresentado 10.000,90
ou
FormatNumber([Ô]10000,90000000[Ô], 2, True, True, True)
Será apresentado 10.000,90
Só um detalhe para as duas expressões
Se vc que que apresente apenas 2 casas decimais e tem um valor apresentado no txtValor.text = 1000,009 com 3 casas decimais
o valor impresso sera arredondado para 1.000,01
Boa Sorte
esses comandos já tentei, mais não imprime os digitos zeros
tavez estou formatando no lugar errado quem sabe!!
dá uma olhada é o mesmo código que vc mandou só coloquei pra rodar no meu sistema pegando o banco de dados
[ô]Vende item após a abertura do cupom fiscal.
Public Function ImpressoraItem(ByVal strDescricao As String, ByVal strBarCod As String, ByVal strRs As String, ByVal dblValor As Double)
Dim descricao As String
Dim barcode As String
Dim valor As Double
Dim Rs As String
If ModeloPrn = 0 Then
[ô]ARGOX
[ô]Captura apenas 20 caracteres do campo descrição
descricao = Mid(strDescricao, 1)
Rs = Mid(strRs, 1)
[ô]Pega só os primeiros 13 caracteres()
barcode = Left(strBarCod, 13)
[ô]formato de valor
[ô] valor = format(txtValor, [Ô]#,##0.00[Ô])
valor = format(dblValor, [Ô]#,##0.00[Ô])
[ô]Descrição 1-dir/esq 2-cima/baixo 3-giro 4-tamanho fonte 5-??? 6-comprim. fonte 7-alt. fonte
Call A_Prn_Text(20, 65, 1, 4, 0, 0, 2, Asc([Ô]N[Ô]), 2, descricao)
[ô]R$
Call A_Prn_Text(250, 8, 1, 4, 0, 1, 2, Asc([Ô]N[Ô]), 2, Rs)
[ô]Código de Barras (Verificar o moldelo de Código de Barras que vc quer imprimir)
[ô]1-esq. dir. 2-cima/baixo 3-inv. posição 4-não mexer 5-Comprim. 6-??? 7-alt. 8-não 9-???
Call A_Prn_Barcode(20, 8, 1, Asc([Ô]A[Ô]), 2, 1, 40, Asc([Ô]B[Ô]), 1, barcode)
[ô]Valor 1-dir/esq 2-cima/baixo 3-inversão 4-tam fonte
Call A_Prn_Text(280, 8, 1, 4, 0, 2, 3, Asc([Ô]N[Ô]), 2, valor)
[ô] Saida.
Call A_Print_Out(1, 1, 1, 1) [ô] Total de 1 etiqueta.
[ô] Fecha porta.
Call A_ClosePrn
ElseIf ModeloPrn = 3 Then
[ô]Outras Impresoras
End If
End Function
tavez estou formatando no lugar errado quem sabe!!
dá uma olhada é o mesmo código que vc mandou só coloquei pra rodar no meu sistema pegando o banco de dados
[ô]Vende item após a abertura do cupom fiscal.
Public Function ImpressoraItem(ByVal strDescricao As String, ByVal strBarCod As String, ByVal strRs As String, ByVal dblValor As Double)
Dim descricao As String
Dim barcode As String
Dim valor As Double
Dim Rs As String
If ModeloPrn = 0 Then
[ô]ARGOX
[ô]Captura apenas 20 caracteres do campo descrição
descricao = Mid(strDescricao, 1)
Rs = Mid(strRs, 1)
[ô]Pega só os primeiros 13 caracteres()
barcode = Left(strBarCod, 13)
[ô]formato de valor
[ô] valor = format(txtValor, [Ô]#,##0.00[Ô])
valor = format(dblValor, [Ô]#,##0.00[Ô])
[ô]Descrição 1-dir/esq 2-cima/baixo 3-giro 4-tamanho fonte 5-??? 6-comprim. fonte 7-alt. fonte
Call A_Prn_Text(20, 65, 1, 4, 0, 0, 2, Asc([Ô]N[Ô]), 2, descricao)
[ô]R$
Call A_Prn_Text(250, 8, 1, 4, 0, 1, 2, Asc([Ô]N[Ô]), 2, Rs)
[ô]Código de Barras (Verificar o moldelo de Código de Barras que vc quer imprimir)
[ô]1-esq. dir. 2-cima/baixo 3-inv. posição 4-não mexer 5-Comprim. 6-??? 7-alt. 8-não 9-???
Call A_Prn_Barcode(20, 8, 1, Asc([Ô]A[Ô]), 2, 1, 40, Asc([Ô]B[Ô]), 1, barcode)
[ô]Valor 1-dir/esq 2-cima/baixo 3-inversão 4-tam fonte
Call A_Prn_Text(280, 8, 1, 4, 0, 2, 3, Asc([Ô]N[Ô]), 2, valor)
[ô] Saida.
Call A_Print_Out(1, 1, 1, 1) [ô] Total de 1 etiqueta.
[ô] Fecha porta.
Call A_ClosePrn
ElseIf ModeloPrn = 3 Then
[ô]Outras Impresoras
End If
End Function
Caro VILSONFRIES
você ja testou outro valor tipo impressão de um Valor 2,66; 1,54; 5,73 para ver se o problema é o numero de casas decimais ou se é apenas com numeros terminados em zeros 1,70; 2,60
pode ser uma configuração do comando que esta em Double para a impressora.
Boa Sorte
você ja testou outro valor tipo impressão de um Valor 2,66; 1,54; 5,73 para ver se o problema é o numero de casas decimais ou se é apenas com numeros terminados em zeros 1,70; 2,60
pode ser uma configuração do comando que esta em Double para a impressora.
Boa Sorte
Prezado Alessandro,
consegui resolver o problema de impressão usando esse formato
valor = Trim(CCur(MOEDA(dblValor)))
valor = format(valor, [Ô]#,##0.00[Ô])
aproveito para agradecer sua ajuda, sozinho não iria conseguir.
Muito obrigado!
consegui resolver o problema de impressão usando esse formato
valor = Trim(CCur(MOEDA(dblValor)))
valor = format(valor, [Ô]#,##0.00[Ô])
aproveito para agradecer sua ajuda, sozinho não iria conseguir.
Muito obrigado!
Tópico encerrado , respostas não são mais permitidas