Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

  1. Visão Geral
  2. Parâmetros
  3. Exemplo de Utilização
  4. Opção na rotina
    1. Outras Ações / PE

01. VISÃO GERAL

Esse documento visá visa demostrar um exemplo do ponto de entrada CT105LOK que permite a adição de novas validações ao Lançamento Contábil.


Informações
titleAtenção

Não é aconselhável modificar campos da tabela CT2 (Lançamentos contábeis) para

obrigatório pois irá ter efeitos indesejáveis quanto a contabilização. 

obrigatório pois os campos são alimentados via lançamento padrão quando originados da contabilização de outros módulos ou por importação de arquivo texto e poderá ficar a base inconsistente de acordo com o dicionário.

Quando necessário deixar algum campo como obrigatório favor utilizar com ponto de entrada CT105LOK.

Os impactos causados pela utilização do ponto de entrada são de responsabilidade do cliente que o utiliza.

02. PARÂMETROS


Parâmetro

Tipo

Descrição

Obrigatório

PARAMIXB[1]ArrayOpçãoNão 
PARAMIXB[2]ArrayData do LançamentoNão

...

Bloco de código
languagegroovy
themeDJango
titleExemplo mais complexo de PE validando campos sem X3 OBRIGATORIO
collapsetrue
#INCLUDE "FONT.CH"
#INCLUDE "PROTHEUS.CH"


User Function CT105LOK()

Local aCpoOrig := {"CT2_ORIGEM","CT2_VLR02"} //Colocar os campos desejaveis a serem obrigatórios
Local nx:=0
Local lRet:=.T.

    For nX := 1 TO len(aCpoOrig)
        If Empty(&("TMP->"+aCpoOrig[nx])) .and. TMP->CT2_DC !='4'
            SX3->(dbSetOrder(2))
            SX3->(MsSeek(aCpoOrig[nx]))
            SX2->(dbSetOrder(1))
            SX2->(MsSeek(SX3->X3_ARQUIVO))
            HELP(" ",1,"OBRIGAT2",,aCpoOrig[nx]+CRLF+ "Campo:" +" "+ X3DESCRIC()+ CRLF +"Linha :" + TMP->CT2_LINHA,3,1) //"Campo: "###"Linha: "
            lRet:=.F.
            Exit
        Endif
    Next
Return lRet



Informações
titleObservação

O ponto de entrada retorna a variável lRet informando se pode prosseguir ou se há inconsistência que precisa ser corrigida.



Bloco de código
languagegroovy
themeDJango
titleEvento de chamada do Ponto de Entrada
collapsetrue
	If lRet
		If ExistBlock("CT060BUT")
	aCT060BUTlCt105LOK
			lRet  := ExecBlock("CT060BUTCT105LOK",.F.,.F.,aRotina)
	
	IF ValType(aCT060BUT) == "A" .AND. Len(aCT060BUT) > 0
		For nX := 1 to len(aCT060BUT)
			aAdd(aRotina,aCT060BUT[nX])
		Next
	ENDIF
Endif

04. OPÇÃO NA ROTINA

Aparecerão todas as opções desejáveis a serem adicionadas na aba de Outras Ações:

Outras Ações / PE

...

 {OPCAO , dDataLanc} )
         If !lRet .And. lEfetiva
				Aadd(aErro,18)
			EndIf
		Endif
	EndIf

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>