Árvore de páginas

Linha de Produto:

Datasul

Módulo:

MEX

Função:

Criação dos log’s de alterações no MEX.

Nome Físicoexp/exapi025.p

Considerações gerais

Objetivo 

Realizar a criação dos histórico de alterações no MEX. 

Funcionamento 

Na forma padrão, realiza-se a chamada através de um comando RUN normal, passando-se as temp-tables carregadas com as informações necessárias.

A execução na forma persistente é realizada através da chamada de um comando RUN conforme exemplo a seguir.

A sintaxe para executar a API em modo persistente é: 

RUN exp/exapi025.p PERSISTENT SET h-handle.

A variável denominada h-handle irá receber o “handle” do programa, permitindo o acesso aos “métodos” internos da API.

 

Tabelas temporárias

tt-ex-histor-alter

Entrada/Saída

Histórico de alterações no MEX.

Entrada/Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

seq       

integer 

>>>>>>>>9            

Sequência                

Sim

 

nome-tabela

character

x(50)                

Tabela alterada          

Não

 

campo     

character

x(50)                

Campo alterado           

Não

 

chave     

character

x(80)                

Chave do registro alterado

Não

 

vl-anterior

character

x(2000)              

Valor antigo do campo    

Não

 

vl-novo   

character

x(2000)              

Valor novo do campo      

Não

 

usuar-alter

character

x(12)                

Usuário Alteração        

Não

 

dt-alter  

date    

99/99/99             

Data Alteração           

Não

 

hora-alter

character

x(8)                 

Hora alteração           

Não

 

prog-alter

character

x(30)                

Programa alteração       

Não

 

narrativa 

character

x(2000)              

Narrativa da alteração   

Não

 

char-1    

character

x(100)               

Livre 1                   

Não

 

char-2    

character

x(100)               

Livre 2                  

Não

 

log-1     

logical 

Sim/Não              

Livre 3                  

Não

 

log-2     

logical 

Sim/Não              

Livre 4                  

Não

 

dec-1     

decimal 

->>>>>>>>>>>9.99999999

Livre 5                  

Não

 

dec-2     

decimal 

->>>>>>>>>>>9.99999999

Livre 6                  

Não

 

int-1     

integer 

->>>>>>>>>9          

Livre 7                  

Não

 

int-2     

integer 

->>>>>>>>>9          

Livre 8                  

Não

 

data-1    

date    

99/99/99             

Livre 9                  

Não

 

data-2    

date    

99/99/99             

Livre 10                 

Não

 

tt-processo-exp-old

Entrada/Saída

Informações do processo de exportação antes da alteração.

Entrada/Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

nr-proc-exp          

character

X(12)                

Processo de Exportação          

Sim

 

cod-sit-proc         

integer 

99                    

Situação                     

Sim

 

cod-emitente         

integer 

>>>>>>>>9            

Cod Importador               

Sim

 

nome-completo        

character

X(40)                

Nome Completo                

Não

 

endereco             

character

X(40)                

Endereço                     

Não

 

bairro               

character

X(30)                

Bairro                       

Não

 

cidade               

character

X(25)                

Cidade                       

Não

 

estado               

character

X(4)                 

Estado                       

Não

 

cep                  

character

X(12)                

Cep                          

Não

 

pais                 

character

X(20)                

País                          

Não

 

cod-consign          

integer 

>>>>>>>>9            

Cod Consignatário            

Não

 

nome-consign         

character

X(40)                

Nome Completo                

Não

 

end-consign          

character

X(40)                 

Endereço                     

Não

 

bairro-consign       

character

X(30)                

Bairro                       

Não

 

cidade-consign       

character

X(25)                

Cidade                       

Não

 

estado-consign       

character

X(4)                 

Estado                       

Não

 

cep-consign          

character

X(12)                

Cep                          

Não

 

pais-consign         

character

X(20)                

País                         

Não

 

cod-notif            

integer 

>>>>>>>>9            

Cod Notificado               

Não

 

nome-notif           

character

X(40)                

Nome Completo                

Não

 

end-notif            

character

X(40)                

Endereço                      

Não

 

bairro-notif         

character

X(30)                

Bairro                       

Não

 

cidade-notif         

character

X(25)                

Cidade                       

Não

 

estado-notif         

character

X(4)                  

Estado                       

Não

 

cep-notif            

character

X(12)                

Cep                          

Não

 

pais-notif           

character

X(20)                

País                         

Não

 

cod-fabric           

integer 

>>>>>>>>9            

Cod Fabricante               

Não

 

cod-despachante      

integer 

>>>>>>>>9            

Despachante                  

Não

 

cod-incoterm         

character

X(3)                 

Incoterm                     

Não

 

cod-seguradora       

integer 

>>>>>>>>9            

Seguradora                   

Não

 

cod-origem-proc      

integer 

99                   

Origem Processo              

Não

 

cod-itiner           

integer 

>>,>>9               

Código Itinerário            

Não

 

pto-despacho         

integer 

>>,>>9               

Ponto Despacho               

Não

 

pto-embarque         

integer 

>>,>>9               

Ponto Embarque               

Não

 

pto-desembarque      

integer 

>>,>>9                

Ponto Desembarque            

Não

 

cod-via-transp       

integer 

99                   

Via Transporte               

Não

 

cod-transp-int       

integer 

>>>>>>>>9            

Transportador Internacional  

Não

 

cod-armador          

integer 

>>>>>>>>9            

Armador                      

Não

 

cod-agente-cia       

integer 

>>>>>>>>9            

Agente Marítimo / Comp Aérea 

Não

 

veic-transp          

character

X(50)                

Id Veículo Transportador     

Não

 

marca-1              

character

X(50)                

Marca                        

Não

 

marca-2              

character

X(50)                

Marca                        

Não

 

marca-3              

character

X(50)                

Marca                         

Não

 

marca-4              

character

X(50)                

Marca                        

Não

 

marca-5              

character

X(50)                

Marca                        

Não

 

cod-pais             

integer 

>>,>>9                

Código País                  

Sim

 

cod-idioma           

character

x(12)                

Idioma                       

Sim

 

cod-decl-cliente     

integer 

>>,>>9               

Cod Declaração               

Não

 

cod-decl-pais        

integer 

>>,>>9               

Cod Declaração               

Não

 

cod-decl-padrao      

integer 

>>,>>9               

Cod Declaração               

Não

 

nr-invoice           

character

X(16)                

Fatura Comercial             

Não

 

dt-invoice           

date    

99/99/9999           

Dt Fatura Comercial          

Não

 

nr-packing           

character

X(12)                

Romaneio                     

Não

 

nr-saque             

character

X(12)                

Saque                         

Não

 

dt-saque             

date    

99/99/9999           

Dt Saque                     

Não

 

nr-form-a            

character

X(20)                

Certificado Origem (Form-a)  

Não

 

dt-form-a            

date    

99/99/9999            

Dt Certificado Origem (Form-a)

Não

 

nr-conhec-master     

character

X(18)                

Conhecimento Master          

Não

 

nr-conhecimento      

character

X(18)                

Conhecimento                 

Não

 

dt-conhecimento      

date     

99/99/9999           

Dt Conhecimento              

Não

 

dt-cruze             

date    

99/99/9999           

Dt Cruze                     

Não

 

dt-embarque          

date    

99/99/9999           

Dt Embarque                  

Não

 

nr-apolice           

character

X(20)                

Nr Apolice                   

Não

 

nr-averbacao         

character

X(20)                

Nr Averbacao                 

Não

 

nr-cert-seguro       

character

X(20)                

Certificado Seguro            

Não

 

dt-cert-seguro       

date    

99/99/9999           

Dt Certificado Seguro        

Não

 

inf-adicionais       

character

X(2000)              

Informações Adicionais       

Não

 

dt-cancela           

date    

99/99/9999            

Dt Cancelamento              

Não

 

motivo-cancela       

character

X(2000)              

Motivo Cancelamento          

Não

 

dt-prev-ex-factory   

date    

99/99/9999           

Dt Prev Ex-Factory           

Não

 

dt-prev-embarque     

date     

99/99/9999           

Dt Prev Embarque             

Não

 

dt-val-prof          

date    

99/99/9999           

Dt Val Proforma              

Não

 

dt-aceita-prof       

date    

99/99/9999           

Dt Aceita Proforma           

Não

 

cod-estabel          

character

x(5)                 

Estab                        

Sim

 

estab-fisc           

character

x(5)                 

Estabel Fiscal               

Sim

 

desc-vl-liq          

character

X(10)                

Descrição                     

Não

 

carta-credito        

character

X(20)                

Carta Crédito                

Não

 

cod-pto-inicio-pagto 

integer 

>>,>>9               

Pto Contr Base Pagamento     

Não

 

form-envio-docs      

character

X(20)                 

Forma Envio Documentos       

Não

 

nr-courier           

character

X(15)                

Nr Courier                   

Não

 

dt-courier           

date    

99/99/9999           

Dt Courier                   

Não

 

cod-decl-conhec      

integer  

>>,>>9               

Cod Decl Corpo Conhecimento  

Não

 

instr-despachante    

character

X(2000)              

Instruções Despachante       

Não

 

pto-chegada          

integer 

>>,>>9               

Ponto Chegada Empresa        

Não

 

texto-declaracoes    

character

x(32000)             

Texto                        

Não

 

completo             

logical 

yes/no               

Completo                     

Não

 

cod-notif2           

integer 

>>>>>>>>9            

Cod Notificado2               

Não

 

nome-notif2          

character

X(40)                

Nome Completo                

Não

 

end-notif2           

character

X(40)                

Endereço                     

Não

 

bairro-notif2        

character

X(30)                

Bairro                       

Não

 

cidade-notif2        

character

X(25)                

Cidade                       

Não

 

estado-notif2        

character

X(4)                 

Estado                       

Não

 

cep-notif2           

character

X(12)                

Cep                          

Não

 

pais-notif2          

character

X(20)                

País                         

Não

 

char-1               

character

x(100)               

Campo livre do tipo caractere

Não

 

char-2                

character

x(100)               

Campo livre do tipo caractere

Não

 

dec-1                

decimal 

->>>>>>>>>>>9.99999999

Campo livre do tipo decimal

Não

 

dec-2                

decimal 

->>>>>>>>>>>9.99999999

Campo livre do tipo decimal

Não

 

int-1                

integer 

->>>>>>>>>9          

Campo livre do tipo inteiro

Não

 

int-2                

integer 

->>>>>>>>>9          

Campo livre do tipo inteiro

Não

 

log-1                

logical 

Sim/Não              

Campo livre do tipo lógico

Não

 

log-2                

logical 

Sim/Não              

Campo livre do tipo lógico

Não

 

data-1               

date    

99/99/9999           

Campo livre do tipo data

Não

 

data-2               

date    

99/99/9999           

Campo livre do tipo data                             

Não

 

check-sum            

character

X(20)                

Check-sum                    

Não

 

nr-containers        

integer 

>>>>>>>9             

Nr containers                

Não

 

nome-estab           

character

X(40)                

Estabelecimento              

Não

 

endereco-estab       

character

X(35)                

Endereço                     

Não

 

bairro-estab         

character

x(30)                

Bairro                        

Não

 

cidade-estab         

character

X(25)                

Cidade                       

Não

 

cep-estab            

integer 

99999,999            

CEP                          

Não

 

estado-estab         

character

x(4)                 

Estado                       

Não

 

pais-estab           

character

X(20)                

País                         

Não

 

volume               

decimal 

>>>,>>>,>>9.9999     

Volume                       

Não

 

endereco_text        

character

x(2000)              

Endereco Completo            

Não

 

endereco_text_consign

character

x(2000)              

Endereco Completo Consig     

Não

 

endereco_text_notif1 

character

x(2000)              

Endereço Completo Notif 1    

Não

 

endereco_text_notif2 

character

x(2000)              

Endereço Completo Notif 2    

Não

 

endereco_text_estab  

character

x(2000)              

Endereço Completo Estab      

Não

 

cdn-emit-final       

integer 

>>>>>>>>9            

Cliente Final                 

Sim

 

cod-pais-final       

character

x(20)                

País Final                   

Sim

 

cdn-pto-transb       

integer 

>>,>>9               

Ponto Transbordo             

Sim

 

idi-tip-frete-export 

integer 

9                    

Tipo Frete Exportação        

Sim

 

cod-cond-pagto       

integer 

>>>9                 

Condição Pagamento           

Sim

 

cdn-bco-carta-cr     

integer 

>>9                  

Banco Carta Crédito          

Sim

 

cod-agenc-carta-cr   

character

x(8)                 

Agência Carta Crédito        

Sim

 

cdn-bco-cobr         

integer 

>>9                  

Banco Cobrança               

Sim

 

cod-agenc-cobr       

character

x(8)                 

Agência Cobrança             

Sim

 

cdn-bco-entreg-docto 

integer 

>>9                  

Banco Entrega Docto          

Sim

 

cod-agenc-entreg-docto

character

x(8)                 

Agência Entrega Doctos       

Sim

 

cod-refer-bcia       

character

X(25)                

Referência Bancária           

Não

 

dat-remes            

date    

99/99/9999           

Data Remessa                 

Não

 

dat-entreg-docto     

date    

99/99/9999           

Data Entrega Docto           

Não

 

cod-courier-cobr     

character

x(30)                

Courier Cobrança             

Sim

 

nom-emit-final       

character

x(40)                

Nome Cliente Final           

Sim

 

des-end-emit-final   

character

x(40)                

Endereço Cliente Final       

Sim

 

nom-bairro-emit-final

character

x(30)                

Bairro Cliente Final         

Sim

 

nom-cidad-emit-final 

character

x(25)                

Cidade Cliente Final         

Sim

 

cod-estado-emit-final

character

x(4)                 

Estado Cliente Final         

Sim

 

cod-cep-emit-final   

character

x(12)                

CEP Cliente Final            

Sim

 

cod-pais-emit-final  

character

x(20)                

País Cliente Final           

Sim

 

log-nf-atlzdo        

logical 

Sim/Não              

Processo Atualizado           

Sim

 

volume-inf           

decimal 

>>>,>>>,>>9.9999     

Volume Informado             

Sim

 

hra-deadline         

character

99:99:99             

Hora Dead-line               

Não

 

dat-deadline         

date    

99/99/9999           

Data Dead-line               

Não

 

nome-transp          

character

x(40)                

Transportador                

Não

 

end-transp           

character

x(40)                

Endereco Transportador       

Não

 

bairro-transp        

character

x(30)                

Bairro Transportador         

Não

 

cidade-transp        

character

x(25)                

Cidade Transportador         

Não

 

estado-transp        

character

x(4)                 

Estado Transportador         

Não

 

cep-transp            

character

x(12)                

Cep Transportador            

Não

 

pais-transp          

character

x(20)                

Pais Transportador           

Não

 

log-atualiz-ctb      

logical 

Sim/Não              

Atualização Contabilidade     

Sim

 

log-atualiz-ce       

logical 

Sim/Não              

Atualização Contr. Estoque   

Sim

 

log-atualiz-crb      

logical 

Sim/Não              

Atualização Contas a Receber 

Sim

 

log-atualiz-apb      

logical 

Sim/Não              

Atualização Contas a Pagar   

Sim

 

dat-impl-proces-export

date    

99/99/9999           

Data Implantação             

Sim

 

tt-processo-exp-new

Entrada/Saída

Informações do processo de exportação após alteração.

OBS: Mesmos campos da temp-table tt-processo-exp-old.

Entrada/Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

 

 

 

 

 

 

tt-historico-proc-exp-old

Entrada/Saída

Informações do processo de exportação depois da alteração.

Entrada/Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

nr-proc-exp

CHARACTER

X(12)

Processo Exportação

Sim

 

cod-estabel

CHARACTER

x(5)

Estabelecimento

Sim

 

cod-itiner

INTEGER

>>,>>9

Código do Itinerário

Sim

 

sequencia

INTEGER

999

Sequência

Sim

 

cod-pto-contr

INTEGER

>>,>>9

Códgigo do Ponto de Controle

Sim

 

cod_usuario

CHARACTER

X(12)

Usuário

Não

 

dt-previsao

DATE

99/99/9999

Dt Previsão

Sim

 

dt-ult-previsao

DATE

99/99/9999

Ultima Previsão

Sim

 

dt-efetiva

DATE

99/99/9999

Dt Efetiva

Não

 

observacao

CHARACTER

X(2000)

Observação

Não

 

id-meio-transp

CHARACTER

X(20)

Veículo Transporte

Não

 

char-1

CHARACTER

x(100)

Campo livre do tipo caractere

Não

 

char-2

CHARACTER

x(100)

Campo livre do tipo caractere

Não

 

dec-1

DECIMAL

->>>>>>>>>>>9.99999999

Campo livre do tipo decimal

Não

 

dec-2

DECIMAL

->>>>>>>>>>>9.99999999

Campo livre do tipo decimal

Não

 

int-1

INTEGER

->>>>>>>>>9

Campo livre do tipo inteiro

Não

 

int-2

INTEGER

->>>>>>>>>9

Campo livre do tipo inteiro

Não

 

log-1

LOGICAL

yes/no

Campo livre do tipo lógico

Não

 

log-2

LOGICAL

yes/no

Campo livre do tipo lógico

Não

 

data-1

DATE

99/99/9999

Campo livre do tipo data

Não

 

data-2

DATE

99/99/9999

Campo livre do tipo data

Não

 

check-sum

CHARACTER

X(20)

Check-sum

Não

 

cod-uf

CHARACTER

x(2)

Unidade da Federacao

Não

 

des-sig-pais

CHARACTER

x(3)

Sigla do País

Não

 

descricao

CHARACTER

x(30)

Descrição

Não

 

nr-dias

DECIMAL

>,>>9.99

Dias Trajeto

Não

 

tt-historico-proc-exp-new

Entrada/Saída

Informações do histórico do processo de exportação após alteração.

OBS: Mesmos campos da temp-table tt-historico-proc-exp-old.

Entrada/Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

 

 

 

 

 

 

 

Método Negócio 

Quando a API for executada em modo persistente, os seguintes métodos estarão disponíveis para execução: 

 

pi-salva-valor-antigo

Requisito

Nenhum

Sintaxe

RUN pi-salva-valor-antigo in handle (INPUT <character>,

                                                            INPUT <rowid>).

Descrição

Realiza a criação da temp-table que conterá os dados do registro antes da alteração.

Parâmetros

Descrição

pc-nome-tabela

pr-rowid

Nome da tabela

Rowid do registro

Retorno

Retorna um return-value com valor “OK” se o processo foi realizado com sucesso.

pi-salva-alteracao

Requisito

Nenhum

Sintaxe

RUN pi-salva-valor-antigo in handle (INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <rowid>,

                                                           INPUT <character>).

Descrição

Realiza a criação da temp-table que conterá os dados do registro após a alteração.

Parâmetros

Descrição

pcAction     

pc-nome-tabela

pr-rowid     

pc-programa  

Identifica se é criação ou alteração de registro. (“Criação”, “Alteração”).

Tabela que está sendo alterada                 

Rowid do registro da tabela que está sendo alterada     

Nome do programa responsável pela alteração    

Retorno

Retorna um return-value com valor “OK” se o processo foi realizado com sucesso.

pi-processa-buffer

Requisito

Nenhum

Sintaxe

RUN pi-salva-valor-antigo in handle (INPUT <handle>,

                                                           INPUT <handle>,

                                                           INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <character>).

Descrição

Trata os valores alterados e executa a procedure responsável por gravar os registros dos log’s na base.

Parâmetros

Descrição

phNewBuffer

phOldBuffer

pChanges  

pTabela   

pChave    

pPrograma 

pcAction  

Handle do buffer da tabela após alteração                   

Handle do buffer da tabela antes da alteração               

Campos alterados

Tabela que está sendo alterada                      

Chave da tabela que está sendo alterada              

Programa responsável pela alteração                 

Identifica se é uma criação ou alteração do registro. (“Criação”, “Aleração”).

Retorno

Retorna um return-value com valor “OK” se o processo foi realizado com sucesso.

pi-ex-histor-alteracao

Requisito

Nenhum

Sintaxe

RUN pi-salva-valor-antigo in handle (INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <character>,

                                                           INPUT <character>).

 

Descrição

Responsável por executar os métodos padrões da BOCX00435 para efetivar as alterações na tabela "ex-histor-alter".

Parâmetros

Descrição

pTabela    

pCampo     

pChave     

pVl-anterior

pVl-novo    

pPrograma  

pcAction   

Tabela que está sendo alterada               

Campo que está sendo alterado                      

Chave da tabela que está sendo alterada            

Valor do registro "antes" da alteração             

Valor do registro "após" a alteração               

Programa responsável pela alteração                

Identifica se é uma criação ou alteração do registro.  (“Criação”, “Alteração”).

Retorno

Retorna um return-value com valor “OK” se o processo foi realizado com sucesso.

pi-seta-tabela-multipla

Requisito

Nenhum

Sintaxe

RUN pi-seta-tabela-multipla in handle (INPUT <logical>).

Descrição

Identificar se a api deve manter os registros das temp-tables a cada execução.

Parâmetros

Descrição

pl-tabela-multipla

Identifica como a API deve se comportar:

YES: Considera que a temp-table possui vários registros. (API não limpa registros de temp-tables anteriores) NO: Considera que a temp-table possui apenas um registro. (API limpa os registros das temp-tables a cada execução)

Retorno

Retorna um return-value com valor “OK” se o processo foi realizado com sucesso.

pi-atualiza-log

Requisito

Nenhum

Sintaxe

RUN pi-atualiza-log in handle (INPUT <character>,

                                                           INPUT <rowid>,

                                                           INPUT <character>,

                                                           INPUT <character>).

Descrição

Atualizar a chave das tabelas no Log.

Parâmetros

Descrição

p-tabela

p-rowid

p-campo

p-valor

Tabela que está sendo alterada               

Rowid do registro alterado

Campo que está sendo alterado                      

Novo valor do campo

Retorno

Retorna um return-value com valor “OK” se o processo foi realizado com sucesso.