HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
wapi_, win_, são funções de API do Windows.
É acrescentar hbwin.hbc
Vai ser usado o programa padrão pra PDF que está associado ao Windows
É acrescentar hbwin.hbc
Vai ser usado o programa padrão pra PDF que está associado ao Windows
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- Mario Mesquita
- Usuário Nível 4

- Mensagens: 613
- Registrado em: 08 Dez 2009 13:47
- Localização: Rio de Janeiro
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Boa tarde a todos.
Voltei ao tópico depois de ler o tutorial do HMG sobre a HPDF. Achei muito interessante pois já uso @ PRINT e converter um documento para PDF deve ficar razoavelmente fácil de converter, além de usar algo que faz parte da IDE.
A pregunta chave é se ele já estava disponível na versão 3.0.46 ou terei que ir para a versão 3.4?
Como já escrevi, já devia ter subido de versão, mas em uns testes, ficaram umas coisas estranhas e adiei para posterior estudo.
Mas se a 3.0.46 não suportar e HPDF terei que tentar me adaptar.
Se puderem me dar essa dica, desde já agradeço!
Saudações,
Mario.
Voltei ao tópico depois de ler o tutorial do HMG sobre a HPDF. Achei muito interessante pois já uso @ PRINT e converter um documento para PDF deve ficar razoavelmente fácil de converter, além de usar algo que faz parte da IDE.
A pregunta chave é se ele já estava disponível na versão 3.0.46 ou terei que ir para a versão 3.4?
Como já escrevi, já devia ter subido de versão, mas em uns testes, ficaram umas coisas estranhas e adiei para posterior estudo.
Mas se a 3.0.46 não suportar e HPDF terei que tentar me adaptar.
Se puderem me dar essa dica, desde já agradeço!
Saudações,
Mario.
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Olá Mario, não querendo ser chato mas acho que você e todos devem saber a resposta, caso contrário peço desculpas pelo meu desmérito...
SEMPRE (na minha humilde opinião) é válido se adaptar a última versão disponível. Quem não quer usufruir dos novos recursos e conserto de bugzzzz ?
Eu acho que a disponibilidade e participação é muito válida. Pois só construimos um produto melhor quando é testado e aprovado.
Resumindo: já era hora de você e qualquer um passar a usar a ultima versão disponível, atualmente a versão 3.4.3, se a intenção é utilizar UNICODE.
Na minha opinião é o melhor que tem. OpenSource, recursos e suporte. Desculpem se parece opinião tendenciosa, mas é a minha opinião.
Sobre o PreView da HMG e ora adotado pelo fork Extended,a visualização tem opção em gravar em vários outros formatos e visualizar metafiles em arquivo gravados em disco.
Também irá ser disponível o paginação em arquivo gerados (exemplo: página 2/10).

Um abraço a todos
SEMPRE (na minha humilde opinião) é válido se adaptar a última versão disponível. Quem não quer usufruir dos novos recursos e conserto de bugzzzz ?
Eu acho que a disponibilidade e participação é muito válida. Pois só construimos um produto melhor quando é testado e aprovado.
Resumindo: já era hora de você e qualquer um passar a usar a ultima versão disponível, atualmente a versão 3.4.3, se a intenção é utilizar UNICODE.
Na minha opinião é o melhor que tem. OpenSource, recursos e suporte. Desculpem se parece opinião tendenciosa, mas é a minha opinião.
Sobre o PreView da HMG e ora adotado pelo fork Extended,a visualização tem opção em gravar em vários outros formatos e visualizar metafiles em arquivo gravados em disco.
Também irá ser disponível o paginação em arquivo gerados (exemplo: página 2/10).
Um abraço a todos
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.
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.
- Mario Mesquita
- Usuário Nível 4

- Mensagens: 613
- Registrado em: 08 Dez 2009 13:47
- Localização: Rio de Janeiro
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Bom dia a todos.
Pablo, tranquilo, toda opinião é bem vinda e creio que a intenção é ajudar, é nos apoiar a andar para frente.
Então, de fato não sei. Como já falei, a literatura disponível muitas vezes não elucida e somos obrigados a recorrer a quem sabe mais e/ou tem mais experiência em alguns tópicos.
O seu "puxão de orelhas" é correto, pois todos deviam estar na mesma versão e com seus estudos contribuir para a evolução de todos. De fato, eu devia estar já atualizado. Reconheço que estou devendo.
Mas, de novo, tem hora que é difícil achar respostas, até em coisas simples e, mesmo com a inestimável ajuda de vocês que tem mais bagagem, alguns como eu ficam buscando e tentando encontrar respostas. Vocês já fazem muito nos ajudando e não se pode exigir nada, uma vez que é colaboração. Tive alguns problemas na passagem para as versões 3.x e confesso que tive receio de não conseguir atender meus clientes, que não podem esperar que eu obtenha respostas e fiquem parados me aguardando. É uma questão de sobrevivência mesmo, confesso.
Enfim, agradeço a sua opinião e prometo me esforçar nesse avanço, depois que resolver algumas questões de trabalho que urgem, inclusive daí a necessidade dessa dica sobre o HPDF. Estamos todos juntos nessa grande família xbase.
Abraço e saudações,
Mario.
Pablo, tranquilo, toda opinião é bem vinda e creio que a intenção é ajudar, é nos apoiar a andar para frente.
Então, de fato não sei. Como já falei, a literatura disponível muitas vezes não elucida e somos obrigados a recorrer a quem sabe mais e/ou tem mais experiência em alguns tópicos.
O seu "puxão de orelhas" é correto, pois todos deviam estar na mesma versão e com seus estudos contribuir para a evolução de todos. De fato, eu devia estar já atualizado. Reconheço que estou devendo.
Mas, de novo, tem hora que é difícil achar respostas, até em coisas simples e, mesmo com a inestimável ajuda de vocês que tem mais bagagem, alguns como eu ficam buscando e tentando encontrar respostas. Vocês já fazem muito nos ajudando e não se pode exigir nada, uma vez que é colaboração. Tive alguns problemas na passagem para as versões 3.x e confesso que tive receio de não conseguir atender meus clientes, que não podem esperar que eu obtenha respostas e fiquem parados me aguardando. É uma questão de sobrevivência mesmo, confesso.
Enfim, agradeço a sua opinião e prometo me esforçar nesse avanço, depois que resolver algumas questões de trabalho que urgem, inclusive daí a necessidade dessa dica sobre o HPDF. Estamos todos juntos nessa grande família xbase.
Abraço e saudações,
Mario.
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Quem sou eu para dar "puxão de orelhas" ? Apenas falei duro para ser direto no objetivo e insentivá-lo a melhorar os seus conhecimentos. Somos nós mesmos responsáveis de si para ampliar os conhecimentos do nosso intelecto, do nosso saber. Não se acomode, busque que coisas novas e saia do circulo vicioso que apenas dá uma falsa sensação de seguro e conforto. Tome um tempo na sua vida, eles que esperem. Aperfeiçoe seus conhecimentos, procure ferramentas que faciltem a sua procura pelo prático, rápido e eficiente.
Mas eu entendi a sua colocação e gosto muito desse jeito que só brasileiro tem.
A humildade e o bom humor é algo que a alguns dos argentinos carecem dessa capacidade.
Por isso que torna grandioso este país: seus cidadãos de bem.
Amo este país e esta comunidade.
Mas eu entendi a sua colocação e gosto muito desse jeito que só brasileiro tem.
A humildade e o bom humor é algo que a alguns dos argentinos carecem dessa capacidade.
Por isso que torna grandioso este país: seus cidadãos de bem.
Amo este país e esta comunidade.
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.
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.
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Boa Hazael,
O problema é a falta de documentação, por exemplo, quero usar a função win_printerStatus(), quais são os parâmetros ela aceita, o que ela retorna? Em toda documentação do Harbour só fui encontrar uma simples referencia a essa função em http://harbourdoc.com.br/, mas não trás nenhuma informação relevante a função.
Deveríamos criar um projeto para documentação compartilhada onde cada membro do forum documentaria o que sabe, comandos e funções que ainda não foram postadas no projeto, as mais capciosas ficariam com o mestre Claudio Soto, e etc...
Uma boa documentação do Harbour e HMG ajudaria muito a disseminar essas ferramentas tão nobre.
O problema é a falta de documentação, por exemplo, quero usar a função win_printerStatus(), quais são os parâmetros ela aceita, o que ela retorna? Em toda documentação do Harbour só fui encontrar uma simples referencia a essa função em http://harbourdoc.com.br/, mas não trás nenhuma informação relevante a função.
Deveríamos criar um projeto para documentação compartilhada onde cada membro do forum documentaria o que sabe, comandos e funções que ainda não foram postadas no projeto, as mais capciosas ficariam com o mestre Claudio Soto, e etc...
Uma boa documentação do Harbour e HMG ajudaria muito a disseminar essas ferramentas tão nobre.
Nilton Medeiros
nilton@sistrom.com.br
nilton@sistrom.com.br
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Olá Nilton,
Na própria DOC da HMG, encontrei em "Harbour Reference" (link externo), a função PrintStat() que é da CT contrib.
De todas formas, este procedimento não é adequado ao atual sistema operacional. Antes se usava muito, agora não deveria (na minha opinião, ora porque é falho).
Veja este artigo dos mestres do Harbour: https://groups.google.com/forum/#!topic ... ohqxg210pA
Aposto que você não tinha visto essa documentação do Harbour (primeiro link que passei).
Muitas vezes o que cremos que é falta de documentação, se deve ao mais comum, a nossa condição de não sabemos procurar direito...NiltonGM escreveu:O problema é a falta de documentação
Entendo a sua dúvida, porém esta função não é de exclusividade da HMG. Essa função é originária do antigo xHarbour (senão me engano).NiltonGM escreveu: quero usar a função win_printerStatus(), quais são os parâmetros ela aceita, o que ela retorna?
Na própria DOC da HMG, encontrei em "Harbour Reference" (link externo), a função PrintStat() que é da CT contrib.
De todas formas, este procedimento não é adequado ao atual sistema operacional. Antes se usava muito, agora não deveria (na minha opinião, ora porque é falho).
Veja este artigo dos mestres do Harbour: https://groups.google.com/forum/#!topic ... ohqxg210pA
Concordo, desde que haja participação. No HMG o Rathinagiri, criou uma conta Wiki para essa finalidade. Lembro que eu comecei e paralelamente o Esgici também fez outros tópicos na documentação e não sei mais o que deu. Mas lembro bem, que muitos ficaram de braços cruzados.NiltonGM escreveu:Deveríamos criar um projeto para documentação compartilhada onde cada membro do forum documentaria o que sabe...
Uma boa documentação do Harbour e HMG ajudaria muito a disseminar essas ferramentas tão nobre.
Muitas vezes, a carência de documentação extensa não acompanha com o desenvolvimento. Eu desejo que Claudio continue com o seu trabalho, longe de ele ficar documentando. Não que ele não saiba, senão pela razão que tem muita gente que pode fazer isso. É aquela coisa: participação. Melhor dito: falta de participação.comandos e funções que ainda não foram postadas no projeto, as mais capciosas ficariam com o mestre Claudio Soto, e etc...
Aposto que você não tinha visto essa documentação do Harbour (primeiro link que passei).
Muito bom né colega ? Eu também gostei. Gosto muito do trabalho Viktor.hazael escreveu:Para auxiliar a encontrar as funções que precisa no Harbour basta usar o incrível HBMK2 do Viktor:
hbmk2 -find printer
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.
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.
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Valeu rapazes, obrigado pelas dicas!
Nilton Medeiros
nilton@sistrom.com.br
nilton@sistrom.com.br
-
Claudio Soto
- Colaborador

- Mensagens: 566
- Registrado em: 27 Ago 2012 12:31
- Localização: Uruguay
- Contato:
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
1) El desarrollador debería solo crear una documenta mínima con el prototipo de la función y una breve descripción de la misma y sus parametrosPablo César escreveu:
comandos e funções que ainda não foram postadas no projeto, as mais capciosas ficariam com o mestre Claudio Soto, e etc...
Muitas vezes, a carência de documentação extensa não acompanha com o desenvolvimento. Eu desejo que Claudio continue com o seu trabalho, longe de ele ficar documentando. Não que ele não saiba, senão pela razão que tem muita gente que pode fazer isso.
2) la documentación de referencia del lenguaje suele ser creada en una segunda etapa por un grupo de expertos en base a la doc del punto 1 y va destinada a programadores avanzados.
3) por último en base a la doc del punto 2 se crea una documentación más accesible para el usuario final escrita por gente con capacidad didáctica.
Pero hay que tener cuidado en permitir que cualquiera documente, porque si no tiene el suficiente dominio del lenguaje puede crear una documentación confusa y equivocado por mejor buena voluntad que tenga.
Es por este motivo que la mayoría de los proyectos open source no tienen buena documentación, porque todo lo tiene que hacer el desarrollador, y siempre prioriza el desarrollo del código al desarrollo de la documentación, y como hay carencia de doc oficial buena empiezan a aparecer doc de todo tipo escritas por quien sabe quien.
Las companias comerciales tienen suficientes recursos económicos como para formar los diferentes equipos que se requiere para desarrollar el proyecto, además cuentan con supervisores y jefes de proyectos que controlan que desde el código hasta la documentación todo encaje perfectamente y en forma armónica. Y como frutilla de la torta siempre publican libros que van destinados a diferente público, desde el iniciante hasta el programador avanzado. La publicación de libros de texto es lo que hace la diferencia en la popularidad de los lenguajes.
Lenguajes espantosos que no aportan absolutamente ninguna ventaja son muy populares porque existe muchos libros sobre ellos, un buen ejemplo es el BASIC y toda su familia. El Pascal como lenguaje es 10 veces mejor pero muy pocos lo conocen. Y después que te acostumbras al desorden del BASIC cuando llegas a un lenguaje rígidamente estructurado como el Pascal no lo querés ni ver, aunque para desarrollar un proyecto de mediano a grande porte sea 10 veces mejor porque al ser muy estructurado se evitan muchos errores de lógica.
Lo mismo pasa con las Clases de los lenguajes, su potencial es enorme pero la doc es escasa en relación a la programación estructurada clásica y la gente opta por ignorarla simplemente porque no la comprende. Además existe otro problema con las Clases es que muchos de sus defensores crean Clases hasta para lo que no es necesario y terminan cayendo en la trampa de los que no les gusta las Clases, lo que surgió para facilitar la vida de proyectos de mediana a grande envergadura termina siendo un dolor de cabeza con Clases que repiten código, que están mal definidas, que se superponen, etc.
La clase es una herramienta más, es nada más y nada menos que un tipo de objeto (estructura) definido por el usuario que tiene propiedades (datos) y metodos (funciones que hacen algo con esos datos) diseñado para mejorar la seguridad en el acceso a sus datos y para darle claridad al código. Cuando es bien empleada es de un valor incalculable, cuando se emplea en forma innecesaria es una pérdida de tiempo que lo único que logra es crear un código difícil de entender y por lo tanto difícil de mantener.
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Verdad Claudio.
Con la participacion de más integrantes y con ganas de ayudar, podemos mejorar las cosas: documentacion, códigos, ejemplos y nuevas ideas.
Y creo que el fórum es una fuente muy importante en todo este processo de evolucion.
Gracias, Claudio por tu aporte.
Con la participacion de más integrantes y con ganas de ayudar, podemos mejorar las cosas: documentacion, códigos, ejemplos y nuevas ideas.
Y creo que el fórum es una fuente muy importante en todo este processo de evolucion.
Gracias, Claudio por tu aporte.
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.
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.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
Quer saber os parâmetros de WAPI_ShellExecute?O problema é a falta de documentação
WAPI significa função da API do Windows.
Só colocar no google API Windows ShellExecute
E vai chegar aqui:
https://msdn.microsoft.com/pt-br/librar ... s.85).aspx
visão parcial: Tudo depende da API Windows e não do Harbour.
Pode haver diferença entre versões Windows, então a documentação do Windows é o melhor negócio.
Inclusive para o caso de precisar atualizar a rotina "wrapper" do Harbour.
Poderia chamar direto a API do Windows, mas necessitaria de parâmetros compatíveis, por exemplo número inteiro e não o número normal do Harbour.
A função wrapper do Harbour trata de deixar a chamada compatível com Harbour, usando o número normal do Harbour e fonte Harbour.
É esse tipo de coisa que faz falta nas LIBs Windows.
Uma função C, pra ser usada em C, por determinada LIB, só está disponível para aquela LIB, usando linguagem C.
Uma função dentro do Harbour, está disponível pra qualquer fonte Harbour, inclusive fonte de LIB.
É a diferença entre ter um Harbour mais poderoso onde todos podem tentar acrescentar recursos, ou ter uma LIB onde somente quem conhece C poderá tentar acrescentar recursos.
Lógico... pra manter compatibilidade com Harbour 3.2, Harbour 3.4, xHarbour..... a LIB não aproveita recursos específicos de nenhum.
E com isso todos perdem: O Harbour não acrescenta porque ninguém usa, a LIB não deixa compatível com um porque precisa ser compatível com outro, o usuário apenas usa o que existe.
A partir daí, é só verificar como as LIBs necessitam fontes C pra coisas que já existem.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
HPDF e SET PRINTER TO (imprimir PDF direto para printer)
API Windows costuma ficar em contribuições, na HBWIN.
Quem mantinha isso atualizado era o Viktor, do Harbour 3.4.
Agora não sabemos como vai ficar daqui pra frente.
Quem mantinha isso atualizado era o Viktor, do Harbour 3.4.
Agora não sabemos como vai ficar daqui pra frente.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
