Impressão em portas gravadas no DBF

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

rbonotto
Usuário Nível 3
Usuário Nível 3
Mensagens: 253
Registrado em: 06 Mai 2005 18:52

Impressão em portas gravadas no DBF

Mensagem por rbonotto »

Tenho um cliente que tem um banco de dados onde cada regsitro tem um campo caracter de 4 letras. Este arquivo é usado na venda e o campo citatdo é preenchido com um dos seguintes parametros:

- lpt1
- lpt2
- com1
- com2

Que ja estão gravados no banco de dados de estoque.

Após a digitação de todos os itens de venda ele manda imprimir, e ele precisa que saia os itens que possuem campo preeenchi do por lpt1 sejam impressos na porta LPT1, os preenchidos em com1 sejam impressos em COM1 e ai por diante....

Quando fiz o teste colocava assim:

IF campo_imp == 'LPT1'
SET PRINTER TO LPT1
ELSEIF campo_imp == 'LPT2'
SET PRINTER TO LPT2
ELSEIF campo_imp == 'COM1'
SET PRINTER TO COM1
ELSEIF campo_imp == 'COM2'
SET PRINTER TO COM2
END

Quando a impressora é lptX da certo, mas quando é nas portas comX não imprime nada !!!

As impressoras estão em rede( novel) e possuem um sistema bem antigo que ja faz este procedimento, o que retira a possibilidade do hardware estar mal configurado....

Alguém poderia me ajudar ???

Abraços,
And
Usuário Nível 3
Usuário Nível 3
Mensagens: 163
Registrado em: 25 Set 2005 18:31
Localização: São Paulo/SP

Mensagem por And »

Nunca testei, mas acho que via comando (clipper) não será possivel, pois pelo que tenho lido no fórum vc teria que usar um ponte (ex: Dosprinter) para setar a saida para as portas seriais.

Pesquise no fórum e encontrará varios tópicos relacionados a sua duvida.


Abraço,
Anderson
Clipper 52e/Clipper 53b/Blinker 7/Vlib/Fglib/DBFNTX
_______________________________________________
Migrando para [x]Harbour 0.99.60 (SimpLex) + MiniGUI 1.2 Exp. (Build 22)
_______________________________________________
Assine o manifesto dos artistas pela preservação da amazônia.
Avatar do usuário
digitom
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Abr 2006 13:52
Localização: Anápolis-Go
Contato:

Mensagem por digitom »

Use assim se vc estiver usando XP

Código: Selecionar todos

IF campo_imp == 'LPT1'
   SET PRINTER TO LPT1
ELSEIF campo_imp == 'LPT2'
    SET PRINTER TO LPT2
ELSEIF campo_imp == 'COM1' 
    RUN cmd.exe /c COPY ARQUIVO.TXT COM1 > null
ELSEIF campo_imp == 'COM2' 
    RUN cmd.exe /c COPY ARQUIVO.txt COM2 > null
Endif
Se estiver usando o WINDOWS 98

Código: Selecionar todos

IF campo_imp == 'LPT1'
   SET PRINTER TO LPT1
ELSEIF campo_imp == 'LPT2'
    SET PRINTER TO LPT2
ELSEIF campo_imp == 'COM1' 
    RUN COPY ARQUIVO.TXT COM1 
ELSEIF campo_imp == 'COM2' 
    RUN COPY ARQUIVO.TXT COM1 
Endif
Lembrando que para porta COMx é preciso gerar o arquivo TXT antes.


Entendido ?
Fui :)
Avatar do usuário
digitom
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Abr 2006 13:52
Localização: Anápolis-Go
Contato:

Mensagem por digitom »

Havia me esquecido também é necessário preprepar a porta COMx

Veja na impressora qual é a velocidade, paridade, etc.

Ex.
MODE COM2: 9600,e,8,1
Fui :)
rbonotto
Usuário Nível 3
Usuário Nível 3
Mensagens: 253
Registrado em: 06 Mai 2005 18:52

Mensagem por rbonotto »

digitom escreveu:Havia me esquecido também é necessário preprepar a porta COMx

Veja na impressora qual é a velocidade, paridade, etc.

Ex.
MODE COM2: 9600,e,8,1
Valeu, vou tentar ! tomara que funcione :-o

Abs
Responder