;** PD_0252G *******************************************************************
;** Imprime a Digitacao do Pedido . Gerencial                ** ECO BRINK **   *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido  em: 06/03/2012 por Bruno Carvalho
;Ultima Alteracao: 07/03/2012 por Bruno Carvalho
;Motivo Alteracao: Adicionado ST
;Ultima Alteracao: 15/03/2012 por Bruno Carvalho
;Motivo Alteracao: Altera‡äes/Modifica‡äes a pedido do cliente
;Ultima Alteracao: 12/04/2012 por Bruno Carvalho
;Motivo Alteracao: Ajustes, incrementado Procs e Checa_Linha
;Ultima Alteracao: 11/07/2014 por Andrey Fillipe
;Motivo Alteracao: Adicionado coluna Vlr do ST
;Ultima Alteracao: 21/08/2014 por Andrey Fillipe
;Motivo Alteracao: Retirado colunas COR/TECIDO, TM, ICMS, IPI

;**************************************************************************
; Cabe‡alho 1                                                             *
;**************************************************************************
Proc Cabecalho_1()
CoeditKey      

Moveto [Codigo da Empresa]
Ativa_Lookup()
Moveto [Codigo da Empresa]
Locate [Pedidoc->Codigo da Empresa]
If Retval
  Then RAZAOSOCIAL=[Razao Social Empresa]
       ENDERECO   =[Endereco Empresa    ]
       BAIRRO     =[Bairro Empresa      ]
       CEP        =[CEP Empresa         ]
       CIDADE     =[Cidade Empresa      ]
       UF         =[UF Empresa          ]
       TELEFONE   =[Telefone Empresa    ] 
       CNPJ       =[CGC Empresa         ]
       IE         =[IE Empresa          ]
EndIf  
KeyPress "ESC"

;************************* IMPRESSAO DO CABECALHO ******************************
Print File ARQIMP CI_15CPP+"\n\n\n\n"
;Print File ARQIMP Fill("-",132)+"\n"
Print File ARQIMP  Spaces(104)+"Impressao: "+Format("D13",Today())+"-"+Time()+ "\n"
Print File ARQIMP Fill("-",134)+"\n"

;Print File ARQIMP Spaces(02)+"Empresa: "
;Print File ARQIMP Format("W05,AL",[Codigo da Empresa])+Format("W30,AL",RAZAOSOCIAL)

Print File ARQIMP "\014"
Print File ARQIMP Spaces(01)+"\027E"+"N§ do Pedido : "+Format("W06.3,AL",[Numero do Pedido])+"\027F"+"\n" 
Print File ARQIMP "\020"

;Print File ARQIMP Spaces(16)+Format("W40,AL",ENDERECO)
;Print File ARQIMP Spaces(01)+Format("W18,AL",CNPJ)+"\n"

;Print File ARQIMP Spaces(16)+Format("W20,AL",BAIRRO) 
;Print File ARQIMP Format("W20,AL",CEP)
;Print File ARQIMP Spaces(01)+Format("W25,AL",IE)+"\n"

;Print File ARQIMP Spaces(16)+Format("W20,AL",[Cidade])
;Print File ARQIMP Format("W20,AL",[UF])
;Print File ARQIMP Spaces(01)+Format("W25,AL",TELEFONE)+"\n\n"

Print File ARQIMP Spaces(02)+"Cliente: "
Print File ARQIMP "\027E"+Format("W05,AL",[Codigo])
Print File ARQIMP Format("W97,AL",[Razao Social])+"\027F"+"\n"

Print File ARQIMP Spaces(16)+Format("W40,AL",[Endereco])
Print File ARQIMP Format("W18,AL",[CGC])+Spaces(07)+"Emissao: "
Print File ARQIMP Format("D13",[Data de Emissao])+"\n"

Print File ARQIMP Spaces(16)+Format("W20,AL",[Bairro])
Print File ARQIMP Format("W20,AL",[CEP])
Print File ARQIMP Format("W25,AL",[IE])
Print File ARQIMP "Entrega: "+Format("D13",[Data de Entrega])+"\n"

Print File ARQIMP Spaces(16)+Format("W20,AL",[Cidade])
Print File ARQIMP Format("W20,AL",[UF])
Print File ARQIMP Format("W25,AL",[Telefone])+"\n\n"
;Print File ARQIMP "Empresa: "+Format("W05,AL",[Codigo da Empresa])+Format("W20,AL",[Nome Fantasia Empresa])+"\n\n"

Print File ARQIMP Spaces(02)+"Representante: "+Format("W05,AL",[Codigo do Representante])
Print File ARQIMP Format("W25,AL",[Nome Fantasia Represent])
Print File ARQIMP "Destinacao: "+Format("W04,AL",[Codigo da Destinacao])
Print File ARQIMP Format("W25,AL",[Descricao da Destinacao])
Print File ARQIMP "CFO: "+Format("W09,AL",[CFO])
Print File ARQIMP "TabPreco: "+Format("W06,AL",[Codigo da Tabela])+"\n"

Print File ARQIMP Spaces(02)+"Transportador: "+Format("W05,AL",[Codigo da Transportadora])
Print File ARQIMP Format("W28,AL",[Nome Fantasia Transport])
Print File ARQIMP "Veiculo: "+Format("W08,AL",[Placa do Veiculo])+"-"+Format("W08,AL",[UF Veiculo])
Print File ARQIMP "Frete por Conta: "+Format("W15,AL",[Frete por Conta])+"\n\n"

Print File ARQIMP Spaces(02)+"Seq  Item                                              "
Print File ARQIMP " Quantidade Un PrUnitario    PrTotal  Vlr do ST"+"\n"
Print File ARQIMP Spaces(02)+"---- ------------------------------------------------- "
Print File ARQIMP "----------- -- ---------- ---------- ----------"+"\n"

EndProc ;Cabecalho_1()

;**************************************************************************
; Cabe‡alho 2                                                             *
;**************************************************************************
Proc Cabecalho_2()

Print File ARQIMP CI_15CPP+"\n\n\n\n\n\n"

Print File ARQIMP Spaces(02)+"Seq  Item                                              "
Print File ARQIMP " Quantidade Un PrUnitario    PrTotal  Vlr do ST"+"\n"
Print File ARQIMP Spaces(02)+"---- ------------------------------------------------- "
Print File ARQIMP "----------- -- ---------- ---------- ----------"+"\n"

EndProc ;Cabecalho_2()

;**************************************************************************
; ImpressÆo dos Itens                                                     *
;**************************************************************************
Proc Itens()

Moveto "PedidoI"
Cont=1
CONTADOR = 0

Scan
   Checa_Linha(1)  
   Print File ARQIMP Spaces(02)+Format("W05,AL",[Item do Pedido])
   Print File ARQIMP Format("W11,AL",[Codigo do Item])
   Print File ARQIMP Format("W39,AL",[Descricao do Item])
   Print File ARQIMP Format("W11.3,EIC",[Quantidade])
   Print File ARQIMP Format("W03,AR",[Unidade Fiscal])
   Print File ARQIMP Format("W11.2,EIC",[Preco Unitario])
   Print File ARQIMP Format("W11.2,EIC",[Preco Total])
   Print File ARQIMP Format("W11.2,EIC",[ICMS_ST_Valor])+"\n"
   Cont=Cont+1

EndScan

EndProc ;Itens()

;*******************************************************************************
;* Rotina de Impressao dos Vencimentos                                         *
;*******************************************************************************
Proc VENC()

If RecNo()>9
   Then Print File ARQIMP Spaces(20)
EndIf
For I From 1 to K
  Print File ARQIMP Spaces(03)+DATA[I]+Spaces(02)
EndFor
Print File ARQIMP "\n"
Print File ARQIMP Spaces(25)
For I From 1 to K
  Print File ARQIMP VALOR[I]+Spaces(02)
EndFor
Print File ARQIMP "\n"

EndProc

;**************************************************************************
; Rodap‚                                                                  *
;**************************************************************************
Proc RodaPe(CABECALHO)
Private CABECALHO

If CABECALHO=2 
   Then Print File ARQIMP "\n\n"+Spaces(40)+"************* Continua na proxima pagina *************"
        Print File ARQIMP "\f" 
   Else Checa_Linha(16)  
        Moveto "PedidoC"
        Print File ARQIMP "\n"                                                                                                  
        Print File ARQIMP "  Mecadorias         Desconto     Liquido    Frete    Seguro   Desp.Aces"
        Print File ARQIMP "       Total       ICMS_ST"+"\n"
        ;;9.999.999,99888.88%777.777,776.666.666,6644.444,44111.111,112.222.222,223.333/333,334.444.444,445.555.555,551.111.111,11
        
        Print File ARQIMP  Format("W12.2,EIC",[Valor Mercadoria])
        Print File ARQIMP Format("W06.2,EIC",[Taxa de Desconto])+"%"
        Print File ARQIMP Format("W10.2,EIC",[Valor do Desconto])
        Print File ARQIMP Format("W12.2,EIC",[Valor Mercadoria Liquido])
        Print File ARQIMP Format("W09.2,EIC",[Valor do Frete])
        Print File ARQIMP Format("W10.2,EIC",[Valor do Seguro])
        Print File ARQIMP Format("W012.2,EIC",[Valor Despesas Acessorias])
        Print File ARQIMP Format("W012.2,EIC",[Valor Nota Fiscal])
        Print File ARQIMP Format("W014.2,EIC",[Valor Substituicao ICMS])+"\n\n"
        
        Print File ARQIMP Spaces(02)+"Cond. Pagamento.: "+[Descricao CondPagto]
        Print File ARQIMP "   NP: "+StrVal([Numero de Parcelas])
        Print File ARQIMP "   CD: "+[Composicao de Dias]
        Print File ARQIMP "   N.Volumes.: "+LTrim(Format("W06,EIC",[PedidoC->Numero de Volumes]))
        Print File ARQIMP "   Peso Liquido: "+LTrim(Format("W11.3,EIC",[PedidoC->Peso Liquido]))
        Print File ARQIMP "   Peso Bruto: "+LTrim(Format("W11.3,EIC",[PedidoC->Peso Bruto]))+"\n"
        
        ;********************* IMPRESSAO DOS VENCIMENTOS **************************
        Print File ARQIMP Spaces(02)+"Vencimentos.....: "
        
        Array DATA[9]
        Array VALOR[9]
        K=0
        Moveto "PedidoV"
        Scan
          K=K+1
          DATA[K]  = Format("D13",[Data])
          VALOR[K] = Format("W11.2,AL,EIC",[Valor])
          If K=9
             Then VENC()
                  K=0
          EndIf
        EndScan
        If K>0
           Then VENC()
        EndIf
        Print File ARQIMP "\n"
        
        ;************************* IMPRESSAO DO RODAPE ********************************
        Moveto "PedidoC"
        Print File ARQIMP spaces(02)+"Obs. do Pedido..: "+Format("W110,AL",SubStr([Observacao do Pedido],001,110))+"\n"
        If Substr([Observacao do Pedido],111,110)<>""
           Then Print File ARQIMP  Spaces(20)+Format("W110,AL",SubStr([Observacao do Pedido],111,110))+"\n"
        EndIf
        
        Print File ARQIMP Spaces(02)+"Obs. Nota Fiscal: "+Format("W100,AL",SubStr([Observacao na Nota Fiscal],001,100))+"\n\n"
        
        Print File ARQIMP Spaces(02)+"Local p/ Entrega: "+Format("W20,AL",[Endereco de Entrega])+"\n"
        Print File ARQIMP Spaces(20)+Format("W15,AL",[Bairro de Entrega])+Format("W11,AL",[CEP de Entrega])
        Print File ARQIMP Spaces(40)+"_______________________________________________"+"\n"
        Print File ARQIMP Spaces(20)+Format("W15,AL",[Cidade de Entrega])+Format("W03,AL",[UF de Entrega])
        Print File ARQIMP Spaces(60)+"Data/Assinatura Responsavel"+"\n\n"
        Print File ARQIMP "  "+Fill("-",134)
        Print File ARQIMP CI_10CPP
        Do_It!
EndIf
        
EndProc ;RodaPe()

;*******************************************************************************
;* Copia Imagem para Raiz                                                      *
;*******************************************************************************
Proc Copia_Imagem()
Private VSDGDRIVE,VSDGPASTA

VSDGDRIVE=SubStr(Directory(),1,2)
VSDGPASTA="\\Sistemas\\IMAGENS\\IMG_FUN\\"

Switch
  Case PEDIMAGEM="Gerencial" : IMAGEM_FUNDO="pd_"+SYS_CODIGO_CLIENTE
  Case PEDIMAGEM="Expedi‡„o" : IMAGEM_FUNDO="pd_"+SYS_CODIGO_CLIENTE+"S"
  Case PEDIMAGEM="Ambos"     : If Not IsAssigned(VALOR_IMG)
                                  Then VALOR_IMG=1
                                  Else If IsAssigned(VALOR_IMG)
                                          Then If VALOR_IMG=""
                                                  Then VALOR_IMG=1
                                               EndIf   
                                       EndIf   
                               EndIf
                               Switch
                                 Case VALOR_IMG=1 : VALOR_IMG=2
                                                    IMAGEM_FUNDO="pd_"+SYS_CODIGO_CLIENTE
                                 Case VALOR_IMG=2 : VALOR_IMG=""
                                                    IMAGEM_FUNDO="pd_"+SYS_CODIGO_CLIENTE+"S"
                               EndSwitch                 
EndSwitch

If IsFile(VSDGDRIVE+VSDGPASTA+IMAGEM_FUNDO+".JPG")
   Then Copia_Arquivo(VSDGDRIVE+VSDGPASTA+IMAGEM_FUNDO+".JPG c:\\vise\\"+IMAGEM_FUNDO+".JPG")
EndIf    

EndProc ;Copia_Imagem()

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

If CABECALHO = 2
   Then ;Controle de Linhas para a primeira parte da impressÆo
        PARAM_NITENS=55
EndIf

If (CONTADOR+nl)>(PARAM_NITENS)
   Then CABECALHO = 2
        RodaPe(2)
        Cabecalho_2()   
        CONTADOR=nl
        Moveto "PedidoI"
   Else CONTADOR=CONTADOR+nl
EndIf
EndProc

;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************
Seta_FilePrint("PD_0252G")

CABECALHO  =1
RAZAOSOCIAL=""
ENDERECO   =""
BAIRRO     =""
CEP        =""
CIDADE     =""
UF         =""
TELEFONE   ="" 
CNPJ       =""
IE         =""

Copia_Imagem()

;Controle de Linhas para a primeira parte da impressÆo
PARAM_NITENS=46

Cabecalho_1()
Itens()
Rodape(1) 
ImpriArq(ARQIMP)

Release Vars VALOR,DATA,IMAGEM_FUNDO
Release Procs IMPPED,VENC,
              Seta_FilePrint, Imprime_FilePrint