Árvore de páginas

01. DADOS GERAIS

Produto:

TOTVS Backoffice

Linha de Produto:

Linha Protheus

Segmento:

Serviços

Módulo:

TOTVS Backoffice (Linha Protheus) - Planejamento e Controle Orçamentário (SIGAPCO)

Função:PCOXINT
País:Brasil
Ticket:Interno
Requisito/Story/IssueDSERCTR1-46748

02. DESCRIÇÃO

O ponto de entrada PCOVLBLQ permite que o cliente defina e aplique uma regra de validação personalizada para os pontos de bloqueio no controle orçamentário. Ele oferece flexibilidade ao usuário para incluir validações específicas durante o processo de controle, garantindo que os bloqueios sejam aplicados conforme critérios próprios do negócio.

Com o PCOVLBLQ, o cliente tem o controle total sobre as regras de validação utilizadas, possibilitando ajustes que assegurem que os bloqueios orçamentários sejam efetuados de maneira consistente e adequada, respeitando as políticas internas de planejamento e controle.

03. DEMAIS INFORMAÇÕES


Manipulação de PE no sistema
If ExistBlock("PCOVLBLQ")
	If !ExecBlock("PCOVLBLQ",.f.,.f.,{nMoedaCfg,nValReal,nValPrv,cChaveR,cProcesso,cItem,cPrograma,cChaveRD,aDataIniFim,aAuxFil,lUsaLote,aPcoBkpBlq})
		PcoIncr_QtBlq()
		lRet := .F.
		PcoFreeBlq(cProcesso,lUsaLote,  AKD->(Recno()), .T./*lRestaura*/, aPcoBkpBlq)
		Exit
	EndIf
EndIf	
Exemplo de PE
#INCLUDE "PROTHEUS.CH"

User Function PCOVLBLQ()

	Local nMoedaCfg 	:= ParamIXB[1] // Moeda 
	Local nValReal 		:= ParamIXB[2] // Valor "Realizado" 
	Local nValPrv 		:= ParamIXB[3] // Valor "Previsto" 
	Local cChaveR 		:= ParamIXB[4] // Chave da Pesquisa 
	Local cProcesso 	:= ParamIXB[5] // Código do Processo 
	Local cItem 		:= ParamIXB[6] // Item do Processo 
	Local cPrograma 	:= ParamIXB[7] // Nome do Programa 
	Local cChaveRD 		:= ParamIXB[8] // Descricao da Chave 
	Local aDataIniFim 	:= ParamIXB[9] // 1-Data Inicio;2-Data Fim 
	Local aAuxFil 		:= ParamIXB[10] // 1-Param Cfg Prv;2-Cfg Real 
	Local lUsaLote 		:= ParamIXB[11] // Indicador se utiliza lote 
	Local aPcoBkpBlq 	:= ParamIXB[12] // Array contendo Recnos AKD para caso de restaurar 
	Local lRet 			:= .T. 

	If Alltrim(cPrograma) == "FINA050" .And. cProcesso == "000002" .And. cItem = "01"   //Somente bloqueara este processo acima....efetuar tratamento para os demais existentes	
		lRet := .F.
	EndIf

Return(lRet)

Importante !!

  • Observa-se que a utilização do PE e os impactos dele no sistema são de responsabilidade do cliente.
  • Os exemplos utilizados nessa documentação são apenas para fins de demonstração, cada cliente deve verificar qual comportamento deseja realizar de acordo com o escopo do ponto de entrada.

04. ASSUNTOS RELACIONADOS

  • Não se aplica.