Código: Selecionar todos
FUNCTION ETIQUETA_ZEBRA(nPEDI, nVOLU)
LOCAL nQTDE:=[1]
PRIVATE TXTARQ, WLINHA, nTAMANHO, TXT:=[], xTXT:={}
PRIVATE AAA := CurDrive()+":\"+CurDir()+[\TEMP\ETI]+SUBSTR(TIME(),1,2)+SUBSTR(TIME(),4,2)+SUBSTR(TIME(),7,2)+[.PRN]
PRIVATE ARQTESTE
IF ( ARQTESTE := FCreate( AAA,0 ) ) == F_ERROR
HWG_MSGINFO([Nao criou o arquivo]+CRLF+ALLTRIM(AAA))
RETURN NIL
ELSE
FCLOSE(ARQTESTE)
ENDIF
SAIR()
@ 01,00 SAY PADC([Imprimir etiquetas de envio - ZEBRA], 80 )
@ 11,00 SAY [No. Pedido: ] GET nPEDI PICT [999999]
@ 12,00 SAY [No Volumes: ] GET nVOLU PICT [999]
READ
IF LASTKEY() = 27
SAIR()
RETURN NIL
ENDIF
USE xMITI NEW SHARED
SET INDEX TO XMITNOTA
DBSEEK(nPEDI, .F.)
IF FOUND()
cCODCLI:=CODCLI ; cRAZ:=RAZAO ; cNNF:=NNFE ; xOBSER1:=OBS1
xOBSER2:=OBS2 ; xOBSER3:=OBS3 ; xOBSER4:=OBS4 ; xVLRNFe:=TOTNOTAS
CLOSE DATA
USE xCLIENTE SHARED NEW
SET INDEX TO xRCLICOD
DBSEEK( cCODCLI, .F.)
IF FOUND()
cENDERECO:=ENDENTREGA ; cBAIRRO:=BAIEN ; cCIDADE:=CIDADEEN ; cUF:=ESTAEN ; cCEP:=CEPEN
SAIR()
ELSE
nOPT:=0
ALERTNEW([Dados do cliente nao localizados])
SAIR()
RETURN NIL
ENDIF
ELSE
nOPT:=0
ALERTNEW([Pedido nao localizado])
SAIR()
RETURN NIL
ENDIF
C:=1
DO WHILE C <= nVOLU
IF C = 1
TXT := [^XA~TA000~JSN^LT0^MNW^MTD^PON^PMN^LH0,0^JMA^PR4,4~SD15^JUS^LRN^CI0^XZ]
AADD( xTXT, TXT )
ENDIF
TXT:=[^XA]
AADD( xTXT, TXT )
TXT:=[^PW831]
AADD( xTXT, TXT )
TXT:=[^LL0799]
AADD( xTXT, TXT )
TXT:=[^LS0]
AADD( xTXT, TXT )
TXT:=[^CF0,50]
AADD( xTXT, TXT )
TXT:=[^FO50,50^FDHospitalar Com Med Ltda^FS]
AADD( xTXT, TXT )
TXT:=[^CF0,30]
AADD( xTXT, TXT )
TXT:=[^FO50,100^FDR 303^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,140^FDJardim America^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,180^FDCep: 99999-999 - GO - GO^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,220^FDTel: (64) 9999-9999 ^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,250^GB720,1,3^FS]
AADD( xTXT, TXT )
TXT:=[^CF0,25]
AADD( xTXT, TXT )
TXT:=[^FO50,280^FDDestinatario:^FS]
AADD( xTXT, TXT )
TXT:=[^CF0,30]
AADD( xTXT, TXT )
TXT:=[^FO50,330^FD]+ALLTRIM(cRAZ) +[^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,370^FD]+ALLTRIM(cENDERECO)+[^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,410^FD]+ALLTRIM(cBAIRRO) +[^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,450^FDCEP: ]+ALLTRIM(cCEP) +[ ]+ALLTRIM(cCIDADE)+[ ]+ALLTRIM(cUF) + [^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,510^GB720,1,3^FS]
AADD( xTXT, TXT )
TXT:=[^CF0,35]
AADD( xTXT, TXT )
TXT:=[^FO50,540^FDNo. NFe: ]+STRZERO(cNNF,9) + [ Valor NFe: R$ ]+STR(xVLRNFe,12,2)+[^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,600^FDVolumes: ]+STRZERO(C,4)+[/]+STRZERO(nVOLU,4)+[ No. Pedido: ]+STRZERO(nPEDI,7)+[^FS]
AADD( xTXT, TXT )
TXT:=[^FO50,650^GB720,100,2^FS]
AADD( xTXT, TXT )
TXT:=[^FO60,690]
AADD( xTXT, TXT )
TXT:=[^FDPor favor atencao: CUIDADO MATERIAL FRAGIL^FS]
AADD( xTXT, TXT )
TXT:=[^PQ1,0,1,Y^XZ]
AADD( xTXT, TXT )
C++
ENDDO
A:=1
TXTARQ := FOPEN( AAA, 2 )
nTAMANHO := LEN(xTXT)
DO WHILE A <= nTAMANHO
WLINHA:= ALLTRIM(xTXT[A])+CHR(13)+CHR(10)
FSEEK( TXTARQ, 0, 2 )
FWRITE( TXTARQ, ALLTRIM(WLINHA), LEN(WLINHA))
A++
ENDDO
FCLOSE(TXTARQ)
cArquivo:=alltrim(AAA)
Escolhe_impressora( cArquivo ) //Escolhe_impressora_VISUAL( cArquivo ) // teste visual em 01/10/2015
/*
cImpressora := GetDefaultPrinter() // Pego a Impressora Padrão, como expliquei acima já deixo a Argox como padrão
PrintFileRaw(cImpressora, cArquivo, [Teste]) // Jogo o arquivo nela, ela pode estar LPT1, USB q vai embora...
*/
SAIR()
RETURN NIL