;** Rm_0025C  *******************************************************************
;*  Relatorio de Notas Fiscais Transportadora/Itens                            *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Ultima Alteracao: 24/12/2010 por Bruno Carvalho
;Motivo Alteracao: Ajustes Frete por Conta
;Ultima Alteracao: 05/09/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes exibirt nota mesmo sem contas a pagar
;Ultima Alteracao: 27/10/2016 por Rafael Matos
;Motivo Alteracao: Ajustes Layout para padroniza‡Æo     
;Ultima Alteracao: 10/12/2016 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes showdialog                   
;Ultima Alteracao: 14/03/2017 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes op‡Æo de datas               
;Ultima Alteracao: 28/01/2020 por Bruno Carvalho
;Motivo Alteracao: Ajustes chamada principal RM_0025         

;*******************************************************************************
;* Rotina p/ Selecionar e Order Registros                                      *
;*******************************************************************************
Proc RM_0029C_Seleciona()
ClearAll

If IsTable("\\Sistemas\\Vendas\\"+Dir_Trab+"NotaC")
   Then {Ask} {\\Sistemas\\Cadastro\\Destinat}
        Moveto [Codigo                 ] Example "clie" TypeIn ", ~VSDGDESTINAT.."
        If CIDADE<>""
           Then Moveto [Cidade         ] TypeIn CIDADE
        EndIf   
        Moveto [UF                     ] TypeIn "~VSDGESTADO.."
        Moveto [Codigo da Area         ] TypeIn "~VSDGAREA.."
        {Ask} TypeIn "\\Sistemas\\Vendas\\"+Dir_Trab+"NotaC" Enter 
        Moveto [Codigo da Empresa       ] Check TypeIn "~VSDGEMPRESA.."   
        Moveto [Nome Fantasia Empresa   ] Check
        Moveto [Tipo do Documento       ] Check 
        Moveto [Numero do Documento     ] Check 
        Moveto [Codigo do Documento     ] Check               
        Moveto [Razao Social            ] Check
        Moveto [Frete por Conta         ] Check TypeIn "~VSDGFRETEPC.."
        Moveto [Valor Nota Fiscal       ] Check
        Moveto [Valor do Frete          ] Check
        Moveto [Data de Emissao         ] Check  
        If IsBlank(VSDGNCARREG)
            Then 
                 switch
                  case VSDGOPDTESI="1" : Moveto [Data de Emissao] TypeIn ">=~VSDGDTINI,<=~VSDGDTFIM"
                  case VSDGOPDTESI="2" : Moveto [Data de Saida  ] TypeIn ">=~VSDGDTINI,<=~VSDGDTFIM"
                  case VSDGOPDTESI="3" : Moveto [Data_Inclusao  ] TypeIn ">=~VSDGDTINI,<=~VSDGDTFIM"
                 endswitch
           Else Moveto [Numero_Carregamento] TypeIn "~VSDGNCARREG.."        
        EndIf 
        Moveto [Codigo da Transportadora] Check TypeIn "~VSDGTRANSP.."
        Moveto [Nome Fantasia Transport ] Check
        Moveto [Codigo                  ] Example "clie"
        Moveto [Codigo da Destinacao    ] TypeIn "~VSDGDESTIN.."
        Moveto [Codigo do Representante ] TypeIn "~VSDGREPRESEN.."
        Moveto [Placa do Veiculo        ] TypeIn "~VSDGVEICULO.."
        Moveto [Situacao                ] TypeIn "Not C"        
EndIf
Do_It!
ClearAll

EndProc ;RM_0029C_Seleciona()

;*******************************************************************************
;* Rotina                                                                      *
;*******************************************************************************
Proc RM_0029C_Principal()

AGUARDE("Aguarde, gerando o relat¢rio")
Tabela=Cria_Temp(PrivDir())

Monta_Dir_Trab(VSDGDTINI,VSDGDTFIM)
While Novo_Dir_Trab()
  If IsTable("Answer")     Then Delete "Answer" EndIf
  RM_0029C_Seleciona()
  If Not IsTable("Answer") Then Loop EndIf
  
Coedit "Rm_0025C","\\Sistemas\\Ctapag\\Titulos","Answer"        

Scan     
  EMPRESA =[Codigo da Empresa  ]
  TPDOCTO =[Tipo do Documento  ]
  NUMDOCTO=[Numero do Documento]

  Moveto "\\Sistemas\\Ctapag\\Titulos"
  Home

  TitOk=False
  Moveto [Codigo da Empresa]
  Locate IndexOrder by "IndTit1" EMPRESA,TPDOCTO,NUMDOCTO
  If RetVal
     Then TitOk=True
  EndIf
   
  Moveto "Rm_0025C"
  [Codigo da Empresa       ]=[Answer->Codigo da Empresa     ]
  [Nome Fantasia Empresa   ]=[Answer->Nome Fantasia Empresa ]
  [Numero do Documento     ]=[Answer->Numero do Documento   ]
  [Codigo do Documento     ]=[Answer->Codigo do Documento   ]
  [Nome Fantasia EmitDest  ]=[Answer->Razao Social          ]
  Switch
     Case [Answer->Frete por Conta ]="0": [Descricao Frete]="S/Fre"
     Case [Answer->Frete por Conta ]="1": [Descricao Frete]="Emit"  
     Case [Answer->Frete por Conta ]="2": [Descricao Frete]="Dest"                
     OtherWise                          : [Descricao Frete]="Terc"        
  EndSwitch             
  [Valor Nota Fiscal       ]=[Answer->Valor Nota Fiscal       ]
  [Valor do Frete          ]=[Answer->Valor do Frete          ]
  [Data de Emissao         ]=[Answer->Data de Emissao         ]
  [Codigo da Transportadora]=[Answer->Codigo da Transportadora]  
  [Nome Fantasia Transport ]=[Answer->Nome Fantasia Transport ]
  If TitOk
     Then
          [Numero do Lancamento    ]=[\Sistemas\Ctapag\Titulos->Numero do Lancamento ]
          [Valor Do Documento      ]=[\Sistemas\Ctapag\Titulos->Valor Do Documento   ]
          [Saldo do Documento      ]=[\Sistemas\Ctapag\Titulos->Saldo do Documento   ]
  EndIf  
  [Diferenca               ]=[Valor do Frete]-[Valor Do Documento]
  End Down          
   
  Moveto "Answer"
EndScan
Do_It!
ClearAll        
      
If IsTable("\\Sistemas\\Vendas\\Rm_0025C")
   Then {Ask} TypeIn "\\Sistemas\\Vendas\\Rm_0025C" Enter Check    
        Do_It!
        ClearAll
EndIf
Empty "RM_0025C"

If IsTable(Tabela)
   Then Add "Answer" Tabela
   Else Rename "Answer" Tabela
EndIf
EndWhile

If not IsEmpty(Tabela)
   then CopyReport "\\Base\\Sistemas\\Vendas\\Rm_0025C" "R" Tabela "R"
        IMPRIREL(Tabela,"R")  
        Delete Tabela
   else MENSAGEM("N„o existem registros a processar")
EndIf

If IsTable(Tabela)   Then Delete Tabela   EndIf
If IsTable("Answer") Then Delete "Answer" EndIf

EndProc

;-- Chamada principal ----------------------------------------------------------
RM_0029C_Principal()

Release Vars Tabela
Release Procs RM_0029C_Principal, RM_0029C_Seleciona
