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 Recebimento de Importação. Ele deve ser utilizado para customização desta rotina.

Programa Fonte: EICDI154.PRW


02. EXEMPLO DE UTILIZAÇÃO

#Include 'Protheus.ch'

User Function EICDI154()
Local cParam
Local nValQuebra:= 150 //Quantidade de itens desejada por nota fiscal (alterar conforme necessidade)
local lExibeTela:= .F.

If ValType(ParamIXB) == "A"

    cParam:= ParamIXB[1]

Else

    cParam:= ParamIXB

EndIf
cParam:= Upper(cParam)


Do Case

Case cParam == "TEM_OUTRA_QUEBRA"

    lQuebra_espe:= .T.

Case cParam == "QUEBROU_NF"

    IF nTipoNF == 2 .Or. nTipoNF == 7 

        IF Work1->WKNOTAOR <> cNumComp .OR. Work1->WKSERIEOR <> cSerieComp .Or. nItem >= nValQuebra

            cNumComp := WORK1->WKNOTAOR
            cSerieComp := WORK1->WKSERIEOR
            lQuebrou_NF:= .T.

       ENDIF

    ELSE

        IF nItem >= nValQuebra .OR.; 
            cForn # Work1->WKFORN .OR. (EICLoja() .And. cForLoj # Work1->WKLOJA) .OR.; 
           nItem == 0 .OR. If(lQuebraCFO, cCFO # Work1->WK_CFO,.F.) .OR.; 
           (lIntDraw .AND. Work1->WKACMODAL # cACModal) .OR.;
           (lQuebraOperacao .AND. cOperacao # Work1→WK_OPERACA)

           lQuebrou_NF:= .T.

       ENDIF

    ENDIF

Case cParam == "INICIA_VARIAVEIS"

    lLoop:= .T.

Case cParam == "FINALGRAVA"

    /* lComDiferenca indica se há divergência entre os valores dos impostos informados nas despesas do desembaraço comparados aos valores dos impostos apurados pelo recebimento de importação. */

    If lComDiferenca

        //lRetorno aborta a gravação do recebimento de importação

        lRetorno:= .F.

        //Exibe a tela com a mensagem de divergências (lExibeTela é local, disponível apenas na customização)
       If lExibeTela

           DI154MsgDif(.T.) //função padrão que exibe a tela de divergências dos valores de impostos

       EndIf

   EndIf

Case cParam == "GERA_MAINWND"

    lEstornoPE:= .F.

EndCase

Return


#Include 'Protheus.ch'

User Function IDI154MNU()
Local aRotina := {}
//{Nome apresentado, Função que vai ser executado, 0 ,0}

aAdd(aRotina,{"P.E. de Teste","FUNCTIONX",0,0})
Return aRotina

03. Parâmetros


NomeTipoDescrição
TEM_OUTRA_QUEBRACaracterPossibilita customizar novas opções de quebra para a Nota Fiscal.
QUEBROU_NFCaracterPossibilita controlar a quebra de nota.
GRAVACAO_SF1CaracterChamada após gerar o cabeçalho da Nota Fiscal.
INICIA_VARIAVEISCaracterChamada para prosseguir ou impedir a abertura da tela para gerar nota fiscal na rotina de recebimento de importação. Atribuir a variável lLoop := .T. para impedir a abertura da janela de nota fiscal. Atribuir lLoop := .F.
FINALGRAVACaracterChamado após a apuração dos valores do recebimento de importação, permite determinar se o sistema deverá prosseguir com a geração do recebimento de importação. Neste momento estará disponível a variável lRetorno. Vide também a variável lComDiferenca abaixo.
GERA_MAINWNDCaracterExecutado antes da abertura da tela do recebimento de importaçao, permite customizar o título (variável cTit) e ações da tela, como o desabilitar o botão estonar (variável lEstornoPE).

04. Variáveis


ParâmetroNomeTipoPermite alterarDescrição
cChaveSF1CCaracterSim
lLoopInclua a descrição relacionadaLógicoSim
lRetornoInclua a descrição relacionadaLógicoSim
lComDiferenca
LógicoNão
cTit
CaracterSim
lEstornoPE
LógicoSim
aRotina
ArraySim



05. TABELAS UTILIZADAS

<!-- 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>