Home

Linha Microsiga Protheus

Páginas filhas
  • PLSAUDFI - Filtro de perguntas personalizado

Descrição

Retorna um Filtro de Pergunta personalizado.Chamada: No menu Ações Relacionadas da Rotina Auditoria por Guia(PLSA790V) botão Personalizar.

Observações

 

Exemplos

#INCLUDE "RWMAKE.CH"

/*/ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±Ú
ÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿±±±±±³
Funcao ³PLSAUDFI ³ Autor ³ Totvs ³ Data ³ 07/03/11 ³±±±±±Ã
ÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄ´±±±±±
³Descricao ³ Abre o pergunte e retorna filtro conforme selecao ³±±±±±
ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß/*/
User Function PLSAUDFI()
LOCAL aMatFil := {}
LOCAL cTpGui := ""
LOCAL cTpAdm := ""
LOCAL nPos := 0
LOCAL cExpre := ""
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Inicia pergunta
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Pergunte("PLS790PERS",.T.,"Parametrização",.T.,,.T.)
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Operadora
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR01)
cExpre := "B53_CODOPE = '" + MV_PAR01 + "'"
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil,{"Operadora","B53",cExpre} )
Endif
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Empresa
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR02)
cExpre := "SubStr(B53_MATUSU,5,4) = '" + MV_PAR02 + "'"
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Empresa","B53",cExpre} )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Data Movimento De Ate
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR03) .And. !Empty(MV_PAR04)
cExpre := "B53_DATMOV >= '" + DtoS(MV_PAR03) + "' .AND. B53_DATMOV <= '" + DtoS(MV_PAR04) + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Movimentação De/Ate","B53",cExpre} )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Tipo de Glosa
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR05 > 1
cExpre := "'"+cValToChar( MV_PAR05-2 )+ "' $ B53_PERAUD "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Tipo de Glosa","B53",cExpre} )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Guias sem Analise
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR06 > 1
cExpre := Iif(MV_PAR06 == 3,"B53_SITUAC = '0' ","B53_SITUAC <> '0' ")
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Guias sem Analise","B53",cExpre } )
Endif
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Guia sendo analisada por min
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR07 > 1
cExpre := Iif(MV_PAR07 == 3,"B53_OPERAD = '" + RETCODUSR() + "' ","B53_OPERAD <> '" + RETCODUSR() + "' ")
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Guias Reservada por min!","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Departamento
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR08)
cExpre := "B53_CODDEP = '" + MV_PAR08 + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Departamento","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Tipo de Atendimento
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR09 > 1
cExpre := Iif(MV_PAR09 == 3,"B53_TIPO = '5' ","B53_TIPO <> '5' ")
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Tipo de Atendimento","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Tipo da Guia
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR10 > 1
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Guia Odonto esta na quarta posicao e a selecao no pergunte so vai ate o 3
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
cTpGui := Iif( MV_PAR10<>3,cValToChar( MV_PAR10-1 ),cValToChar(MV_PAR10) )
cExpre := "B53_ORIMOV = '" + cTpGui + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Tipo da Guia","B53", cExpre} )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Já Autorizada
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR11 > 1
cExpre := "B53_SITUAC = '" + cValToChar( MV_PAR11-2 ) + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Já Autorizada","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Prioridade
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR12 > 1
cExpre := "B53_PRIORI = '" + cValToChar( MV_PAR12-2 ) + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Prioridade","B53",cExpre} )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Numero da Autorização
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR13)
cExpre := "B53_NUMGUI = '" + MV_PAR13 + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Numero Autorização","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Beneficiário
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR14)
cExpre := "B53_MATUSU = '" + MV_PAR14 + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Beneficiário","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Rede de Atendimento
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR15)
cExpre := "B53_CODRDA = '" + MV_PAR15 + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Rede de Atendimento","B53",cExpre} )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Solicitante
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR16)
AaDd(aMatFil, {"Solicitante","BD6","BD6_CDPFSO = '" + MV_PAR16 + "' " } )
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Procedimento
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR17) .And. !Empty(MV_PAR18)
AaDd(aMatFil, {"Procedimento","BD6","BD6_CODPAD = '" + MV_PAR17 + "' AND BD6_CODPRO = '" + MV_PAR18 + "'" } )
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Regime Internação
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR19 > 1
cExpre := "B53_ORIMOV = '2' .AND. B53_REGINT = '" + cValToChar( MV_PAR19-2 ) + "'"
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Regime Internação","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Condição de Atendimento
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR20 > 1
cTpAdm := Iif(MV_PAR20==2,'E','U')
cExpre := "B53_CARINT = '" + cTpAdm + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Condição de Atendimento","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Data Agendamento
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR21)
cExpre := "B70_DATAGE = '" + DtoS(MV_PAR21) + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B70" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Dt. Agendamento","B70",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Realização. Confirmada
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR22 > 1
cExpre := "B70_RELCON = '" + cValToChar( MV_PAR22-2 ) + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B70" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Real. Confirmada","B70",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Demanda
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR23 > 1
cExpre := "B53_DEMAND = '" + cValToChar( MV_PAR23-2 ) + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B53" }) ) > 0
aMatFil[nPos,3] += " .AND. " + cExpre
Else
AaDd(aMatFil, {"Demanda","B53",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Tipo de Processo
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR24)
cExpre := "B68_TPPROC = '" + MV_PAR24 + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B68" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Tipo de Processo","B68",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Segmento
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR25)
cExpre := "B71_SEGMEN = '" + MV_PAR25 + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B71" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Segmento","B71",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Inconsistência
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR26 > 1
cExpre := Iif( MV_PAR26==3 ,"B72_INCONS = '1' ","B72_INCONS <> '1' " )
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B72" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Inconsistência","B72",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Tipo de Inconsistência
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If !Empty(MV_PAR27)
cExpre := "B72_TPINCO = '" + MV_PAR27 + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B72" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Tipo de Inconsistência","B72",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Tipo de Parecer
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR28 > 1
cExpre := "B72_TPPARE = '" + cValToChar( MV_PAR28-2 ) + "' "
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B72" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Tipo de Parecer","B72",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Guias que analisei
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR29 > 1
cExpre := Iif(MV_PAR29 == 3,"B72_OPERAD = '" + RETCODUSR() + "' ","B72_OPERAD <> '" + RETCODUSR() + "' ")
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B72" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Guias que Analisei","B72",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Guias pendente de interna-saude
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If MV_PAR30 > 1
cExpre := Iif(MV_PAR30 == 3,"B72_TPPARE = '0' ","B72_TPPARE <> '0' ")
If ( nPos := AsCan(aMatFil,{|x| x[2] == "B72" }) ) > 0
aMatFil[nPos,3] += " AND " + cExpre
Else
AaDd(aMatFil, {"Em Andamento na Interna-Saúde","B72",cExpre } )
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Ajusta filtro
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
aMatFil := aSort(aMatFil,,,{|x,y| x[2] < y[2] } )
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
//³ Fim da Rotina
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Return(aMatFil)

Preview

Veja também

 

Idioma

Português(Brasil)

Versões

Microsiga_Protheus11

Sistemas Operacionais Suportados

Todos

Compatível com as Bases de Dados

TOTVSDBAccess

Updates

 

Parâmetros

Array of Record

Retorno

aMatFil(array_of_record)
Array dados Filtro.Ex{Nome Filtro, Tabela, Expressao Filtro}

Eventos de chamada do Ponto de Entrada

 

Variáveis

Array of Record

Programa Fonte

 
  • Sem rótulos