Histórico da Página
Incluir Página | ||
---|---|---|
|
...
|
...
|
...
Descrição:
...
|
...
Produto:
...
Microsiga Protheus
...
Manutenção de Embarques de processos de exportação
...
|
...
|
...
EEC - Capa do Embarque de Exportação
EE9 - Itens do Embarque de Exportação
EXL - Dados Complementares do Embarque
EEN - Notify
EXB - Agenda de Atividades/Documentos
EEB - Agentes de um Pedido
...
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
nOpc | Numérico | Opção: 3=Incluir; 4=Alterar; 5=Excluir; | X |
aDados | Array of Record | Array com os dados para integração automática | X |
...
Observações:
...
Alguns campos das tabelas EEC, EE9, EXL, EEN, EXB e EEB podem receber o tratamento via dicionario de dados (SX3), o qual permite ser utilizado somente por alguns módulos (X3_USADO).
Para esses casos é necessário executar a preparação do ambiente passando a opção do módulo ativo.
Exemplo: PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" Modulo "EEC" TABLES "EEC,EE9"
Inclusão automática do Embarque de Exportação
Para realizar a inclusão automática de um Embarque de Exportação, é necessária a utilização da função
|
A utilização da rotina automática, depende da passagem de duas informações para que possa ser executada, sendo a primeira delas, a opção que se deseja realizar, ou seja, é necessário informar para a rotina se a operação que será realizada é uma Inclusão, uma Alteração ou uma Exclusão, e a segunda informação obrigatória, é o array com as informações a serem integradas.
Este array com os dados da integração, devem ser informados seguindo o seguinte critério:
Deve ser montado um único array de dados, sendo este responsável por enviar tanto as informações da capa do processo de exportação, quanto os itens e seus auxiliares (os auxiliares são opcionais
|
- Para a integração da Capa do Embarque (Tabela EEC), deve ser montado um array, onde a primeira posição deve ser passado o Alias da tabela (ECC), e a segunda posição deve contar os dados, seguindo a estrutura de Nome do Campo, Informação a ser Gravada e um terceiro parâmetro que pode ser enviada uma validação adicional para o campo. As informações da Capa do Processo, são obrigatórias para a integração automática;
- Para a integração dos Itens do Embarque (Tabela EE9), deve ser montado um array, seguindo o mesmo critério da Capa do Embarque. A primeira posição do array deve ser informado o Alias da tabela (EE9), e a segunda posição deve conter os dados a serem integrados, seguindo a mesma estrutura da capa, Nome do Campo, Informação a ser Gravada e um terceiro parâmetro que pode ser enviada uma validação adicional para o campo;
- A integração de Auxiliares também podem ser feitas de forma automática. Neste caso, cada um deles deve ser montado um novo array, seguindo a mesma estrutura do Embarque. Podem ser integrados de forma automática dados de Notify (Tabela EEN), Agenda de Documentos (Tabela EXB) e Agentes de Comissão (Tabela EEB). Cada um deles deve ser um array separado contendo o Alias a ser integrado e as informações contendo o Nome do Campo, Informação a ser Gravada e um terceiro parâmetro que pode ser enviada uma validação adicional para o campo. As informações dos Auxiliares, não são obrigatórias para a integração automática
Abaixo temos um exemplo de estrutura a ser integrada para uma Inclusão do processo de exportação com auxiliares.
...
language | actionscript3 |
---|---|
linenumbers | true |
...
|
...
Alteração automática do Embarque de Exportação
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
#Include "Totvs.Ch"
#include "tbiconn.ch"
User Function MyEECAE100()
Local aCab := {}
Local aItens := {}
Local aDados := {}
Private lMsErroAuto := .F.
PREPARE ENVIRONMENT EMPRESA '99' FILIAL '01' USER 'Administrador' PASSWORD '' TABLES 'EEC,EE9' MODULO 'EEC'
//Dados da Capa do Embarque
aCab :={{'EEC_PREEMB' , "EMB-AUT001" ,NIL},;
{'EEC_IMPORT' ,'001' ,NIL},;
{'EEC_IMLOJA' ,'01' ,NIL},;
{'EEC_IMPODE' ,"CLIENTE 001" ,NIL},;
{'EEC_FORN' ,'001' ,NIL},;
{'EEC_FOLOJA' ,'01' ,NIL},;
{'EEC_IDIOMA' ,"PORT. -PORTUGUES" ,NIL},;
{'EEC_CONDPA' ,"001" ,NIL},;
{'EEC_DIASPA' , 0 ,NIL},;
{'EEC_MPGEXP' ,'001' ,NIL},;
{'EEC_INCOTE' ,'FOB' ,NIL},;
{'EEC_MOEDA' ,'US$' ,NIL},;
{'EEC_FRPPCC' ,'PP' ,NIL},;
{'EEC_UNIDAD' ,'KG' ,NIL},;
{'EEC_EMBAFI' ,' ' ,NIL},;
{'EEC_CALCEM' ,'1' ,NIL},;
{'EEC_VIA' ,'02' ,NIL},;
{'EEC_ORIGEM' ,'SSZ' ,NIL},;
{'EEC_DEST' ,'HST' ,NIL},;
{'EEC_PAISET' ,'249' ,NIL},;
{'EEC_VIA_DE' ,"NOME DA VIA" ,NIL},;
{'EEC_TIPTRA' ,'1' ,NIL}}
aAdd(aDados, {"EEC", aCab})
//Dados dos Itens do Embarque
aItens := {}
aAdd(aItens, {{'EE9_PEDIDO' ,"EMB-AUT001" , NIL},;
{'EE9_SEQUEN' ,"1" , NIL},;
{'EE9_SEQEMB' ,"1" , NIL},;
{'EE9_COD_I' ,'001' , NIL},;
{'EE9_FORN' ,'001' , NIL},;
{'EE9_FOLOJA' ,'01' , NIL},;
{'EE9_SLDINI' , 3737.95 , NIL},;
{'EE9_QE' ,197 , NIL},;
{'EE9_QTDEM1' ,19 , NIL},;
{'EE9_EMBAL1' ,'01' , NIL},;
{'EE9_PSLQUN' ,200 , NIL},;
{'EE9_PRECO' ,2100 , NIL},;
{'EE9_PLSQUN' ,200 , NIL},;
{'EE9_TES' ,"501" , NIL},;
{'EE9_CF' ,"999" , NIL},;
{'EE9_POSIPI' ,"01011010" , NIL}})
aAdd(aItens, {{'EE9_PEDIDO' ,"EMB-AUT001" , NIL},;
{'EE9_SEQUEN' ,"2 " , NIL},;
{'EE9_SEQEMB' ,"2" , NIL},;
{'EE9_COD_I' ,'002' , NIL},;
{'EE9_FORN' ,'001' , NIL},;
{'EE9_FOLOJA' ,'01' , NIL},;
{'EE9_SLDINI' , 40 , NIL},;
{'EE9_QE' , 20 , NIL},;
{'EE9_QTDEM1' , 2 , NIL},;
{'EE9_EMBAL1' , '01' , NIL},;
{'EE9_PSLQUN' ,200 , NIL},;
{'EE9_PRECO' ,2100 , NIL},;
{'EE9_PLSQUN' ,200 , NIL},;
{'EE9_TES' ,"501" , NIL},;
{'EE9_CF' ,"999" , NIL},;
{'EE9_POSIPI' ,"01011010" , NIL}})
aAdd(aDados, {"EE9", aItens})
//-------Inclusão de Auxiliares
//Notify
aNotifys := {}
aNotify := {}
aAdd(aNotify, {"EEN_IMPORT", "001" , Nil})
aAdd(aNotify, {"EEN_IMLOJA", "01" , Nil})
aAdd(aNotifys, aNotify)
aAdd(aDados, {"EEN", aNotifys})
//Agenda de Documentos
aDocs := {}
aDoc := {}
aAdd(aDoc, {"EXB_CODATV", "05" , Nil})
aAdd(aDoc, {"EXB_TIPO" , "1" , Nil})
aAdd(aDocs, aDoc)
aAdd(aDados, {"EXB", aDocs})
//Agentes
aAgentes := {}
aAgente := {}
aAdd(aAgente, {"EEB_CODAGE", "002" , Nil})
aAdd(aAgente, {"EEB_TIPCOM", "1" , Nil})
aAdd(aAgente, {"EEB_TIPCVL", "1" , Nil})
aAdd(aAgente, {"EEB_VALCOM", 10, Nil})
aAdd(aAgente, {"EEB_REFAGE", "TESTE", Nil})
aAdd(aAgentes, aAgente)
aAdd(aDados, {"EEB", aAgentes})
MsAguarde({|| MSExecAuto( {|aAux, nOpc| EECAE100(,nOpc,aAux) },aDados, 4) }, "Integrando Embarque Automático")
If lMsErroAuto
MostraErro()
Else
MsgInfo("Executado com sucesso!", "Aviso")
EndIf
RESET ENVIRONMENT
Return !lMsErroAuto
|
Exclusão automática do Embarque de Exportação
...
language | actionscript3 |
---|---|
linenumbers | true |
...
|