Este Ponto de Entrada pertence à rotina de Embarque/Desembaraço da Importação (EICDI500). Ele deve ser utilizado para customizar a rotina de Embarque/Desembaraço de Importação.
Programa Fonte: EICDI500.PRW
#include "protheus.ch"
User function EICDI500()
Local cParam := if(Type("ParamIxb") = "A", ParamIxb[1], if(Type("ParamIxb") = "C", ParamIxb, ""))
Do Case
Case cParam == "STRU_WORKS"
aadd(aSemSX3SW7,{"W7_DTPRVE","D",8,0})
Case cParam == "BROWSE_SELECIONA"
aadd(aCamposItem,{"W7_DTPRVE",,"DT Prev Entrega",""})
aadd(aCamposItem,{"W7_DTENTRG",,"DT Entrega",""})
//AAdd(aBotaoItem, {"" ,{|| MsgInfo("Teste")}, "Botão de teste"})
//AAdd(aCamposItem, {"WKCAMPO" , , "Titulo" , "substituir por picture"})
Case cParam == "GRV_WORK_ITEM"
WORK->W7_DTENTRG := SW3->W3_DT_ENTR
WORK->W7_DTPRVE := SW3->W3_DT_ENTR - 5
Case ParamIXB == "ANT_VALID_SW6"
If cNomeCampo = 'TFOBUNIT'
MsgInfo("Entrou no ponto de entrada para validação dos campos no item do embarque.")
EndIf
Case PARAMIXB == "MANUT_SW9"
lSair: = .T.
Case PARAMIXB == "ANTES_TELA"
MsgInfo("Entrou no ponto de entrada para manipulação de campos customizados.")
Case cParam == "TELA_DESP"
If AScan(aBotoesDesp, {|x| x[1] == "TESTE1"}) == 0
AAdd(aBotoesDesp, {"TESTE1", {|| MsgInfo("Teste")}, "Teste aBotoesDesp", "Teste aBotoesDesp"})
EndIf
Case cParam == "BROWSE_WORK_SW9"
AAdd(aBotoes, {"TESTE aBotoes", {|| MsgInfo("Teste aBotoes")}, "Teste aBotoes", "Teste aBotoes"})
AAdd(aTB_CposSW9, {"TESTE aTB_CposSW9", {|| MsgInfo("Teste aBotoes")}, "Teste aTB_CposSW9", "Teste aTB_CposSW9"})
Case cParam == "RATEIO_ACRESCIMOS"
cCodRatPeso := "10/13"
Case cParam == "DESVIA_REL"
lDesvio := .T.
Case cParam == "ANTES_INFO_COMPL"
nLin2 := 20
Case cParam == "IMP_COMPLE"
cMemo := "Teste"
Case cParam == "FINAL_IMPR_ADI"
nLin2 := 20
Case cParam == "MANUT_W9_INC"
MsgInfo("Ponto de entrada com o parâmetro MANUT_W9_INC")
//M->W9_FRETEIN:= 145.00
Case cParam == "ANTES_INICIA_SW6_SW9"
//MsgInfo("Ponto de entrada com o parâmetro ANTES_INICIA_SW6_SW9")
cCpoNaoInicia += "W2_AAAA; W2_BBBB"
Case cParam == "INICIA_SW6_SW9"
MsgInfo("Ponto de entrada com o parâmetro INICIA_SW6_SW9")
//M->W9_ABCD:= SW2→W2_ABCD
Case cParam == "AROTINA"
Aadd(aRotina, {"Nova Rotina", "DI500Rotina", 0, 2})
Case cParam == "ALTERA_WHEN"
lWhenDesp := .F. //Desabilita o campo Despesa
lWhenAdian := .F. //Adianta/o
lWhenPgPor := .F. //Pago Por
lWhenGrFin := .F. //Gera Financ.
Case PARAMIXB == "GERATXT_MERCODI_ALT"
If !lMERCODI
Aadd(aLoadTxt,{ 86 ," ", "C" , 1 , 0 ,1141 ,1141})
Elseif Ascan(aLoadTxt, {|x|x[1] == 86}) # 0
Aadd(aLoadTxt,{ 86 ," ", "C" , 1 , 0 ,1141 ,1141})
EndIf
Case ParamIXB == "DI500LOTEVAL_VALLOTE" .AND. cValCampo == "LOTE"
MsgInfo("DI500LOTEVAL_VALLOTE")
Case cParam == "DESPESA"
lSair := .T.//Permite abrir a tela de despesas
IF lSair
msginfo("Abrindo a tela de despesas")
else
msginfo("Não é possível abrir a tela de despesas")
Case ParamIXB == "ANTES_TELA_DESP_MANUT"
lSair:=.T.
aAdd(aEncAltera, "WD_PRDSIS")
Case cParam == "DESP_ALTERA1"
lSair := .T.//Permite a alteração na tela de despesas
If lSair
msginfo("Permitida a alteração na tela de despesas")
ELSE
msginfo("Não é possível abrir a tela de alteração de despesa")
Case cParam == "DESP_EXCLUI1"
lSair := .T.//Permite alterar/excluir na tela de despesas
If lSair
msginfo("Permitida a exclusão na tela de despesas")
ELSE
msginfo("Não é possível abrir a tela de exclusão de despesa")
Case ParamIXB == "INCLUI_DESP"
MsgInfo("Ponto de entrada antes de salvar a inclusão da despesa")
Case ParamIXB == "ALTERA_DESP"
MsgInfo("Ponto de entrada antes de salvar a alteração da despesa")
Case ParamIXB == "DELETA_DESP "
MsgInfo("Ponto de entrada antes de excluir a despesa")
Case cParam == "ADD_TB_CAMPOS" //Adiciona campos a serem exibidos nos itens nas opções de Menu "Visualização" e "Estorno"
/*{Nome_Campo ,,Tamanho , Decimais }*/
AADD(aTB_Campos,{"NOVOCAMPO",,AVSX3("W3_QTSEGUM",5),AVSX3("W3_QTSEGUM" ,6)})
Case cParam == "ALTERA_AEMBARQUE" //Adiciona campos a serem exibidos na manutenção do Embarque/Desembaraço
If aScan(aEmbarques,{|x| x == "W6_ARMADOR"}) == 0
AADD(aEmbarques,"W6_ARMADOR")
EndIf
EndCase
Return
|
03. PARÂMETROS
| Nome | Tipo | Descrição |
|---|---|---|
STRU_WORKS | Caracter | Possibilita a inclusão de campos na work de itens e pode ser usado com os parâmetros GRV_WORK_ITEM e BROWSE_SELECIONA onde o primeiro permite gravar uma informação no campo adicionado e o segundo que o campo criado seja exibido na tela de itens. |
GRV_WORK_ITEM | Caracter | Permite gravar os campos que foram criados pelo usuário, seja pelo configurador ou pelo uso do parâmetro STRU_WORKS. |
| ANT_VALID_SW6 | Caracter | Possibilita a validação dos itens da SW6 e também da tela de seleção de itens do embarque. |
| MANUT_SW9 | Caracter | Possibilita a validação dos itens da SW9 (Invoice) e também a alteração dela. |
| ANTES_TELA | Caracter | Possibilita a customização dos campos customizados a serem apresentados na enchoice. |
| BROWSE_SELECIONA | Caracter | Possibilita controlar os campos que serão exibidos na tela de itens da manutenção de itens do embarque. |
| ANT_GRAVA_CAPA | Caracter | Ponto de entrada executado imediatamente após confirma a mensagem "Confirma a gravação somente da capa do processo?". Não é executado na fase de desembaraço. |
| POS_GRAVA_CAPA | Caracter | Ponto de entrada executado após efetivar a gravação da capa do embarque. Não é executado na fase de desembaraço. |
| ANT_GRAVA_TUDO | Caracter | Ponto de entrada executado antes de gravar todo o processo. Também é executado na fase desembaraço. |
| POS_GRAVA_TUDO | Caracter | Ponto de entrada executado após gravar todo o processo, além dos capa. Também é executado na fase desembaraço. |
| TELA_DESP | Caracter | Possibilita a customização dos botões que serão exibidos nas ações da tela de despesas do desembaraço. |
| BROWSE_WORK_SW9 | Caracter | Possibilita a customização dos botões aBotoes e aTB_CposSW9 na tela de invoices do desembaraço. |
| RATEIO_ACRESCIMOS | Caracter | Possibilita customizar via ponto de entrada os códigos dos acréscimos a serem rateados por peso. |
| DESVIA_REL | Caracter | Possibilita definir se haverá desvio para uma versão customizada da impressão do Relatório de Conferência da DI |
| ANTES_INFO_COMPL | Caracter | Possibilita inserir dados na próxima linha disponível antes da impressão da seção Informações Complementares do Relatório de Conferência da DI |
IMP_COMPLE | Caracter | Possibilita customizar a Impressão de Informações Complementares no Relatório de Conferência da DI |
| FINAL_IMPR_ADI | Caracter | Possibilita inserir dados na próxima linha disponível no Final da Impressão da Adição dentro do loop da impressões das adições |
| MANUT_W9_INC | Caracter | Indica que o ponto de entrada foi executado durante a inclusão de uma Invoice, possibilitando customizar as suas informações de capa (SW9). |
| ANTES_INICIA_SW6_SW9 | Caracter | Indica que o ponto de entrada foi executado a partir da inclusão da Invoice, antes que os dados da capa sejam carregados a partir do Purchase Order de referência informado na capa do embarque/ desembaraço. A execução o ponto de entrada com este parâmetro está condicionada ao parâmetro MV_INIINV. |
| INICIA_SW6_SW9 | Caracter | Executado quando a Invoice for incluída, possibilitará intervir nas informações de capa do processo (SW9). Havendo o Purchase Order de referência informado na capa do embarque/ desembaraço, este registro estará posicionado neste momento. A execução o ponto de entrada com este parâmetro está condicionada ao parâmetro MV_INIINV. |
| AROTINA | Caracter | Possiblita incluir novas rotinas no menu de outras ações do desembaraço. |
| ALTERA_WHEN | Caracter | Possibilitar desabilitar a edição (when) dos campos "Despesa", "Adiantamento", "Pago Por" e/ou "Gera Título no Financeiro?". |
| GERATXT_MERCODI_ALT | Caracter | Possibilita a alteração dos dados do mercosul(certificado) no TXT de envio da DI eletrônica. |
| DI500LOTEVAL_VALLOTE | Caracter | Possibilitará a validação do número do lote na inclusão.Deve-se usar a variável private cValCampo para a identificação do campo que está sendo validado, no caso do número do lote (e da data de validade) a variável estará com o conteúdo “LOTE”, use a variável lValLote para identificar se a validação está correta ou não (.T., para correto, e .F., para incorreto). A criação do ponto de entrada adicionará novas validações ao sistema, ou seja, as validações já existentes no padrão do sistema continuarão sendo executadas. |
| ANTES_TELA_DESP_MANUT | Caracater | Possibilita o controle de alteração e inclusão da despesa do desembaraço |
| INCLUI_DESP | Caracater | Possibilita a alteração dos campos da tabela SWD antes da gravação da inclusão da despesa. |
| ALTERA_DESP | Caracater | Possibilita a alteração dos campos da tabela SWD antes da gravação da alteração da despesa. |
| DELETA_DESP | Caracater | Possibilita a manipulação das informações antes da exclusão da despesa. |
| ADD_TB_CAMPOS | Caracter | Possibilita adicionar campos nos itens do processo exibidos para as telas de Visualização e Estorno. |
| ALTERA_AEMBARQUE | Caracter | Possibilita adicionar campos na tela de Capa do Processo do Embarque\Desembaraço. |
| Despesa | Caracter | Permite validar se poderá abrir a tela de despesas ou não. |
| DESP_ALTERA1 | Caracter | Permite validar se será possível abrir a tela de alteração de despesa ou não. |
| DESP_EXCLUI1 | Caracter | Permite validar se será possível abrir a tela de exclusão de despesa ou não. |
| Parâmetro | Nome | Tipo | Permite alterar | Descrição |
|---|---|---|---|---|
| STRU_WORKS | aSemSX3SW7 | Array | Sim | Array com os campos que serão criados na work de itens da manutenção de itens do embarque. |
| ANT_VALID_SW6 | cNomeCampo | Caracter | Sim | Variável que armazena o nome do campo a ser validado. |
| MANUT_SW9 | lSair | Lógico | Sim | Variável usada no ponto de entrada MANUT_SW9 |
| ANTES_TELA | aCamposMostra | Array | Sim | Array que armazena os campos a serem apresentados em tela |
| BROWSE_SELECIONA | aDarGets | Array | Sim | Array com os campos que serão exibidos na tela de manutenção dos itens do embarque. |
| BROWSE_SELECIONA | aCamposItem | Array | Sim | Array com os campos que serão exibidos na tela de manutenção dos itens do embarque. |
| ANT_GRAVA_CAPA | cTitItens | Caracter | Sim | Permite manipular o título da tela de itens |
| POS_GRAVA_CAPA | nOpcaoItem | Numérico | Sim | Permite verificar e intervir na ação de acesso à tela de itens |
| ANT_GRAVA_TUDO | aBotaoItem | Array | Sim | Possibilita a adição de novas ações na tela de itens |
| TELA_DESP | aBotoesDesp | Array | Sim | Disponível no ponto de entrada com o parâmetro TELA_DESP, possibilita a customização das ações exibidas na tela de despesas do desembaraço. |
| POS_GRAVA_TUDO | aCamposItem | Array | Sim | Disponível no ponto de entrada com o parâmetro BROWSE_SELECIONA, possibilita a adição de campos na tela de seleção de itens das fases de embarque e desembaraço. |
| BROWSE_WORK_SW9 | aBotoes e aTB_CposSW9 | Array | Sim | Possibilita a adição de novas opções na tela de invoices do desembaraço. Através da customização dos botões. |
| RATEIO_ACRESCIMOS | cCodRatPeso | Caracter | Sim | Variável para indicar quais os códigos de acréscimos terão o rateio efetuado por peso. |
DESVIA_REL | lDesvio | Lógico | Sim | Variável que define se haverá desvio na impressão do Relatório |
| ANTES_INFO_COMPL | nLin2 | Numérico | Sim | Variável que Possibilita inserir dados na próxima linha disponível antes da impressão da seção Informações Complementares do Relatório de Conferência da DI |
| IMP_COMPLE | cMemo | Memo | Sim | Variável que receberá o conteúdo(customizado) a ser impresso em Informações Complementares do Relatório de Conferência da DI |
| FINAL_IMPR_ADI | nLin2 | Numérico | Sim | Variável que Possibilita inserir dados na próxima linha disponível no Final da Impressão da Adição dentro do loop da impressões das adições |
| ANTES_INICIA_SW6_SW9 | cCpoNaoInicia | Caracter | Sim | Disponível na inclusão da Invoice, possibilita relacionar os campos da capa do Purchase Order (SW2) que não devem ser considerados ao carregar a capa da Invoice (SW9) |
| AROTINA | aRotina | Array | Sim | Variável que recebe as novas rotinas a serem exibidas no menu de outras ações do desembaraço |
| ALTERA_WHEN | lWhenDesp := .F. | Lógico | Sim | Variável responsável por Desabilitar o campo "Despesa" |
| ALTERA_WHEN | lWhenAdian := .F. | Lógico | Sim | Variável responsável por Desabilitar o campo "Adiantamento" |
| ALTERA_WHEN | lWhenPgPor := .F. | Lógico | Sim | Variável responsável por Desabilitar o campo "Pago Por" |
| ALTERA_WHEN | lWhenGrFin := .F. | Lógico | Sim | Variável responsável por Desabilitar o campo "Gera Título no Financeiro?". |
| GERATXT_MERCODI_ALT | cValCampo | Caracter | Sim | Variável que possibilita a alteração dos dados do mercosul(certificado) no TXT de envio da DI eletrônica. |
| DI500LOTEVAL_VALLOTE | lValLote | Lógico | Sim | Variável utilizada para validação do número do lote na inclusão. Deve-se usar a variável private cValCampo para a identificação do campo que está sendo validado, no caso do número do lote (e da data de validade) a variável estará com o conteúdo “LOTE”, use a variável lValLote para identificar se a validação está correta ou não (.T., para correto, e .F., para incorreto). A criação do ponto de entrada adicionará novas validações ao sistema, ou seja, as validações já existentes no padrão do sistema continuarão sendo executadas. |
| DI500LOTEVAL_VALLOTE | cValCampo | Caracter | Não | Variável utilizada para identificar qual campo está sendo validado. Para a validação do número do lote (e da data de validade) a variável estará com o conteúdo “LOTE”. |
| ANTES_TELA_DESP_MANUT | lSair | Lógico | Sim | Variável que possibilita a permissão ou não de uma alteação ou incluão da despesa do desembaraço, se retornar .T. permite a inclusão ou alteração da despesa e se retornar .F. volta pra tela anterior sem abrir a tela de inclusão ou alteração. |
| ANTES_TELA_DESP_MANUT | aEncAltera | Array | Sim | Array utilizado para informar os campos que são passíveis de alteração na tela da despesa do desembaraço. |
| ADD_TB_CAMPOS | aTB_Campos | Array | Sim | Array com os campos de itens do processo exibidos nas telas de Visualização e Estorno. |
| ALTERA_AEMBARQUE | aEmbarques | Array | Sim | Array com os campos da capa do processo a serem exibidos na manutenção do Embarque/Desembaraço. |
| Despesa | lSair | Lógico | Sim | Variável que possibilita a permissão ou não de uma alteação ou incluão da despesa do desembaraço, se retornar .T. permite a inclusão ou alteração da despesa e se retornar .F. volta pra tela anterior sem abrir a tela de inclusão ou alteração. |
| DESP_ALTERA1 | lSair | Lógico | Sim | Variável que possibilita a permissão ou não de uma alteação ou incluão da despesa do desembaraço, se retornar .T. permite a inclusão ou alteração da despesa e se retornar .F. volta pra tela anterior sem abrir a tela de inclusão ou alteração. |
| DESP_EXCLUI1 | lSair | Lógico | Sim | Variável que possibilita a permissão ou não de uma alteação ou incluão da despesa do desembaraço, se retornar .T. permite a inclusão ou alteração da despesa e se retornar .F. volta pra tela anterior sem abrir a tela de inclusão ou alteração. |
<!-- 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>
|