01. DADOS GERAIS
| Produto: | TOTVS Jurídico Departamentos 



|
|---|
| Linha de Produto: | Linha Protheus  |
|---|
| Segmento: | Jurídico  |
|---|
| Módulo: | Departamentos - Departamentos (SIGAJURI) |
|---|
| Função: | WSJurConsultas - WebService de consultas do jurídico |
|---|
| Ticket: |
|
|---|
| Requisito/Story/Issue (informe o requisito relacionado) : | DJURDEP-14018 |
|---|
02. SITUAÇÃO/REQUISITO
Necessário implementar a execução de filtros com base nos dados do formulário que o usuário manipular. Para isso devemos enviar o filtro com os dados que estão sendo manipulados dentro do Formulário, sem ter que salvar os dados.
Outro detalhe é que também será importante executar os filtros na JURSXB considerando outras entidades, como no caso da Garantia e da Despesa.
03. SOLUÇÃO
Implementado o filtro de informações da JURSXB com dados do formulário preenchido pelo usuário. Atualmente para Garantias e Despesas apenas.
Não é necessário salvar as informações para realizar os filtros nos campos de consulta do Totvs Jurídico Departamentos.
Para utilizar os filtros basta seguir os exemplos abaixo e adequar conforme a necessidade.
- Consulta da JURSXB - Consulta padrão
- Nessa etapa estaremos criando a consulta que o campo customizado executará.
- Esse filtro está disponível apenas para funções compiladas, incluindo customizações.
- Para isso é necessário passar como parâmetro da função o oJson, esse será o parâmetro que armazenará os dados do formulário no Totvs Jurídico Departamentos. Importante: Sem a passagem do parâmetro, a função não terá acesso aos dados do formulário.
- Exemplo de consulta JURSXB considerando o filtro de campos:

- Observações:
- Esse filtro está disponível apenas para campos customizados nas telas de Garantias e Despesa.
- Após criar / editar a consulta padrão, é necessário vincular ao campo que executará a consulta.
- Função com filtro de campos
- Nessa etapa estaremos tratando do filtro que será executado ao consultar o campo customizado.
- Seguindo a mesma regra da etapa anterior, precisamos criar a função com um parâmetro oJson, o mesmo que receberá os campos e seus valores.
- A partir disso o usuário pode criar a condição SQL desejada, utilizando ou não os campos do formulário.
- Importante: O retorno dessa função deve ser uma condição SQL, sem a necessidade do AND no início
Exemplo de função e retorno, considerando o filtro de campos:
USER FUNCTION JQRYF301(oJson)
Local cQuery := ""
Default oJson := Nil
If !Empty(oJson["NT3_XCARAC"])
cQuery := "B1_DESC like '%" + UPPER(oJson["NT3_XCARAC"]) + "%'"
EndIf
Return cQuery |
Observações:
- A função deve ser a mesma que foi inserida na consulta, na etapa anterior.
- A função deve retornar uma condição SQL sem o AND no início
- Para filtrar pelos valores do formulário, utilizamos o parâmetro oJson[<nome_do_campo>], como no exemplo onde está sendo filtrado pelo campo customizado NT3_XCARAC.
- Essa função deve estar compilada.
- Exemplo de uso:
- Ao acessar a tela de despesa, nenhum dado foi preenchido, assim o campo de consulta todos os valores. Importante: Por padrão é filtrado os registros não deletados e que estejam na filial correspondente ao do usuário.

- Ao digitar no campo de caractere (NT3_XCARAC), onde foi digitado a palavra "requeijao" e ao consultar novamente é retornado os produtos que contenham "REQUEIJAO" em sua descrição
04. DEMAIS INFORMAÇÕES
JUR0093_Campos adicionais no TOTVS Jurídico Departamentos
05. ASSUNTOS RELACIONADOS
