Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin

Customização via EPC IM0730EPC IM0730

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: Processo de Importação, Decl. Importação, Pedido/Ordem de Compra, etc.

...

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, obrigatoriamente iniciar com “#lit-<prefixo_variável_layout>-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, obrigatoriamente iniciar com “#var“#<prefixo_variável_layout>-var-espec”.

Exemplo: Customizar através de ponto EPC o layout referente às Informações do Processo de Importação para que seja impresso o código do Estabelecimento formatado:

No arquivo de layout padrão, no bloco de informações referentes ao Processo de importação, inserir nova coluna e na linha referente às literais, inserir a variável #lit-pi-var-espec-cod-estabel e a variável correspondente ao valor que será substituído #var#pi-var-espec-cod-estabel.

O tratamento das variáveis “#lit-pi-var-espec-cod-estabel” e “#var“#pi-var-espec-cod-estabel” deverá ser realizado no programa customizado desenvolvido pelo cliente e chamado pelo ponto EPC correspondente ao bloco de Informações do Processo de importação, assim como tratamento das literais desta variável.

A upc deverá ser cadastrada no menu para o programa IM0730a.

Abaixo estão descritos todos os Pontos de EPC disponibilizados para o Relatório Gerencial de Importação.

  • Layout Dados do Processo de Importação:
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-processo-imp
nr
rowid-
proc
processo-imp

Número do Processo de importação que será impresso;

cod-estabel

Código do Estabelecimento do Processo de importação que será impresso;

rowid(processo-imp)

Variável literal específica deve iniciar com: #lit-pi-var-espec<variável>

Variável de conteúdo deve iniciar com: #pi-var-espec<variável>


  • Layout Pedido de CompraLayout da Decl. Importação;
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-
decla
pedido-
import-ordnum-di-emsNúmero da Declaração de Importação EMS que será impresso;num-ordemNúmero da Ordem de Manutenção que será impresso;num-parcelaNúmero de parcelas que será impressa;
  • Layout do Pedido/Ordem de Compra
compr
rowid-pedido-comprrowid(pedido-compr)

Variável literal específica deve iniciar com: #lit-pc-var-espec<variável>

Variável de conteúdo deve iniciar com: #pc-var-espec<variável>


  • Layout Fornecedor
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-
pedido-compr
emitente
num
rowid-
pedidoNúmero do Pedido de Compra que será impresso;

Definição da temp-table tt-processo-imp:

...

emitenterowid(emitente)

Variável literal específica deve iniciar com: #lit-for-var-espec<variável>

Variável de conteúdo deve iniciar com: #for-var-espec<variável>


  • Layout Ordem de Compra
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-ordem-compra
rowid-ordem-comprarowid(ordem-compra)

Variável literal específica deve iniciar com: #lit-oc-var-espec<variável>

Variável de conteúdo deve iniciar com: #oc-var-espec<variável>


  • Layout Item
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-item
rowid-itemrowid(item)

Variável literal específica deve iniciar com: #lit-it-var-espec<variável>

Variável de conteúdo deve iniciar com: #it-var-espec<variável>


  • Layout Embarque de Importação
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-embarque-imp
rowid-embarque-improwid(embarque-imp)

Variável literal específica deve iniciar com: #lit-emb-var-espec<variável>

Variável de conteúdo deve iniciar com: #emb-var-espec<variável>


  • Layout Parcelas/Ordens do Embarque
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-prazo-compra
rowid-prazo-comprarowid(prazo-compra)

Variável literal específica deve iniciar com: #lit-par-var-espec<variável>

Variável de conteúdo deve iniciar com: #par-var-espec<variável>


  • Layout Acompanhamento do Embarque
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-historico-embarque
rowid-historico-embarquerowid(historico-embarque)

Variável literal específica deve iniciar com: #lit-he-var-espec<variável>

Variável de conteúdo deve iniciar com: #he-var-espec<variável>


  • Layout Despesas do Embarque
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-desp-embarque
rowid-desp-embarquerowid(desp-embarque)

Variável literal específica deve iniciar com: #lit-de-var-espec<variável>

Variável de conteúdo deve iniciar com: #de-var-espec<variável>


  • Layout Declaração de Importação
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-declar-import
rowid-declar-importrowid(declar-import)

Variável literal específica deve iniciar com: #lit-di-var-espec<variável>

Variável de conteúdo deve iniciar com: #di-var-espec<variável>


  • Layout Adições da DI
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-declar-import-adic
rowid-declar-import-adicrowid(declar-import-adic

Variável literal específica deve iniciar com: #lit-adi-var-espec<variável>

Variável de conteúdo deve iniciar com: #adi-var-espec<variável>


  • Layout Ordens da DI
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-declar-import-ord
rowid-declar-import-ordrowid(declar-import-ord)

Variável literal específica deve iniciar com: #lit-odi-var-espec<variável>

Variável de conteúdo deve iniciar com: #odi-var-espec<variável>


  • Layout Acompanhamento da DI
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-histor-decla-import
rowid-histor-decla-importrowid(histor-decla-import)

Variável literal específica deve iniciar com: #lit-hdi-var-espec<variável>

Variável de conteúdo deve iniciar com: #hdi-var-espec<variável>


  • Layout Despesas da DI
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-despes-decla-import
rowid-despes-decla-importrowid(despes-decla-import)

Variável literal específica deve iniciar com: #lit-ddi-var-espec<variável>

Variável de conteúdo deve iniciar com: #ddi-var-espec<variável>


  • Layout Documentos de Entrada
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-docum-est
rowid-docum-estrowid(docum-est)

Variável literal específica deve iniciar com: #lit-doc-var-espec<variável>

Variável de conteúdo deve iniciar com: #doc-var-espec<variável>


  • Layout Itens do Documento
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-item-doc-est
rowid-item-doc-estrowid(item-doc-est)

Variável literal específica deve iniciar com: #lit-itd-var-espec<variável>

Variável de conteúdo deve iniciar com: #itd-var-espec<variável>


  • Layout Despesas Item Documento
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-item-doc-est-cex
rowid-item-doc-est-cexrowid(item-doc-est-cex)

Variável literal específica deve iniciar com: #lit-did-var-espec<variável>

Variável de conteúdo deve iniciar com: #did-var-espec<variável>


  • Layout Movimentações de Estoque
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-rat-lote
rowid-rat-loterowid(rat-lote)

Variável literal específica deve iniciar com: #lit-lot-var-espec<variável>

Variável de conteúdo deve iniciar com: #lot-var-espec<variável>


  • Layout Despesas do Documento
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-docum-est-cex
rowid-docum-est-cexrowid(docum-est-cex)

Variável literal específica deve iniciar com: #lit-des-var-espec<variável>

Variável de conteúdo deve iniciar com: #des-var-espec<variável>


  • Layout Duplicatas Fornecedor Mercadoria
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-dupli-apagar
rowid-dupli-apagarrowid(dupli-apagar)

Variável literal específica deve iniciar com: #lit-dup-var-espec<variável>

Variável de conteúdo deve iniciar com: #dup-var-espec<variável>


  • Layout Duplicatas de Despesas
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-dupli-apagar-cex
rowid-dupli-apagar-cexrowid(dupli-apagar-cex)

Variável literal específica deve iniciar com: #lit-dpd-var-espec<variável>

Variável de conteúdo deve iniciar com: #dpd-var-espec<variável>


  • Layout Material em Trânsito
EventoParâmetroValor do Parâmetro
Custom-Fields-tt-embarque-contab
rowid-embarque-contabrowid(embarque-contab)

Variável literal específica deve iniciar com: #lit-mt-var-espec<variável>

Variável de conteúdo deve iniciar com: #mt-var-espec<variável>



Exemplo de EPC para utilização no Relatório Gerencial de Importação:

Bloco de código
titleVeja aqui o código fonte de exemplo
collapsetrue
{include/i-epc200.i1} /* Definição tt-epc         */
DEFINE INPUT        PARAM p-ind-event  AS CHAR NO-UNDO.
DEFINE INPUT-OUTPUT PARAM TABLE for tt-epc.

DEFINE VARIABLE c-literal AS CHARACTER   NO-UNDO.

IF p-ind-event = "Custom-literals":U THEN DO:

    FOR EACH tt-epc 
        WHERE tt-epc.cod-event = "Custom-literals":U
          AND tt-epc.cod-parameter = "literal":U

...

Definição da temp-table tt-decla-import-ord:

...

Definição da temp-table tt-pedido-compr:

...

Exemplo de EPC para utilização no Relatório Gerencial de Importação:

Bloco de código
titleVeja aqui o código fonte de exemplo
collapsetrue
{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      IF tt-epc.val-parameter = bf-ttDados:BUFFER-FIELD("cod-estabel") "#lit-doc-var-espec-teste1" THEN
                   h-serie   ASSIGN c-literal = "Literal Teste":U.

    END.
    IF = bf-ttDados:BUFFER-FIELD("serie")
    c-literal <> "":U THEN DO:
        CREATE tt-epc.
      h-nrNotaFis  ASSIGN tt-epc.cod-event     = bfp-ttDados:BUFFER-FIELD("nr-nota-fis")ind-event
                   h-nrSeqFat        tt-epc.cod-parameter = bf-ttDados:BUFFER-FIELD("nr-seq-fat")
"#lit-doc-var-espec-teste1"
                      h-itCodigo  tt-epc.val-parameter = c-literal.
      END.
END.

IF p-ind-event = bf-ttDados:BUFFER-FIELD("it-codigo").
  "Custom-Fields-tt-docum-est" THEN DO:

    FIND FIRST tt-epc
  
       WHERE CREATE tt-epc.cod-event = p-ind-event
         ASSIGN  AND tt-epc.cod-eventparameter = "Customrowid-Fields-tt-dados-notas"docum-est" NO-LOCK NO-ERROR.
    IF AVAIL tt-epc THEN DO:
       tt-epc.cod-parameter = "#var-espec-teste1" FIND FIRST docum-est
               tt-epc.val-parameter = "Estabelecimento: " + h-codEstabel:BUFFER-VALUE + "| Série: " + h-serie:BUFFER-VALUE + "| Nr Nota Fis: " + h-nrNotaFis:BUFFER-VALUE.WHERE ROWID(docum-est) = TO-ROWID(tt-epc.val-parameter) NO-LOCK NO-ERROR.
        IF AVAIL docum-est THEN DO:
    
        CREATE tt-epc.
            ASSIGN tt-epc.cod-event     = "Customp-Fields-tt-dados-notas"
ind-event
                          tt-epc.cod-parameter = "#var#doc-var-espec-teste2"
               tt-epc.val-parameter = "Nr Seq Fat: " + h-nrSeqFat:BUFFER-VALUE + "| Item: " + h-itCodigo:BUFFER-VALUE.

teste1"
                          qttDados:GET-NEXTtt-epc.val-parameter = "VAR teste 1".
        END.

    END.

END.

RETURN "OK":U.