Opa : eu tinha mandado msg antes mas pelo jeito minha internet deu xabu e não foi enviada... Os pontos que tinha colocado foram :
- afaik não importa o método para execução externa (se java, dbms_scheduler, external procedure, não importa) via de regra a recomendação de indicar o processador de comandos se mantém, assim sugeri Testar a rotina passando a linha de chamada completa (ie, \pathdowindows\system32\cmd.exe /c \path\nomedoarquivo.bat) e - seria interessante que vc citasse EXATAMENTE o erro que recebe, E nos confirmasse se é impressora local ou de rede (já que acessos a recursos não-locais nem sempre é viável em PL/SQL sem extensões, o caso típico é I/O, por exemplo) ===> Como em outras msgs da thread vc acabou confirmando que é impressora remota, de rede, acaba sendo Crítica porém uma questão que eu não tinha pensado, que é o usuário Windows que executa o RDBMS : se for o usuário interno do sistema, é MUITO possível que esse cara não tenha privilégio externo algum, aí (obviamente) vc está logado no Windows com OUTRO usuário, e por isso consegue executar o .bat sem problemas... ===> Além da questão de privilégio do usuário Windows que roda o RDBMS (e em cujo account o shell script será executado), outras possibilidades Adicionais que vc pode explorar são : a. já que vc tem Java no database em questão, ao invés de o usar para executar comando externo vc pode imprimir diretamente pelo java : dá uma googlada por JAVA REMOTE PRINTER que vc acha diversos exemplos ou b. impressoras de rede normalmente rodam sob um serviço próprio, que pode ser muitas vezes acessado via rede : https://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:38012348052#5258287200346885163 tem um exemplo ou c. vc disse que o seu sistema é desenvolvido em PL/SQL : como sabemos que o PL/SQL por si só NÃO TEM nenhum comando para criar telas/interfaces/frontend para o usuário, com absoluta certeza OU vc está chamando as packages de extensão web presentes no RDBMS (seja diretamente seja via APEX, FormSpider, etc), OU vc toma o caminho contrário, ie, a partir de alguma linguagem/tool externa que vc usou pra criar o frontend vc chama as rotinas PL/SQL... Em qualquer desses casos vc tem possibilidades de escrever uma rotina específica de impressão, veja lã... []s Chiappa