Árvore de páginas

Versões comparadas

Chave

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

Tempo aproximado para leitura: 00 min

01. DADOS GERAIS

Linha de Produto:Microsiga Protheus
Módulo:SIGAEST - Estoque & Custos
Função:Tratamento de filtro através de ponto de entrada utilizado em todas as querys da rotina,
Programa:MAT216 - Refaz saldo de terceiros
Sintaxe:
Composition Setup
import.css=/download/attachments/327912/newLayout.css

...

Ponto-de-Entrada: MT216FIL - Utilização de Filtro em tabelas diversas
Versões: Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Microsiga Protheus 10
Compatível Países: Todos
Sistemas Operacionais: Todos
Compatível às Bases de Dados: Todos
Idiomas: Espanhol , Inglês

...

Programa Fonte
MATA216.PRX

...

MT216FIL - Utilização de Filtro em tabelas diversas

...

Retorno
    aFiltro(vetor)
  • aFiltros[1] - Filtro adicional para a tabela SB2
    aFiltros[2] - Filtro adicional para a tabela SB6
    aFiltros[3] - Filtro adicional para a tabela SD1
    aFiltros[4] - Filtro adicional para a tabela SD2
    aFiltros[5] - Filtro adicional para a tabela SC
:

Nulo


02. SITUAÇÃO/REQUISITO

O ponto de entrada para permitir filtrar os registros utilizados nas tabelas SB2, SB6, SD1, SD2 e SC6. 

...

ATENÇÃO:  Este ponto de entrada precisa que seja informado os 5 itens do array respeitando a ordem das tabelas, vale ressaltar

...

também que todos os filtros utilizados nas tabelas filtradas tem que serem

...

compatíveis entre si, pois a passagem incorreta do filtro em qualquer uma das tabelas

...

poderá causar

...

divergência e até erros de gravação na tabela de saldos de terceiros ('SB6').

Composição do array de filtros:

                     aFiltros[1] := //-- Filtro adicional para a tabela SB2

                     aFiltros[2] := //-- Filtro adicional para a tabela SB6

                     aFiltros[3] := //-- Filtro adicional para a tabela SD1

                     aFiltros[4] := //-- Filtro adicional para a tabela SD2

                     aFiltros[5] := //-- Filtro adicional para a tabela SC6

...

Os filtros deste ponto de entrada deverão ser escritos em linguagem ADVPL, caso exista necessidade de realizar filtros utilizando procedure, seguir orientações do Item 04.

03. Exemplo pratico


logica Advpl, para realizar filtros em ambiente TopConnet os filtros deverão ser escritos na liguagem do banco de dados. Exemplos
Totvs custom tabs box
tabsExemplo
idsExemplo
//EXEMPLO EM BANCO DE DADOS SQL SERVER:
User Function MT216FIL()
Local aFiltro := {}

aAdd(aFiltro,
'
"B2_COD      = 'MP01           '
'
 ") //-- Filtro adicional na tabela 
SB2aAdd
SB2
aAdd(aFiltro,
'
"B6_PRODUTO  = 'MP01           '
'
 ") //-- Filtro adicional na tabela 
SB6aAdd
SB6
aAdd(aFiltro,
'
"D1_COD      = 'MP01           '
'
 ") //-- Filtro adicional na tabela 
SD1aAdd
SD1
aAdd(aFiltro,
'
"D2_COD      = 'MP01           '
'
 ") //-- Filtro adicional na tabela 
SD2aAdd
SD2
aAdd(aFiltro,
'
"C6_PRODUTO  = 'MP01           '
'
 ") //-- Filtro adicional na tabela 
SC6Return aFiltro
SC6

Return aFiltro

04. DEMAIS INFORMAÇÕES

Este ponto de entrada somente será executado SEM a procedure (015 - Refaz Poder de Terceiros) instalada. Caso necessite realizar filtros com a procedure instalada, deverá realizar alterações diretamente na procedure.