Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


CONTEÚDO

  1. Visão Geral
  2. Exemplo de utilização
  3. Tabelas utilizadas

01. VISÃO GERAL

O Easy Import Control (SIGAEIC) disponibiliza a utilização de rotinas automáticas para a manutenção das despesas para o processo. Para isso, deve ser utilizado um rdmake que faça a chamada via Execauto da rotina DI500Main, permitindo assim realizar a manutenção de inclusão, alteração e exclusão das despesas.

A rotina recebe os seguintes parâmetros:

OrdemParâmetroDescriçãoDefaultObrigatórioReferência
1ObsoletoUtilizado internamente.


2ObsoletoUtilizado internamente.


3aProcessoDados do processo (embarque)
Sim
4aDespesasDados das despesas do processo
Sim
5OpçãoOpção para a Despesa (valor 7)
Sim

02. EXEMPLO DE UTILIZAÇÃO

Segue abaixo exemplos de execução da rotina automação para inclusão, alteração e exclusão de despesas do processo.

Para realizar alguma manutenção das despesas do processo, é como premissa:

  • Informar o código do processo (embarque/desembaraço) no vetor aProcesso para identificação no sistema.
  • Informar uma ou mais despesas no vetor aDespesas, adicionando uma ou mais despesas conforme a necessidade.


Informações
titleObservação

A informação do campo filial é carregada pelo sistema de acordo com a empresa/filial informada na abertura do ambiente.

O sistema realiza a pesquisa de acordo com o primeiro índice da tabela SWD (Filial+Processo+Despesa+Data ). Caso deseja realizar uma alteração ou exclusão, é de extrema necessidade informar esses dados, caso contrário é considerado uma inclusão.

Deck of Cards
idexecauto_despesas_import
Card
defaulttrue
idexecauto_despesas_import_inclusao_alteracao
labelInclusão ou alteração
titleInclusão ou alteração

Para que o sistema identifique se é uma alteração de uma despesa, será validado se já se encontra cadastrada no sistema, caso contrário será considerado uma inclusão.


Bloco de código
languagepy
titleInclusão/Alteração automática para Despesas do processo de Importação
linenumberstrue
#include 'protheus.ch'
#include 'totvs.ch'

user function DespExecAuto()
   local aProcesso := {}
   local aDespesas := {}
   local cHawb     := ""

   private lMsErroAuto := .F.

   RpcSetType(3)
   if RPCSetEnv("99", "01", nil, nil, "EIC", nil, {"SW6", "SWD"})

      cHawb := "PROC-0001"
      aProcesso := {"W6_HAWB", cHawb, nil }
   
      // inclui uma despesa
      aAdd(aDespesas ,{;
         {"WD_HAWB"       ,  cHawb     , nil },;
         {"WD_DESPESA"    ,  "404"     , nil },;
         {"WD_DES_ADI"    ,  dDataBase , nil },;
         {"WD_VALOR_R"    ,  830.99    , nil },;
         {"WD_BASEADI"    ,  "2"       , nil },;
         {"WD_PAGOPOR"    ,  "1"       , nil }})

      MSExecAuto({|a,b,c,d,e| DI500Main(a,b,c,d,e)},,, aProcesso , aDespesas , 7 )

      If lMsErroAuto
         MostraErro()
      Else
         MsgInfo("Despesa incluída ou alterada com sucesso.")
      EndIf

      RpcClearEnv()
   endif

return .T.
Card
idexecauto_despesas_import_exclusao
labelExclusão
titleExclusão

Para que o sistema identifique se é uma exclusão de uma despesa, é de extrema importância informar no vetor aDespesas o contéudo AUTDELETA com a informação S e também que a despesa esteja cadastrada no sistema.


Bloco de código
languagepy
titleExclusão automática para Despesas do processo de Importação
linenumberstrue
#include 'protheus.ch'
#include 'totvs.ch'

user function DespExecAuto()
   local aProcesso := {}
   local aDespesas := {}
   local cHawb     := ""

   private lMsErroAuto := .F.

   RpcSetType(3)
   if RPCSetEnv("99", "01", nil, nil, "EIC", nil, {"SW6", "SWD"})

      cHawb := "PROC-0001"
      aProcesso := {"W6_HAWB", cHawb, nil }
   
      // deleta uma despesa
      aAdd(aDespesas,{;
         {"WD_DESPESA" ,  "404"     , nil },;
         {"WD_HAWB"    ,  cHawb     , nil },;
         {"WD_DES_ADI" ,  dDataBase , nil },;
         {"AUTDELETA"  ,  "S"       , nil }})

      MSExecAuto({|a,b,c,d,e| DI500Main(a,b,c,d,e)},,, aProcesso,aDespesas, 7 )

      If lMsErroAuto
         MostraErro()
      Else
         MsgInfo("Despesa excluída com sucesso.")
      EndIf 

      RpcClearEnv()
   endif

return .T.

03. TABELAS UTILIZADAS

  • SW6 - Capa Declaração de Importação
  • SWD - Despesas Declaração Importação