Árvore de páginas


CONTEÚDO

  1. Visão Geral
  2. Exemplo de utilização
  3. Parâmetros
  4. Variáveis
  5. Tabelas utilizadas


01. VISÃO GERAL

Este Ponto de Entrada pertence à rotina de Pedido de Exportação (EECAP101). Ele deve ser utilizado para customizar a rotina de Pedido de Exportação.

Programa Fonte: EECAP101.PRW

Retorno: Verdadeiro (.T.) ou Falso (.F.).



02. EXEMPLO DE UTILIZAÇÃO


User Function EECAP101()

Local cParam := If(Type("ParamIxb") = "A",ParamIxb[1],If(Type("ParamIxb") = "C",ParamIxb,""))

Local nRecNoEET


If cParam == "NOT_DIALOG"

   MsgInfo("Entrou no ponto de entrada 'NOT_DIALOG. Variavel 'nOpcPE' = " + cValToChar(nOpcPE))

EndIf

If cParam == "TROCA_FILIAL_NOTA"

   cFilFatNf := EE9->EE9_MSFIL

   MSGINFO("Entrou no ponto de entrada 'TROCA_FILIAL_NOTA'")

Endif

IF cParam == "TROCA_PERCOM_VLCOM"

   MSGINFO("Entrou no ponto de entrada 'TROCA_PERCOM_VLCOM'")

Endif

If cParam == "COMIS_TOT"

/*Exemplo de uso do ponto de entrada para alterar o campo de valor a ser considerado na apuração da comissão*/
cAlias1:= ParamIXB[2]
cAlias2:= ParamIXB[3]


//Informe o novo campo a ser usado na apuração do comissão. O campo abaixo é apenas um exemplo.
cFobItem:= cAlias2 + "->" + cAlias1 + "_PRECO"
//este bloco deve ser retirado
MsgInfo("Campo: " + cFobItem)

EndIf


If cParam == "VALID_AG_COM"

/*
Inclusão do agente/ comissão
*/
   MsgInfo("Ponto de entrada com o parâmetro VALID_AG_COM", "VALID_AG_COM")
If nTipoDet == 4

//aborta a inclusão
Return .F.

EndIf

EndIf


If cParam == "PE_GRV_EET"

   MsgInfo("Ponto de Entrada EECAP101, parâmetro PE_GRV_EET", "PE_GRV_EET")

   nRecNoEET:= ParamIxb[2] //RecNo da tabela EET registrado na tabela temporária WorkDe. Quando for 0, é uma nova despesa (inclusão); quando for diferente de 0, é uma atualização de despesa (alteração)

If nRecNoEET == 0

//Customização na inclusão de uma despesa

EndIf

EndIf


If cParam == "FIM_BROWSE_AG"

//variável que indica se o cliente clicou em confirmar ou cancelar

If lOk

   MsgInfo("Confirmou a gravação do agente de comissão", "FIM_BROWSE_AG")

Else

   MsgInfo("Cancelou a gravação do agente de comissão", "FIM_BROWSE_AG")

EndIf

EndIf


If cParam == "ALT_TITULO_FIN"

   MsgInfo("Entrou no ponto de entrada 'ALT_TITULO_FIN'.")

EndIf


Return Nil


If VALTYPE(PARAMIXB) == "C" .And. PARAMIXB == "CALC_EMB_MULTIPLA"
   //Verifica a empresa onde poderá ser executada a rotina
   If Alltrim(cEmpAnt) == "99"
      //Apura o peso da quantidade de embalagens internas já calculada pelo sistema para o item
      nQtdEmb := nQtdeEmbInt
      nPesEmb := nQtdEmb * EE5->EE5_PESO
      //Ordenação da tabela de relação de embalagens
      EEK->(DbSetOrder(1))
      //Faz o Loop na relação de embalagens
      If EEK->(DbSeek(xFilial("EEK")+"E"+cEmbalagem))
         Do While EEK->(!Eof()) .And. EEK->EEK_FILIAL == xFilial("EEK") .And.;
            EEK->EEK_TIPO == "E" .And.;
            EEK->EEK_CODIGO == cEmbalagem
            //Posiciona o cadastro de embalagens pela embalagem superior
            If EE5->(DbSeek(xFilial("EE5")+EEK->EEK_EMB))
               //Calcula o percentual de utilização da embalagem interna na embalagem superior
               nQtdEmb := nQtdEmb / EEK->EEK_QTDE
               //Atualiza o peso do relacionamento item + embalagens da relação
               nPesEmb += (EE5->EE5_PESO * nQtdEmb)
               //Atualiza a embalagem para buscar a próxima na relação
               cEmbalagem := EEK->EEK_EMB
            EndIf
            EEK->(DbSkip())
         EndDo
      EndIf
   EndIf
EndIf

Return

Para acessar este parâmetro (CALC_EMB_MULTIPLA) é necessário que os seguintes parâmetros/campos estejam informados com os valores a seguir:
PARAMETROS:
MV_AVG0009 ( Digitação de peso bruto total por item )
- Parametrizar .F.

MV_AVG0063 ( Calculo do Pes.Bruto Total (do item) Qtde*Peso Br.Unit )
- Parametrizar .F.


CAMPOS:
SB1->B1_REPOSIC
- Se existir o campo, informar com o valor "2=Não"

EE7_BRUEMB (Pedido) ou EEC_BRUEMB(Embarque)
- Se existir este campo, verificar se no Pedido este campo se inicia com valor "1-sim". Se não inicializar desta forma, alterar no módulo configurador este campo para que inicialize com o valor “1”

03. PARÂMETROS


NomeTipoDescrição
NOT_DIALOGCaracterVariável que permite a customização da tela de Notifys.
TROCA_FILIAL_NOTACaracterPonto de entrada responsável pela troca de filial para geração de nota
TROCA_PERCOM_VLCOMCaracterPonto de entrada para troca do valor da comissão do agente salva na work WorkIp ou WorkIt
COMIS_TOTCaracter

Ponto de entrada permite alterar o campo que será usado no calculo da comissão do agente. Através desse ponto de entrada, podem ser acessadas as tabelas "EE8/WorkIt(Fase Pedido Exportação)" ou "EE9/WorkIp(Fase Embarque)".

Os nomes das tabelas serão passados nas posições 2 e 3 do ParamIxb.

VALID_AG_COMCaracter

Executado na validação da inclusão do agente e da comissão, permite implementar validações adicionais. Quando o retorno deste ponto for .F. (false), a inclusão da comissão do agente será interrompida.

Estará disponível a variável nTipoDet, que indicará as ações executadas pelo usuário, a saber:

3: Visualização

4: Inclusão

5: Alteração

6: Exclusão

{"PE_GRV_EET", WorkDe->EET_RECNO}Array

Executado no looping da tabela temporária WorkDe, no momento da atualização dos dados na tabela de despesas nacionais (EET), permite customizar as gravações  dos dados.

A primeira posição do array, PE_GRV_EET, indica o momento em que o ponto de entrada é executado.

A segunda posição do array é o RecNo do registro na tabela EET. Quando for 0, indicará que a despesa está sendo incluída e quando diferente de 0, indicará que é uma alteração de uma despesa existente.

Estarão disponíveis neste momento dados das despesas nacionais nas tabelas WorkDe e EET. Este ponto é executado antes da realização da integração com o módulo SIGAFIN, para geração do título a pagar da despesa.

FIM_BROWSE_AGCaracterExecutado após a confirmação ou cancelamento da tela do agente de comissão - tela principal que lista todos os agentes de comissão. Para identificar se o usuário confirmou ou cancelou a gravação da tela, deve ser verificada a variável lOk.
PE_SETMBROWSECaracterPermite personalizar a exibição da mBrowse.
ALT_TITULO_FIN
Permite alterar títulos gerados nas comissões de agente.
CALC_EMB_MULTIPLA
Alteração do cálculo do peso total das embalagens relacionadas ao item do Pedido de Exportação

04. VARIÁVEIS


ParâmetroNomeTipoPermite alterarDescrição
NOT_DIALOGnOpcPENuméricoNãoAtravés desta variável, é possivel identificar a operação utilizada no processo.
TROCA_FILIAL_NOTAcFilFatNfCaracterSimVáriavel que permite a troca de filial pelo ponto de entrada.
VALID_AG_COMnTipoDetNuméricoSimIndica a ação executada pelo usuário: 3: Visualização; 4: Inclusão; 5: Alteração; 6: Exclusão.
FIM_BROWSE_AGlOKLógicoNãoIndica se o usuário confirmou ou cancelo a operação realizada na tela de agentes.
PE_SETMBROWSEuExpTopFilCaracterNãoVariável para personalizar a exibição da MBrowse
CALC_EMB_MULTIPLAnQtdEmb NuméricoSimQuantidade de embalagem mais externa do item atual calculada pelo sistema
CALC_EMB_MULTIPLAnQtdeEmbInt NuméricoSimQuantidade de embalagem mais interna do item atual calculada pelo sistema
CALC_EMB_MULTIPLAnPesEmb NuméricoSimPeso bruto do item atual apurado do relacionamento de embalagens conforme cálculo padrão do sistema
CALC_EMB_MULTIPLAcEmbalagem CaracterSimCódigo da Embalagem mais interna relacionada ao item atual
PE_SETMBROWSElSairLógicoSim

Permite finalizar o Browse antes de ser carregado para inserir um novo por customização.

PE_SETMBROWSEaFixeArraySimPermite alinhar as colunas do mBrowse
PE_SETMBROWSEnClickDefNuméricoSimPermite habilitar o modo alteração no duplo click



05. TABELAS UTILIZADAS

  • Não há