;** Rm_0110 ********************************************************************
;*  Relatorio de Clientes que nao compraram em um periodo                      *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 05/11/1997 por Anivel Augusto Rodrigues
;Ultima Alteracao: 18/11/2003 por Jos‚ Lu¡s Ameno da Silva
;Motivo Alteracao: Periodo em que clientes nÆo compraram
;Ultima Alteracao: 20/10/2009 por Bruno Carvalho
;Motivo Alteracao: Inclusao do Campo VCDGESTADO
;Ultima Alteracao: 28/10/2009 por Bruno Carvalho
;Motivo Alteracao: Ajustes Seleciona()  
;Ultima Alteracao: 15/10/2010 por Bruno Carvalho
;Motivo Alteracao: Adicionado TG_SITUACAOCLIENTE
;Ultima Alteracao: 19/10/2010 por Bruno Carvalho
;Motivo Alteracao: Adicionado TG_INATIVO
;Ultima Alteracao: 23/05/2011 por Bruno Carvalho
;Motivo Alteracao: Ajustes CIDADE
;Ultima Alteracao: 16/08/2011 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes exibir valores ?
;Ultima Alteracao: 21/08/2013 por Bruno Carvalho
;Motivo Alteracao: Ajustes "Situacao do Cliente" p/ permitir situa‡Æo como OTIMO
;Ultima Alteracao: 08/01/2014 por Bruno Carvalho
;Motivo Alteracao: Adicionado filtro por marca
;Ultima Alteracao: 28/07/2015 por Andrey Fillipe
;Motivo Alteracao: Adicionado filtro Gerencia
;Ultima Alteracao: 12/12/2016 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes showdialog   
;Ultima Alteracao: 29/12/2016 por Rafael Matos
;Motivo Alteracao: Ajustes MensagemCheckBoxes()                
;Ultima Alteracao: 27/11/2019 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes ask com representante nÆo cadastrado
;Ultima Alteracao: 10/02/2020 por Bruno Carvalho
;Motivo Alteracao: Ajustes de padroniza‡Æo nos campos [TG_CIDADE] e [TG_ESTADO]
;Ultima Alteracao: 10/02/2020 por Bruno Carvalho
;Motivo Alteracao: Ajustes de padroniza‡Æo nos campos [TG_CIDADE] e [TG_ESTADO]
;Ultima Alteracao: 25/03/2020 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes showdialog   
;Ultima Alteracao: 07/04/2020 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes showdialog     
;Ultima Alteracao: 21/01/2021 por Bruno Carvalho
;Motivo Alteracao: Ajustes p/ chamar filtro padrÆo *RM_0120*
;Ultima Alteracao: 20/04/2021 por Bruno Carvalho             
;Motivo Alteracao: Ajustes no processo do filtro "TG_STATUS" na "Bib_Show"
;Ultima Alteracao: 27/04/2021 por Bruno Carvalho             
;Motivo Alteracao: Alterado VSDGSITUACAO p/ VSDGSITUACAOCLIENTE

;*******************************************************************************
;* Rotina p/ Selecionar e Order Registros                                      *
;*******************************************************************************
Proc RM_0120B_Seleciona()
ClearAll       
     
{Ask} TypeIn "\\Sistemas\\Cadastro\\Represen" Enter
Moveto [Codigo do Representante] Example "crep"
If VSDGGERENCIA<>""
   Then Moveto [Codigo da Gerencia     ] TypeIn "~VSDGGERENCIA"
   Else Moveto [Codigo da Gerencia     ] TypeIn "~VSDGGERENCIA.."
EndIf
     
{Ask} {\\Sistemas\\Cadastro\\FichaCli}
Moveto [Codigo                  ] Example "COD"
Moveto [Data da Primeira Compra ] Check
Moveto [Valor da Primeira Compra] Check
Moveto [Data da Ultima Compra   ] Check
     
If VSDGOPVALORES="S"
   Then Moveto [Valor da Ultima Compra  ] Check
EndIf   
     
{Ask} {\\Sistemas\\Cadastro\\Destinat}
Moveto [Codigo                  ] Check Example "COD" TypeIn "!"
Moveto [Tipo                    ] TypeIn "C"
Moveto [Razao Social            ] Check     
Switch
  Case VSDGSTATUS="ATIVO"   : Moveto [Inativo] Check TypeIn "N"
  OtherWise                 : Moveto [Inativo] Check TypeIn "Not S" 
EndSwitch    
Switch
  Case ListaRegra_VSDGSITUACAOCLIENTE_Ativo : Moveto [Situacao do Cliente] TypeIn ListaRegra_VSDGSITUACAOCLIENTE
  Case VSDGSITUACAOCLIENTE<>"TODAS"         : Moveto [Situacao do Cliente] TypeIn "~VSDGSITUACAOCLIENTE.."
EndSwitch
     
If UPPER(CIDADE)<>"TODAS"
   Then Moveto [Cidade          ] Check TypeIn CIDADE
EndIf
     
Moveto [UF                      ] Check TypeIn "~VSDGESTADO.."
Moveto [Telefone                ] Check
Moveto [Contato                 ] Check
Moveto [Codigo do Representante ] Check Example "crep" TypeIn "!, ~VSDGREPRESEN.."
Moveto [Nome Fantasia Represent ] Check
Moveto [Endereco                ] Check
Moveto [Bairro                  ] Check
Moveto [CEP                     ] Check
Do_It!
ClearAll

EndProc   ; (RM_0120B_Seleciona)

;*******************************************************************************
;* Rotina p/ Selecionar Vendas                                                 *
;*******************************************************************************
Proc RM_0120B_Sel_Vendas()
ClearAll

If IsTable("\\Sistemas\\Vendas\\"+Dir_Trab+"NotaC") 
   Then {Ask} TypeIn "\\Sistemas\\Vendas\\"+Dir_Trab+"NotaC" Enter
        If VSDGMARCA<>""
           Then If IsTable("\\Sistemas\\Vendas\\"+Dir_Trab+"NotaI")       
                   Then Moveto [Codigo da Empresa      ] Example "CodE" TypeIn ", ~VSDGEMPRESA.."
                        Moveto [Numero do Documento    ] Example "NumD" 
                        Moveto [Serie do Documento     ] Example "SerD"
                EndIf
           else Moveto [Codigo da Empresa      ] TypeIn "~VSDGEMPRESA.."     
        EndIf        
        Moveto [Codigo                 ] Check
        Moveto [Data de Emissao        ] TypeIn ">=~VSDGDTINI,<=~VSDGDTFIM"
        Moveto [Descricao da Destinacao] TypeIn "..VEND.. or ..SERV.. or ..SAIDA.."
        Moveto [Tipo Movimento Estoque ] TypeIn "S"
        Moveto [Situacao               ] TypeIn "Not C"
 
        If VSDGMARCA<>""  
           Then If IsTable("\\Sistemas\\Vendas\\"+Dir_Trab+"NotaI")
                   Then {Ask} TypeIn "\\Sistemas\\Vendas\\"+Dir_Trab+"NotaI" Enter
                        Moveto [Codigo da Empresa      ] Example "CodE"
                        Moveto [Numero do Documento    ] Example "NumD" 
                        Moveto [Serie do Documento     ] Example "SerD"
                        Moveto [Codigo do Item         ] Example "CodI"
                        {Ask} {\\Sistemas\\Estoque\\Itens}
                        Moveto [Codigo do Item         ] Example "CodI"
                        Moveto [Codigo da Marca        ] TypeIn "~VSDGMARCA.."
                        Do_It!
                        ClearAll
                   Else Do_It!
                        ClearAll
                        Delete "Answer"
                EndIf   
           Else Do_It!
                ClearAll
        EndIf
Endif

EndProc   ; (Sel_Vendas)

;*******************************************************************************
;* Rotina p/ Excluir registros                                               *
;*******************************************************************************
Proc RM_0120B_Exclui_Registros()
ClearAll

If IsEmpty(Tabela2)
   Then Return
EndIf   

{Ask} TypeIn Tabela2 Enter
Moveto [Codigo] Example "Cod"
{Ask} TypeIn Tabela  Enter TypeIn "Fast Delete"
Moveto [Codigo] Example "Cod"
Do_It!
ClearAll

EndProc   ; (RM_0120B_Exclui_Registros)

;*******************************************************************************
;* ROTINA PRINCIPAL                                                            *
;*******************************************************************************
While True
  AGUARDE("Aguarde, gerando o relat¢rio")
  Tabela=Cria_Temp(PrivDir())
  RM_0120B_Seleciona()
  
  Rename "Answer" Tabela
  Tabela2=Cria_Temp(PrivDir())

  Monta_Dir_Trab(VSDGDTINI,VSDGDTFIM)
  While Novo_Dir_Trab()
    If IsTable("Answer")     Then Delete "Answer" EndIf
    RM_0120B_Sel_Vendas()
    If Not IsTable("Answer") Then Loop EndIf
    If IsTable(Tabela2)
       Then Add "Answer" Tabela2
       Else Rename "Answer" Tabela2
    EndIf
  EndWhile
  RM_0120B_Exclui_Registros()
                 
  If IsEmpty(Tabela)
     Then MENSAGEM("N„o existem registros a processar")
          Delete Tabela
          Return
  EndIf

  Switch
    Case VSDGCODMODELO="10A":
      If VSDGOPRELCODALF="1"
         Then CopyReport "\\Base\\Sistemas\\Vendas\\Rm_0110" "R" Tabela "R"
         Else CopyReport "\\Base\\Sistemas\\Vendas\\Rm_0110" "1" Tabela "R"
      EndIf
    Case VSDGCODMODELO="10B":
      If VSDGOPRELCODALF="1"
         Then CopyReport "\\Base\\Sistemas\\Vendas\\Rm_0110" "6" Tabela "R"
         Else CopyReport "\\Base\\Sistemas\\Vendas\\Rm_0110" "7" Tabela "R"
      EndIf
  EndSwitch
  IMPRIREL(Tabela,"R")

  If IsTable("Answer")     Then Delete "Answer" EndIf
  If IsTable(Tabela)       Then Delete Tabela   EndIf
  If IsTable(Tabela2)      Then Delete Tabela2  EndIf
  
  QuitLoop
EndWhile
ClearAll
Release Vars RM_0120B_Seleciona,RM_0120B_Sel_Vendas,RM_0120B_Exclui_Registros
