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 ParamIXB == "DESPESA" IF !lSair msginfo("Abrindo a tela de despesas") else msginfo("Não é possível abrir a tela de despesas") Case cParam == "ANTES_TELA_DESP_MANUT" lSair:=.T. aAdd(aEncAltera, "WD_PRDSIS") msginfo("Entrou no Ponto de Entrada WD_PRDSIS") Case cParam == "DESP_ALTERA1" 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" 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 do desembaraço. |
DESP_ALTERA1 | Caracter | Permite validar se será possível abrir a tela de alteração de despesa. |
DESP_EXCLUI1 | Caracter | Permite validar se será possível abrir a tela de exclusão de despesa. |
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 alteração ou inclusã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. |
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 alteração ou inclusã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 alteração ou inclusã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> |