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 Pedido de Exportação (EECAP101). Ele deve ser utilizado para customizar a rotina de Pedido de Exportação.
Programa Fonte: EECAP101.PRW
Retorno: Verdadeiro (.T.) ou Falso (.F.).
02. EXEMPLO DE UTILIZAÇÃO
...
Descrição
...
Observações
...
Exemplos
...
User Function
EECAP101()
Local cParam := If(Type("ParamIxb") = "A",ParamIxb[1],If(Type("ParamIxb") = "C",ParamIxb,""))
Local nRecNoEET
If cParam == "NOT_DIALOG"
...
MsgInfo("Entrou no ponto de entrada 'NOT_DIALOG. Variavel 'nOpcPE' = " + cValToChar(nOpcPE))
EndIf
If cParam == "TROCA_FILIAL_NOTA"
cFilFatNf := EE9->EE9_MSFIL
MSGINFO("Entrou no ponto de entrada 'TROCA_FILIAL_NOTA'")
Endif
IF cParam == "TROCA_PERCOM_VLCOM"
MSGINFO("Entrou no ponto de entrada 'TROCA_PERCOM_VLCOM'")
Endif
If cParam == "COMIS_TOT"
/*Exemplo de uso do ponto de entrada para alterar o campo de valor a ser considerado na apuração da comissão*/
cAlias1:= ParamIXB[2]
cAlias2:= ParamIXB[3]
//Informe o novo campo a ser usado na apuração do comissão. O campo abaixo é apenas um exemplo.
cFobItem:= cAlias2 + "->" + cAlias1 + "_PRECO"
//este bloco deve ser retirado
MsgInfo("Campo: " + cFobItem)
EndIf
If cParam == "VALID_AG_COM"
/*
Inclusão do agente/ comissão
*/
MsgInfo("Ponto de entrada com o parâmetro VALID_AG_COM", "VALID_AG_COM")
If nTipoDet == 4
//aborta a inclusão
Return .F.
EndIf
EndIf
If cParam == "PE_GRV_EET"
MsgInfo("Ponto de Entrada EECAP101, parâmetro PE_GRV_EET", "PE_GRV_EET")
nRecNoEET:= ParamIxb[2] //RecNo da tabela EET registrado na tabela temporária WorkDe. Quando for 0, é uma nova despesa (inclusão); quando for diferente de 0, é uma atualização de despesa (alteração)
If nRecNoEET == 0
//Customização na inclusão de uma despesa
EndIf
EndIf
If cParam == "FIM_BROWSE_AG"
//variável que indica se o cliente clicou em confirmar ou cancelar
If lOk
MsgInfo("Confirmou a gravação do agente de comissão", "FIM_BROWSE_AG")
Else
MsgInfo("Cancelou a gravação do agente de comissão", "FIM_BROWSE_AG")
EndIf
EndIf
If cParam == "ALT_TITULO_FIN"
MsgInfo("Entrou no ponto de entrada 'ALT_TITULO_FIN'.")
EndIf
Return Nil
If VALTYPE(PARAMIXB) == "C" .And. PARAMIXB == "CALC_EMB_MULTIPLA"
//Verifica a empresa onde poderá ser executada a rotina
If Alltrim(cEmpAnt) == "99"
//Apura o peso da quantidade de embalagens internas já calculada pelo sistema para o item
nQtdEmb := nQtdeEmbInt
nPesEmb := nQtdEmb * EE5->EE5_PESO
//Ordenação da tabela de relação de embalagens
EEK->(DbSetOrder(1))
//Faz o Loop na relação de embalagens
If EEK->(DbSeek(xFilial("EEK")+"E"+cEmbalagem))
Do While EEK->(!Eof()) .And. EEK->EEK_FILIAL == xFilial("EEK") .And.;
EEK->EEK_TIPO == "E" .And.;
EEK->EEK_CODIGO == cEmbalagem
//Posiciona o cadastro de embalagens pela embalagem superior
If EE5->(DbSeek(xFilial("EE5")+EEK->EEK_EMB))
//Calcula o percentual de utilização da embalagem interna na embalagem superior
nQtdEmb := nQtdEmb / EEK->EEK_QTDE
//Atualiza o peso do relacionamento item + embalagens da relação
nPesEmb += (EE5->EE5_PESO * nQtdEmb)
//Atualiza a embalagem para buscar a próxima na relação
cEmbalagem := EEK->EEK_EMB
EndIf
EEK->(DbSkip())
EndDo
EndIf
EndIf
EndIf
Return
Para acessar este parâmetro (CALC_EMB_MULTIPLA) é necessário que os seguintes parâmetros/campos estejam informados com os valores a seguir:
PARAMETROS:
MV_AVG0009 ( Digitação de peso bruto total por item )
- Parametrizar .F.
MV_AVG0063 ( Calculo do Pes.Bruto Total (do item) Qtde*Peso Br.Unit )
- Parametrizar .F.
CAMPOS:
SB1->B1_REPOSIC
- Se existir o campo, informar com o valor "2=Não"
EE7_BRUEMB (Pedido) ou EEC_BRUEMB(Embarque)
- Se existir este campo, verificar se no Pedido este campo se inicia com valor "1-sim". Se não inicializar desta forma, alterar no módulo configurador este campo para que inicialize com o valor “1”
03. PARÂMETROS
Preview
Veja também
Idioma
Português(Brasil)
Versões
Microsiga_Protheus11
Sistemas Operacionais Suportados
Todos
Compatível com as Bases de Dados
Todas
Updates
Parâmetros
Nome
Tipo
Nome | Tipo | Descrição |
---|
NOT_DIALOG | Caracter | Variável que permite a customização da tela de Notifys. |
TROCA_FILIAL_NOTA | Caracter | Ponto de entrada responsável pela troca de filial para geração de nota |
TROCA_PERCOM_VLCOM | Caracter | Ponto de entrada para troca do valor da comissão do agente salva na work WorkIp ou WorkIt |
COMIS_TOT | Caracter | Ponto de entrada permite alterar o campo que será usado no calculo da comissão do agente. Através desse ponto de entrada, podem ser acessadas as tabelas "EE8/WorkIt(Fase Pedido Exportação)" ou "EE9/WorkIp(Fase Embarque)". Os nomes das tabelas serão passados nas posições 2 e 3 do ParamIxb. |
VALID_AG_COM | Caracter | Executado na validação da inclusão do agente e da comissão, permite implementar validações adicionais. Quando o retorno deste ponto for .F. (false), a inclusão da comissão do agente será interrompida. Estará disponível a variável nTipoDet, que indicará as ações executadas pelo usuário, a saber: 3: Visualização 4: Inclusão 5: Alteração 6: Exclusão |
{"PE_GRV_EET", WorkDe->EET_RECNO} | Array | Executado no looping da tabela temporária WorkDe, no momento da atualização dos dados na tabela de despesas nacionais (EET), permite customizar as gravações dos dados. A primeira posição do array, PE_GRV_EET, indica o momento em que o ponto de entrada é executado. A segunda posição do array é o RecNo do registro na tabela EET. Quando for 0, indicará que a despesa está sendo incluída e quando diferente de 0, indicará que é uma alteração de uma despesa existente. Estarão disponíveis neste momento dados das despesas nacionais nas tabelas WorkDe e EET. Este ponto é executado antes da realização da integração com o módulo SIGAFIN, para geração do título a pagar da despesa. |
FIM_BROWSE_AG | Caracter | Executado após a confirmação ou cancelamento da tela do agente de comissão - tela principal que lista todos os agentes de comissão. Para identificar se o usuário confirmou ou cancelou a gravação da tela, deve ser verificada a variável lOk. |
PE_SETMBROWSE | Caracter | Permite personalizar a exibição da mBrowse. |
ALT_TITULO_FIN | Permite alterar títulos gerados nas comissões de agente. | |
CALC_EMB_MULTIPLA | Alteração do cálculo do peso total das embalagens relacionadas ao item do Pedido de Exportação |
04. VARIÁVEIS
Parâmetro | Nome | Tipo | Permite alterar | Descrição |
---|---|---|---|---|
NOT_DIALOG | nOpcPE | Numérico | Não |
Retorno
Eventos de chamada do Ponto de Entrada
Variáveis
Através desta variável, é possivel identificar a operação utilizada no processo. | ||||
TROCA_FILIAL_NOTA | cFilFatNf | Caracter | Sim | Váriavel que permite a troca de filial pelo ponto de entrada. |
VALID_AG_COM | nTipoDet | Numérico | Sim | Indica a ação executada pelo usuário: 3: Visualização; 4: Inclusão; 5: Alteração; 6: Exclusão. |
FIM_BROWSE_AG | lOK | Lógico | Não | Indica se o usuário confirmou ou cancelo a operação realizada na tela de agentes. |
Programa Fonte
PE_SETMBROWSE | uExpTopFil | Caracter | Não | Variável para personalizar a exibição da MBrowse |
CALC_EMB_MULTIPLA | nQtdEmb | Numérico | Sim | Quantidade de embalagem mais externa do item atual calculada pelo sistema |
CALC_EMB_MULTIPLA | nQtdeEmbInt | Numérico | Sim | Quantidade de embalagem mais interna do item atual calculada pelo sistema |
CALC_EMB_MULTIPLA | nPesEmb | Numérico | Sim | Peso bruto do item atual apurado do relacionamento de embalagens conforme cálculo padrão do sistema |
CALC_EMB_MULTIPLA | cEmbalagem | Caracter | Sim | Código da Embalagem mais interna relacionada ao item atual |
PE_SETMBROWSE | lSair | Lógico | Sim | Permite finalizar o Browse antes de ser carregado para inserir um novo por customização. |
PE_SETMBROWSE | aFixe | Array | Sim | Permite alinhar as colunas do mBrowse |
PE_SETMBROWSE | nClickDef | Numérico | Sim | Permite habilitar o modo alteração no duplo click |
05. TABELAS UTILIZADAS
- Não há
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>
|