Boa tarde. Estou com uma solicitação para que quando integre pedidos de vendas, vindo do nosso força de vendas, em uma determinada regra onde são alguns vendedores, caso entre nessa regra, faça a impressão do pedido em uma determinada impressora. A pergunta é, consigo definir uma impressora padrão, para quando a execução for via job? Caso sim, alguém tem algum exemplo de impressão com FWMsPrinter() que seja enviado via spool para uma impressora padrão? Att
Oi Edison, no parâmetro cPrinter terá que passar o nome da impressora mapeada no Servidor ( isso porque o Job é executado o Servidor do appserver ).
Então irá usar o método Print() para que seja enviado direto para a impressão, pois o Preview() irá mostrar na tela, o que não é o caso.
Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.
Obrigado Jorge, veja bem, estou lhe enviando parte do código que deve fazer a impressão.
Eu adicionei o nome da impressora no parâmetro cPrinter, mas talvez o que eu esteja tentando não seja possivel.
Fiz a configuração para imprimir em uma impressora térmica e nesse momento esta adicionada na minha máquina (entrada usb). Isso se funcionar, vai ficar junto ao faturista para que assim que sair a impressão seja enviada para a separação da mercadoria.
Edison, deveria funcionar mas retire os espaços e caracteres especiais no nome da impressora e mapeia novamente.
Reinicie os serviços e se precisar reinicie até mesmo a máquina, pois deve ser o nome da impressora mesmo.
Então Jorge, eu fiz um novo fonte e fazendo a impressão por dentro do sistema, ele envia direto para essa impressora.
Saberia me dizer, como faço o mapeamento dessa impressora no servidor, para ser encontrada via Job?
Olá Edilson,
Estou passando pelo mesmo problema tentando imprimir direto na impressora usando um metodo rest.
Conseguiu alguma coisa?
Infelizmente não Ismael, eu fiz a rotina para que o usuário possa selecionar o registro desejado e mandar para impressão.
Puxa, que pena. Penso que o pessoal do framework/infra poderia investir um tempinho e nos ajudar a resolver esse problema. Nos daria uma flexibilidade muito grande para desenvolvimento de portais integrados com periféricos. Eu abri ontem 22/07 um chamado com o team de ADVPL. Vamos ver se vem alguma resposta. Se conseguir algo publico aqui.
Boa tarde Edilson! Conseguiu algum retorno da totvs sobre o assunto. Estou precisando fazer a mesma coisa.
Tembém estou precisando da mesma coisa. Imprimir em uma impressora de rede através de uma rotina especifica executada em JOb pelo Schedule do Protheus. Mas simplesmente não sai nada na impressora.
Caso exista a necessidade de realizar a impressão de um relatório via JOB utilizando a impressão via Spool informe a impressora diretamente para ser considerada na impressão.
lAdjustToLegacy := .F.
lDisableSetup := .T.
cLocal := "\spool"
oPrinter := FwMsPrinter():New("exemplo.rel", IMP_SPOOL, lAdjustToLegacy, cLocal, lDisableSetup, , , , , , .F., )
oPrinter:StartPage()
oPrinter:Say( 20, 30, "Linha Teste")
oPrinter:EndPage()
oPrinter:lServer := .T.
oPrinter:cPrinter := "\\printserver-02.sp01.local\SPCloudPrinter-Mono" // Endereço da impressora que será utilizada
oPrinter:Preview()