Árvore de páginas

Versões comparadas

Chave

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

...

02. EXEMPLO DE UTILIZAÇÃO


Bloco de código
languagec#
titleEECAP100
linenumberstrue
#include "protheus.ch"

User Function EECAP100()

...


Local cParamIXB

...


Local lRet := .T.

...

Begin Sequence

...


Local aRet := {}
Local nPos

Begin Sequence

   If ValType(ParamIXB) == "A"

...


      cParamIXB:= ParamIXB[1]

...

Else

...


   Else
      cParamIXB:= ParamIXB

...

EndIf

Do Case

...


   EndIf

   Do Case

      Case cParamIXB == "PE_COPYPED"

...



         /*

...

Exemplo quando acessada a ação de cópia do

...

 processo
         If ParamIXB[3] //se foi selecionada a cópia dos

...

 itens
            WorkIt->(DBgoTop())

...


            While WorkIt->(!Eof())

...


               WorkIt->EE8_ZZZZZ:= ""

...


               WorkIt->(DBSkip())

...

EndDo


            EndDo
            WorkIt->(DBgoTop())

...

EndIf

*/

...


         EndIf*/

      Case cParamIXB == "GRV_WORK"

...



         MsgInfo("Ponto de entrada EECAP100 com o parâmetro 'GRV_WORK'")

...

EndCase

End Sequence

Return lRet

03. PARÂMETROS

...

04. VARIÁVEIS

...

05. TABELAS UTILIZADAS

...

HTML
<!-- esconder o menu --> 


<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>

Composition Setup
import.css=/download/attachments/327912/newLayout.css

...

PONTO DE ENTRADA: EECAP100 - Processo Exportação
DESCRIÇÃO:
PROCESSO EXPORTAÇÃO - BOTÃO OK. CaminhoL: Atualizações / Processo Export / Consulta Confecção / Opções Incluir e Alterar / Botão Ok. Descrição: Chamada na função AP100Grava(), após a gravação do header e mensagens do pedido. Uso: Executar rotinas de atualização de dados após a gravação dos dados do processo de exportação.


      Case cParamIXB == 'ANTES_GRAVA_CAPA_AUTO'
         
         aRet := {.F.,"Passou no ponto de entrada 'ANTES_GRAVA_CAPA_AUTO' e invalidou integração!"}
         Return aRet
         //aRet onde:
         //aRet[1] -> Variável Lógica com status do processamento
         //aRet[2] -> Variável do tipo caracter que contenha a mensagem de erro em caso do status ser FALSO.

      Case cParamIXB == 'PRECOI_ATU_PRECO'

         if ParamIXB[2] <> "EE8_VLDESC"
            // Zera o valor da despesa no calculo do processo de preço fechado.
            nValPto := 0
         endif
       Case cParamIXB == "ANTES_REFRESH_RODAPE"

          // Exemplo de uso de ponto de entrada para manipular as variáveis de totais do rodapé do pedido de exportação

           M->EE7_TOTPED := 101 //Total Pedido
           nTotPedBr := 102 // Total Pedido (Bruto)
           M->EE7_TOTFOB :=103 //Total Fob
           M->EE7_VLFOB := 103  //Total Fob Interno, deixar este valor igual ao EE7_TOTFOB
           M->EE7_TOTLIQ := 104 // Total Liquido  
           M->EE7_PESLIQ :=105 // Peso Líquido
           M->EE7_PESBRU := 106 //Peso Bruto
   EndCase

End Sequence

Return lRet


03. PARÂMETROS


NomeTipoDescrição
GRV_WORK
PROGRAMA FONTE: EECAP100.PRW
SINTAXE

EECAP100 - Processo Exportação ( [ "GRV_WORK" ], [ "AP100MAN_INICIO" ], [ "CAN_MODIFY" ], [ "ANTES_TELA_PRINCIPAL" ], [ "FECHA_TELA_PRINCIPAL" ], [ "DETMAN_ANTES_DIALOG" ], [ "PE_GRVDET",nTipo ], [ "DEL_WORKIT" ], [ "CANCELA" ], [ "PE_DEL_WORK" ], [ "ESTORNO_ITEM" ], [ "PE_GRV_EE8" ], [ "PE_GRV" ], [ "GRV_PED" ], [ "PE_LINOK" ], [ "ROD_CAPA_PED",aPos ], [ "ROD_ITENS_PED",aPos ], [ "PE_COPYPED",lCapa,IItens ], [ "COPYPED_TELA" ], [ "GETPESOS",nPesLC,nPesBC ], [ "GETPESOS_OK" ], [ "PE_OFFSHORE_GERA_CAPA" ], [ "ESTORNO_PEDIDO" ], [ "ESTORNO_PEDIDO_EXT" ], [ "PE_EXC" ], [ "CALC_FOBTOT",WorkIt->EE8_CODAGE ] )

...

CaracterExecutado no início da função principal antes de criar a Work.

...

AP100MAN_INICIO

...

Array

...

Executado no início da função de manutenção dos processos.

...

CAN_MODIFY

...

Array

...

Executado após a verificação se o pedido pode ser alterado.

...

ANTES_TELA_PRINCIPAL

...

Array

...

Executado antes da tela principal do pedido.

...

FECHA_TELA_PRINCIPAL

...

Array

...

Executado após a abertura da tela principal do pedido.

...

DETMAN_ANTES_DIALOG

...

Array

...

Executado antes da tela de manutenção do item.

...

PE_GRVDET

...

Array

...

Após a gravação dos detalhes na WorkGrp.

...

DEL_WORKIT

...

Array

...

Após a exclusão dos detalhes na WorkGrp.

...

CANCELA

...

Array

...

Executado quando a opção de excluir o pedido é cancelada.

...

PE_DEL_WORK

...

Array

...

Executado no início da função AP100Del antes de deletar o registro na WORK.

...

ESTORNO_ITEM

...

Array

...

No estorno do item, após a exclusão dos registros na EEY e antes da exlcusão dos registros na EE8.

...

PE_GRV_EE8

...

Array

...

Executado na função AP100Grava após a gravação da EE8.

...

PE_GRV

...

Array

...

Executado após gravação da EE8.

...

GRV_PED

...

Array

...

Permitir alteração no processo de gravação do pedido de exportação.

...

PE_LINOK

...

Array

...

Executado na função AP100LINOK que valida os campos da enchoice. Usado na validação da linha. 

Permite acesso ao Array aCampoVld que contem a lista de campos do produto padrão que não serão validados ao incluir/alterar o item do pedido de exportação.

...

ROD_CAPA_PED

...

Array

...

Executado antes de apresentar o rodapé da capa.

...

ROD_ITENS_PED

...

Array

...

Executado antes de apresentar o rodapé dos itens

...

...

PE_COPYPED

...

Array

...

Executado na função AP100CopyFrom, após a cópia dos dados do processo.

...

COPYPED_TELA

...

Array

...

Executado na função AP100SelProc que copia dados de um processo, antes da tela de seleção de pedidos.

...

GETPESOS

...

Array

...

Executado antes da tela de conferência de pesos.

...

GETPESOS_OK

...

Array

...

Executado após a abertura da tela de conferência de pesos.

...

PE_OFFSHORE_GERA_CAPA

...

Array

...

Executado na função AP100GerPed que gera pedido para filial do exterior, no momento de gravação dos campos de memória da tabela EE7.

...

ESTORNO_PEDIDO

...

Array

...

Executado antes de deletar o pedido da tabela EE7.

...

ESTORNO_PEDIDO_EXT

...

Array

...

Executado antes de deletar o pedido da tabela EE7 para filial do exterior.

...

PE_EXC

...

Array

...

Executado no final da função AP100DelPed que deleta os pedidos de exportação.

...

CALC_FOBTOT

...

Array

...

Apurar o valor Fob total dos itens em que o agente está vinculado.
Retorno ()

...

Efetuar modificações na rotina de pedido de exportação.

EXEMPLOS
ANTES_GRAVA_CAPA_AUTOArrayPré-validação de Execução da Rotina Automática
EECPPE08CaracterExecutado na validação dos itens do pedido de exportação, função AP100VALDET(), permitindo a implementação de validações adicionais na gravação do item.
EECPEM44CaracterExecutado na confirmação da inclusão e alteração do pedido de exportação.
EECPPE09 ArrayExecutado na validação na confirmação de eliminação/ exclusão do pedido de exportação.
PRECOI_ATU_PRECOArray

Executado no cálculo do preço do item e permite manipular os valores das despesas no momento onde no array o primeiro item se refere ao ponto de entrada solicitado e o segundo item do array o nome do campo da despesa e o valor da despesa pode ser controlado pela variável nValPTO que traz o valor da despesa podendo ser alterado o que reflete no valor FOB do processo.

ANTES_REFRESH_RODAPECaracterPermite alterar os valores do rodapé do pedido de exportação.

04. VARIÁVEIS


ParâmetroNomeTipoPermite alterarDescrição
PE_GRVDETnTipoNuméricoSimInclua a descrição relacionada
Inclua o campo nOpcAuxNumérico

#include "protheus.ch"

...

Begin Sequence

If ValType(ParamIXB) == "A"

cParamIXB:= ParamIXB[1]

Else

cParamIXB:= ParamIXB

EndIf

Do Case

Case cParamIXB == "PE_COPYPED"

/*
Exemplo quando acessada a ação de cópia do processo

If ParamIXB[3] //se foi selecionada a cópia dos itens

WorkIt->(DBgoTop())
While WorkIt->(!Eof())

WorkIt->EE8_ZZZZZ:= ""
WorkIt->(DBSkip())

EndDo

WorkIt->(DBgoTop())

EndIf

*/

Case cParamIXB == "GRV_WORK"

MsgInfo("Ponto de entrada EECAP100 com o parâmetro 'GRV_WORK'")

EndCase

End Sequence

Return lRet

...

SimVariável utilizada para a alteração da opção aRotina.
CALC_FOBTOTnFobTotAuxNumérico

...

SimApurar o valor Fob total dos itens em que o agente está vinculado.

...

PE

...

_

...

GRVlEECAP100Lógico

...

NãoFlag para que o ponto de entrada "PE_GRV" seja executado apenas uma vez.
GETPESOSnPesLCNuméricoSim
GETPESOSnPesBCNuméricoSim
PE_COPYPEDlCapaLógicoSim
PE_COPYPEDIItensLógicoSim
ANTES_GRAVA_CAPA_AUTOaAutoCab ArraySimArray com os dados de capa do Pedido
ANTES_GRAVA_CAPA_AUTOaAutoItens ArraySimArray com os dados de Detalhes do Pedido
ANTES_GRAVA_CAPA_AUTOnOpcaoAuto NuméricoSimOpção de manutenção do aRotina
PRECOI_ATU_PRECOnValPTONuméricoSimValor da despesa a ser cosiderado no preço do item.
ANTES_REFRESH_RODAPEEE7_TOTPEDNuméricoSimVariável referente ao campo "Total Pedido" da tela do pedido.
ANTES_REFRESH_RODAPEnTotPedBrNuméricoSimVariável referente ao campo "Total Pedido (Bruto)" da tela do pedido.
ANTES_REFRESH_RODAPEEE7_TOTFOBNuméricoSimVariável referente ao campo "Total Fob" da tela do pedido.
ANTES_REFRESH_RODAPEEE7_VLFOBNuméricoSimVariáel para uso interno do sistema, deve ser informado com o mesmo valor do campo EE7_TOTFOB.
ANTES_REFRESH_RODAPEEE7_TOTLIQNuméricoSimVariável referente ao campo "Total Líquido" da tela do pedido.
ANTES_REFRESH_RODAPEEE7_PESLIQNuméricoSimVariável referente ao campo "Peso Líquido" da tela do pedido.
ANTES_REFRESH_RODAPEEE7_PESBRUNuméricoSimVariável referente ao campo "Peso Bruto" da tela do pedido.
ANTES_TELA_PRINCIPALaButtonsArraySimPermite adicionar ações na tela de manutenção do pedido de exportação.



05. TABELAS UTILIZADAS

  • n/a.



HTML
<!-- esconder o menu --> 


<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>