Á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

Parcialmente
EndCase

Return NIL

DETIP_ACTIVATE_DLGVariá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

Variável que permite incluir opções customizadas na tela do browse no botão "Ações relacionadas".CaracterPermite 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>