Nesse documento vamos explicar como criar filtros para o Banco de Conhecimento. No exemplo a seguir vamos filtrar para que o usuário tenha acesso apenas aos conhecimentos adicionados por ele. Para esse exemplo criamos o campo ACB_CODUSR com a propriedade de VISUALIZAR e no inicializador padrão, usamos a função PSWID() para gravar o código do usuário que efetuou a inclusão do conhecimento.
Para filtrar o browse da rotina de banco de conhecimento (FATA340/MPDOCTAB) utilizamos o ponto de entrada MPFILBRW conforme exemplo abaixo.
#INCLUDE "PROTHEUS.CH" User Function MPFILBRW() Local cQuery as CHARACTER cQuery:= 'ACB_CODUSR = __cUserId' return cQuery |
|
Para filtrar o GRID da opção de vinculo do banco de conhecimento existente nas "Outras Ações" das rotinas utilizamos o ponto de entrada MSDOCFIL, conforme exemplo abaixo.
User Function MSDOCFIL()
Local aArea := GetArea()
Local lRet := .F.
Local nRecno := PARAMIXB[1]
AC9->(dbGoTo(nRecno))
DbSelectArea("ACB")
dbSetOrder(1)
DBSEEK(xFilial("ACB") + AC9->AC9_CODOBJ)
If ACB_CODUSR = __cUserId
lRet := .T.
Endif
RestArea(aArea)
Return(lRet)
|
Para filtrar a consulta padrão chamada no GRID da opção de vinculo do banco de conhecimento existente nas "Outras Ações" das rotinas, deve-se efetuar os passos abaixo:
|