Página 5 de 9

Enviado: 22 Jul 2007 22:55
por sygecom
Tche, até entendo, mas confesso que o que aconteceu comigo de não imprimir em modo RAW,não foi ratiada do SPOOLER ou uma da quelas que só acontece uma vez e não acontece mais,...isso foi em um cliente.....e fiz de tudo que foi teste e tudo que foi possivel....sempre no modo RAW não imprimia...mas tudo bem. vamos esperar pra ver se aparece alguem com um problema parecido...

Obs:Na Classe Win32Prn vc pode deifinir a qualidade da impressão que deixa mais rapido a impressão(Modo Rascunho)

Abraços
Leonardo Machado

Enviado: 22 Jul 2007 23:01
por Maligno
sygecom escreveu:isso foi em um cliente.....e fiz de tudo que foi teste e tudo que foi possivel....sempre no modo RAW não imprimia...
Eu acho estranho, mas enfim, o Windows é estranho mesmo.
Obs:Na Classe Win32Prn vc pode deifinir a qualidade da impressão que deixa mais rapido a impressão(Modo Rascunho)
Isso não refresca muita coisa. Vai continuar muito mais lento que no modo texto. Mas tudo bem. Quem não se importar com isso vai continuar usando. :)

Enviado: 23 Jul 2007 19:00
por Renan
Ai pessoal fiz um program bem porcaria soh pra mostra o meu problema

Código: Selecionar todos

//--------------------------------------
#include "inkey.ch"
#include "visual2.ch"
set key K_F10 to Saida
desktop("Impressao usb")
mb = NewBarMenu()
mp = NewDownMenu()
AddBarItem(mb,"&Imprimir","Impressa do renan", mp)
AddDownItem(mp,"&Codigo","deigete o codigo", {|| MAIN()} )
while .t.	    // Loop principal

   BarMenu( mb )  //VL-Ap¢s a definicao dos menus, BarMenu( mBar ) controla tudo

   set key K_F10 to // Desligamos set key
   SetKeyMouse( K_F10, {} ) //VL-Desativamos o Mouse para F10

   VLExit()	    //VL-Pede confirmacao para sair

   set key K_F10 to saida // Se chegou aqui, significa que nao saiu...
   SetKeyMouse( K_F10, { 24, 24, 72, 79 } ) //VL-Define novamente F10 p/ mouse

end

return nil
/////////////////////////////////
function saida
local aKM := SetKeyMouse( K_F10, {} ) //VL-Salvamos e desativamos F10 p/ mouse
set key K_F10 to
VLExit()	//VL-Sa¡da da Visual Lib
set key K_F10 to saida
SetKeyMouse( K_F10, aKM ) //VL-Reativamos F10 para o mouse
return nil
////////////////////////////////
function Main()
IF .NOT. FILE ("AGEN.DBF")
alert("Banco de dados nao encontrado, deseja criar um ?")       
     ESTRU:={}       
     AADD(ESTRU, {"CODIGO","N",3,0})       
     AADD(ESTRU, {"NOME","C",40,0})   
     AADD(ESTRU, {"ENDE","C",40,0})
     AADD(ESTRU, {"NIVER","D",8,0})
     AADD(ESTRU, {"FONE","C",10,0})
     AADD(ESTRU, {"CEL","C",10,0})
     AADD(ESTRU, {"EMAIL","C",40,0})
     DBCREATE("AGEN",ESTRU)          
                                    
ENDIF
         aEn = savenv( 01, 01, 25, 79  ) //VL-Salva o ambiente
                SET DATE BRITISH
                SET CENTURY off
                SET CONFIRM ON
                SELECT 1
                USE AGEN
                IF !FILE("INDIC1.NTX")
                   INDEX ON STR(CODIGO,3,0) TO INDIC1
                ENDIF
                SET INDEX TO INDIC1
                win( 08, 07, 23, 63, "Impressao" )
                setcolor( "N*/W" )
                nCod = 0
                @ 9,8 say" que codigo deseja imprimir ?" get nCod
                read
                seek str(nCod,3,0)
                if found()
                n = "Nome.... :" + NOME           
                save to Teste.TXT all like n
                run start teste.txt
                if .not. file("agen.dbf")
                run usbprint teste.txt /sel
                endif
               
                else
                @ 10,9 say"erro"
               
                endif
                 rstenv(aEn)
                RETURN nil
ai pessoal quando ele salva no txt ele salva assim

N ‘

Enviado: 23 Jul 2007 19:21
por Maligno
Mas você está tentando imprimir um arquivo .MEM, que é o que está sendo usado no comando SAVE TO, que não serve pra isso. Esse tipo de arquivo .MEM se presta ao armazenamento de variáveis de memória. Ele contém dados não-imprimíveis. Você precisa salvar como texto. Use, por exemplo, impressão direcionada para um arquivo texto.

SET PRINTER TO TESTE.TXT
SET DEVICE DO PRINT
...
...
...
SET DEVICE TO SCREEN

Algo desse tipo. :)

Enviado: 23 Jul 2007 19:27
por sygecom
Renan escreveu:Ai pessoal fiz um program bem porcaria soh pra mostra o meu problema

Código: Selecionar todos

//--------------------------------------
#include "inkey.ch"
#include "visual2.ch"
set key K_F10 to Saida
desktop("Impressao usb")
mb = NewBarMenu()
mp = NewDownMenu()
AddBarItem(mb,"&Imprimir","Impressa do renan", mp)
AddDownItem(mp,"&Codigo","deigete o codigo", {|| MAIN()} )
while .t.	    // Loop principal

   BarMenu( mb )  //VL-Ap¢s a definicao dos menus, BarMenu( mBar ) controla tudo

   set key K_F10 to // Desligamos set key
   SetKeyMouse( K_F10, {} ) //VL-Desativamos o Mouse para F10

   VLExit()	    //VL-Pede confirmacao para sair

   set key K_F10 to saida // Se chegou aqui, significa que nao saiu...
   SetKeyMouse( K_F10, { 24, 24, 72, 79 } ) //VL-Define novamente F10 p/ mouse

end

return nil
/////////////////////////////////
function saida
local aKM := SetKeyMouse( K_F10, {} ) //VL-Salvamos e desativamos F10 p/ mouse
set key K_F10 to
VLExit()	//VL-Sa¡da da Visual Lib
set key K_F10 to saida
SetKeyMouse( K_F10, aKM ) //VL-Reativamos F10 para o mouse
return nil
////////////////////////////////
function Main()
IF .NOT. FILE ("AGEN.DBF")
alert("Banco de dados nao encontrado, deseja criar um ?")       
     ESTRU:={}       
     AADD(ESTRU, {"CODIGO","N",3,0})       
     AADD(ESTRU, {"NOME","C",40,0})   
     AADD(ESTRU, {"ENDE","C",40,0})
     AADD(ESTRU, {"NIVER","D",8,0})
     AADD(ESTRU, {"FONE","C",10,0})
     AADD(ESTRU, {"CEL","C",10,0})
     AADD(ESTRU, {"EMAIL","C",40,0})
     DBCREATE("AGEN",ESTRU)          
                                    
ENDIF
         aEn = savenv( 01, 01, 25, 79  ) //VL-Salva o ambiente
                SET DATE BRITISH
                SET CENTURY off
                SET CONFIRM ON
                SELECT 1
                USE AGEN
                IF !FILE("INDIC1.NTX")
                   INDEX ON STR(CODIGO,3,0) TO INDIC1
                ENDIF
                SET INDEX TO INDIC1
                win( 08, 07, 23, 63, "Impressao" )
                setcolor( "N*/W" )
                nCod = 0
                @ 9,8 say" que codigo deseja imprimir ?" get nCod
                read
                seek str(nCod,3,0)
                if found()
                    SET DEVICE TO PRINT
                    SET PRINT TO TESTE.TXT
                   
                    @ PROW()+1,0 SAY "Nome....:" + NOME
                    
                    SET PRINTER TO
                    set device to screen

                run start teste.txt
                if .not. file("agen.dbf")
                   run usbprint teste.txt /sel
                endif
               
                else
                @ 10,9 say"erro"
               
                endif
                 rstenv(aEn)
                RETURN nil
ai pessoal quando ele salva no txt ele salva assim

N ‘

Enviado: 23 Jul 2007 19:29
por sygecom
Alias...não é soh a WAPI que não funciona, o xharbour em modo RAW tb. não funciona em algumas impressoras...pq ? não sei mas vou descobrir...

Abraços
Leonardo Machado

Enviado: 23 Jul 2007 19:30
por Maligno
sygecom escreveu:Veja a alteração que fiz no seu exemplo.....
Tirou a oportunidade do colega de aprender mais, fazendo a alteração ele mesmo. :\

Enviado: 23 Jul 2007 19:37
por sygecom
Maligno escreveu:
sygecom escreveu:Veja a alteração que fiz no seu exemplo.....
Tirou a oportunidade do colega de aprender mais, fazendo a alteração ele mesmo. :\
Ual....achei que o negocio era ajudar...hehe...mas tudo bem, se não fiz o bem....o mal eu tenho certeza que eu não fiz.

Abraços
Leonardo Machado

Enviado: 23 Jul 2007 19:43
por Maligno
Ajudar, ajudou. Claro. Mas deu o peixe já temperado. Teria sido mais produtivo se apenas dissesse onde jogar a vara. :)

Enviado: 23 Jul 2007 19:46
por sygecom
Maligno escreveu:Ajudar, ajudou. Claro. Mas deu o peixe já temperado. Teria sido mais produtivo se apenas dissesse onde jogar a vara. :)
Vai ver, é pq não sei pesca mesmo....hehe...nas proximas...vou mais devagar.

Abraços
Leonardo Machado

Enviado: 24 Jul 2007 21:28
por Renan
Ola Pessoal, Sygecom mt brigado pelo seu exemplo, o modelo da impressora eh :
Lexmark X 1195 series

Enviado: 24 Jul 2007 21:33
por Renan
Ai Pessoal Cortando um pouco o assunto, Mas bizoiando o site ai do pc toledo
vi esse cd-clipper pra vende , como tipo dia 30 eh meu niver vai sobra uma verbinha que da pa compra o cd, sei axam que val a pena?

Enviado: 24 Jul 2007 23:12
por sygecom
Renan escreveu:Ola Pessoal, Sygecom mt brigado pelo seu exemplo, o modelo da impressora eh :
Lexmark X 1195 series
Vou colocar essa impressora na lista negra....hehe..

Abraços
Leonardo Machado

Enviado: 24 Jul 2007 23:16
por Stanis Luksys
Renan escreveu:Ai Pessoal Cortando um pouco o assunto, Mas bizoiando o site ai do pc toledo
vi esse cd-clipper pra vende , como tipo dia 30 eh meu niver vai sobra uma verbinha que da pa compra o cd, sei axam que val a pena?
Conhecimento sempre vale a pena. Mas existe a ressalva do clipper ser uma linguagem em decadência. No mais, essa é uma decisão que cabe exclusivamente a você.

Isso aí!

Enviado: 24 Jul 2007 23:19
por sygecom
Renan escreveu:Ai Pessoal Cortando um pouco o assunto, Mas bizoiando o site ai do pc toledo
vi esse cd-clipper pra vende , como tipo dia 30 eh meu niver vai sobra uma verbinha que da pa compra o cd, sei axam que val a pena?
Tche, sei o que acompanha no CD...mas se vc esta começando em CLIPPER derepende pode ser que seja uma boa....derepente acompanha uns sisteminha de exemplo e isso pode ser uma boa....agora se vc ja tem algum sistema rodando ai e quer apenas dar uma melhorada e ir tirando duvidas...acredito que seria o ideal vc ir postando aqui no forum mesmo e o povo vai ajudando....agora por outro lado sem querer rasga ceda e nem ganho nd para isso acho que se vc comprar o CD do PCtoledo vc vai esta ajudando a manter esse forum....pq o Toledo deve ter algum custo para manter esse forum e nd mais justo....ele ter algo que lhe de retorno..para manter esse forum.

Abraços
Leonardo Machado