MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


3 participantes

    [Resolvido]PDV + Impressão do Cupom

    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty PDV + Impressão do Cupom

    Mensagem  jonasamado 18/8/2012, 13:44

    Srs,

    Tenho visto vários códigos mostrando como imprimir em um cupom não-fiscal. Encontrei inclusive exemplo de PDV funcionando, mas sem a impressão. Já quebrei a cabeça e não consegui unir os dois, fazer o PDV imprimir o cupom não-fiscal.

    Existe um exemplo do colega Agravina de um Projeto de PDV. É perfeito para o que quero, mas não tem a parte que imprimiria o cumpom. Já consegui imprimir, cortar o papel e tudo, mas não consigo fazer imprimir os itens do cupom.

    Exemplo do Agravina: http://maximoaccess.forumeiros.com/download.forum?id=2099
    Exemplo de código que imprimiria os itens do cupom: http://maximoaccess.forumeiros.com/t7424-impressao-cupom-nao-fiscal?highlight=cupom

    Peço a gentileza de alguém me ajudar a entender como fazer imprimir os itens do cupom nesse exemplo do Agravina.

    Muito obrigado pela ajuda que sei que virá.

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 18/8/2012, 16:09

    Bom dia Jonas... Veja
    O Código abaixo carrega um recordeset com os dados da tabela onde fica os ítens vendidos, filtrando pelo registro ativo do form vendas

    'selecionar items do cupom
    Dim bc As DAO.Database
    Dim saidadetalhe As DAO.Recordset
    Set bc = CurrentDb
    '------------------------
    Set saidadetalhe = bc.OpenRecordset("SELECT SaidaDetalhe.SaidaNumero, " & _
    "Produtos.CodBarra, Medidas.MedidasDescricao, Produtos.ProdutoDescricao, " & _
    "SaidaDetalhe.SaidaQuantidade, SaidaDetalhe.SaidaValorVenda " & _
    "FROM (SaidaDetalhe INNER JOIN Produtos " & _
    "ON SaidaDetalhe.SaidaProduto = Produtos.ProdutoCodigo) " & _
    "INNER JOIN Medidas " & _
    "ON Produtos.ProdutoUnidadedeMedidaNumeto = Medidas.MedidasCodigo " & _
    "WHERE (((SaidaDetalhe.SaidaNumero)=" & Me.SaidaNumero & "));", dbOpenSnapshot)


    Agora de posse dos registros constantes no recordset, ele realiza um loop através do mesmo, imprimindo a cada volta os dados no cupom

    Do While Not saidadetalhe.EOF
    Print #1, Tab(0); Format(saidadetalhe![SaidaNumero], "0000000000000"); " " & _
    Format(Left(saidadetalhe![ProdutoDescricao], 20), "@@@@@@@@@@@@@@@@@@@@");
    Print #1, Tab(0); Format(saidadetalhe![SaidaQuantidade], "000"); " "; Format$(Format$(saidadetalhe![SaidaValorVenda], "#,##0.00"), "@@@@@@@@"); _
    " "; Format$(Format$(saidadetalhe![SaidaValorVenda] * saidadetalhe![SaidaQuantidade], "#,##0.00"), "@@@@@@@@")

    saidadetalhe.MoveNext
    Loop
    saidadetalhe.Close



    Basta observar e substituir as tabelas...


    Saudações.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Desculpa, não tou conseguindo.

    Mensagem  jonasamado 18/8/2012, 21:53

    Desculpa minha burrice, mas não tou conseguindo mesmo. Coloquei a instrução para imprimir ao pressionar F2 só pra ver no que dá, mas tem diversos erros.

    Vou disponibilizar aqui o que fiz para facilitar a ajuda.

    Dá uma olhada e vê no que tou "voando".

    Muito Obrigado.

    Jonas
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 21/8/2012, 22:20

    Piloto, me ajuda. Preciso muito concluir.

    Obrigado!

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 22/8/2012, 13:17

    Verei isto pra ti hoje amigao.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 22/8/2012, 13:19

    BLZ! Agora vai!!!
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 22/8/2012, 15:36

    Crie um arquivo no Bloco de notas, nomeeie Cumpom.txt e o coloque no dir do BD, apos executar o procedimento o abra e veja o Layout da impressão.
    Código:
    Private Sub btnImprimir_Click()
    Dim nPed, DtVenda, Fpag
    'Variável para o número da venda
    nPed = Me.Códigovenda
    'Variável para a data da venda
    DtVenda = Format(Date, "dd/mm/yyyy")
    'Variável para o tipo de pagamento
    'Fpag = StrTipoPgto

    '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

    Print #1, Tab(0); "TESTE DE EMPRESA"
    Print #1, Tab(0); "Rua: " & "erua" & " - " & "ebairro";
    Print #1, Tab(0); "ecid" & " - " & "eest"; " Cep: " & "ecep";
    Print #1, Tab(0); "Tel: " & "etel";
    Print #1, Tab(0); "Site: " & "esite";

    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); "Descrição "; "(Código)";
    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 DetalheCódigoVenda,CodProduto,Descrição,Quant," _
    & "ValorUnit, DataVenda FROM tbl_VendaDetalhe WHERE DetalheCódigoVenda = " & Me.Códigovenda & ";"

    '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!Descrição, 24); " "; "(" & Format(rs!Codproduto, "0000000000000"); ")" '@ alinha à direita
    'Imprime os dados: Sigla, Preço Unitário, Quantidade e SubTotal
    Print #1, Tab(0); " "; Format$(Format$(rs!ValorUnit, "#,##0.00"), "@@@@@@@@"); _
    "        "; Format(rs!Quant, "000"); " "; Format$(Format$(rs!Quant, "###000") * (Format$(rs!ValorUnit, "#,##0.00")), "@@@@@@@@")
    Print #1, Tab(0); ""
    rs.MoveNext
    Loop
    'Fecha o recorset
    rs.Close
    '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, "-");

    '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); " "
    Print #1, Tab((40 - Len("OBRIGADO PELA PREFERÊNCIA")) / 2); "OBRIGADO PELA PREFERÊNCIA"
    Print #1, Tab(0); String(40, "-");
    Print #1, Tab((40 - Len("SysPDV - Versão 1.0.0 - Venda")) / 2); "SeuSistema - Versão 1.0.0 - Venda";
    'as linhas seguintes são linhas em branco para sair o papel da impressora, adapte-as como desejar
    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); " "
    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); " "
    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); " "
    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 Sub

    Testado e feito as devidas alterações desabilite a linha em vermelho e habilite a linha em azul

    '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


    Cumprimentos
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 22/8/2012, 15:48

    PILOTO, Vc é um gênio!

    Funcionou perfeito. Ainda por cima aprendi a testar sem usar a impressora.

    Muito obrigado mesmo.

    Fechei por estar resolvido!

    Jonas


    Última edição por jonasamado em 22/8/2012, 16:04, editado 1 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 22/8/2012, 16:02

    Apenas atente às regras do fórum em não escrever em maíusculas!!

    Agradeceriamos se editasse o post anterior para letras em minúsculas.

    O Fórum agradece o retorno.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 22/8/2012, 16:05

    Editado. Obrigado mais uma vez.

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 22/8/2012, 16:15

    Obrigado, o Fórum agradece.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 22/9/2012, 18:34

    Amigo PILOTO (ou quem puder),

    Nesse PDV que você me ajudou a fazer, o cupom está imprimindo perfeitamente. Mas surgiu uma necessidade: Em vez de imprimir um cupom com todos os produtos, preciso agora que a impressão seja individual, ou seja, imprimir para cada produto vendido, um cupom.

    Ex: Vendi dois itens: 1 Cerveja e 1 Pipoca, bem em vez de imprimir 1 cupom com esses dois itens, preciso que saia 1 cupom para a Cerveja, e 1 Cupom para a Pipoca.

    Por favor, me ajuda a fazer.

    Muito Obrigado.

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 28/9/2012, 14:59

    Bom dia jonas... estou me preparando para uma cirurgia e não posso lhe dar a devida atenção.

    Porém para imprimir o cupom para item a item deves modificar o local onde executa o procedimento.

    Este deve ficar após inserir o produto na lista... e o recordset deve ser filtrado pelo produto que está sendo inserido.

    é por ai.

    Cumprimentos.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 6/10/2012, 13:20

    Alguem pode ajudar?
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 9/10/2012, 19:19

    Porque essa necessidade?

    Poste o teu BD... verei se posso fazer algo... Tenho estado afastado do Fórum por motivos médicos.

    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 9/10/2012, 20:18

    O Desafio é maior que a dor da cirurgia... então vamos la....


    Criei um campo na tbl_VendaDetalhe... CpImpresso do tipo Sim/Não
    Este campo fica em branco apos inserir o produto...

    A rotina de impressão é executada apos atualizar o campo código de barras e o seu recordset é filtrado pelos registros cujo cpImpresso esteja como Não...

    é impresso o cupom e apos isso marco o campo como sim...

    Dessa forma sempre ao inserir novo produto so sera impresso o ultimo da lista cujo campo esteja como Não.

    https://dl.dropbox.com/u/26441349/JonasAmado_1.rar

    Cumprimentos.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 9/10/2012, 22:23

    Meu Rei!

    Fiz o teste aqui e tive o seguinte:

    1. No cupom não imprimiu nenhum Item. Todo o resto do cupom saiu normalmente. Mas a parte dos Itens somente saiu o cabeçalho: Und Pco.Unit Qtd/Peso Vlr.Total. Os itens em si não saiu nada.

    Lembrando: O que preciso é que ao invés de imprimir todos os itens no mesmo cupom, ao "mandar" imprimir, saia um Cupom para cada Item.

    Ex: Pistolei o código 10, depois o 11. O sistema colocou 2 itens na lista de produtos. Quando eu mandar imprimir, saia 2 cupons, um com cada item.

    Em anexo o meu arquivo imprimindo certo, mas tudo no mesmo cupom.

    Se você conseguir fazer isso, salva minha pele.

    Muito Obrigado.

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 9/10/2012, 22:44

    Amigo.... No que te enviei.. nao e necesario clicar no botao imprimir...

    Apenas lance um produto... e observe o cupom... lance o segundo e observe o cupom novamente...

    a impressao é automatica apos inserir cada produto.

    Cumprimentos.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 9/10/2012, 22:48

    Piloto!

    Estou com ele aberto e conectado à impressora. Só imprime apos clicar no botao que vc criou.

    Mas......

    O que preciso é que imprima os itens SOMENTE após confirmar o recebimento. Ou seja, ele deve começar a imprimir somente quando eu finalizar a venda. Vai que eu queira excluir algum item antes de finalizar...

    Entendeu?

    No aguardo... e muito obrigado. Sei que vc nem podia, mas esta me ajudando!

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 10/10/2012, 15:23

    Boas Jonas... Isso então é mais simples que pode imaginar...


    Veja como é a logica da impressão normal do cupom

    - Imprime cabeçalho
    - Realiza loop pela tabela imprimindo itens do cupom
    - imprime rodape


    Agora para o que pretende:

    -Carrega recordset
    - imprime cabeçalho
    -imprime iten
    - imprime rodape
    - Move para registro seguinte
    -realiza loop


    CÓDIGO:


    Private Sub btnImprimir_Click()
    Dim NCount As Integer, X As Integer
    Dim nPed, DtVenda, Fpag
    'Variável para o número da venda
    nPed = Me.Códigovenda
    'Variável para a data da venda
    DtVenda = Format(Date, "dd/mm/yyyy")
    'Variável para o tipo de pagamento
    'Fpag = StrTipoPgto

    '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 DetalheCódigoVenda,CodProduto,Descrição,Quant," _
    & "ValorUnit, DataVenda FROM tbl_VendaDetalhe WHERE DetalheCódigoVenda = " & Me.Códigovenda & ";"

    'Seta o Db
    Set Db = CurrentDb
    'Seta o Recordset com a SQL
    Set rs = CurrentDb.OpenRecordset(StrSQL)
    'cupon para impressora termica de 40 colunas

    Do While Not rs.EOF
    'Open "LPT1:" For Output Access Write As #1
    Open CurrentProject.Path & "\Cupom.txt" For Output Access Write As #1

    Print #1, Tab(0); "TESTE DE EMPRESA"
    Print #1, Tab(0); "Rua: " & "erua" & " - " & "ebairro";
    Print #1, Tab(0); "ecid" & " - " & "eest"; " Cep: " & "ecep";
    Print #1, Tab(0); "Tel: " & "etel";
    Print #1, Tab(0); "Site: " & "esite";

    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); "Descrição "; "(Código)";
    Print #1, Tab(0); "Und "; " Pco.Unit."; " Qtd./Peso "; " Vlr.Total "
    Print #1, Tab(0); String(40, "-");


    'Imprime os campos: Sigla, Descrição e Código de Barras
    Print #1, Tab(0); Left(rs!Descrição, 24); " "; "(" & Format(rs!Codproduto, "0000000000000"); ")" '@ alinha à direita
    'Imprime os dados: Sigla, Preço Unitário, Quantidade e SubTotal
    Print #1, Tab(0); " "; Format$(Format$(rs!ValorUnit, "#,##0.00"), "@@@@@@@@"); _
    " "; Format(rs!Quant, "000"); " "; Format$(Format$(rs!Quant, "###000") * (Format$(rs!ValorUnit, "#,##0.00")), "@@@@@@@@")
    Print #1, Tab(0); ""
    '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, "-");

    '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); " "
    Print #1, Tab((40 - Len("OBRIGADO PELA PREFERÊNCIA")) / 2); "OBRIGADO PELA PREFERÊNCIA"
    Print #1, Tab(0); String(40, "-");
    Print #1, Tab((40 - Len("SysPDV - Versão 1.0.0 - Venda")) / 2); "SeuSistema - Versão 1.0.0 - Venda";
    'as linhas seguintes são linhas em branco para sair o papel da impressora, adapte-as como desejar
    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); " "
    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); " "
    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); " "
    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#

    rs.MoveNext
    Loop
    'Fecha o recorset
    rs.Close

    End Sub

    Cumprimentos.
    Agravina
    Agravina
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1623
    Registrado : 18/07/2010

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Agravina 10/10/2012, 20:33

    Com a permissão do Grande Amigo Piloto,que me ajudou no desenvolvimento deste projeto Original,veja se é isso que queres Jonasamado.
    http://speedy.sh/aPeER/ProjetoPDV.rar
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 10/10/2012, 22:27

    Meus Amigos;

    O Código do Piloto imprime somente o ultimo Item vendido. Os primeiros não saem no cupom. Ou seja: Sai impresso um cupom com somente o ultimo item da cesta.

    No arquivo do grande Agravina, imprime o cupom com todos os itens. Mas isso já tínhamos. O que preciso é imprimir 1 cupom para cada item. Um cupom completo, com cabeçalho e rodapé para cada Item.

    Obrigado, agora que sai do trabalho e pude testar.

    Fico no aguardo.

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 11/10/2012, 03:43

    Esta imprimindo corretamente conforme sua solicitação.

    https://dl.dropbox.com/u/26441349/JonasAmado_2.rar


    Com o código acima..

    Cumprimentos.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 11/10/2012, 18:29

    Amigo Piloto,

    Aproveitei horário de almoço para testar.

    Continua igual. Somente imprime o ultimo item vendido. Ex:

    Adiciono 3 itens na venda. Clico em imprimir. Sai 1 cupom com o ultimo dos 3 Itens.
    Não sai 1 cupom para cada Item como preciso.

    Já estou preocupado. Será que não é possível fazer isso no access?

    Por favor, dá uma olhada novamente.

    Muiito Obrigado.


    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 12/10/2012, 21:45

    Impossível isso. Teste com o arquivo txt. Aplique um ponto de interrupção no código.... E vá executando... Apos cada loop observe o txt, verá que modifica a cada loop.


    Cumprimentos.
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 12/10/2012, 21:53

    Private Sub btnImprimir_Click()
    Dim NCount As Integer, X As Integer
    Dim nPed, DtVenda, Fpag
    'Variável para o número da venda
    nPed = Me.Códigovenda
    'Variável para a data da venda
    DtVenda = Format(Date, "dd/mm/yyyy")
    'Variável para o tipo de pagamento
    'Fpag = StrTipoPgto

    'selecionar items do cupon
    Dim StrSQL As String
    Dim rs As DAO.Recordset
    Dim Db As DAO.Database

    'Observe que aqui é carregado os itens da tabela
    StrSQL = "SELECT DetalheCódigoVenda,CodProduto,Descrição,Quant," _
    & "ValorUnit, DataVenda FROM tbl_VendaDetalhe WHERE DetalheCódigoVenda = " & Me.Códigovenda & ";"

    'Seta o Db
    Set Db = CurrentDb
    'Seta o Recordset com a SQL
    Set rs = CurrentDb.OpenRecordset(StrSQL)
    'cupon para impressora termica de 40 colunas
    Aqui é a parte da impressão, observe que será impresso de imediato o primeiro registro constante no recordset
    Do While Not rs.EOF
    'Open "LPT1:" For Output Access Write As #1
    Open CurrentProject.Path & "\Cupom.txt" For Output Access Write As #1

    Print #1, Tab(0); "TESTE DE EMPRESA"
    Print #1, Tab(0); "Rua: " & "erua" & " - " & "ebairro";
    Print #1, Tab(0); "ecid" & " - " & "eest"; " Cep: " & "ecep";
    Print #1, Tab(0); "Tel: " & "etel";
    Print #1, Tab(0); "Site: " & "esite";

    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); "Descrição "; "(Código)";
    Print #1, Tab(0); "Und "; " Pco.Unit."; " Qtd./Peso "; " Vlr.Total "
    Print #1, Tab(0); String(40, "-");


    'Imprime os campos: Sigla, Descrição e Código de Barras
    Print #1, Tab(0); Left(rs!Descrição, 24); " "; "(" & Format(rs!Codproduto, "0000000000000"); ")" '@ alinha à direita
    'Imprime os dados: Sigla, Preço Unitário, Quantidade e SubTotal
    Print #1, Tab(0); " "; Format$(Format$(rs!ValorUnit, "#,##0.00"), "@@@@@@@@"); _
    " "; Format(rs!Quant, "000"); " "; Format$(Format$(rs!Quant, "###000") * (Format$(rs!ValorUnit, "#,##0.00")), "@@@@@@@@")
    Print #1, Tab(0); ""
    '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, "-");

    '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); " "
    Print #1, Tab((40 - Len("OBRIGADO PELA PREFERÊNCIA")) / 2); "OBRIGADO PELA PREFERÊNCIA"
    Print #1, Tab(0); String(40, "-");
    Print #1, Tab((40 - Len("SysPDV - Versão 1.0.0 - Venda")) / 2); "SeuSistema - Versão 1.0.0 - Venda";
    'as linhas seguintes são linhas em branco para sair o papel da impressora, adapte-as como desejar
    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); " "
    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); " "
    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); " "
    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#
    Neste ponto o cupom já foi impresso
    Aqui vai para o proximo registro ou seja para a posição: Do While Not rs.EOF, assim sucessivamente registro a registro

    rs.MoveNext
    Loop
    'Fecha o recorset
    rs.Close

    End Sub


    Portanto amigão é impossível deste código não estar funcionando ai...

    Cumprimentos.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 13/10/2012, 11:54

    Mestre Piloto,

    Eu entendo que o código pode estar correto imprimindo em um .txt com ponto de interrupção. Mas imprimindo pela portal LPT1 direto na impressora, n¤ao funciona.

    Já testei em 3 impressoras de cupom diferentes. Uma com porta serial. Outra com LPT1 com guilhotilha, outra com USB com guilhotina. Simplesmente imprime somente o ultimo item colocado na cesta de venda.

    N¤ao sei nem como te explicar, mas só imprime o ultimo item.

    Será que o código geral a informação tao rápido que não da tempo de enviar para a porta da impressora? Ou sera que no caso de imprimir direto na impressora, tem que aguardar o anterior imprimir?

    De qualquer forma te agradeço muito. Mas fica ai o desafio, fazer isso funcionar.

    Muito Obrigado.

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 13/10/2012, 13:38

    Entendi... Talvez o Buffer de impressão ainda esteja processando a primeira impressão quando o código executa a segunda e é substituida e assim sussecivamente... imprimindo apenas a ultima....


    Faça assim:


    Coloque um ponto interrupção no código no loop... Execute e quando parar a execução no ponto de interrupção aguarde e veja se imprime o primeiro ítem...


    Aguardo seu retorno.

    Cumprimentos.
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 13/10/2012, 14:06

    Piloto;

    Consigo fazer essa interrupção usando um timer?

    Não estou conseguindo parar o código e fazer ele esperar.

    Obrigado,

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 13/10/2012, 14:22

    Crie um módulo... Nomeeie de mdlDiversos.

    Nele Aplique:


    Public Function Pause(NumberOfSeconds As Variant)
    On Error GoTo Err_Pause

    Dim PauseTime As Variant, start As Variant

    PauseTime = NumberOfSeconds
    start = Timer
    Do While Timer < start + PauseTime
    DoEvents
    Loop

    Exit_Pause:
    Exit Function

    Err_Pause:
    MsgBox err.Number & " - " & err.Description
    Resume Exit_Pause

    End Function



    - Salve e no código abaixo do Rs.MoveNext aplique a linha em vermelho... o tempo (10) é expresso em segundos

    rs.MoveNext
    Pause 10
    Loop
    avatar
    jonasamado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 22
    Registrado : 19/09/2011

    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  jonasamado 13/10/2012, 14:37

    Perfeitoooooo!

    Agora imprimiu certinho!!!

    Piloto, você conseguiu! Agora imprime item por item. Diminui o tempo e ficou show!

    Cara, nem sei como te agradecer. Me salvou de um problema.

    Está resolvido.

    Muito obrigado mesmo.

    Jonas
    avatar
    Convidado
    Convidado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Convidado 13/10/2012, 14:57

    O Fórum agradece o Retorno.
    avatar
    lhardrex
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 30/12/2013

    [Resolvido]PDV + Impressão do Cupom Empty Formulario Vendas Abrindo

    Mensagem  lhardrex 22/4/2014, 22:46

    Olá,
    Desculpe ativar um tópico antigo, mas o link que posta no início aparece que não estou autorizado à vê-lo.

    No exemplo que colocam, ao abrir o access, o formulário (FrmVendas) vendas abre sozinho. Como isso está sendo feito, já que a única macro criada no arquivo não se refere à isso? Também não encontrei nenhuma referência nas linhas de código ordenando que esse formulário seja aberto automaticamente.

    Desde já agradeço.

    Conteúdo patrocinado


    [Resolvido]PDV + Impressão do Cupom Empty Re: [Resolvido]PDV + Impressão do Cupom

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/9/2024, 02:51