PERGUNTAS E RESPOSTAS
 
Bem Vindo, Visitante  Todos os Fórums
  ADVPL
Enviar para a impressoraImprimir  Enviar e-mail para um amigoEnviar Para um Amigo
Precisa estar Logado

Subject Assunto:
Selecionar porta USB para impressão
Versão:
12.1.25
Plataforma:
Microsoft
Complemento:
DB:
SQL Server
Complemento:
LinkedIn
Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário EDUARDONET EDUARDONET em 28/11/2019, 11:09 h
Local: RS  Registro: 04/05/2017  Postagens: 13
Bom dia pessoal !

Instalei duas impressoras térmicas(ALLEGRO) num computador utilizando portas USB.
Numa impressora utilizo etiquetas grandes e na outra etiquetas pequenas.
Via programa ADVL quero imprimir na devida impressora o modelo de etiqueta selecionada.

Meu problema ocorre exatamente nesse ponto, a impressão acontece somente numa impressora, independente do modelo de etiqueta selecionada.

Como endereçar a impressão via programa, ora para USB001, ora para USB002 ?

Desde já agradeço a atenção dos colegas.

Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário CELSODC CELSODC em 28/11/2019, 15:03 h
Local: SP  Registro: 31/10/2019  Postagens: 2
Boa tarde EDUARDONET, segue:

MsCBPrinter( "ALLEGRO", _cPorta,,, .F.,,,,, )

Onde _cPorta = "USB001" ou "USB002"

Caso utilize uma impressora em rede, deve utilizar NETUSE, ok?

Celso Costa
TI9 Consultoria
(19) 99696-2979

Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário EDUARDONET EDUARDONET em 29/11/2019, 09:17 h
Local: RS  Registro: 04/05/2017  Postagens: 13
Bom dia Celso, obrigado pelo retorno !

Infelizmente já realizei esse teste, mas sem sucesso.
O Windows não aceita utilizar esse nome de recurso.

Ocorre erro conforme abaixo:

C:\Users\eduardo>net use usb001 \\T-TI-03\ETIQUETA_GRANDE
Erro de sistema 67.

O nome da rede não foi encontrado.

Como LPT1 consigo mapear, mas sem sucesso na impressão.

C:\Users\eduardo>net use lpt1 \\T-TI-03\ETIQUETA_GRANDE
Comando concluído com êxito.

Segue abaixo código ADVPL:

cDirBat := "\\gaviao\Public\Atalhos\SETA_IMPR_ALLEGRO.BAT"
//                                  NET USE %1 /del; NET USE %1 %2
Do Case
   Case cPorta == ‘1‘
        cPorta := ‘USB001‘               
        shellExecute("Open",cDirBat,cPorta + " \\T-TI-03\ETIQUETA_GRANDE","D:\",1)

   OtherWise // cPorta == 2
        cPorta := ‘USB002‘               
        shellExecute("Open",cDirBat,cPorta + " \\T-TI-03\ETIQUETA_PEQUETA","D:\",1)

EndCase

MSCBPRINTER("ALLEGRO",cPorta,,10,.F.,,,,,,.F.,)


Para postar no Fórum você precisa efetuar o seu login ou se registrar

 Mudar para Fórum

 

 

 
 
   
Pagina Principal Shopping PROTHEUS Tire suas duvidas Vagas Microsiga em todo Brasil Aprofunde seus conhecimentos Noticias Online Fale Conosco Pagina Principal