MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Imprimir relatório em uma impressora específica em um formato específico

    alozs
    alozs
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 261
    Registrado : 06/02/2018

    [Resolvido]Imprimir relatório em uma impressora específica em um formato específico Empty [Resolvido]Imprimir relatório em uma impressora específica em um formato específico

    Mensagem  alozs em Qua Nov 20, 2019 8:18 pm

    Boa noite amigos, venho aqui solicitar a ajudar do pessoal, estou utilizando o exemplo do tópico abaixo para imprimir um relatório em uma impressora específica (está funcionando corretamente) porem já quebrei a cabeça aqui e não consegui resolver, acontece que eu configuro o relatório para o padrão de impressão (acPRPSFanfoldLglGerman 41 Formulário Contínuo Ofício Alemão (216 mm x 330 mm)) aciono o código abaixo porem ele altera o padrão para formato A4 dai bagunça todo meu relatório que vou imprimir na impressora térmica.

    retirado do tópico: https://www.maximoaccess.com/t6693-resolvidoimprimir-ficha-de-cadastro-em-impressora-nao-padrao

    Código:
    Public Function sendPrinter_generic()
    Dim j As Byte, st As Boolean, Padrão As String
    Dim idx As Byte, prt As Printer
    Dim xtrImpressora$
    On Error Resume Next

    xtrImpressora = Nz(DLookup("nomeImpressora", "tabImpressoraSelecionada"), "Null") ' Aqui armazeno o nome da impressora na variável varNomeImpressa

    If xtrImpressora = "Null" Then
       MsgBox "Nenhuma impressora configurada, configure no menu 'Manutenção' -> 'configurar impressora de cupom padrão'", vbCritical, "Atenção"
       Exit Function
       Else
       xtrImpressora = LTrim(RTrim(xtrImpressora))
    End If

    j = 0: st = False
    Padrão = Application.Printer.DeviceName

    For Each prt In Application.Printers
    Debug.Print prt.DeviceName
    If prt.DeviceName = Padrão Then idx = j
    If prt.DeviceName = xtrImpressora Then 'a impressora desejada
    st = True
    Exit For
    End If
    j = j + 1
    Next

    If st = False Then
    j = idx 'Se a impressora não for encontrada, imprime na impressora atual, se comentar a linha Exit Function
    Exit Function
    End If


    DoCmd.OpenReport "Rel_Cupom_Nao_Fiscal_generic", acViewPreview, WindowMode:=acHidden  'Abre o rel de forma oculta
    Set Reports("Rel_Cupom_Nao_Fiscal_generic").Printer = Application.Printers(j) 'seta a impressora
    DoCmd.OpenReport "Rel_Cupom_Nao_Fiscal_generic", acViewNormal, , , WindowMode:=acHidden 'Imprime
    DoCmd.Close acReport, "Rel_Cupom_Nao_Fiscal_generic"
    End Function


    obs: percebi que ele muda quando chega na parte:
    Código:
    Set Reports("Rel_Cupom_Nao_Fiscal_generic").Printer = Application.Printers(j) 'seta a impressora
    bigfill
    bigfill
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 405
    Registrado : 27/03/2015

    [Resolvido]Imprimir relatório em uma impressora específica em um formato específico Empty Re: [Resolvido]Imprimir relatório em uma impressora específica em um formato específico

    Mensagem  bigfill em Qui Nov 21, 2019 6:12 am

    Bom dia!

    alozs, Recentemente tive que configurar uma impressão de etiqueta na impressora Térmica. E para ajustar tive que mexer na configuração de Escala da impressora.

    Tem que verificar qual o formato esta configurado na impressora.
    alozs
    alozs
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 261
    Registrado : 06/02/2018

    [Resolvido]Imprimir relatório em uma impressora específica em um formato específico Empty Re: [Resolvido]Imprimir relatório em uma impressora específica em um formato específico

    Mensagem  alozs em Qui Nov 21, 2019 6:43 am

    Olá bigfill, então amigo se eu colocar pra abrir o relatório e mandar imprimir manualmente vai tranquilo da forma que eu configurei porem se eu utilizo o código acima ele reconfigura para A4 qualquer relatório.
    alozs
    alozs
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 261
    Registrado : 06/02/2018

    [Resolvido]Imprimir relatório em uma impressora específica em um formato específico Empty Re: [Resolvido]Imprimir relatório em uma impressora específica em um formato específico

    Mensagem  alozs em Qui Nov 21, 2019 12:40 pm

    Pessoal, consegui resolver o problema, adicionei o código abaixo  bounce

    Código:
    Reports("Rel_CupomNaoFiscal_generic").Printer.PaperSize = acPRPSFanfoldLglGerman

    ficando

    Código:
    DoCmd.OpenReport "Rel_Cupom_Nao_Fiscal", acViewDesign, WindowMode:=acHidden  'Abre o rel de forma oculta
    Set Reports("Rel_Cupom_Nao_Fiscal").Printer = Application.Printers(j) 'seta a impressora
    Reports("Rel_Cupom_Nao_Fiscal").Printer.PaperSize = acPRPSFanfoldLglGerman
    DoCmd.OpenReport "Rel_Cupom_Nao_Fiscal", acViewNormal, , , WindowMode:=acHidden 'Imprime
    DoCmd.Close acReport, "Rel_Cupom_Nao_Fiscal"
    bigfill
    bigfill
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 405
    Registrado : 27/03/2015

    [Resolvido]Imprimir relatório em uma impressora específica em um formato específico Empty Re: [Resolvido]Imprimir relatório em uma impressora específica em um formato específico

    Mensagem  bigfill em Sex Nov 22, 2019 10:06 am

    alozs, Que bom que conseguiu resolver. O fórum agradece pelo retorno cheers

      Data/hora atual: Qui Ago 13, 2020 12:48 pm