[resolvido] Impressão de Cupom não Fiscal (Relacionamento)

Moderador: Avelino Sampaio

jamiljuniors
Mensagens: 17
Registrado em: 07 Jun 2015, 22:57

[resolvido] Impressão de Cupom não Fiscal (Relacionamento)

Mensagempor jamiljuniors » 11 Nov 2017, 00:08

Boa noite, pessoal,

Utilizo o código para imprimir pedidos de tele entrega, nessas impressoras não fiscal.

Código: Selecionar todos

        Vias = InputBox("Quantas vias deseja imprimir? ", "Impressão", 1)
        If IsNull(Vias) Or Vias = "" Then Exit Sub
        For ImprimirVias = 1 To Vias
           
                Dim DB As DAO.Database
                Dim RSP As DAO.Recordset ' venda
                Dim RSD As DAO.Recordset ' itens da vendas ( subformulário )
                Dim RSS As DAO.Recordset 'forma de pagamento ( subformulário)
                Dim strSql As String
                Dim Sai As String
                Set DB = CurrentDb
                ' Buscando os dados na tabela vendas
                strSql = "SELECT TB_Vendas.Codigo, TB_Vendas.Cod_Pedido, TB_Vendas.Data, TB_Vendas.Data_Hora, "
                strSql = strSql & "TB_Vendas.Cod_Cliente, TB_Vendas.Valor, TB_Vendas.Troco, TB_Vendas.Cod_Diario, TB_Vendas.Desconto, "
                strSql = strSql & "TB_Vendas.Forma_Dinheiro, TB_Vendas.Forma_Debito, TB_Vendas.Forma_Cheque, TB_Vendas.Forma_Credito, TB_Vendas.Forma_Pendente "
                strSql = strSql & "FROM TB_Vendas "
                strSql = strSql & "WHERE (((TB_Vendas.Cod_Pedido)=" & [Forms]![FR_Vendas]![Cod_Pedido] & "));" ' verificar o formulário correto
                Set RSP = DB.OpenRecordset(strSql)

                ' detalhes de vendas itens
                strSql = "SELECT TB_Vendas_Itens.Cod_Pedido, TB_Vendas_Itens.Produto_Resultado, TB_Vendas_Itens.Valor_Acrescimo, TB_Vendas_Itens.Cod_Produto, "
                strSql = strSql & "TB_Vendas_Itens.Valor_Produto, TB_Vendas_Itens.Qtde, TB_Vendas_Itens.Completo_Obs, TB_Vendas_Itens.Observacao, "
                strSql = strSql & "TB_Vendas_Itens.Sub_Total "
                strSql = strSql & "FROM TB_Vendas_Itens "
                strSql = strSql & "WHERE (((TB_Vendas_Itens.Cod_Pedido)=" & [Forms]![FR_Vendas]![Cod_Pedido] & "));"
                Set RSS = DB.OpenRecordset(strSql)
               
                ' detalhe acrescimos
                strSql = "SELECT TB_Vendas_Acrescimos.Codigo, TB_Vendas_Acrescimos.Cod_Pedido, "
                strSql = strSql & "TB_Vendas_Acrescimos.Cod_Produto, TB_Vendas_Acrescimos.Cod_Acrescimo "
                strSql = strSql & "FROM TB_Vendas_Acrescimos INNER JOIN TB_Vendas_Itens ON TB_Vendas_Acrescimos.Cod_Produto = TB_Vendas_Itens.Cod_Produto "
                strSql = strSql & "WHERE (((TB_Vendas_Acrescimos.Cod_Pedido)=" & [Forms]![FR_Vendas]![Cod_Pedido] & ")) And TB_Vendas_Acrescimos.Cod_Produto = TB_Vendas_Itens.Cod_Produto;"
                Set RSD = DB.OpenRecordset(strSql)
               
                ' Cria o recordset com o registro a ser impresso
                strSql = Application.CurrentProject.Path
                Open strSql & "\TesteImp.txt" For Output As #1 '''é usado para imprimir em txt. testes"
'                Open "C:\Prestacao_de_Servicos\PeusBurguer\Desenvolvimento" For Output As #1 ' é usado para está operacional na empresa
               
                'cabeçalho
                Print #1, Chr(18); Chr(27); Chr(69); Chr(27) & Chr(33) & Chr(32); "  " & UCase(DLookup("Empresa", "TB_DadosMinhaEmpresa"))
                Print #1, Chr(27) & Chr(33) & Chr(0) 'desabilita expansao
                Print #1, Chr(18); Chr(27); Chr(70) 'desabilita negrito
                Print #1, Tab(0); " "
                Print #1, "PEDIDO N°.:" & (RSP!Cod_Pedido)
                Print #1, "DATA      :" & (RSP!Data)
                Print #1, "HORA      :" & (RSP!Data_Hora)
                Print #1, Tab(0); " "
                Print #1, "--------------------------------";
                ' cliente/entrega
                wCliente = DLookup("Nome_Cliente", "tbl_Clientes", "Codigo = [Forms]![FR_Vendas]![Cod_Cliente]")
                wEndereco = DLookup("Endereco", "tbl_Clientes", "Codigo = [Forms]![FR_Vendas]![Cod_Cliente]")
                wBairro = DLookup("Bairro", "tbl_Clientes", "Codigo = [Forms]![FR_Vendas]![Cod_Cliente]")
                wNumero = DLookup("Numero", "tbl_Clientes", "Codigo = [Forms]![FR_Vendas]![Cod_Cliente]")
                wTelefone = DLookup("Telefone", "tbl_Clientes", "Codigo = [Forms]![FR_Vendas]![Cod_Cliente]")
                wReferencia = DLookup("Referencia", "tbl_Clientes", "Codigo = [Forms]![FR_Vendas]![Cod_Cliente]")
                Print #1, Tab(0); " "
                Print #1, "CLIENTE   :" & wCliente
                Print #1, "TELEFONE  :" & wTelefone
                Print #1, "BAIRRO    :" & wBairro
                Print #1, "ENTREGA   :" & wEndereco & ", " & wNumero
                Print #1, "REFERENCIA:" & wReferencia
                'itens da venda cabeçalho
                Print #1, Tab(0); " "
                Print #1, Tab(0); "BURGER..........................";
                Print #1, Tab(0); "Qtde...............Sub Total(R$)";
                Print #1, Tab(0); "--------------------------------";
               
                'itens da venda
                With RSS
                .MoveFirst
                Do While Not .EOF
                'wProdutoAcrescimo = (RSD!Cod_Acrescimo)
                Print #1, Tab(0); UCase((RSS!Produto_Resultado)); " -- "; UCase((RSS!Completo_Obs))
                Print #1, Tab(0); (RSS!Qtde) & "......................" & (Format(RSS!Sub_Total, "Currency"))
                        With RSD
                        .MoveFirst
                        Do While Not .EOF
                            wProduto = DLookup("Produto", "TB_Servicos", "Cod_Produto = " & RSD!Cod_Acrescimo & "")
                            wValor = DLookup("Valor", "TB_Servicos", "Cod_Produto = " & RSD!Cod_Acrescimo & "")
                            Print #1, Tab(0); wProduto & "..." & (Format(wValor, "Currency"))
   
                        .MoveNext
                        Loop
                        End With
                    Print #1, Tab(0); " "
                .MoveNext
                Loop
                End With
                'valores a serem impressos
'                Print #1, Tab(0); " "
                Print #1, Tab(0); "--------------------------------";
                Print #1, Tab(0); " "
                Print #1, Tab(0); "DESCONTO(s)...........:"; Format(RSP!Desconto, "Currency");
                Print #1, Tab(0); "TOTAL.................:"; Format((DSum("Sub_Total", "TB_Vendas_Itens", "Cod_Pedido = Forms![FR_Vendas]![Cod_Pedido]") - RSP!Desconto), "Currency");
                Print #1, Tab(0); "TROCO PARA............:"; Format((DSum("Sub_Total", "TB_Vendas_Itens", "Cod_Pedido = Forms![FR_Vendas]![Cod_Pedido]") - RSP!Desconto) + RSP!Troco, "Currency");
                Print #1, Tab(0); "TROCO.................:"; Format(RSP!Troco, "Currency");
                Print #1, Tab(0); "--------------------------------";
                Print #1, Tab(0); " "
                'Forma de pagamento
                wFormaPgto_Dinheiro = (RSP!Forma_Dinheiro)
                If Not IsNull(wFormaPgto_Dinheiro) Or wFormaPgto_Dinheiro <> 0 Then wFormaPgto1 = "DINHEIRO"
                wFormaPgto_Debito = (RSP!Forma_Debito)
                If Not IsNull(wFormaPgto_Debito) Or wFormaPgto_Debito <> 0 Then wFormaPgto2 = "CARTAO DEBITO"
                wFormaPgto_Credito = (RSP!Forma_Credito)
                If Not IsNull(wFormaPgto_Credito) Or wFormaPgto_Credito <> 0 Then wFormaPgto3 = "CARTAO CREDITO"
                wFormaPgto_Cheque = (RSP!Forma_Cheque)
                If Not IsNull(wFormaPgto_Cheque) Or wFormaPgto_Cheque <> 0 Then wFormaPgto4 = "CHEQUE"
                wFormaPgto_Pendente = (RSP!Forma_Pendente)
                If Not IsNull(wFormaPgto_Pendente) Or wFormaPgto_Pendente <> 0 Then wFormaPgto5 = "NOTINHA"
               
                Print #1, Tab(0); Chr(18); Chr(27); Chr(69); "PAGAMENTO...:" & wFormaPgto1 & ", " & wFormaPgto2 & ", " & wFormaPgto3 & ", " & wFormaPgto4 & ", " & wFormaPgto5
                Print #1, Tab(0); " "
                Print #1, Tab(0); " "
                Print #1, Chr(27) + "i"      'comando de corte
                Close #1
Saida:
                Set DB = Nothing
                Set RSP = Nothing
                Close #1
                Next ImprimirVias


o problema tá quando tem acréscimos por produto, não consigo agrupar por produto, ta saindo assim:
https://uploaddeimagens.com.br/imagens/impressao1-gif--2
Imagem
e deveria ser assim:
https://https://uploaddeimagens.com.br/imagens/impressao2-gif
Imagem

Valeu, no aguardo,
Jamil

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.


jamiljuniors
Mensagens: 17
Registrado em: 07 Jun 2015, 22:57

Re: Impressão de Cupom não Fiscal (Relacionamento)

Mensagempor jamiljuniors » 20 Nov 2017, 21:48

Boa noite, pessoal,
Acho que não consegui explicar direito o que queria, bom, não era exatamente o que eu queria mais resolveu o problema, retirei um loop de dentro do outro, criando a impressão separado dos acréscimos por produto, tudo ok.

Obs.: Não consigo colocar imagem, tipo um print, de jeito nenhum.

Obrigado e até a próxima, rs
jamil

Avatar do usuário
Avelino Sampaio
Mensagens: 1871
Registrado em: 04 Jun 2015, 18:27
Contato:

Re: [resolvido] Impressão de Cupom não Fiscal (Relacionamento)

Mensagempor Avelino Sampaio » 21 Nov 2017, 07:08

jamil

obrigado pelo feedback!
==================================================
Clique no link abaixo e veja um ótimo kit de ensino que tenho para você.
http://www.usandoaccess.com.br
==================================================

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.



Voltar para “Relatórios”

Quem está online

Usuários neste fórum: Nenhum usuário registrado e 3 visitantes