;** PD_0318A  *******************************************************************
;** Imprime a Digitacao do Pedido                              ** AQUARELA **  *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido  em: 20/01/2015 por Luis Gustavo
;Ultima Alteracao: 17/07/2015 por Bruno Carvalho
;Motivo Alteracao: Ajustes para Imprimir com 80 Colunas

;*******************************************************************************
;* Rotina para Impressao do Relatorio                                          *
;*******************************************************************************

PARAM_NITENS = 19

;************************** IMPRESSAO DO CABECALHO *****************************
Proc Cabecalho();

If Not IsAssigned(NOMEMPRESA) Then NOMEMPRESA="" EndIf

Moveto "PedidoC"
Print File ARQIMP chr(27)+chr(67)+chr(33) ;Imprime 33 Linhas por pagina

DATA=StrVal([Data de Emissao])
If Len(DATA)=9 Then DATA="0"+DATA EndIf
DATA = SubStr(DATA,1,2) +"/"+ SubStr(DATA,4,2) +"/"+ SubStr(DATA,7,4)

Print File ARQIMP Fill("-",80)+"\n"

Print File ARQIMP Spaces(38)+"Emissao: "+DATA+Spaces(2)+"Nr. Orcamento: "+Format("W7,AL",[Numero do Pedido])+"\n"
Print File ARQIMP Fill("-",80)+"\n"
Print File ARQIMP "Cliente....: "+Format("W15,AL",[Razao Social])+"\n" 
Print File ARQIMP "Endereco...: " + Format("W35,AL",[Endereco]) +"Bairro: " + Format("W10,AL",[Bairro])+"\n"
Print File ARQIMP "Municipio..: "+Format("W15,AL",[Cidade]) + Spaces(20)+"Estado: " + Format("W02,AL",[UF])+"\n"
Print File ARQIMP "CGC/CPF n..: " +Format("W18,AL",[CGC]) + Spaces(10)+"Insc.Estadual: "+ Format("W15,AL",[IE])+"\n"  
Print File ARQIMP "Funcionario: " +Format("W15,AL",[Nome Fantasia Represent])+ Spaces(17)+"Condicoes: " +Format("W10,AL",[Descricao CondPagto])+"\n"

Print File ARQIMP "-------------------------------------------------------------------------------"+"\n"
Print File ARQIMP " Qtd.      UN     Codigo Descricao                           C o r e s         "+"\n"
Print File ARQIMP "-------------------------------------------------------------------------------"+"\027F"+"\n"

EndProc ;(Cabecalho)                           

;************************** IMPRESSAO DOS ITENS ********************************
Proc Itens()
Moveto "PedidoI"
Home

QUANT    = 0
TOT      = 0
CONTADOR = 0

While [Numero do Pedido]=[PedidoC->Numero do Pedido]
  Checa_Linha(1)

  CODITEM=[Codigo do Item]
  While SubStr(CODITEM,1,1)="0"
    CODITEM=SubStr(CODITEM,2,Len(CODITEM))
  EndWhile

  LINHA_ITEM = Format("W10.3,AL",[Quantidade])
  LINHA_ITEM = LINHA_ITEM + Spaces(01) + Format("W02",[Unidade Fiscal])
  LINHA_ITEM = LINHA_ITEM + Spaces(01) + Format("W10,AR",CODITEM)
  LINHA_ITEM = LINHA_ITEM + Spaces(01) + Format("W35,AL",[Descricao do Item]) 
  LINHA_ITEM = LINHA_ITEM + Spaces(01) + Format("W18,AL",[Descricao da Cor_Tecido])
  
  Print File ARQIMP LINHA_ITEM + "\n"
  
  Skip
  If EOT() Then QuitLoop EndIf
EndWhile

For ITEM From CONTADOR To PARAM_NITENS
    Print File ARQIMP "\n"
EndFor

EndProc ;(Itens)

;*** Imprime Rodape ************************************************************
Proc Rodape()
Print File ARQIMP "\027E"
Print File ARQIMP Fill("-",80)+"\n"

Print File ARQIMP "\f"
Print File ARQIMP "\027F"
EndProc ;Rodape     

;*******************************************************************************
;* Checa linha na area de impressao dos itens                                  *
;*******************************************************************************
Proc Checa_Linha(Nl)
private nl

If (CONTADOR+nl)>(PARAM_NITENS)
   Then Rodape()
        Cabecalho()
        CONTADOR=nl
        Moveto "PedidoI"
   Else CONTADOR=CONTADOR+nl
EndIf
EndProc                               

;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************
ARQIMP=PrivDir()+"PD_0370A.Txt"
If IsFile(ARQIMP)
   Then Deleta_Arquivo(ARQIMP)
EndIf

Moveto "PedidoC"

AGUARDE("Imprimindo Pedido -> "+[Numero do Pedido])
Cabecalho()
Itens()
Rodape()

;---- Imprime Arquivo Impressao ------------------------------------------------
ImpriArq(ARQIMP)

Release Vars VALOR,DATA
Release Procs IMPFAT,VENC,Cabecalho,Itens,Rodape
LIMPAGUARDE()