Clipper On Line • Ver Tópico - Uso da LPT1 em rede TCP/IP

Uso da LPT1 em rede TCP/IP

Discussão sobre a linguagem CA-Clipper.

Moderador: Moderadores

 

Uso da LPT1 em rede TCP/IP

Mensagempor billy1943 » 20 Jun 2009 11:02

Uma empresa usa programa em CLIPPER e rede TCP/IP para ativar seus terminais, e está acontecendo o seguinte:

Um terminal, vamos chamar de TERMINAL 1, através de um batch ativa a sua impressora (escrava) através do comando:

NET USE LPT1 \\188.12.1\EPSONLX300L

Imprime tudo OK.

Nesse interim, outro terminal que vamos chamar de TERMINAL 2, ativa sua impressa (escrava) através do comando;

NET USE LPT1 \\188.12.2\EPSONSTYLUS600

Também imprime tudo OK.

Se o operador do TERMINAL 1 enviar algo pelo seu terminal para impressão usando a LPT1 o que acontece ?
A impressão vai sair na impressora EPSONSTYLUS600 junto ao terminal 2 !!

Ou seja, o último que ativar a LPT1 para a sua impressora, através do batch, passará a receber as impressões de todos os terminais, que forem dirigidas à LPT1. Para evitar isso, ele avisa os outros operadores para não entrar no sistema até ele terminar as suas impressões via LPT1.

Quando se usa outros programas (Word, Excel, etc) que escolhem a impressora, dentre as várias existentes como as ligadas via USB, bem como o sistema em Clipper com recurso do Nodosimp, não há problema algum.

Em suma, ninguem tem impressora escrava quando usando a rede TCP/IP.
Já pensamos em utilizar LPT2, LPT3 mas dado ao número de impressoras paralelas existentes isto é impraticável.
O bom do computador é que ele resolve os problemas, sem nunca levantar nenhum.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
Avatar de usuário

billy1943
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 570
Data de registro: 12 Mai 2009 17:33
Cidade/Estado: Bauru-SP
Curtiu: 1 vez
Mens.Curtidas: 21 vezes

Uso da LPT1 em rede TCP/IP

Mensagempor Pablo César » 20 Jun 2009 14:42

Se o operador do TERMINAL 1 enviar algo pelo seu terminal para impressão usando a LPT1 o que acontece ?
A impressão vai sair na impressora EPSONSTYLUS600 junto ao terminal 2 !!
Engraçado, isso nunca me aconteceu. A minha pergunta: nessa rede, os termnais utilizam IP fixos ou digamos predefinidos ? Isto é, para PC1 teria o IP 188.12.1.1 e pro PC2 188.12.1.2 ? Veja bem que os IPs que você colocou tem apenas dois pontos separadores sendo que o correto deveria ser três como eu exemplifiquei. Acho que seu probela está baseado nisso. Tente mapear com o nome dos PCs, mas padronize, não coleque espaços para facilitar no DOS. Tá certo que para capturar terminais com nome que contém espaços pelo DOS você tem que que colocar entre aspas, mas tente evitar para não dar confusão. Então daí você capturaria as impressoras deste jeito:

\\pc1\epson
\\pc2\stylus

E não pelo IP reduzido que você colocou.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Re: Uso da LPT1 em rede TCP/IP

Mensagempor Eros » 20 Jun 2009 20:12

Ola..

Ja tive esse mesmo problema em redes utilizando windows xp e windows vista. A captura de impressoras eram feitas por IP tambem. Resolvi o problema, fazendo a captura pelo nome da estação.

net use \micro1\impressora
net use \micro2\impressora

Nao sei porque, mas antes eu tambem utilizava net use \192.168.2.\impressora, e acabei tendo esse problema.

O melhor de tudo é que, para fazer a captura por numero do IP, os micros da rede precisam ter IP fixo, e fazendo a captura pelo nome do micro, nao precisa ter ip fixo.

E vc sabe, sem ip fixo a rede fica mais segura.
Eros
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 291
Data de registro: 19 Dez 2008 18:23
Cidade/Estado: Goiania
Curtiu: 0 vez
Mens.Curtidas: 28 vezes

Re: Uso da LPT1 em rede TCP/IP

Mensagempor billy1943 » 20 Jun 2009 22:03

Olá Pablo César e Eros,

Desculpe eu ter colocado IP´s da forma acima, apenas como exemplos, pois os mesmos realmente são inválidos.
Cada terminal tem o seu IPI fixo, e o problema ocorre justamente aí.
Se considerarmos uma rede NT comum, não haveria problema, porque aí seria na forma apontada, pelo nome do terminal e o nome da impressora;

NET USE LPT1: \\nome_do_terminal\nome_da_impressora

Esse terminal não utilizaria a impressora que estivesse "escrava" em outro terminal, porque o NET USE é local ao terminal.

Mas em uma REDE por TCP/IP não é.

Como relatei anteriormente, já tentamos de tudo e está dificil, pois está precisamente um contato de cada operador com o outro, avisando que vai usar o sistema, pois senão toda impressão posterior do sistema usando a LPT1, vai para o último terminal que acionou o batch atrelado ao ícone de inicialização do sistema;

Obrigado pela atenção.
O bom do computador é que ele resolve os problemas, sem nunca levantar nenhum.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
Avatar de usuário

billy1943
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 570
Data de registro: 12 Mai 2009 17:33
Cidade/Estado: Bauru-SP
Curtiu: 1 vez
Mens.Curtidas: 21 vezes

Re: Uso da LPT1 em rede TCP/IP

Mensagempor ANDRIL » 21 Jun 2009 09:46

Como via de regra, nao uso mais LPT1 para imprimir em outro terminal, somente para uso local. Quando tenho que imprimir via captura uso de LPT2 pra cima.

Veja tambem como esta sendo chamado os sistemas nas maquinas ponto. Se a linha de comando do atalho que chama o EXE for algo \\SERVIDOR\NOMEDOEXECUTAVEL pode interferir na impressão da porta LPT1 local.

Prefira sempre dar uma letra de unidade ao compartilhamento para chamar o executavel, assim F:\nomedoexecuvel, sendo F: a unidade de captura onde esta instalado a pasta do seu sistema.

Ate+,
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
Avatar de usuário

ANDRIL
Usuário Nível 5

Usuário Nível 5
 
Mensagens: 1271
Data de registro: 06 Jul 2004 00:44
Curtiu: 12 vezes
Mens.Curtidas: 46 vezes

Uso da LPT1 em rede TCP/IP

Mensagempor Pablo César » 22 Jun 2009 09:32

Mas em uma REDE por TCP/IP não é.
Não entendí o que você quis dizer com isso. Você está querendo dizer que não é possível pelo nome da estação ?

O que eu entendo de rede, em todos os casos são possíveis dar um nome a cada estação.

Esse terminal não utilizaria a impressora que estivesse "escrava" em outro terminal, porque o NET USE é local ao terminal.
Ahhh eu acho que ja sei o que você está tentando dizer. No caso, capturando por meio IP, mesmo sendo impressora local... funcionaria ? Bem se for isso, eu acho que isso é totalmente desnecessário, pois se o terminal ja possui um impressora instalada localmente, você deveria isentar este terminal da captura. E você pode fazer isso através do nome da estação. Assim por exemplo:

Em arquivo batch quando chama o programa:
IF NOT %USERDOMAIN%==CREDIARIO_01 NET USE LPT1: \\CREDIARIO_01\EPSON
CD\PROGRAMA
PROGRAMA.EXE
Caso o terminal não seja do tipo NT e for WIN98 (por exemplo), grave no autoexec.bat uma varável de ambiente em cada estação conforme o nome de cada.

No seu código fonte:
VTERM:=UPPER(NETNAME())
IF !(VTERM="CREDIARIO_01")
   NETREDIR("LPT2","\\CREDIARIO_01\EPSON")
ENDIF
COPY FILE("FICHA.PRN") TO ("LPT2")


Eu acho que o seu problema está logo aí... quando o terminal que tem um servidor de impressão e que ainda passa por um bacth genérico para captura. Melhor seria isentar a captura nesse terminal.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Re: Uso da LPT1 em rede TCP/IP

Mensagempor billy1943 » 22 Jun 2009 10:51

Isso mesmo, o que eu não perguntei antes aqui no Fórum, foi se havia um jeito de saber se a LPT1 já estaria ativada por outro terminal.

Se tem esse jeito, aí vou tentar fazer isso no meu sistema, apesar de nunca ter usado o "NET USE" internamente, somente o ativando via Batch, antes da carga do sistema.

Vou por em prática e volto ao assunto, informando o ocorrido.

Obrigado pela atenção porque o assunto realmente não é corriqueiro.
O bom do computador é que ele resolve os problemas, sem nunca levantar nenhum.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
Avatar de usuário

billy1943
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 570
Data de registro: 12 Mai 2009 17:33
Cidade/Estado: Bauru-SP
Curtiu: 1 vez
Mens.Curtidas: 21 vezes

Uso da LPT1 em rede TCP/IP

Mensagempor Pablo César » 22 Jun 2009 13:55

se havia um jeito de saber se a LPT1 já estaria ativada por outro terminal.
Como assim ativada por outro terminal ?. Acho que para você não está claro esse questão de compartilhar impressoras, por isso veja meu esclarecimento:

Somente um terminal pode ser o "servidor de impressão" e somente é aquele que tem a impressora conectada à CPU. Não há forma alguma de ser servidor se fisicamente não tem acesso direto. Ou outros terminais podem "capturar" a impressora sempre e quando o PC onde está a impressora conectada estiver ligado. Sendo que os terminais podem capturar e re-capturar sempre que for necessário, não há limitação para isso. Portanto não vejo rzaão de saber se ja estava capturada ou não. O que eu aconselhei é não "capturar" impressora no computador que é servidor dessa impressora. Sendo mais claro ainda, não é para capturar impressora no computador onde a impressora estiver conectada fisicamente.

Se tem esse jeito, aí vou tentar fazer isso no meu sistema, apesar de nunca ter usado o "NET USE" internamente, somente o ativando via Batch, antes da carga do sistema.
Não aconselho usar o "NET USE" de dentro da sua aplicação. Veja que no meu exemplo do codigo fonte estou utilizando a função "NETREDIR". E veja também que capturei na LPT2 em coincidência com o conselho do colega Andril. De dentro da sua aplicação você pode utilizar a LPT2 para imprimir seu relatório capturando e "descapturando".
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Re: Uso da LPT1 em rede TCP/IP

Mensagempor billy1943 » 22 Jun 2009 15:01

Oi, Pablo César:

- vou refazer a minha questão, o que talvez aclare o problema que estamos enfrentando, que em síntese é não se saber, se eu imprimir algo, onde vai acabar saindo.

Existe um meio de se saber antes em uma rede que funciona por TCP/IP, que se eu imprimir algo por Clipper, via LPT1, ou LPT2 ou LPT3, em qual das impressoras, e atrelada a qual terminal, a impressão vai sair ?

Note que estou me referindo à porta LPT1 da rede TCP/IP.

Nessa rede, toda ativação de LPT1, que é feita por qualquer dos terminais, na forma NET USE LPT1: \\999.999.99.9\impressora_escrava_desse_IP , passa então à impressora desse terminal, a função de imprimir tudo o que na rede for dirigida à LPT1, de agora em diante.

Como o batch deleta a LPT1 primeiro, antes de ativá-la, dá para se perceber o estrago que causaria nos outros terminais que estão com trabalho de impressão no momento ?
O bom do computador é que ele resolve os problemas, sem nunca levantar nenhum.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
Avatar de usuário

billy1943
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 570
Data de registro: 12 Mai 2009 17:33
Cidade/Estado: Bauru-SP
Curtiu: 1 vez
Mens.Curtidas: 21 vezes

Uso da LPT1 em rede TCP/IP

Mensagempor Pablo César » 22 Jun 2009 17:43

Existe um meio de se saber antes em uma rede que funciona por TCP/IP, que se eu imprimir algo por Clipper, via LPT1, ou LPT2 ou LPT3, em qual das impressoras, e atrelada a qual terminal, a impressão vai sair ?
Usando na linha de comando o NET USE (antes de chamar o seu aplicativo) e direcionando para um arquivo onde gravará o nome da impressora capturada e o endereço dessa captura. Basta ler o arquivo e procura pela string "LPT1". Seria isso ?
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Re: Uso da LPT1 em rede TCP/IP

Mensagempor billy1943 » 22 Jun 2009 22:06

Olá Pablo César,

Captei a vossa mensagem.

Realmente, vou usar a sua sugestão e dar um jeito de gravar em um arquivo que toda rede acesse, qual foi o terminal que ativou LPT1 e aí poderei consultar no próprio sistema ou fora dele, se ainda está prevalecendo o comando NET USE do terminal que adentrará no sistema.

Se a LPT1 ainda está indicando a impressora desse terminal, tudo bem. Em caso contrário, será necessária uma troca de mensagens entre os operadores, acerca da troca que será efetuada, antes da carga do terminal.

E acho também que a mensagem ajudará a saber onde sairá um determinado relatório, para aqueles terminais que não tem impressora escrava, e hoje tem de se sair procurando pela empresa onde está o dito cujo relatório. Tem casos que fica realmente a dúvida onde saiu o relatório, se é que saiu ...

Acho que dará certo !
O bom do computador é que ele resolve os problemas, sem nunca levantar nenhum.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
Avatar de usuário

billy1943
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 570
Data de registro: 12 Mai 2009 17:33
Cidade/Estado: Bauru-SP
Curtiu: 1 vez
Mens.Curtidas: 21 vezes

Uso da LPT1 em rede TCP/IP

Mensagempor Pablo César » 23 Jun 2009 08:49

Billy, não sei se é minha, tua ou de ambos em poder entender a sua questão. Pois quando você fala que irá implementar o direcionamento do NET USE num arquivo somente para que todos da rede saibam a captura, você me deixa mais intrigado ainda. Pois eu achava que esse arquivo deveria ser gerado localmente em cada estação de forma que não sobre-escrevesse e que tais informações apenas seriam úteis para o terminal que está acessado a aplicação.

Desculpe se eu tiver errado mas ainda acho que você está com o conceito errado sobre a questão dos terminais ao capturarem impressoras mesmo que diferentes, influenciem na impressão. Você poderia exemplificar em poucas palavras passo a passo um exemplo do que acontece. Mas explique de forma completa desde a captura (e mostrar exatamente como vocês fazem e através do quê: batch, de dentro do aplicativo) e cómo é mandado para a impressora. Pode ser ? Senão vou ficar com a impressão de que eu não soube explicar direito, talvez algum detalhe esteja sendo omitido e por isso não consigo lhe entender.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Re: Uso da LPT1 em rede TCP/IP

Mensagempor billy1943 » 23 Jun 2009 16:56

Olá, Pablo César:

Vou explicar como funciona nessa empresa a rede em TCP/IP:
- no servidor, existem várias pastas, uma para cada terminal;
- nessa pasta, o batch faz a ativação da LPT1 ou não, e chama o programa;
- nesse batch que chama o programa, ele ativa somente a porta LPT1 que necessitará para seus serviços de impressão da seguinte forma, se tiver impressora escrava:

NET USE LPT1 /DELETE
NET USE LPT1 \\numero_de_IP_do_terminal\sua_impressora_escrava
ESTOQUE.EXE

- se não tiver, chama o programa, não ativando LPT1 nenhuma, passando a usar a LPT1 que estiver em vigor, no momento;

- faço menção à LPT1 pois o sistema imprime notas, orçamentos tudo dirigido à LPT1;

- outras impressões tais como boletos bancários, e outros mais específicos são dirigidos à impressoras LASER, jato de tinta, sem problemas, pois essas impressões geralmente não são dirigidas à porta LPT1, ao contrário das de agulhas que quase cada terminal tem a sua e a impressão é sempre feita através da porta LPT1;

- ao fazer isso, em toda impressão que houver nesse terminal e em todos os outros, através da porta LPT1, a impressão será dirigida à impressora que foi ativada pelo último NET USE dado;

- isto causa contratempos, pois a impressão sai onde menos se espera;

- ou seja, em última palavra, não há meios (pelo menos que saibamos) de haver diversas LPT1 ativadas, cada uma em cada terminal, como funciona em uma rede NT em que fazemos o compartilhamento de uma impressora mas se houver impressoras escravas aos terminais, para estas é que serão dirigidas as impressões;

Em função disso, o operador que vai usar rotina que use a LPT1, precisa antes avisar aos outros operadores para não fazerem a mesma coisa no sistema, pois a porta LPT1 vai ser mudada, passando a ser aquela que por último utilizar o NET USE independente do IP que tenha esse terminal;

Espero ter esclarecido a contento.
O bom do computador é que ele resolve os problemas, sem nunca levantar nenhum.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
Avatar de usuário

billy1943
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 570
Data de registro: 12 Mai 2009 17:33
Cidade/Estado: Bauru-SP
Curtiu: 1 vez
Mens.Curtidas: 21 vezes

Uso da LPT1 em rede TCP/IP

Mensagempor Pablo César » 23 Jun 2009 19:38

Oi Billy, desculpe se estou sendo chato, mas a minha intenção é poder ajudá-lo. Permita-me fazer algumas perguntas:

- no servidor, existem várias pastas, uma para cada terminal;
- nessa pasta, o batch faz a ativação da LPT1 ou não, e chama o programa;
1. É dizer para cada terminal tem uma pasta ?
2. Se for assim, tem uma batch para cada terminal, diferenciando quando este tiver uma impressora local conectado à CPU ?

- nesse batch que chama o programa, ele ativa somente a porta LPT1 que necessitará para seus serviços de impressão da seguinte forma, se tiver impressora escrava:

NET USE LPT1 /DELETE
NET USE LPT1 \\numero_de_IP_do_terminal\sua_impressora_escrava
ESTOQUE.EXE
Em negrito, você quis dizer quando não tiver impressora local ?

- se não tiver, chama o programa, não ativando LPT1 nenhuma, passando a usar a LPT1 que estiver em vigor, no momento;
Outra vez em negrito, você quis dizer quando tiver impressora local ?

- outras impressões tais como boletos bancários, e outros mais específicos são dirigidos à impressoras LASER, jato de tinta
com respeito as outras impressões:

1. Você se refere às aplicações que não utilizam LPT1 ? Isto é, são impressão em USB através de aplicativos GUI ?
2. Existem duas impressoras para outras impressões ? Estas são do tipo "padrão", isto é: são as impressoras default para o resto dos terminais ?
3. Qual é a porta escolhida para os terminais que precisam imprimir "outras impressões" ?
4. Esses terminais que precisam imprimir "outras impressões" também precisam imprimir no aplicativo em Clipper ?

- ou seja, em última palavra, não há meios (pelo menos que saibamos) de haver diversas LPT1 ativadas
Não vejo ainda impossibilidade de isto ocorrer sempre e quando for respeitado o devido mapeamento para cada terminal. A sugestão é:

1. Se o terminal 2 precisa imprimir em aplicativo em Clipper e "outras impressões" e não tiver nenhum impressora conectada a ele, então faça uma batch para que capture a impressora matricial em LPT2 e capturar a LPT1 para o resto das impressões. Veja exemplo:

NET USE LPT1 \\numero_de_IP_do_terminal_que_é_servidor_de_impressão\nome_impressora_laser_ou_jato_tinta
NET USE LPT2 \\numero_de_IP_do_terminal_que_é_servidor_de_impressão\nome_impressora_matricial

2. Se o terminal 3 precisa imprimir em aplicativo em Clipper e "outras impressões" e tiver alguma impressora conectada a ele (no exemplo abaixo, a impressora a laser está conecta fisicamente a ele), então faça uma batch para que capture apenas a que está faltando. Veja exemplo:

NET USE LPT2 \\numero_de_IP_do_terminal_que_é_servidor_de_impressão\nome_impressora_matricial

3. Se o terminal 4 precisa imprimir em aplicativo em Clipper e "outras impressões" e tiver todas as impressoras conectadas a ele (a impressora a laser e a matricial estão conectas fisicamente a ele), então faça uma batch apenas para chamar sua aplicação e certifique-se que a instalação dfa matricial estiver instalada na porta LPT2.

Outras questões que ficaram pouco esclarecidas:
1. Pode capturar em vez do endereço de IP como nome do terminal ? Dá para mudar isso ?
2. Você pode mudar sua aplicação Clipper para que imprima sempre em LPT2 ?
3. Nessa rede, cada terminal quando executa o NET USE, não se comporta apenas para esse terminal ? Isto é, utilizando o NET USE no terminal 3, acaba influenciando a saída no terminal 4 ?

Eu acredito que a impressões do seu aplicativo Clipper devem ser feitas em LPT2, a fim de utilizar uma porta exclusiva para esse fim. Deixando a "default" para impressões comuns. Só para reforçar... é muito conveniente que para cada terminal tenha seu batch específico, mesmo que venha a repetir alguns comandos o importante ´pe fazer sempre a captura na porta de forma FIXA ou DEFINITIVA. Evite fazer re-capturamentos ou re-mapeamentos de impressoras, ja que a sua rede está instável com respeito a impressões. Outra coisa que ajuda muito é direcionar toda impressão para arquivo e depois direcinála no spooler da impressora, isso evita muitos contra-tempos.

Gostaria que você respondesse a todas minhas perguntas na ordem que foram feitas para poder eu entender. Desculpe a minha insistência.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

Re: Uso da LPT1 em rede TCP/IP

Mensagempor billy1943 » 23 Jun 2009 22:30

Oi, Pablo César:

Não tem de que se desculpar, pois realmente o assunto é complicado.
Não sei se notou mas ninguém, acho que ninguem mesmo, já viu um sistema desse, eu inclusive nunca tinha visto nada parecido até essa empresa instalá-lo.

Mas vamos às suas questões que tentarei responder do jeito mais claro possível;

1. É dizer para cada terminal tem uma pasta ?
SIM e quando é feito o logon na rede somente essa pasta é acessada pelo operador com as condições do Administrador
.
2. Se for assim, tem uma batch para cada terminal, diferenciando quando este tiver uma impressora local conectado à CPU ?
SIM, pois nem todos os terminais tem impressoras paralelas, geralmente de caracteres para impressão de Nota Fiscal, Duplicatas, etc

3 - Em negrito, você quis dizer quando não tiver impressora local ?
SIM, nem todos os micros terminais tem impressora escrava.

4 - Outra vez em negrito, você quis dizer quando tiver impressora local ?
SIM, todo o problema refere-se às impressoras locais que serve a um determinado terminal mas que pode receber impressão dos outros terminais também

Com respeito as outras impressões:

1. Você se refere às aplicações que não utilizam LPT1 ? Isto é, são impressão em USB através de aplicativos GUI ?
Não, podem ser impressões do próprio sistema usando NODOSIMP, ou gerando .RTF e impressão via WORD

2. Existem duas impressoras para outras impressões ? Estas são do tipo "padrão", isto é: são as impressoras default para o resto dos terminais ?
SIM, são default para todos os terminais, pois na impressão escolhe-se a impressora que fará o serviço

3. Qual é a porta escolhida para os terminais que precisam imprimir "outras impressões" ?
Como falei acima, o controle da impressão já foi passado para o NODOSIMP ou WORD, vide opções N e W abaixo

Outras questões que ficaram pouco esclarecidas:
1. Pode capturar em vez do endereço de IP como nome do terminal ? Dá para mudar isso ?
NÃO, o sistema só funciona com endereço IP, e não dá para mudar.

2. Você pode mudar sua aplicação Clipper para que imprima sempre em LPT2 ?
SIM, mas não preciso fazer isso, pois na impressão meu sistema funciona assim:
Aparece um menu para escolher o tipo de impressão, com as seguintes opçoes:
W - A impreessão ira para o WORD, sendo gerado antes um arquivo em RTF e depois encaminhado com o comando RUN ou equivalente
N - A impressão é preparada para o NODOSIMP e este é incumbido da impressão
T - O relatório é apresentado somente em TELA
S - O relatório é gravado em arquivo texto (SPOOL) e pode posteriormente ser impresso pelo Sistema ou pelo EDIT do DOS
I - O relatório descarrega direto na LPT1 ou LPT2 ou LPT3 (é solicitado o número da impressora na hora)

3. Nessa rede, cada terminal quando executa o NET USE, não se comporta apenas para esse terminal ? Isto é, utilizando o NET USE no terminal 3, acaba influenciando a saída no terminal 4 ?
Exatamente, deveria se comportar como se fosse um terminal, mas pelo modelo da rede em TCP/IP, o NET USE prevalece na rede inteira
O bom do computador é que ele resolve os problemas, sem nunca levantar nenhum.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
Avatar de usuário

billy1943
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 570
Data de registro: 12 Mai 2009 17:33
Cidade/Estado: Bauru-SP
Curtiu: 1 vez
Mens.Curtidas: 21 vezes

Próximo



Retornar para CA-Clipper

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 3 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro