Página 6 de 19

Convertendo Sistema do GASPRO para Harbour

Enviado: 09 Set 2012 18:15
por Toledo
Amigos, consegui fazer a impressão!
Adaptei uma função disponibilizada aqui no fórum pelo Leonardo, que pode enviar a impressão para portas LPT utilizando a PrintFileRaw e para outras impressoras (USB) usando a classe win_prn. Fiz um teste apenas em uma impressora laser (USB), então não sei qual será o resultado em impressoras matricial (porta paralela).

Minha preocupação era de não alterar os arquivos gerados pelo GAS (relatórios, funções, CH, etc), mas infelizmente não teve jeito.

No arquivo XXX_PUBL.CH incluir:

Código: Selecionar todos

drvautohelp:=.t.
arq_:=""
No arquivo CH principal (NomeProjeto.ch) incluir:

Código: Selecionar todos

#define opcoes_rel(l_m,c_m,op_rel,sos_cod,fil_ini) OPCOES_RHB(l_m,c_m,op_rel,sos_cod,fil_ini)

#command SET PRINTER TO <(file)> [<add: ADDITIVE>]    => ;
               Set_Printer( <(file)>, <.add.> )
No arquivo HBP incluir as libs:

Código: Selecionar todos

-lxhb
-lhbwin
-lhbct
Em anexo segue o arquivo GASPROHB.PRG, que deve ser usado no lugar do libg.prg. Então altere este arquivo no arquivo HBP também.

Atenção: todas as alterações feitas são para o HARBOUR.

Abraços,

Convertendo Sistema do GASPRO para Harbour

Enviado: 09 Set 2012 23:02
por bcm
Caro toledo,

quando compilo com o prg gasprohb.prg esta dando erro ao gerar o arquivo de configuracao dos diretorios do sistema

Poderia me dar uma luz

Convertendo Sistema do GASPRO para Harbour

Enviado: 09 Set 2012 23:30
por Toledo
Amigo bcm, informe qual o código do erro, a mensagem que está apresentando e se for possível em qual função está ocorrendo o erro.

Abraços,

Convertendo Sistema do GASPRO para Harbour

Enviado: 10 Set 2012 07:25
por bcm
Toledo,

Quando eu entro no sistema, pede o diretorio de trabalho, eu confirmo e na hora de gravar o arquivo xxx.sys
dar erro.

Quando eu entro no sistema pede o diretório de trabalho:
Erro1.PNG
Esta dando erro na hora de criar o arquivo sys

Grato!


bom dia

Convertendo Sistema do GASPRO para Harbour

Enviado: 10 Set 2012 07:50
por Jairo Maia
Olá bcm,

Há um erro quando a caixa de entrada do diretório aparece. Veja que o caminho está duplicado: C:\SISTHB\C:SISTHB. Está chegando na variável direxe o caminho duplicado.

Convertendo Sistema do GASPRO para Harbour

Enviado: 10 Set 2012 10:45
por Jairo Maia
Olá bcm,

Sustitua a função NOMEEXE() do arquivo GASPROHB.PRG por esta:

Código: Selecionar todos

Function NomeExe()
Return Upper( ExeName() )
Ou por esta:

Código: Selecionar todos

Function NomeExe()
Return Upper( HB_ARGV( 0 ) )

Convertendo Sistema do GASPRO para Harbour

Enviado: 10 Set 2012 11:26
por Toledo
Amigos, me desculpe! Eu estava fazendo testes em um projeto GAS disponibilizado em um outro tópico aqui mesmo no fórum, e os fontes deste projeto já estava com várias alterações em relação ao que o GAS gera. Então por este motivo não ví este erro.
Vou usar um outro projeto do zero e depois posto aqui os resultados.

Abraços,

Convertendo Sistema do GASPRO para Harbour

Enviado: 10 Set 2012 12:28
por Toledo
Amigos, estou em dúvida... esta função nomeexe() é usada no código fonte original do GAS? Se sim, em qual versão do GAS?

Abraços,

Convertendo Sistema do GASPRO para Harbour

Enviado: 10 Set 2012 18:12
por Jairo Maia
Olá Toledo,
Toledo escreveu:a função nomeexe() é usada no código fonte original do GAS? Se sim, em qual versão do GAS?
Eu não sei dizer. A rigor, usei a versão 1.1 e depois muito pouco a versão 3.1. e finalmente, a versão 4.0o, que é a última que tenho. Acabei de fazer alguns testes com a versão 4.0o, e o que achei foi apenas referência a função QUALDIR(), que está correta.

No arquivo que você postou: GASPROHB.PRG, esta função também está ok. Apenas sugeri a correção anterior, pressupondo que o problema estava na função NOMEEXE(), uma vez que se ela fosse usada ocorreria exatamente o problema relatado pelo colega bcm.

Também estou em dúvida, e não sei dizer qual versão. Como não temos retorno do colega bcm, não sei dizer quando ela é usada.

Outrossim, numa verificação geral, sua revisão parece bem funcional, destacando que a função de impressão não consegui testar, uma vez que uso de forma diferente a impressão, gravando primeiro em arquivo e depois enviando a impressora do windows.

Convertendo Sistema do GASPRO para Harbour

Enviado: 10 Set 2012 21:19
por bcm
Caros colegas, boa noite.

A versão do gaspro que eu uso é a 4.0, desculpe não responder antes, é que so agora cheguei em casa.

um abraço

Convertendo Sistema do GASPRO para Harbour

Enviado: 11 Set 2012 10:30
por bcm
Bom, dia.

Teste a função e quando envio para arquivo/video está dando erro.
Poderiam me ajudar?
grato!

Convertendo Sistema do GASPRO para Harbour

Enviado: 11 Set 2012 10:51
por Toledo
bcm, segue em anexo outro arquivo com esta correção.

Atenção: renomiei o arquivo para GASP40HB.PRG, pois existe diferenças entre algumas funções geradas pelo GASPRO40 e GASPRO30. Depois com mais tempo vou disponibilizar uma versão GASP30HB.PRG.

Abraços,

Convertendo Sistema do GASPRO para Harbour

Enviado: 13 Set 2012 01:46
por bcm
boa noite,

Quero agradecer ao Sr.Jairo e ao Sr.Toledo, pelo ótimo trabalho que tem prestado neste forum.
Que Deus os abençoe e a toda sua familia.

Obrigado!

Convertendo Sistema do GASPRO para Harbour

Enviado: 13 Set 2012 09:09
por Toledo
Amigos, alguém testou a impressão da GASP40HB em alguma impressora Matricial (LPT1, LPT2,etc)? Eu testei apenas em uma impressora laser com cabo USB!

Abraços,

Convertendo Sistema do GASPRO para Harbour

Enviado: 13 Set 2012 11:00
por Jairo Maia
Olá Toledo,

Configurei um exemplo como você indicou.

A impressão de relatórios está funcionando, mas se abro uma consulta e mando imprimir, não está opcionando escolher a impressora do windows, e imprime direto na LPT.

Quando vou imprimir o relatório e seleciono na lista de impressoras do windows, a impressora Epson LX300 em LPT1, dá sempre a mensagem: Não foi possível localizar o arquivo de impressão. Tente novamente.

PS: Nas demais portas, incluindo o OneNote, a impressão dos relatórios estão ok.