Customização via EPC
Visão Geral do Programa
Caso haja necessidade de realizar implementação para impressão de alguma outra informação que não esteja disponível na lista de variáveis da planilha Excel, é possível realizar a customização por intermédio de EPC’s em cada layout de informações. Por exemplo: Pedidos de Venda, Itens Pedido de Venda, Valores Processo/Pedido, Processo de Exportação, etc., conforme consta nas planilhas do arquivo “ex0165-variaveis.xls”.
Para cada um dos layout’s acima mencionados, existe um ponto EPC no qual é possível realizar o tratamento para a literal (rótulo e/ou label) a ser substituída, assim como realizar o tratamento para a variável específica correspondente àquela literal.
Variáveis Literais Específicas:
Para que seja possível implementar um tratamento via EPC para as literais das variáveis específicas a serem substituídas em tempo de impressão do relatório, elas deverão seguir um padrão, que deverão obrigatoriamente iniciar com “#lit-var-espec”.
Variáveis Específicas:
Para que seja possível implementar um tratamento via EPC para as variáveis específicas a serem substituídas em tempo de impressão do relatório, elas deverão seguir um padrão, que deverão obrigatoriamente iniciar com “#var-espec”.
Exemplo: Customizar através de ponto EPC o layout referente às Informações do Pedido de Venda para que seja impresso a Natureza de Operação do Pedido:
No arquivo de layout padrão (ex0165-layout.xls), no bloco de informações referentes ao Pedido de Venda, inserir nova coluna e na linha referente às literais, inserir a variável #lit-var-espec-nat-operacao e a variável correspondente ao valor que será substituído #var-espec-nat-operacao.
O tratamento das variáveis “#lit-var-espec-nat-operacao” e “#var-espec-nat-operacao” deverá ser realizado no programa customizado desenvolvido pelo cliente e chamado pelo ponto EPC correspondente ao bloco de Informações do Pedido de Venda, assim como tratamento das literais desta variável.
Abaixo estão descritos todos os Pontos de EPC disponibilizados para o Relatório Gerencial de Exportação.
- Layout Dados do Pedido de Venda:
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-dados-pedido | nr-pedcli | Número do Pedido de Venda do Cliente que será impresso; |
nome-abrev | Nome Abreviado do Cliente do Pedido de Venda que será impresso; |
- Layout Itens do Pedido de Venda;
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-det-dados-pedido
| nome-abrev | Nome Abreviado do Cliente referente à Entrega do Pedido de Venda que será impresso; |
nr-pedcli | Número do Pedido de Venda do Cliente referente à Entrega do Pedido que será impresso; |
nr-sequencia | Sequência referente à Entrega do Pedido de Venda que será impressa; |
it-codigo | Item referente à Entrega do Pedido de Venda que será impresso; |
cod-refer | Referência da Entrega do Pedido de Venda que será impressa; |
nr-entrega | Número da Entrega do Pedido de Venda que será impressa. |
- Layout Valores do Pedido de Venda/Processo de Exportação
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-valores-processo | Handle_tt-valores-processo | Handle do Buffer da temp-table tt-valores-processo-aux |
Definição da temp-table tt-valores-processo-aux:
Campo | Tipo | Formato |
---|
cod-estabel | Character | X(05) |
nr-proc-exp | Character | X(12) |
nome-abrev | Character | X(12) |
nr-pedcli | Character | X(12) |
cod-cond-pag | Integer | >>>9 |
desc-cond-pagto | Character | x(30) |
cod-incoterm | Character | X(3) |
desc-incoterm | Character | x(30) |
vl-total | Decimal | >>,>>>,>>>,>>9.99 |
vl-tot-frete-nac | Decimal | >>>,>>>,>>9.99 |
vl-tot-frete-internac | Decimal | >>>,>>>,>>9.99 |
vl-tot-frete | Decimal | >>>,>>>,>>9.99 |
vl-tot-seguro | Decimal | >>>,>>>,>>9.99 |
vl-tot-embalagem | Decimal | >>>,>>>,>>9.99 |
vl-tot-incoterm | Decimal | >>,>>>,>>>,>>9.99 |
desconto | Decimal | >>>,>>>,>>9.99 |
vl-liquido | Decimal | >>,>>>,>>>,>>9.99 |
vl-despesas | Decimal | >>,>>>,>>>,>>9.99 |
peso-liq-tot | Decimal | >>>,>>>,>>9.9999 |
peso-bruto-tot | Decimal | >>>,>>>,>>9.9999 |
volume-calc | Decimal | >>>,>>>,>>9.9999 |
- Layout Dados do Processo de Exportação
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-dados-processo | cod-estabel | Estabelecimento do Processo de Exportação que será impresso; |
nr-proc-exp | Número do Processo de Exportação que será impresso; |
- Layout Processos Relacionados
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-proces-export-relacdo | cod-estabel | Estabelecimento do Processo de Exportação Relacionado ao Processo que será impresso; |
nr-proc-exp | Número do Processo de Exportação Relacionado ao Processo que será impresso; |
cod-proces-export-orig | Número do Processo de Exportação de Origem que será impresso; |
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-det-dados-processo | cod-estabel | Estabelecimento referente à Entrega do Processo de Exportação que será impresso; |
nr-proc-exp | Número do Processo de Exportação referente à Entrega do Processo que será impresso; |
nome-abrev | Nome Abreviado do Cliente referente à Entrega do Processo de Exportação que será impresso; |
nr-pedcli | Número do Pedido do Cliente referente à Entrega do Processo de Exportação que será impresso; |
nr-sequencia | Número da Sequência referente à Entrega do Processo de Exportação que será impresso; |
it-codigo | Item referente à Entrega do Processo de Exportação que será impresso; |
cod-refer | Referência da Entrega do Processo de Exportação que será impresso; |
nr-entrega | Número da Entrega, referente à Entrega do Processo de Exportação que será impresso; |
- Layout Documentos do Processo
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-proc-docto-export | cod-estabel | Estabelecimento do Processo de Exportação do Documento que será impresso; |
nr-proc-exp | Número do Processo de Exportação do Documento que será impresso; |
idi-tip-docto | Tipo do Documento que será impresso (aqui é considerado o código do documento que consta no cadastro de Documentos de Exportação – EX0070 e que está vinculado ao Processo de Exportação) |
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-dados-emitente | cod-emitente | Código do Emitente referente ao Pedido/Processo de Exportação que será impresso; |
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-dados-notas | Handle_tt-dados-nota | Handle do Buffer da temp-table tt-det-dados-nota-aux-nota |
Definição da temp-table tt-det-dados-nota-aux-nota:
Campo | Tipo | Formato |
---|
cod-estabel | Character | X(05) |
serie | Character | X(05) |
nr-nota-fis | Character | x(16) |
nr-seq-fat | Integer | >>,>>9 |
it-codigo | Character | x(16) |
desc-item | Character | x(18) |
nr-seq-ped | Integer | >>,>>9 |
nr-pedcli | Character | x(12) |
nome-ab-cli | Character | x(12) |
peso-liq-fat | Decimal | >>>,>>>,>>9.99999 |
cod-refer | Character | x(8) |
desc-refer | Character | x(32) |
peso-bruto | Decimal | >>>,>>>,>>9.99999 |
qt-faturada | Decimal | >>,>>>,>>9.9999 |
un-fatur | Character | xx |
vl-pretab | Decimal | >>>,>>>,>>9.99999 |
vl-preori | Decimal | >>>,>>>,>>9.99999 |
vl-preuni | Decimal | >>>,>>>,>>9.99999 |
vl-merc-tab | Decimal | >,>>>,>>>,>>9.99 |
vl-merc-ori | Decimal | >,>>>,>>>,>>9.99 |
vl-merc-liq | Decimal | >,>>>,>>>,>>9.99 |
vl-tot-item | Decimal | >,>>>,>>>,>>9.99 |
per-des-item | Decimal | ->>9.99999 |
vl-despes-it | Decimal | >,>>>,>>>,>>9.99 |
nr-entrega | Integer | >>>>9 |
vl-frete-it | Decimal | ->>,>>>,>>9.99 |
vl-desconto | Decimal | >>,>>9.99999 |
nr-proc-exp | Character | x(12) |
- Layout Comissão do Representante
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-dados-comissao | cod_empresa | Empresa da Matriz de Tradução de Organização Externa referente à Empresa vinculada ao Estabelecimento do Processo de Exportação/Pedido de Venda que será impresso; |
cdn-repres | Código do Representante da Movimentação Financeira do Processo de Exportação/Pedido de Venda que será impresso, referente à tabela “movto_comis_repres”. |
ttv_rec_movto_comis_repres | Recid da tabela "Movimento Comissão Representantes" (referente à tabela “movto_comis_repres”) |
- Layout Contrato de Câmbio
Evento | Parâmetro | Valor do Parâmetro |
---|
Custom-Fields-tt-dados-cambio
| ep-codigo | Empresa do EMS2 vinculada ao Título do Contrato de Câmbio de Exportação da Nota Fiscal que será impressa; |
cod-estabel | Estabelecimento do EMS2 vinculada ao Título do Contrato de Câmbio de Exportação da Nota Fiscal que será impresso; |
referencia | Referência do Título do Contrato de Câmbio de Exportação da Nota Fiscal que será impressa; |
dt-referencia | Data da Referência do Título do Contrato de Câmbio de Exportação da Nota Fiscal que será impressa; |
Exemplo de EPC para utilização no Relatório Gerencial de Exportação:
{include/i-epc200.i1} /* Definição tt-epc */
DEFINE VARIABLE h-ttDados AS HANDLE NO-UNDO.
DEFINE VARIABLE bf-ttDados AS HANDLE NO-UNDO.
DEFINE VARIABLE qttDados AS HANDLE NO-UNDO.
DEFINE VARIABLE h-codEstabel AS HANDLE NO-UNDO.
DEFINE VARIABLE h-serie AS HANDLE NO-UNDO.
DEFINE VARIABLE h-nrNotaFis AS HANDLE NO-UNDO.
DEFINE VARIABLE h-nrSeqFat AS HANDLE NO-UNDO.
DEFINE VARIABLE h-itCodigo AS HANDLE NO-UNDO.
DEFINE INPUT PARAM p-ind-event AS CHAR NO-UNDO.
DEFINE INPUT-OUTPUT PARAM TABLE for tt-epc.
IF (p-ind-event = "Custom-literals") THEN DO:
CREATE tt-epc.
ASSIGN tt-epc.cod-event = "Custom-literals"
tt-epc.cod-parameter = "#lit-var-espec-teste1"
tt-epc.val-parameter = "Lit teste 1".
CREATE tt-epc.
ASSIGN tt-epc.cod-event = "Custom-literals"
tt-epc.cod-parameter = "#lit-var-espec-teste2"
tt-epc.val-parameter = "Lit teste 2".
END.
ELSE IF (p-ind-event = "Custom-Fields-tt-dados-notas") THEN DO:
/* Handle ttDados */
FIND FIRST tt-epc
WHERE tt-epc.cod-parameter = "Handle_tt-dados-nota":u NO-ERROR.
IF AVAIL tt-epc THEN DO:
ASSIGN h-ttDados = WIDGET-HANDLE(tt-epc.val-parameter) NO-ERROR.
IF ERROR-STATUS:ERROR THEN
NEXT.
CREATE BUFFER bf-ttDados FOR TABLE h-ttDados BUFFER-NAME "tt-dados-nota".
CREATE QUERY qttDados.
qttDados:SET-BUFFERS(bf-ttDados).
IF VALID-HANDLE(qttDados) THEN
ASSIGN qttDados:FORWARD-ONLY = YES.
qttDados:QUERY-PREPARE("FOR EACH tt-dados-nota").
qttDados:QUERY-OPEN.
qttDados:GET-FIRST.
DO WHILE NOT(qttDados:QUERY-OFF-END):
ASSIGN h-codEstabel = bf-ttDados:BUFFER-FIELD("cod-estabel")
h-serie = bf-ttDados:BUFFER-FIELD("serie")
h-nrNotaFis = bf-ttDados:BUFFER-FIELD("nr-nota-fis")
h-nrSeqFat = bf-ttDados:BUFFER-FIELD("nr-seq-fat")
h-itCodigo = bf-ttDados:BUFFER-FIELD("it-codigo").
CREATE tt-epc.
ASSIGN tt-epc.cod-event = "Custom-Fields-tt-dados-notas"
tt-epc.cod-parameter = "#var-espec-teste1"
tt-epc.val-parameter = "Estabelecimento: " + h-codEstabel:BUFFER-VALUE + "| Série: " + h-serie:BUFFER-VALUE + "| Nr Nota Fis: " + h-nrNotaFis:BUFFER-VALUE.
CREATE tt-epc.
ASSIGN tt-epc.cod-event = "Custom-Fields-tt-dados-notas"
tt-epc.cod-parameter = "#var-espec-teste2"
tt-epc.val-parameter = "Nr Seq Fat: " + h-nrSeqFat:BUFFER-VALUE + "| Item: " + h-itCodigo:BUFFER-VALUE.
qttDados:GET-NEXT.
END.
END.
END.
RETURN "OK":U.
#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))