Árvore de páginas

Versões comparadas

Chave

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


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 Embarque (EECAE100). Ele deve ser utilizado para customizar a rotina de Embarque.

Programa Fonte: EECAE100.PRW

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


02. EXEMPLO DE UTILIZAÇÃO


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

User Function EECAE100()
Local cParamIXB := ""

   If ValType(ParamIXB) == "A"
      cParamIXB:= ParamIXB[1]
   Else
      cParamIXB:= ParamIXB
   EndIf

   Do Case

     Case cParam == 'VALID_EMB'
         lValidOIC := .F.      //Por padrão, a variável é .T.

     Case cParamIXB == 

...

Descrição

...

EECAE100 - Customização de funções de Embarque

...

Observações

...

Ponto de Entrada para customização de funções no fonte EECAE100.

...

Exemplos

User Function EECAE100()

...

"DETIP_ACTIVATE_DLG"

...



         oMsmGet:oBox:Align := CONTROL_ALIGN_ALLCLIENT

...



      Case cParamIXB == "GRV_CPOS_CUSTOM"

...



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

...



      Case cParamIXB == "BUTTON_REMESSA"

...



         lDtEmba := .T.

...


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

...



      Case cParamIXB == "PE_MARK_OK"

...



         aAdd(aButtons,{"REPLICAR",{|| U_ReplPed()},"Novo Botao"})

...


         nPos:= AScan(aCampoPIT, {|x| x[3] == "Part.No."})
         If nPos > 0
            aCampoPIT[nPos][1]:= {||"1234"}
         EndIf        Case cParamIXB == "FECHAMENTO_EMBARQUE"

...



         dDtEmb := EEC->EEC_DTEMBA

...


         dDtMemEmb := EEC->EEC_DTEMBA

...



      Case cParamIXB == "STATUS"

...



         cStatus := Faturado

...

 Parcialmente

      Case cParamIXB == "MSG_ADIANT_NAO_UTILIZADO"

...



         lShowMsg := .F.

...



      Case cParamIXB == "PE_GRAVA"

...



         /*Gravações customizadas das funcionalidades disponíveis em outras ações. Exemplo:

...


         EEB->(DBSetOrder(1))

...


         EEB->(DBSeek(xFilial() + M->EEC_PREEMB)

...


         //looping

...


         //tratamentos customizados na tabela de agentes e comissões

...

*/

...


         MsgInfo("Ponto de entrada EECAE100, parâmetro PE_GRAVA", "PE_GRAVA")

      Case cParamIXB == "PE_GRV_EE9"

         MsgInfo("Ponto de entrada EECAE100, parâmetro PE_GRV_EE9", "PE_GRV_EE9")
         //Customização na gravação do item do processo de embarque
         EE9->EE9_ZZZZ:= "ABC"

      Case cParamIXB = "ANTES_TELA_PRINCIPAL"

         If (nPos := AScan(aEECCamposEditaveis,"EEC_RECALF")) > 0
            ADel(aEECCamposEditaveis,nPos)
            ASize(aEECCamposEditaveis,Len(aEECCamposEditaveis)-1)
         EndIf

         aAdd(aButtons,{"REPLICAR",{|| U_ReplPed()},"Novo Botao"})
  		 
         nPos:= AScan(aCampoPED, {|x| x[3] == "Part.No."})
		 If nPos > 0
		   aCampoPED[nPos][1]:= {||"1234"}
		 EndIf


      Case cParamIXB == 'PRECOI_ATU_PRECO'

         If ParamIXB[2] <> "EE9_VLDESC"
            // Zera o valor da despesa no calculo do processo de preço fechado.
            nValPto := 0
         Endif
      Case cPARAMIXB == "ANTES_REFRESH_RODAPE"    
           M->EEC_TOTPED := 101 //Total Embarque 
           nTotEmbBr := 102 // Total Emb.(Bruto)
           M->EEC_TOTFOB := 103 //Total Fob
           M->EEC_VLFOB := 103 //Total Fob Interno, deixar este valor igual ao EEC_TOTFOB
           M->EEC_TOTLIQ := 104 // Total Liquido  
           M->EEC_PESLIQ :=105 // Peso Líquido     
           M->EEC_PESBRU := 106 //Peso Bruto
   EndCase

Return NIL


03. PARÂMETROS

")

EndCase

Return NIL

Variável que permite incluir opções customizadas na tela do browse no botão "Ações relacionadas".Variáveis
NomeTipoDescrição

Idioma

Português(Brasil)

Versões

Microsiga_Protheus11, Microsiga_Protheus12

Sistemas Operacionais Suportados

Todos

Compatível com as Bases de Dados

Todas

Parâmetros

Nome
Tipo
Descrição
DefaultObrigatórioReferência

EAE100MNU

Caracter

DETIP_ACTIVATE_DLGCaracterPermite manipular os objetos da tela de itens do embarque de exportação.
GRV_CPOS_CUSTOMCaracterPermite o tratamento de campos customizado no momento da gravação do embarque.
BUTTON_REMESSACaracterPermite manipular a exibição do botão "Vincular NF’s de Entrada" na alteração do embarque.
PE_MARK_OKCaracterPermite adicionar uma nova opção na tela de seleção de pedidos na rotina de embarque e intervir nos dados exibidos no grid de itens.
FECHAMENTO_EMBARQUECaracterPonto de Entrada para manipulação da data de fechamento de embarque.
STATUSCaracterPonto de Entrada que permite alterar o Status do Pedido de Exportação.
MSG_ADIANT_NAO_UTILIZADOCaracterPonto de entrada para definir se a mensagem "Este embarque possui adiantamento(s) não utilizado(s)." "Faça a vinculação do(s) mesmo(s) na manutenção de adiantamento(s)." será exibida ou não. Por padrão, a mensagem é exibida. Para não exibir, atribuir a variável 'lShowMsg := .F.'.
PE_GRAVACaracterExecutado após a gravação da tabela EEC e das rotinas disponíveis em Outras Ações, tais como: Despesas nacionais (EET) Agentes (EEB) Instituições Bancárias (EEJ), Notifys (EEN) e Notas Fiscais (EEM) e antes da gravação dos itens do embarque (EE9). Ainda dentro da transação de gravação do embarque, possibilita a customização da complementação das gravações das tabelas atualizadas até o momento.
{"PE_GRV_EE9"}ArrayExecutado no looping de gravação dos dados da tabela temporária de itens (WorkIP) para a tabela de itens do embarque de exportação (EE9) permite implementar customizações nas gravações dos registros. Estarão disponíveis os dados dos itens da tabela temporária (WorkIP) e da tabela efetiva (EE9) posicionadas no registro que em processo de gravação e as variáveis de memória da capa do embarque (EEC).
ANTES_TELA_PRINCIPALCaracterPonto de entrada que permite deixar os campos disponíveis ou bloqueados para edição na tela do embarque através da manipulação da variável aEECCamposEditaveis e permite também a manipulação do botão Outras Ações, incluindo ou retirando ações.
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.

EECPEM00CaracterChamada na função AE100Grava() após a gravação da capa, despesas, agentes, instituições,NFs e itens do embarque, atualização do status do processo e gravação das parcelas de câmbio
EECPEM41ArrayChamada na função de manutenção de embarque AE100MAN() após todos os dados do embarque forem carregados. Este ponto de entrada é executado após a gravação de todos os dados relacionados ao embarque.
ANTES_REFRESH_RODAPECaracterPermite a alteração dos campos do rodapé do embarque de exportação.
VALID_EMBCaracter

Permite habilitar ou desabilitar alguma validação relacionada à variável lógica. 

04. VARIÁVEIS


Pode AlterarlDtEmba EECAE100.PRW
ParâmetroNomeTipoPermite alterarDescrição
DETIP_ACTIVATE_DLGoFolderObjetoSimObjeto Folder que possibilita manipular ou criar pastas a serem exibidas na tela de itens. Estará disponível em ambientes offfshore.
DETIP_ACTIVATE_DLGoMsmGetObjetoSimObjeto Get, com os campos da tabela EE9 exibidos na tela de edição de itens.
BUTTON_REMESSAlDtEmbaLógicoSimQuando o parâmetro referente a nota fiscal de remessa estiver habilitado e data de embarque preenchida, permite alterar a variável lDtEmba para manipular a exibição da rotina "Vincular NFs de Entrada".
FECHAMENTO_EMBARQUEdDtEmbDataSimVariável com o conteúdo do campo "Dt. Embarque" antes de ser alterado o Embarque.
FECHAMENTO_EMBARQUEdDtMemEmbDataSimVariável com o conteúdo do campo "Dt. Embarque" que está na memória, ou seja, durante a alteração do Embarque.
STATUScStatusCaracterSimVariável que permite alterar o Status do pedido de exportação.
ObservaçãoPara edição de campos no embarque, mesmo com a data de embarque preenchida é recomendável que altere pelo Configurador (SIGACFG) o campo "Modo edição(X3_WHEN)", retirando qualquer condição de validação para que o campo possa ser editável.

Programa Fonte

ANTES_TELA_PRINCIPALaEECCamposEditaveisArraySimOs campos contidos nesta variável serão editáveis na tela do embarque, para deixar um campo bloqueado para edição deve-se excluir o campo desejado deste array.
ANTES_TELA_PRINCIPALaButtonsArraySmPermite a manipulação deste array para inclusão ou exclusão de opções no menu Outras ações.
ANTES_TELA_PRINCIPALaCampoPEDArraySimPermite modificar os dados e colunas exibidos no grid de itens.
PRECOI_ATU_PRECOnValPTONuméricoSimValor da despesa a ser cosiderado no preço do item.
ANTES_REFRESH_RODAPEEEC_TOTPEDNuméricoSimVariável referente ao campo "Total Embarque" da tela do embarque.
ANTES_REFRESH_RODAPEnTotEmbBrNuméricoSimVariável referente ao campo "Total Emb(Bruto)" da tela do embarque.
ANTES_REFRESH_RODAPEEEC_TOTFOBNuméricoSimVariável referente ao campo "Total fob" da tela do embarque.
ANTES_REFRESH_RODAPEEEC_VLFOBNuméricoSimVariáel para uso interno do sistema, deve ser informado com o mesmo valor do campo EEC_TOTFOB.
ANTES_REFRESH_RODAPEEEC_TOTLIQNuméricoSimVariável referente ao campo "Total líquido" da tela do embarque.
ANTES_REFRESH_RODAPEEEC_PESLIQNuméricoSimVariável referente ao campo "Peso Líquido" da tela do embarque.
ANTES_REFRESH_RODAPEEEC_PESBRUNuméricoSimVariável referente ao campo "Peso Bruto" da tela do embarque.
VALID_EMBlValidOICLógicoSimPermite habilitar ou desabilitar a validação de OIC. Por padrão recebe o valor .T. e se .F. a validação não ocorre
PE_MARK_OKaButtonsArraySimPermite adicionar ou modificar as ações.
PE_MARK_OKaCampoPITArraySimPermite modificar os dados e colunas exibidos no grid de itens.


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>