Histórico da Página
CONTEÚDO
- Visão Geral
- Exemplo de utilização
- Parâmetros
- Variáveis
- Tabelas utilizadas
01. VISÃO GERAL
Este Ponto de Entrada pertence à rotina de Purchase Order. Ele deve ser utilizado para customização desta rotina.
Programa Fonte: EICPO400.PRW
02. EXEMPLO DE UTILIZAÇÃO
Bloco de código | ||||
---|---|---|---|---|
| ||||
User functionFunction eicpo400Eicpo400() Local cParamixbcParam := iifIIF( type("paramixb") == "A" .andAnd. len(paramixb) > 0 , paramixb[1] , paramixb ) Do caseCase Case ParamIXBcParam == "ANTES_GRAVAR" MsgInfo("Entrou no ponto de entrada 'ANTES_GRAVAR'.") Case cParamixbcParam == "AROTINA" AAdd(aCores , { "SW2->W2_CONAPRO == 'B' " , "BR_AZUL" }) cFilBrow := " SW2->W2_CONAPRO == '1' " Case ParamIXBcParam == "GRAVA_PO_PC" //tratamentos customizados MsgInfo("Entrou no ponto de entrada 'GRAVA_PO_PC'.") Case ParamIXBcParam == "Work_SI" //adição de campos na work que será usada para exibir os dados da S.I. de referência AAdd(aSemSX3, {"W0_COMPRA", "C", 3, 0}) Case ParamIXBcParam == "TB_Campos_SI" //campos que serão exibidos ao clicar no botão "S.I. de Referência" AAdd(Tb_Campos_temp, {{|| Work_SI->W0_COMPRA},, "COMPRADOR"}) Case ParamIXBcParam == "GRAVA_WORK_SI" //informação a ser gravada no campo adicional Work Work_SI->W0_COMPRA:= SW0->W0_COMPRA Case ParamIXBcParam == "SELECIONASI" //Define se a tela será aberta. Return .T. //Define se a tela não será aberta Case ParamIXB cParam== "DEPOIS_ALTERA_INC_PO" If lDepoisAltIncPO MsgInfo("Operação de alteração confirmada!") Else MsgInfo("Operação de alteração cancelada!") Endif Case ValType(ParamIXB) cParam== "A"PO_PesqSI_Sel" //lLoop := .T. cParam := ParamIXB[1] Case ParamIXB == "PO_PesqSI_Sel" //lLoop := .T. MSGINFO("PONTO DE ENTRADA 'PO_PesqSI_Sel' ATIVO!") Case ParamIXBcParam == "VALID" If cFlag == 'Saldo_Q' MsgInfo("Entrou no ponto de entrada 'VALID'.") Endif Case ParamIXBcParam == "DEPOIS_GRAVA_INC_PO" If lDepoisGrvIncPO MsgInfo("Operação de gravação confirmada!") Else MsgInfo("Operação de gravação cancelada!") Endif Case PARAMIXBcParam == "ALTERA_PO_POST" MsgInfo("Entrou no ponto de entrada 'ALTERA_PO_POST'.") lAltPOPost := .F. Case PARAMIXBcParam == "ANTES_ELIMINA" MsgInfo("Entrou no ponto de entrada 'ANTES_ELIMINA'") lEliminaS := .F. Case CASE PARAMIXBcParam == "ANTES_SALVARANTESZERASLD" MsgInfo("Entrou no ponto de entrada 'ANTES_SALVARANTESZERASLD'") lPE := lSair := .F.//Se true, aborta a execução CaseCASE PARAMIXBcParam == "APPENDSLDZERADO" MsgInfo("Entrou no ponto de entrada 'APPENDSLDZERADO'") WORK->WKPRECO := 50 Case cParam == "APOSANTES_GET_SISALVAR" If nOpcPonto <> 0 MsgInfo( MsgInfo("Entrou no ponto de entrada 'APOSANTES_GET_SI' Seleção de itens.") SALVAR'") lPE EndIF := .F. Case cParam == "INICIA_VARIAVEL_CONFERENCIA_FINALAPPEND" If nOpcPonto <> 0 MsgInfo("Entrou no MsgInfo("Entrou no ponto de entrada 'INICIA_VARIAVEL_CONFERENCIA_FINAL' Conferencia final.APPEND'") EndIF WORK->WKPRECO := 50 Case cParam == "APOS_MARCAGET_ITEMSI" If nOpcPonto <> 0 MsgInfo("Entrou no ponto de entrada 'APOS_MARCAGET_ITEMSI' Seleção de itens.") EndIF EndIf Case cParam == "APOS_CONFERENCIAFINAL" Case IfcParam nOpcPonto <> 0== "ANTES_ESTORNA" MsgInfo("Entrou no ponto de entrada 'APOSANTES_CONFERENCIAFINALESTORNA' Conferencia final.") EndIF Case cParamixbcParam == "INCLUIR" .or. cParamixb == "ALTERAR" .or. cParamixb == "BROWSE_ESTORNO" // Definir se irá criar o pedido no módulo de Compras // Para NÃO criar as variáveis cMV_Easy := "N" e lExecAuto_Com := .F. cMV_EASY := EasyGParam("MV_EASY",,"N"INICIA_VARIAVEL_CONFERENCIA_FINAL" If nOpcPonto <> 0 MsgInfo("Entrou no ponto de entrada 'INICIA_VARIAVEL_CONFERENCIA_FINAL' Conferencia final.") if cMV_EASY == "S" EndIf Case cParam == cMV_EASY := "N" "APOS_MARCA_ITEM" If endif nOpcPonto <> 0 lExecAuto_Com := cMV_EASY == "S" End Case Return |
03. PARÂMETROS
...
MsgInfo("Entrou no ponto de entrada 'APOS_MARCA_ITEM' Seleção de itens.")
EndIf
Case cParam == "APOS_CONFERENCIAFINAL"
If nOpcPonto <> 0
MsgInfo("Entrou no ponto de entrada 'APOS_CONFERENCIAFINAL' Conferencia final.")
EndIf
Case cParam == "INCLUIR" .or. cParamixb == "ALTERAR" .or. cParamixb == "BROWSE_ESTORNO"
// Definir se irá criar o pedido no módulo de Compras
// Para NÃO criar as variáveis cMV_Easy := "N" e lExecAuto_Com := .F.
cMV_EASY := EasyGParam("MV_EASY",,"N")
If cMV_EASY == "S"
cMV_EASY := "N"
EndIf
lExecAuto_Com := cMV_EASY == "S"
Case cParam == "PO400ESTOR_VERIFICA_PAG_ANT"
//pode exibir alguma mensagem se quiser
lSair : =.T. //aborta o estorno, ser for .f. cotinua
Case cParam == "HABILITA_CONFERENCIA_FINAL"
//Habilita a tela de Conferência Final
lConfFinal := .T.
End Case
Return |
03. PARÂMETROS
Nome | Tipo | Descrição |
---|---|---|
ANTES_GRAVAR | Caracter | Executado após a gravação do Purchase Order e do Pedido de Compras (quando integrado) e antes de realizar a integração com o módulo financeiro (quando habilitado) para gerenciamento dos títulos provisórios. Permite customizar os dados para gravações adicionais nas tabelas do Purchase Order e/ou Pedido de Compras antes da execução da integração com o financeiro |
AROTINA | Caracter | Parâmetro que permite adicionar legendas e filtro ao Browse do Purchase Order. |
GRAVA_PO_PC | Caracter | Parâmetro que indica que o ponto de entrada está sendo chamado após a confirmação da gravação do Purchase Order. |
WORK_SI | Caracter | Objetivo deste ponto de entrada é permitir a customização da Work da tela Consulta Cod.Unid.Req S.I. |
TB_CAMPOS_SI | Caracter | O objetivo deste ponto de entrada é permitir a customização dos campos da MsSelect da tela Consulta Cod.Unid.Req S.I. |
GRAVA_WORK_SI | Array | Permite gravar informações nos campos adicionais que serão exibidos na tela "Consulta Cod.Unid.Req S.I.". Chamado durante o looping da tabela SW0. |
SELECIONASI | Array | Permite desviar da tela de seleção de S.I. no processo. Também é possível executar validações diversas. |
PO_PesqSI_Sel | Array | Permite selecionar quais itens de uma determinada SI será apresentada na selação do PO |
PO400GRAVAPC_ITEM | Caracter | Permite gravar informações do item do pedido de compras na tabela SC7. Utilizar o array aItensPo. |
PO400GRAVAPC_CAPA | Caracter | Permite gravar informações da capa do pedido de compras na tabela SC7. Utilizar o array aCab. |
PO400ESTOR_VERIFICA_PAG_ANT | Caracter | Permite estorno do PO quando processo possui pagamento antecipado. Permite o controle se o sistema deve continuar a operação de estorno ou não através da variável lSair. |
VAL_GRAVA_PO | Caracter | Permite validação de informações permitindo gravar o registro ou não, através do preenchimento da variável lGravaPO como .T. ou .F. |
DEPOIS_GRAVA_INC_PO | Caracter | Foi disponibilizado o ponto de entrada "EICPO400" com o parâmetro "DEPOIS_GRAVA_INC_PO" permitindo a validação após inclusão do PO. Esta validação é efetuada através da consulta da variável 'lDepoisGrvIncPO'. |
DEPOIS_GRAVA_ALT_PO | Caracter | Permite validação após alteração do PO. |
VALIDA_COTACAO | Lógico | Permite validação e customização de informações da cotação de preços no PO, através do preenchimento da variavel lRetPE como .T. ou .F. |
APOS_GET_SI | Lógico | Permite validação após a gravação do processo no P.O. através da variável MControla como .T. ou .F. |
ANTES_ESTORNA | Caracter | Permite a customização após a seleção da opção de estorno no browse. |
DEPOIS_ALTERA_INC_PO | Lógico | Permite validar se o processo de alteração do PO foi confirmado ou cancelado. |
VALID | Caracter | Permite alterar a validação dos campos do PO. |
VALIDA | Caracter | Permite a validação da escolha da SI |
ALTERA_PO_POST | Caracter | Permite alterar o valor de um Produto dentro do PO vindo de um Embarque Parcial |
VALIDA_DATA_DDTEMBARQUE | Caracter | Permite implementar validação customizada para a data de embarque conforme seu valor antes da alteração na tela de alteração de datas no PO. |
VALIDA_DATA_DPARAEMBARQUE | Caracter | Permite implementar validação customizada para a data de embarque conforme seu valor após a alteração na tela de alteração de datas no PO. |
VALIDA_DATA_DDTENTREGA | Caracter | Permite implementar validação customizada para a data de entrega conforme seu valor antes da alteração na tela de alteração de datas no PO. |
VALIDA_DATA_DPARAENTREGA | Caracter | Permite implementar validação customizada para a data de entrega conforme seu valor após a alteração na tela de alteração de datas no PO. |
ANTES_ELIMINA | Caracter | Permite a validação do acesso da opção de menu "Elimina Resíduo" |
ANTESZERASLD | Caracter | Ponto de entrada executado após o usuário confirmar a operação de eliminação de saldo |
SLDZERADO | Caracter | Ponto de entrada executado após a confirmação de eliminação de saldo pelo sistema |
ANTES_SALVAR | Caracter | Permite a validação do item selecionado do pedido de exportação dentro do P.O. |
APPEND | Caracter | Permite implementar validação customizada para alterar valores contidos no item do pedido, através da tabela temporária "Work". |
PO400RAT_DESPESAS | Caracter | Permite alterar as despesas de frete e seguro no momento do rateamento, ao selecionar uma S.I para o cadastro de Purchase Order. A alteração pode ser feita através da tabela temporária "Work" (Veja a explicação sobre a "Work" na tabela de variáveis nesta página) |
INICIA_VARIAVEL_CONFERENCIA_FINAL | Caracter | Verifica a entrada na etapa de Conferencia Final |
APOS_MARCA_ITEM | Caracter | Verifica após clicar no botão conferencia, ou no botão confirmar na etapa da seleção de itens |
APOS_CONFERENCIAFINAL | Caracter | Verifica após clicar em sair ou confirmar a Conferencia Final do P.O. |
INCLUIR | Caracter | Permite alterar o processamento para que não passe pela função MATA120, consequentemente, não realizando a integração com o módulo de Compras, tratando as variáveis cMV_EASY como "N" e lExecAuto_Com como .F. |
ALTERAR | Caracter | Permite alterar o processamento para que não passe pela função MATA120, consequentemente, não realizando a integração com o módulo de Compras, tratando as variáveis cMV_EASY como "N" e lExecAuto_Com como .F. |
BROWSE_ESTORNO | Caracter | Permite alterar o processamento para que não passe pela função MATA120, consequentemente, não realizando a integração com o módulo de Compras, tratando as variáveis cMV_EASY como "N" e lExecAuto_Com como .F. |
HABILITA_CONFERENCIA_FINAL | Caracter | Permite habilitar novamente a tela de "Conferênfia Final" do Purchase Order, que foi retirada ao utilizar a nova tela de apresentação dos itens. |
04. VARIÁVEIS
Parâmetro | Nome | Tipo | Permite alterar | Descrição |
---|---|---|---|---|
AROTINA | aCores | Array | Sim | Permite adicionar legendas para no browse do Purchase Order. |
AROTINA | cFilBrw | Caracter | Sim | Permite adicionar filtros para no browse do Purchase Order. |
aCposSI | Array | Não | ||
Tb_Campos | Array | Não | ||
aSemSX3 | Array | Não | ||
TB_Campos_SI | Tb_Campos_temp | Array | Sim | |
SelecionaSI | lTelaSi | Lógico | Sim | |
PO_PesqSI_Sel | lLoop | Lógico | Sim | |
aItensPo | Array | Sim | Utilizar conforme exemplo: aAdd(aItensPo, {"C7_QUANT" , SW3->W3_QTDE, Nil}) | |
aCab | Array | Não | Utilizar conforme exemplo: aAdd(aCab, {"C7_CONTATO", SA2->A2_CONTATO, Nil}) | |
PO400ESTOR_VERIFICA_PAG_ANT | lTrataPGAntecipado | Lógico | Sim | |
lSair | Lógico | Sim | Se retornar .T. o sistema aborta a operação de estorno, se retornar .F. o sistema continua com a operação de estorno. | |
VALIDA_COTACAO | lRetPE | Lógico | Sim | |
DEPOIS_ALTERA_INC_PO | lDepoisAltIncPO | Lógico | Sim | Variável que recebe o valor da confirmação da tela de alteração. |
DEPOIS_GRAVA_INC_PO | lDepoisGrvIncPO | Lógico | Sim | Variável que recebe o valor da gravação do processo. |
cFlag | Caracter | Sim | Variável que recebe o campo a ser validado. | |
ALTERA_PO_POST | lAltPOPost | Lógico | Sim | Variável onde controle se é possível alterar o valor de um Produto dentro do PO vindo de um Embarque Parcial |
dDtEmbarque | Caracter | Sim | Variável onde se obtêm a data de embarque antes da edição na tela, para que seja validada. | |
dDtEntrega | Carcater | Sim | Variável onde se obtêm a data de entrega antes da edição na tela, para que seja validada. | |
dParaEmbarque | Caracter | Sim | Variável onde se obtêm a data de embarque após a edição na tela, para que seja validada. | |
dParaEntrega | Caracter | Sim | Variável onde se obtêm a data de entrega após a edição na tela, para que seja validada. | |
ANTES_ELIMINA | lEliminaS | Lógico | Sim | Variável para a validação do acesso da rotina de eliminação de resíduo no menu do P.O. |
ANTESZERASLD | lSair | Lógico | Sim | Variável para validar a execução da eliminação de saldo. Caso seja atribuído .T.(true) aborta a execução e .F.(falso) permite a eliminação de saldo. |
lPE | Lógico | Sim | Variável para a validação do item selecionado dentro do P.O. | |
Work | Arquivo de trabalho temporário | Sim | O arquivo de trabalho "Work" permite alterar o frete, seguro e outras despesas no momento do rateio do frete e seguro dos itens na rotina de Purchase Order. Os seguintes campos são disponibilizados para a alteração: Work->WKFRETE : Frete | |
TSi_Num | Caracter | Não | Variável disponível no ponto de entrada com o parâmetro 'VALIDA' que possibilita saber o número da Solicitação de Importação no momento da validação. | |
VALIDA | lRetPeSi | Lógico | Sim | Retorno Lógico do ponto de entrada com o parâmetro 'VALIDA' para impedir(Return false) ou não(Return true) a seleção da Solicitação de Importação. |
nOpcAux | Numérico | Não | Variável numérica responsável pela ação selecionada no processo(3=Inclui e 4=Altera) | |
nOpcPonto | Numérico | Não | Variável numérica responsável pela operação selecionada no processo.(1=Salvar) | |
lAlcada | Lógico | Sim | Variável que define se o controle de alçadas está habilitado. | |
cMV_EASY | Caractere | Sim | Variável que armazena o parametro MV_EASY. | |
lExecAuto_Com | Lógico | Sim | Variável que define se irá gerar o pedido de compras (SIGACOM), tratamento em conjunto com a varíavel cMV_EASY | |
HABILITA_CONFERENCIA_FINAL | lConfFinal | Lógico | Sim | Variável que define se a tela de Conferência Final será exibida ou não. .F. - Não Exibe (valor padrão) / .T. - Exibe; |
04. VARIÁVEIS
Parâmetro | Nome | Tipo | Permite alterar | Descrição
---|
05. TABELAS UTILIZADAS
- Não há.