gilberlanio, muito obrigado pela tua atenção...
A questão é: Não existe relatorio feito no access o cupom é enviado diretamente para a impressora nao fiscal Bematch...
vou colocar aqui o codigo do cupom....
Usei esse Codigo mas nao funcionou. (printer.copie=2)
Sub Cupom()
Dim nPed, DtVenda, Fpag
'Variável para o número da venda
nPed = StrNumVenda
'Variável para a data da venda
DtVenda = Format(Date, "dd/mm/yyyy")
'Variável para o tipo de pagamento
Fpag = StrTipoPgto
If MsgBox("DESEJA IMPRIMIR O PEDIDO?", vbInformation + vbYesNoCancel, "Imprime Pedido.") = vbYes Then
'cupon para impressora termica de 40 colunas
'Open "LPT1:" For Output Access Write As #1
'Open CurrentProject.Path & "\Cupom.txt" For Output Access Write As #1
Printer.Copies = 2<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< O CODIGO QUE NAO DEU CERTO>>>>>>>
Dim PortImp As String
'Open "c:\teste.txt" For Output Access Write As #1
PortImp = "\\Caixa01\EPSONTM"
Open PortImp For Output As #1
Print #1, Tab(0); "******* Padaria Genesis *******"
Print #1, Tab(0); "Rua.: " & " H QD 25" & " 1 " & "ARMANDO MENDES";
Print #1, Tab(0); "MANAUS" & " - " & "AM"; " Cep: " & "69089-120";
Print #1, Tab(0); "Tel: " & "(92)3615- ";
'Print #1, Tab(0); "Site: " & "WWW.GENEISPANIFC.COM.BR";
Print #1, Tab(0); String(40, "-");
Print #1, Tab(10); "Codigo do Pedido : " & nPed;
Print #1, Tab(0); String(40, "-");
Print #1, Tab(0); "Data :" & DtVenda; " " & " "; "Hora :" & Time;
Print #1, Tab(0); "Forma Pagamento: " & Fpag
Print #1, Tab(0); String(40, "-");
'cabeça do cupon do items
Print #1, Tab(0); "Descricao "; "(Codigo)";
Print #1, Tab(0); "Und "; " Pco.Unit."; " Qtd./Peso "; " Vlr.Total "
Print #1, Tab(0); String(40, "-");
'selecionar items do cupon
Dim StrSQL As String
Dim Rs As DAO.Recordset
Dim Db As DAO.Database
'Instrução SQL para uso no recordset
StrSQL = "SELECT tblProdutos.Codigo, tblVendas.CodigoBarras, tblProdutos.Descricao, tblUnidadeMed.Sigla," _
& "tblVendas.Qtde, tblVendas.PrecoUnitario, tblVendas.SubTotal, tblVendas.CpUsuario" _
& " FROM tblUnidadeMed INNER JOIN (tblProdutos INNER JOIN tblVendas" _
& " ON tblProdutos.CodigoBarras = tblVendas.CodigoBarras)" _
& " ON tblUnidadeMed.CodigoUnidadeMedida = tblProdutos.CodigoUnidadeMedida" _
& " WHERE tblVendas.cpUsuario = '" & Me.txtUser & "';"
'Seta o Db
Set Db = CurrentDb
'Seta o Recordset com a SQL
Set Rs = CurrentDb.OpenRecordset(StrSQL)
Do While Not Rs.EOF
'Imprime os campos: Sigla, Descrição e Código de Barras
Print #1, Tab(0); Left(Rs!Descricao, 24); " "; "(" & Format(Rs!CodigoBarras, "0000000000000"); ")" '@ alinha à direita
'Imprime os dados: Sigla, Preço Unitário, Quantidade e SubTotal
Print #1, Tab(0); Format(Rs!Sigla, "@@"); " "; Format$(Format$(Rs!PrecoUnitario, "#,##0.00"), "@@@@@@@@"); _
" "; Format(Rs!Qtde, "#,###0.000"); " "; Format$(Format$(Rs!subtotal, "#,##0.00"), "@@@@@@@@")
'Print #1, Tab(0); ""
Rs.MoveNext
Loop
'Fecha o recorset
Rs.Close
'Caso venda Fracionada vai para RodapeVendaFracionada
If Me.TipoPgto = 3 Then GoTo RodapeVendaFracionada
'Caso venda Fracionada vai para RodapeCartãoTicket
If StrTipoPgto = "Cartão" Or StrTipoPgto = "Ticket" Then GoTo RodapeCartãoTicket
'Caso venda normal a vista
'valor total do cupon
Print #1, Tab(0); String(40, "-");
Print #1, Tab(16); "Qtd. Itens : "; Format(Format(Me.txtQtdeItens.Caption, "000"), "@@@@@@@@")
Print #1, Tab(16); "Total Cumpom R$: "; Format$(Format$(Me.txtTotal, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(16); "Dinheiro R$: "; Format$(Format$(Me.Dinheiro, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(16); "Troco R$: "; Format$(Format$(Me.Troco, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(0); String(40, "-");
Print #1, Tab(0); "Usuario: " & Usuario & "/" & StrTurno
Print #1, Tab(0); "Terminal: "; Me.txtMaquina
Print #1, Tab(0); String(40, "-");
'mensagem de no rodape do cupom
Print #1, Tab((40 - Len("Este Cupon Nao Tem Valor Fiscal")) / 2); "Este Cupon Nao Tem Valor Fiscal"
Print #1, Tab(0); " DEUS E FIEL "
Print #1, Tab((40 - Len("OBRIGADO PELA PREFERENCIA")) / 2); "OBRIGADO PELA PREFERENCIA"
Print #1, Tab(0); String(40, "-");
Print #1, Tab((40 - Len("SysPDV - Versao 1.0.0 - Venda")) / 2); "SysPDV - Versao 1.0.0 - Venda";
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); "-------"
'comando de corte
Print #1, Chr(27) + "i"
Close #1#
Else
End If
Exit Sub
RodapeVendaFracionada:
'Caso a venda seja fracionada e a diferença em cartão ou ticket
'Caso venda normal a vista
'valor total do cupon
Print #1, Tab(0); String(40, "-");
Print #1, Tab(16); "Qtd. Itens : "; Format(Format(Me.txtQtdeItens.Caption, "000"), "@@@@@@@@")
Print #1, Tab(16); "Total Cumpom R$: "; Format$(Format$(Me.txtTotal, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(16); "Dinheiro R$: "; Format$(Format$(Me.Dinheiro1, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(16); "" & StrTipoFrac & " R$: "; Format$(Format$(Me.txtCartao, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(0); String(40, "-");
Print #1, Tab(0); "Usuario: " & Usuario & "/" & StrTurno
Print #1, Tab(0); "Terminal: "; Me.txtMaquina
Print #1, Tab(0); String(40, "-");
'mensagem de no rodape do cupom
Print #1, Tab((40 - Len("Este Cupon Não Tem Valor Fiscal")) / 2); "Este Cupon Não Tem Valor Fiscal"
Print #1, Tab(0); " DEUS E FIEL "
Print #1, Tab((40 - Len("OBRIGADO PELA PREFERÊNCIA")) / 2); "OBRIGADO PELA PREFERENCIA"
Print #1, Tab(0); String(40, "-");
Print #1, Tab((40 - Len("SysPDV - Versao 1.0.0 - Venda")) / 2); "SysPDV - Versao 1.0.0 - Venda";
Print #1, Tab(0); String(40, "-");
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); "-------"
'comando de corte
Print #1, Chr(27) + "i"
Close #1#
Exit Sub
RodapeCartãoTicket:
'Caso a venda seja em cartão ou ticket
'Caso venda normal a vista
'valor total do cupon
Print #1, Tab(0); String(40, "-");
Print #1, Tab(16); "Qtd. Itens : "; Format(Format(Me.txtQtdeItens.Caption, "000"), "@@@@@@@@")
Print #1, Tab(16); "Total Cumpom R$: "; Format$(Format$(Me.txtTotal, "#,##0.00"), "@@@@@@@@")
If StrTipoPgto = "Cartão" Then
Print #1, Tab(16); "" & StrTipoPgto & " R$: "; Format$(Format$(Me.txtTotal, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(16); "Troco R$: "; Format$(Format$(Me.Troco, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(0); String(40, "-");
Print #1, Tab(0); "Usuario: " & Usuario & "/" & StrTurno
Print #1, Tab(0); "Terminal: "; Me.txtMaquina
Print #1, Tab(0); String(40, "-");
'mensagem de no rodape do cupom
Print #1, Tab((40 - Len("Este Cupon Não Tem Valor Fiscal")) / 2); "Este Cupon Não Tem Valor Fiscal"
Print #1, Tab(0); " DEUS E FIEL "
Print #1, Tab((40 - Len("OBRIGADO PELA PREFERENCIA")) / 2); "OBRIGADO PELA PREFERENCIA"
Print #1, Tab(0); String(40, "-");
Print #1, Tab((40 - Len("SysPDV - Versao 1.0.0 - Venda")) / 2); "SysPDV - Versao 1.0.0 - Venda";
'comando de corte
Print #1, Chr(27) + "i"
Close #1#
Else
If Me.Dinheiro = "" Or IsNull(Me.Dinheiro) = True Then
Print #1, Tab(16); "" & StrTipoPgto & " R$: "; Format$(Format$(Me.txtTotal, "#,##0.00"), "@@@@@@@@")
Else
Print #1, Tab(16); "" & StrTipoPgto & " R$: "; Format$(Format$(Me.Dinheiro, "#,##0.00"), "@@@@@@@@")
End If
Print #1, Tab(16); "Troco R$: "; Format$(Format$(Me.Troco, "#,##0.00"), "@@@@@@@@")
Print #1, Tab(0); String(40, "-");
Print #1, Tab(0); "Usuario: " & Usuario & "/" & StrTurno
Print #1, Tab(0); "Terminal: "; Me.txtMaquina
Print #1, Tab(0); String(40, "-");
'mensagem de no rodape do cupom
Print #1, Tab((40 - Len("Este Cupon Nao Tem Valor Fiscal")) / 2); "Este Cupon Nao Tem Valor Fiscal"
Print #1, Tab(0); " DEUS E FIEL "
Print #1, Tab((40 - Len("OBRIGADO PELA PREFERENCIA")) / 2); "OBRIGADO PELA PREFERENCIA"
Print #1, Tab(0); String(40, "-");
Print #1, Tab((40 - Len("SysPDV - Versao 1.0.0 - Venda")) / 2); "SysPDV - Versao 1.0.0 - Venda";
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); " "
Print #1, Tab(0); "-------"
'comando de corte
Print #1, Chr(27) + "i"
Close #1#
End If
Exit Sub
'End Sub
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'Tratamento de Erros
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Exit_TrataErro:
DoCmd.Hourglass False
DoCmd.Echo True
Exit Sub
TrataErro:
Select Case err.Number
Case 0
'Não ´um erro
Case Else
DoCmd.Hourglass False
DoCmd.Echo True
MsgBox "Erro Gerado no: " & Me.Name & "" _
& vbNewLine & "No Procedimento: SubCupom" _
& vbNewLine & "Erro Número: " & err.Number _
& vbNewLine & "linha: " & Erl _
& vbNewLine & "Descrição: " & err.Description _
& vbNewLine & "Por favor contate o Administrador de Sistema.", vbCritical, err.Number & ", linha:" & Erl
End Select
End Sub