CODIGO FONTE PARA IMPRIMIR ETIQUETAS EM VB6

AJSO 20/02/2012 14:38:16
#395128
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



VILSONFRIES 20/02/2012 20:54:55
#395146
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
AJSO 21/02/2012 12:43:16
#395182
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
VILSONFRIES 23/02/2012 23:19:24
#395445
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!
Página 2 de 2 [14 registro(s)]
Tópico encerrado , respostas não são mais permitidas