evertonlb Posted February 11, 2014 Report Share Posted February 11, 2014 Sim eu sei que tem dezenas de tópicos a respeito... Mas infelizmente ainda não consegui fazer funcionar... O que acontece é o seguinte: Tenho o software em Clipper, mas agora to trocando por um em FW, que ainda não tá completo mas tem o básico pra funcionar. No clipper, tenho a configuração de em que porta será impresso as etiquetas na argox, gostaria de fazer isso no FW, o cara configura LPT1 ou LPT2 e as etiquetas ja vão pra lá, sem aparecer preview, sem pedir pra clicar sem aparecer outra telinha.. Só que estou um passo antes disso, nem consegui fazer a "bicha" roncar ainda... Não sai nada e da um erro. Se não fosse pedir muito, gostaria de ver um código completo de impressão em PPLA, desde o começo da funcão até o final, quais os #includes que devo realizar e quais as DLL´s que devo juntar ao meu EXE. Ah.. Etiquetas de produtos com código em barras! Mudar a letra, o código, avanças e retroceder as etiquetas, temperatura de cabeça de impressão e tal eu tenho uma noção. Att. Everton Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 11, 2014 Report Share Posted February 11, 2014 o cara configura LPT1 ou LPT2 e as etiquetas ja vão pra lá, sem aparecer preview, sem pedir pra clicar sem aparecer outra telinha.. PrintFileRaw(PrngetName(),cFileName, "PrintFileRaw FiveWin") Não entendi muito bem, vc. já consegue gerá-las? E não imprime? é isso? Se sim, tente com o comando acima. Veja manuais aqui: http://www.pctoledo.com.br/forum/viewtopic.php?f=1&t=13489&p=83773&hilit=PPLA#p83773 abs, Quote Link to comment Share on other sites More sharing options...
netsys Posted February 11, 2014 Report Share Posted February 11, 2014 Fala Everton, blz? Em 1815, fazíamos com Copy to... PRN, mas o PrintFileRaw que o Kapiaba falou funciona 100% em qualquer porta. Veja se ajuda: *-----------------------------------------------Function fImpreti(cProd,dFabr,dVale,nQtde,cObse)*-----------------------------------------------Local cLetra, nHand, cLoteLocal aEstru:={}Local cArqImp:="Argox.TXT"Local cPrinter:=PrinterPortToName("USB002") Ls->(DbGotop())While !Ls->(Eof()) If Ls->Fantas=cProd Exit End Ls->(DbSkip())End cLote:=Subs(Dtoc(dFabr),7)+Subs(Dtoc(dFabr),4,2) nHand:=fCreate(cArqImp) // cLetra:="A" // Code 3 de 9// cLetra:="E" // Code 128 cLetra:="F" // Ean 13// cLetra:="G" // Upca fWrite(nHand,Chr(2)+"L"+Chr(13)+Chr(10))fWrite(nHand,"D11"+Chr(13)+Chr(10)) fWrite(nHand,"441100000420180"+Alltrim(Ls->Descri)+Chr(13)+Chr(10)) fWrite(nHand,"431100000600220"+Dtoc(dFabr)+" "+Dtoc(dVale)+Chr(13)+Chr(10)) fWrite(nHand,"Q"+StrZero(nQtde,4)+Chr(13)+Chr(10)) //fwrite(nHand,"E"+Chr(13)+Chr(10)) fClose(nHand)*Copy File(cArqImp) to PrnPrintFileRaw(cPrinter,cArqImp,"Emitindo etiquetas em "+cPrinter)Delete File(cArqImp)Return Nil Abraços Alberto - SP Quote Link to comment Share on other sites More sharing options...
evertonlb Posted February 11, 2014 Author Report Share Posted February 11, 2014 ALberto.. isso ai cara. assim ficou legal... Obrigado pela ajuda. Copiei teu código e chamei ele por um botão, no entanto a função PrintFileRaw(cPrinter,cArqImp,"Emitindo etiquetas em "+cPrinter) me retorna um erro dizendo "Falha ao chamar WinAPI OpenPrinter().. saberia por um acaso como resolver esta bronca? Att. Everton Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 11, 2014 Report Share Posted February 11, 2014 Com xHarbour ira usar a função: PrintFileRaw()cPrinter := 'LPT2' // porta ou nome da impressora no gerenciador de impressoras do windowscFileName := ARquivo a ser impresso // nome do arquivo a ser impressocDocumentName := 'Meu relatorio usando PrintFileRaw' // Titulo qualquer a ser exibido pelo gerenciador de impressãoPrintFileRaw( 'LPT2', '\temp\teste_impressao.txt', 'Meu relatorio usando PrintFileRaw' ) http://www.pctoledo.com.br/forum/viewtopic.php?f=4&t=8776 http://www.pctoledo.com.br/forum/viewtopic.php?f=4&t=7736&start=15 Quote Link to comment Share on other sites More sharing options...
evertonlb Posted February 11, 2014 Author Report Share Posted February 11, 2014 Obrigado Kapiaba... Só consegui fazer funcionar usando o GetDefaultPrinter() Colocando o "LPT2" que é a porta utilizada pela Argox, da o erro na OpenPrinter().. A Argox não é a impressora padrão... por isso vai ter que funcionar digitando a porta... Att. Everton kapiaba 1 Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 11, 2014 Report Share Posted February 11, 2014 Só para documentar mais: http://fivewin.com.br/index.php?/topic/21469-nome-da-impressora-selecionada/ abs, Quote Link to comment Share on other sites More sharing options...
evertonlb Posted February 12, 2014 Author Report Share Posted February 12, 2014 Pessoal.. muito obrigado a todos... deu certinho... To pegando a impressora padrão, mas pelo menos ta imprimindo. Amanhã na loja eu vejo se consigo setar a impressora ( não padrão ) colocando o nome no PrintFileraw(). Att. Everton Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.