Advertisement
Guest User

Untitled

a guest
Jan 10th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- QUERY 1 QUE ESTA DEMORANDO
  2. -- HAVIAM 6 QUERYS IGUAIS A ESSA RODANDO
  3. -- ==========================================================================================
  4. -- Author:      Erik Douglas
  5. -- Create date: 2014-09-11
  6. -- Description: Registros detalhados retornando somente o ultimo status do operador detalhado
  7. -- ==========================================================================================
  8. CREATE PROCEDURE [mbi].[spRelatorio_RegistrosDetalhadosPendentesPorAssunto_INEP]
  9. @DE_ORGAO varchar(128), @NU_NIVEL int, @DE_STATUS varchar(1024), @DT_DATA_INICIO date, @DT_DATA_FIM date, @NU_PROTOCOLO int = 0, @ST_PENDENTES tinyint = 0, @DE_PARA varchar(16) = null, @DE_GRUPO int, @DE_ASSUNTO varchar(2000)
  10. WITH EXEC AS CALLER
  11. AS
  12. BEGIN
  13.         SET NOCOUNT ON
  14.         IF @DE_PARA IS NULL
  15.             BEGIN
  16.                 SELECT
  17.                     [TB017].[ID_NOTIFICACAO_SOLICITACAO]  AS [NU_PROTOCOLO]
  18.                     ,(
  19.                         CASE
  20.                             WHEN EXISTS
  21.                                 (
  22.                                     SELECT
  23.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  24.                                     FROM
  25.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS]  AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  26.                                     WHERE
  27.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  28.                                         AND
  29.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  30.                                 )
  31.                             THEN
  32.                             (
  33.                                 SELECT
  34.                                     TOP 1
  35.                                     [TB041_ORGAO_ATUAL].[DE_SIGLA_ORGAO]
  36.                                 FROM
  37.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  38.                                     INNER JOIN
  39.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  40.                                         ON
  41.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  42.                                     WHERE
  43.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  44.                                         AND
  45.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  46.                                     ORDER BY
  47.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  48.                             )
  49.                             ELSE
  50.                                 CASE
  51.                                     WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  52.                                         [TB041_B].[DE_SIGLA_ORGAO]
  53.                                     ELSE
  54.                                         [TB041_A].[DE_SIGLA_ORGAO]
  55.                                     END
  56.                             END
  57.                     ) AS [DE_ORGAO_SIGLA]
  58.                     ,(
  59.                         CASE
  60.                             WHEN EXISTS
  61.                                 (
  62.                                     SELECT
  63.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  64.                                     FROM
  65.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  66.                                     WHERE
  67.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  68.                                         AND
  69.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  70.                                 )
  71.                             THEN
  72.                             (
  73.                                 SELECT
  74.                                     TOP 1
  75.                                     [dbo].[fnNormalizaOrgaoNivel]([TB041_ORGAO_ATUAL].[NU_NIVEL], DEFAULT)
  76.                                 FROM
  77.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  78.                                     INNER JOIN
  79.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  80.                                         ON
  81.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  82.                                     WHERE
  83.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  84.                                         AND
  85.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  86.                                     ORDER BY
  87.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  88.                             )
  89.                             ELSE
  90.                                 CASE
  91.                                     WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  92.                                         [dbo].[fnNormalizaOrgaoNivel]([TB041_B].[NU_NIVEL], DEFAULT)
  93.                                     ELSE
  94.                                         [dbo].[fnNormalizaOrgaoNivel]([TB041_A].[NU_NIVEL], DEFAULT)
  95.                                     END
  96.                             END
  97.                     ) AS [NU_ORGAO_NIVEL]
  98.                     ,(
  99.                         CASE
  100.                             WHEN EXISTS
  101.                                 (
  102.                                     SELECT
  103.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  104.                                     FROM
  105.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  106.                                     WHERE
  107.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  108.                                         AND
  109.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  110.                                 )
  111.                             THEN
  112.                             (
  113.                                 SELECT
  114.                                     TOP 1
  115.                                     [TB041_ORGAO_ATUAL].[DE_ORGAO]
  116.                                 FROM
  117.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  118.                                     INNER JOIN
  119.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  120.                                         ON
  121.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  122.                                     WHERE
  123.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  124.                                         AND
  125.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  126.                                     ORDER BY
  127.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  128.                             )
  129.                             ELSE
  130.                                 CASE
  131.                                     WHEN [TB041_B].[DE_ORGAO] IS NOT NULL THEN
  132.                                         [TB041_B].[DE_ORGAO]
  133.                                     ELSE
  134.                                         [TB041_A].[DE_ORGAO]
  135.                                     END
  136.                             END
  137.                     ) AS [DE_ORGAO]
  138.                     ,[dbo].[fnNormalizaTexto](UPPER([TB009].[DE_PESSOA]),'') AS [DE_SOLICITANTE]
  139.                     ,[dbo].[fnNormalizaTexto](
  140.                         [dbo].[fnNormalizaCPF]([TB009].[DE_CPF])
  141.                     , '') AS [DE_SOLICITANTE_CPF]
  142.                     ,[dbo].[fnNormalizaTexto](UPPER([TB009].[DE_CIDADE]), '') AS [DE_SOLICITANTE_CIDADE]
  143.                     ,[dbo].[fnNormalizaTexto](UPPER([TB009].[DE_UF]),'') AS [DE_SOLICITANTE_UF]
  144.                     ,[dbo].[fnNormalizaTexto](
  145.                         [dbo].[fnRetornaPessoaTelefone]([TB009].[ID_PESSOA])
  146.                     ,'') AS [DE_SOLICITANTE_TELEFONE]
  147.                     ,[dbo].[fnNormalizaTexto]([dbo].[fnNormalizaDataHora]([TB017].[DT_CADASTRO]), '') AS [DT_ABERTURA]
  148. --                  ,(
  149. --                      CASE
  150. --                          WHEN [TB056_B].[ID_SECAO] IS NOT NULL THEN
  151. --                              [dbo].[fnRetornaSecaoArvore]([TB056_B].[ID_SECAO])
  152. --                          ELSE
  153. --                              [dbo].[fnRetornaSecaoArvore]([TB056_A].[ID_SECAO])
  154. --                          END
  155. --                  ) AS [DE_DADO_SOLICITACAO]
  156.           --MOSTRA O CAMINHO COMPLETO DA FORMA CORRETA
  157.                     ,(
  158.                         CASE
  159.                             WHEN [DTC001_B].[ID_SECAO] IS NOT NULL THEN
  160.                                 [DTC001_B].[DE_SECAO_ARVORE_COMPLETA] + ' -> ' + [TB057_B].[DE_DADO_SOLICITACAO] COLLATE DATABASE_DEFAULT
  161.                             ELSE
  162.                                 [DTC001_A].[DE_SECAO_ARVORE_COMPLETA] + ' -> ' + [TB057_A].[DE_DADO_SOLICITACAO] COLLATE DATABASE_DEFAULT
  163.                         END
  164.                     ) AS [DE_DADO_SOLICITACAO]
  165.                     ,dbo.fnDecodificaHTML( dbo.fnNormalizaHTML( dbo.fnDecodificaWord([TB017].[DE_NOTIFICACAO]))) AS [DE_DESCRICAO_SOLICITACAO]
  166.                     ,[dbo].[fnNormalizaTexto]([TB016].[DE_STATUS_NOTIFICACAO], 'RECEBIDO') AS [DE_STATUS_NOTIFICACAO]
  167.                     ,[dbo].[fnNormalizaTexto]([dbo].[fnNormalizaDataHora]([TH001].[DT_ALTERACAO]), '') AS [DT_ALTERACAO]
  168.                     ,[dbo].[fnNormalizaTexto](UPPER([TB005].[DE_USUARIO]), '') AS [DE_USUARIO]
  169.                     ,dbo.fnDecodificaHTML( dbo.fnNormalizaHTML( dbo.fnDecodificaWord([TH001].[DE_RESPOSTA]))) AS [DE_RESPOSTA]
  170.           ,[dbo].[fnNormalizaTexto](
  171.               [dbo].[fnNormalizaDataHora](
  172.                             CASE
  173.                                 WHEN [TB050_B].[ID_SLA] IS NOT NULL THEN
  174.                                     (CASE WHEN [TB050_B].[ST_TIPO_SLA] = 0 THEN
  175.                             DATEADD(day,TB050_B.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  176.                           WHEN TB050_B.ST_TIPO_SLA = 1 THEN
  177.                             DATEADD(week,TB050_B.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  178.                           WHEN TB050_B.ST_TIPO_SLA = 2 THEN
  179.                             DATEADD(month,TB050_B.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  180.                           WHEN TB050_B.ST_TIPO_SLA = 3 THEN
  181.                             DATEADD(hour,TB050_B.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  182.                      END)
  183.                                 ELSE
  184.                                     (CASE WHEN [TB050_A].[ST_TIPO_SLA] = 0 THEN
  185.                             DATEADD(day,TB050_A.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  186.                           WHEN TB050_A.ST_TIPO_SLA = 1 THEN
  187.                             DATEADD(week,TB050_A.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  188.                           WHEN TB050_A.ST_TIPO_SLA = 2 THEN
  189.                             DATEADD(month,TB050_A.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  190.                           WHEN TB050_A.ST_TIPO_SLA = 3 THEN
  191.                             DATEADD(hour,TB050_A.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  192.                      END)
  193.                             END
  194.               ),
  195.           '') AS TEMPO_SLA_A_VENCER
  196.           ,(
  197.                         CASE
  198.                             WHEN [TB050_B].[ID_SLA] IS NOT NULL THEN
  199.                                 (CASE WHEN [TB050_B].[ST_TIPO_SLA] = 0 THEN
  200.                         GETDATE() - DATEADD(day,TB050_B.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  201.                       WHEN TB050_B.ST_TIPO_SLA = 1 THEN
  202.                         GETDATE() - DATEADD(week,TB050_B.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  203.                       WHEN TB050_B.ST_TIPO_SLA = 2 THEN
  204.                         GETDATE() - DATEADD(month,TB050_B.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  205.                       WHEN TB050_B.ST_TIPO_SLA = 3 THEN
  206.                         GETDATE() - DATEADD(hour,TB050_B.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  207.                  END)
  208.                             ELSE
  209.                                 (CASE WHEN [TB050_A].[ST_TIPO_SLA] = 0 THEN
  210.                         GETDATE() - DATEADD(day,TB050_A.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  211.                       WHEN TB050_A.ST_TIPO_SLA = 1 THEN
  212.                         GETDATE() - DATEADD(week,TB050_A.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  213.                       WHEN TB050_A.ST_TIPO_SLA = 2 THEN
  214.                         GETDATE() - DATEADD(month,TB050_A.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  215.                       WHEN TB050_A.ST_TIPO_SLA = 3 THEN
  216.                         GETDATE() - DATEADD(hour,TB050_A.NU_TEMPO_SLA,TB017.DT_CADASTRO)
  217.                  END)
  218.                         END
  219.                     ) AS TEMPO_SLA_ATRASO
  220.                 FROM
  221.                     [dbo].[TB017_NOTIFICACAO_SOLICITACAO] AS TB017 WITH(NOLOCK)
  222.                     INNER JOIN
  223.                         [dbo].[TB009_PESSOA] AS TB009 WITH(NOLOCK)
  224.                             ON
  225.                                 [TB009].[ID_PESSOA] = [TB017].[ID_PESSOA]  
  226.                     INNER JOIN
  227.                         [dbo].[TB056_DADO_SOLICITACAO] AS TB056_A WITH(NOLOCK)
  228.                             ON
  229.                                 [TB056_A].[ID_DADO_SOLICITACAO] = [TB017].[ID_DADO_SOLICITACAO]
  230.                     INNER JOIN
  231.                         [dbo].[TB041_ORGAO] AS TB041_A WITH(NOLOCK)
  232.                             ON
  233.                                 [TB041_A].[ID_ORGAO] = [TB056_A].[ID_ORGAO]
  234.           INNER JOIN
  235.             [dtc].[TB001_SECAO_ARVORE] as DTC001_A WITH(NOLOCK)
  236.               ON [TB056_A].[ID_SECAO] = [DTC001_A].[ID_SECAO]
  237.                     INNER JOIN
  238.                         [dbo].[TB057_DADO_SOLICITACAO_INTERNACIONALIZA] AS TB057_A WITH(NOLOCK)
  239.                             ON
  240.                                 [TB057_A].[ID_DADO_SOLICITACAO] = [TB056_A].[ID_DADO_SOLICITACAO]
  241.           INNER JOIN
  242.             [dbo].[TB050_SLA] AS TB050_A WITH(NOLOCK)
  243.               ON
  244.                 [TB056_A].[ID_SLA] = [TB050_A].[ID_SLA]
  245.                     LEFT OUTER JOIN
  246.                         [dbo].[TH006_RECATEGORIZACAO_SOLICITACAO] AS TH006 WITH(NOLOCK)
  247.                             ON
  248.                                 [TH006].[ID_RECATEGORIZACAO] = [TB017].[ID_HISTORICO_RECATEGORIZACAO_ATUAL]
  249.                     LEFT OUTER JOIN
  250.                         [dbo].[TB056_DADO_SOLICITACAO] AS TB056_B WITH(NOLOCK)
  251.                             ON
  252.                                 [TB056_B].[ID_DADO_SOLICITACAO] = [TH006].[ID_DADO_SOLICITACAO_ATUAL]
  253.                     LEFT OUTER  JOIN
  254.                         [dbo].[TB041_ORGAO] AS TB041_B WITH(NOLOCK)
  255.                             ON
  256.                                 [TB041_B].[ID_ORGAO] = [TB056_B].[ID_ORGAO]
  257.                     LEFT OUTER JOIN
  258.                         [dbo].[TB057_DADO_SOLICITACAO_INTERNACIONALIZA] AS TB057_B WITH(NOLOCK)
  259.                             ON
  260.                                 [TB057_B].[ID_DADO_SOLICITACAO] = [TB056_B].[ID_DADO_SOLICITACAO]
  261.           LEFT OUTER JOIN
  262.             [dtc].[TB001_SECAO_ARVORE] AS DTC001_B
  263.               ON
  264.                 [DTC001_B].[ID_SECAO] = [TB056_B].[ID_SECAO]
  265.                     LEFT OUTER JOIN
  266.                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001 WITH(NOLOCK)
  267.                             ON
  268.                                 [TH001].[ID_NOTIFICACAO_SOLICITACAO_STATUS] = [TB017].[ID_HISTORICO_ATUAL]
  269.                     LEFT OUTER JOIN
  270.                         [dbo].[TB005_USUARIO] AS TB005 WITH(NOLOCK)
  271.                             ON
  272.                                 [TB005].[ID_USUARIO] = [TH001].[ID_USUARIO_ALTERACAO]
  273.                     LEFT OUTER JOIN
  274.                         [dbo].[TB016_STATUS_NOTIFICACAO] AS TB016 WITH(NOLOCK)
  275.                             ON
  276.                                 [TB016].[ID_STATUS_NOTIFICACAO] = [TH001].[ID_STATUS_NOTIFICACAO_SOLICITACAO_ATUAL]
  277.           LEFT OUTER JOIN
  278.             [dbo].[TB050_SLA] AS TB050_B WITH(NOLOCK)
  279.               ON
  280.                 [TB056_B].[ID_SLA] = [TB050_B].[ID_SLA]
  281.                 WHERE [TB017].[ST_STATUS] not in (4) AND
  282.                     (
  283.                         (
  284.                             @NU_PROTOCOLO <> 0
  285.                             AND
  286.                             [TB017].[ID_NOTIFICACAO_SOLICITACAO] = @NU_PROTOCOLO
  287.                         )
  288.                         OR
  289.                         (
  290.                             @NU_PROTOCOLO = 0
  291.                             AND
  292.                             (
  293.                                 @DE_STATUS = '--TODOS--'
  294.                                 OR
  295.                                 [dbo].[fnNormalizaTexto]([TB016].[DE_STATUS_NOTIFICACAO], 'RECEBIDO')  = @DE_STATUS
  296.                             )
  297.                             AND
  298.                             [dbo].[fnValidaOrgao](
  299.                             (
  300.                                 CASE
  301.                                     WHEN EXISTS
  302.                                         (
  303.                                             SELECT
  304.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO]
  305.                                             FROM
  306.                                                 [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  307.                                             WHERE
  308.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  309.                                                 AND
  310.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  311.                                         )
  312.                                     THEN
  313.                                     (
  314.                                         SELECT
  315.                                             TOP 1
  316.                                             [TB041_ORGAO_ATUAL].[DE_SIGLA_ORGAO]
  317.                                         FROM
  318.                                             [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  319.                                             INNER JOIN
  320.                                                 [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  321.                                                 ON
  322.                                                     [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  323.                                             WHERE
  324.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  325.                                                 AND
  326.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  327.                                             ORDER BY
  328.                                                 [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  329.                                     )
  330.                                     ELSE
  331.                                         CASE
  332.                                             WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  333.                                                 [TB041_B].[DE_SIGLA_ORGAO]
  334.                                             ELSE
  335.                                                 [TB041_A].[DE_SIGLA_ORGAO]
  336.                                             END
  337.                                     END        
  338.                             ), @DE_ORGAO) = 1
  339.                             AND
  340.                             [dbo].[fnValidaOrgaoNivel](
  341.                             (
  342.                                 CASE
  343.                                     WHEN EXISTS
  344.                                         (
  345.                                             SELECT
  346.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO]
  347.                                             FROM
  348.                                                 [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  349.                                             WHERE
  350.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  351.                                                 AND
  352.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  353.                                         )
  354.                                     THEN
  355.                                     (
  356.                                         SELECT
  357.                                             TOP 1
  358.                                             [dbo].[fnNormalizaOrgaoNivel]([TB041_ORGAO_ATUAL].[NU_NIVEL], DEFAULT)
  359.                                         FROM
  360.                                             [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  361.                                             INNER JOIN
  362.                                                 [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  363.                                                 ON
  364.                                                     [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  365.                                             WHERE
  366.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  367.                                                 AND
  368.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  369.                                             ORDER BY
  370.                                                 [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  371.                                     )
  372.                                     ELSE
  373.                                         CASE
  374.                                             WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  375.                                                 [dbo].[fnNormalizaOrgaoNivel]([TB041_B].[NU_NIVEL], DEFAULT)
  376.                                             ELSE
  377.                                                 [dbo].[fnNormalizaOrgaoNivel]([TB041_A].[NU_NIVEL], DEFAULT)
  378.                                             END
  379.                                     END
  380.                             ), @NU_NIVEL, DEFAULT) = 1
  381.                             AND
  382.                             CONVERT(DATE, [TB017].[DT_CADASTRO]) BETWEEN @DT_DATA_INICIO AND @DT_DATA_FIM
  383.                         )
  384.                     )
  385.                     AND
  386.                     (
  387.                         @ST_PENDENTES = 0
  388.                         OR
  389.                         (
  390.                             @ST_PENDENTES = 1
  391.                             AND
  392.                             [dbo].[fnNormalizaTexto]([TB016].[DE_STATUS_NOTIFICACAO], 'RECEBIDO') NOT IN ('FINALIZADO', 'CANCELADO', 'FINALIZADO E ENVIADO AO PORTAL')
  393.                         )
  394.                     )
  395.           AND
  396.           (
  397.             @DE_GRUPO = 0
  398.             OR (@DE_GRUPO <> 0
  399.                 AND
  400.                 (CASE
  401.                                     WHEN EXISTS
  402.                                         (
  403.                                             SELECT
  404.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO]
  405.                                             FROM
  406.                                                 [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  407.                                             WHERE
  408.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  409.                                                 AND
  410.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  411.                                         )
  412.                                     THEN
  413.                                     (
  414.                                         SELECT
  415.                                             TOP 1
  416.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO]
  417.                                         FROM
  418.                                             [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  419.                                             INNER JOIN
  420.                                                 [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  421.                                                 ON
  422.                                                     [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  423.                                             WHERE
  424.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  425.                                                 AND
  426.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  427.                                             ORDER BY
  428.                                                 [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  429.                                     )
  430.                                     ELSE
  431.                                         CASE
  432.                                             WHEN [TB041_B].[ID_ORGAO] IS NOT NULL THEN
  433.                                                 [TB041_B].[ID_ORGAO]
  434.                                             ELSE
  435.                                                 [TB041_A].[ID_ORGAO]
  436.                                             END
  437.                                     END        
  438.                               ) = @DE_GRUPO              
  439.               )
  440.           )
  441.           AND
  442.           (
  443.             @DE_ASSUNTO = '--TODOS--'
  444.             OR
  445.             (@DE_ASSUNTO <> '--TODOS--'
  446.              AND
  447.               (CASE
  448.                                     WHEN [DTC001_B].[ID_SECAO] IS NOT NULL THEN
  449.                                       dbo.fnRetiraAcento([DTC001_B].[DE_SECAO_ARVORE_NIVEL_01] + ' -> ' + [DTC001_B].[DE_SECAO_ARVORE_NIVEL_02])
  450.                                     ELSE
  451.                                         dbo.fnRetiraAcento([DTC001_A].[DE_SECAO_ARVORE_NIVEL_01] + ' -> ' + [DTC001_A].[DE_SECAO_ARVORE_NIVEL_02])
  452.                             END) = @DE_ASSUNTO
  453.             )
  454.           )
  455.                 ORDER BY
  456.                     [NU_PROTOCOLO] ASC
  457.             END
  458.         IF @DE_PARA = 'FIES'
  459.             BEGIN
  460.                 DECLARE @DE_FORM_FIES VARCHAR(32) = 'FRM_FIES_NOVO'
  461.                 DECLARE @ID_FORM_FIES INTEGER = (SELECT [ID_FORMULARIO_DINAMICO] FROM [dbo].[TB022_FORMULARIO_DINAMICO] WITH(NOLOCK) WHERE [DE_NOME_TABELA] = @DE_FORM_FIES)
  462.  
  463.                 SELECT
  464.                     [TB017].[ID_NOTIFICACAO_SOLICITACAO] AS [NU_PROTOCOLO]
  465.                     ,(
  466.                         CASE
  467.                             WHEN EXISTS
  468.                                 (
  469.                                     SELECT
  470.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  471.                                     FROM
  472.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  473.                                     WHERE
  474.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  475.                                         AND
  476.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  477.                                 )
  478.                             THEN
  479.                             (
  480.                                 SELECT
  481.                                     TOP 1
  482.                                     [TB041_ORGAO_ATUAL].[DE_SIGLA_ORGAO]
  483.                                 FROM
  484.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  485.                                     INNER JOIN
  486.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  487.                                         ON
  488.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  489.                                     WHERE
  490.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  491.                                         AND
  492.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  493.                                     ORDER BY
  494.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  495.                             )
  496.                             ELSE
  497.                                 CASE
  498.                                     WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  499.                                         [TB041_B].[DE_SIGLA_ORGAO]
  500.                                     ELSE
  501.                                         [TB041_A].[DE_SIGLA_ORGAO]
  502.                                     END
  503.                             END
  504.                     ) AS [DE_ORGAO_SIGLA]
  505.                     ,(
  506.                         CASE
  507.                             WHEN EXISTS
  508.                                 (
  509.                                     SELECT
  510.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  511.                                     FROM
  512.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  513.                                     WHERE
  514.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  515.                                         AND
  516.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  517.                                 )
  518.                             THEN
  519.                             (
  520.                                 SELECT
  521.                                     TOP 1
  522.                                     [dbo].[fnNormalizaOrgaoNivel]([TB041_ORGAO_ATUAL].[NU_NIVEL], DEFAULT)
  523.                                 FROM
  524.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  525.                                     INNER JOIN
  526.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  527.                                         ON
  528.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  529.                                     WHERE
  530.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  531.                                         AND
  532.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  533.                                     ORDER BY
  534.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  535.                             )
  536.                             ELSE
  537.                                 CASE
  538.                                     WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  539.                                         [dbo].[fnNormalizaOrgaoNivel]([TB041_B].[NU_NIVEL], DEFAULT)
  540.                                     ELSE
  541.                                         [dbo].[fnNormalizaOrgaoNivel]([TB041_A].[NU_NIVEL], DEFAULT)
  542.                                     END
  543.                             END
  544.                     ) AS [NU_ORGAO_NIVEL]
  545.                     ,(
  546.                         CASE
  547.                             WHEN EXISTS
  548.                                 (
  549.                                     SELECT
  550.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  551.                                     FROM
  552.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  553.                                     WHERE
  554.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  555.                                         AND
  556.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  557.                                 )
  558.                             THEN
  559.                             (
  560.                                 SELECT
  561.                                     TOP 1
  562.                                     [TB041_ORGAO_ATUAL].[DE_ORGAO]
  563.                                 FROM
  564.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  565.                                     INNER JOIN
  566.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  567.                                         ON
  568.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  569.                                     WHERE
  570.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  571.                                         AND
  572.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  573.                                     ORDER BY
  574.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  575.                             )
  576.                             ELSE
  577.                                 CASE
  578.                                     WHEN [TB041_B].[DE_ORGAO] IS NOT NULL THEN
  579.                                         [TB041_B].[DE_ORGAO]
  580.                                     ELSE
  581.                                         [TB041_A].[DE_ORGAO]
  582.                                     END
  583.                             END
  584.                     ) AS [DE_ORGAO]
  585.                     ,[dbo].[fnNormalizaTexto](UPPER([TB009].[DE_PESSOA]),'') AS [DE_SOLICITANTE]
  586.                     ,[dbo].[fnNormalizaTexto](
  587.                         [dbo].[fnNormalizaCPF]([TB009].[DE_CPF])
  588.                     , '') AS [DE_SOLICITANTE_CPF]
  589.                     ,[dbo].[fnNormalizaTexto](UPPER([TB009].[DE_CIDADE]), '') AS [DE_SOLICITANTE_CIDADE]
  590.                     ,[dbo].[fnNormalizaTexto](UPPER([TB009].[DE_UF]),'') AS [DE_SOLICITANTE_UF]
  591.                     ,[dbo].[fnNormalizaTexto](
  592.                         [dbo].[fnRetornaPessoaTelefone]([TB009].[ID_PESSOA])
  593.                     ,'') AS [DE_SOLICITANTE_TELEFONE]
  594.                     ,(
  595.                         CASE
  596.                             WHEN [TB056_B].[ID_DADO_SOLICITACAO] IS NOT NULL THEN
  597.                                 CASE
  598.                                     WHEN [TB056_B].[ID_FORMULARIO_DINAMICO] = @ID_FORM_FIES THEN
  599.                                         CASE
  600.                                             WHEN [TB017].[ID_REGISTRO_FORM_DINAMICO] IS NOT NULL THEN
  601.                                             (
  602.                                                 SELECT
  603.                                                     TOP 1
  604.                                                     [dbo].[fnNormalizaTexto](UPPER([FRM01].[DE_SIMEC]), '' )
  605.                                                 FROM
  606.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH (NOLOCK)
  607.                                                 WHERE
  608.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  609.                                             )
  610.                                             WHEN [TB017].[ID_FORMULARIO_ULTIMO_REGISTRO] IS NOT NULL THEN
  611.                                             (
  612.                                                 SELECT
  613.                                                     TOP 1
  614.                                                     [dbo].[fnNormalizaTexto]([FRM01].[DE_SIMEC], '' )
  615.                                                 FROM
  616.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH (NOLOCK)
  617.                                                 WHERE
  618.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  619.                                             )
  620.                                         ELSE
  621.                                             ''
  622.                                         END
  623.                                 ELSE
  624.                                     ''
  625.                                 END
  626.                             ELSE
  627.                                 CASE
  628.                                     WHEN [TB056_A].[ID_FORMULARIO_DINAMICO] = @ID_FORM_FIES THEN
  629.                                         CASE
  630.                                             WHEN [TB017].[ID_REGISTRO_FORM_DINAMICO] IS NOT NULL THEN
  631.                                             (
  632.                                                 SELECT
  633.                                                     TOP 1
  634.                                                     [dbo].[fnNormalizaTexto](UPPER([FRM01].[DE_SIMEC]), '' )
  635.                                                 FROM
  636.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  637.                                                 WHERE
  638.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  639.                                             )
  640.                                             WHEN [TB017].[ID_FORMULARIO_ULTIMO_REGISTRO] IS NOT NULL THEN
  641.                                             (
  642.                                                 SELECT
  643.                                                     TOP 1
  644.                                                     [dbo].[fnNormalizaTexto]([FRM01].[DE_SIMEC], '' )
  645.                                                 FROM
  646.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  647.                                                 WHERE
  648.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  649.                                             )
  650.                                         ELSE
  651.                                             ''
  652.                                         END
  653.                                 ELSE
  654.                                     ''
  655.                                 END
  656.                             END
  657.                     ) AS [NU_SIMEC]
  658.                     ,(
  659.                         CASE
  660.                             WHEN [TB056_B].[ID_DADO_SOLICITACAO] IS NOT NULL THEN
  661.                                 CASE
  662.                                     WHEN [TB056_B].[ID_FORMULARIO_DINAMICO] = @ID_FORM_FIES THEN
  663.                                         CASE
  664.                                             WHEN [TB017].[ID_REGISTRO_FORM_DINAMICO] IS NOT NULL THEN
  665.                                             (
  666.                                                 SELECT
  667.                                                     TOP 1
  668.                                                     [dbo].[fnNormalizaTexto](UPPER([FRM01].[DE_NOME_EST]), '' )
  669.                                                 FROM
  670.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  671.                                                 WHERE
  672.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  673.                                             )
  674.                                             WHEN [TB017].[ID_FORMULARIO_ULTIMO_REGISTRO] IS NOT NULL THEN
  675.                                             (
  676.                                                 SELECT
  677.                                                     TOP 1
  678.                                                     [dbo].[fnNormalizaTexto]([FRM01].[DE_NOME_EST], '' )
  679.                                                 FROM
  680.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  681.                                                 WHERE
  682.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  683.                                             )
  684.                                         ELSE
  685.                                             ''
  686.                                         END
  687.                                 ELSE
  688.                                     ''
  689.                                 END
  690.                             ELSE
  691.                                 CASE
  692.                                     WHEN [TB056_A].[ID_FORMULARIO_DINAMICO] = @ID_FORM_FIES THEN
  693.                                         CASE
  694.                                             WHEN [TB017].[ID_REGISTRO_FORM_DINAMICO] IS NOT NULL THEN
  695.                                             (
  696.                                                 SELECT
  697.                                                     TOP 1
  698.                                                     [dbo].[fnNormalizaTexto](UPPER([FRM01].[DE_NOME_EST]), '' )
  699.                                                 FROM
  700.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  701.                                                 WHERE
  702.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  703.                                             )
  704.                                             WHEN [TB017].[ID_FORMULARIO_ULTIMO_REGISTRO] IS NOT NULL THEN
  705.                                             (
  706.                                                 SELECT
  707.                                                     TOP 1
  708.                                                     [dbo].[fnNormalizaTexto]([FRM01].[DE_NOME_EST], '' )
  709.                                                 FROM
  710.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  711.                                                 WHERE
  712.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  713.                                             )
  714.                                         ELSE
  715.                                             ''
  716.                                         END
  717.                                 ELSE
  718.                                     ''
  719.                                 END
  720.                             END
  721.                     ) AS [DE_ESTUDANTE_NOME]
  722.                     ,(
  723.                         CASE
  724.                             WHEN [TB056_B].[ID_DADO_SOLICITACAO] IS NOT NULL THEN
  725.                                 CASE
  726.                                     WHEN [TB056_B].[ID_FORMULARIO_DINAMICO] = @ID_FORM_FIES THEN
  727.                                         CASE
  728.                                             WHEN [TB017].[ID_REGISTRO_FORM_DINAMICO] IS NOT NULL THEN
  729.                                             (
  730.                                                 SELECT
  731.                                                     TOP 1
  732.                                                     [dbo].[fnNormalizaCPF]([FRM01].[DE_CPF_EST])
  733.                                                 FROM
  734.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  735.                                                 WHERE
  736.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  737.                                             )
  738.                                             WHEN [TB017].[ID_FORMULARIO_ULTIMO_REGISTRO] IS NOT NULL THEN
  739.                                             (
  740.                                                 SELECT
  741.                                                     TOP 1
  742.                                                     [dbo].[fnNormalizaCPF]([FRM01].[DE_CPF_EST])
  743.                                                 FROM
  744.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  745.                                                 WHERE
  746.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  747.                                             )
  748.                                         ELSE
  749.                                             ''
  750.                                         END
  751.                                 ELSE
  752.                                     ''
  753.                                 END
  754.                             ELSE
  755.                                 CASE
  756.                                     WHEN [TB056_A].[ID_FORMULARIO_DINAMICO] = @ID_FORM_FIES THEN
  757.                                         CASE
  758.                                             WHEN [TB017].[ID_REGISTRO_FORM_DINAMICO] IS NOT NULL THEN
  759.                                             (
  760.                                                 SELECT
  761.                                                     TOP 1
  762.                                                     [dbo].[fnNormalizaCPF]([FRM01].[DE_CPF_EST])
  763.                                                 FROM
  764.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  765.                                                 WHERE
  766.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  767.                                             )
  768.                                             WHEN [TB017].[ID_FORMULARIO_ULTIMO_REGISTRO] IS NOT NULL THEN
  769.                                             (
  770.                                                 SELECT
  771.                                                     TOP 1
  772.                                                     [dbo].[fnNormalizaCPF]([FRM01].[DE_CPF_EST])
  773.                                                 FROM
  774.                                                     [dbo].[FRM_FIES_NOVO] AS FRM01 WITH(NOLOCK)
  775.                                                 WHERE
  776.                                                     [FRM01].[ID] = [TB017].[ID_REGISTRO_FORM_DINAMICO]
  777.                                             )
  778.                                         ELSE
  779.                                             ''
  780.                                         END
  781.                                 ELSE
  782.                                     ''
  783.                                 END
  784.                             END
  785.                     ) AS [DE_ESTUDANTE_CPF]
  786.                     ,[dbo].[fnNormalizaTexto]([dbo].[fnNormalizaDataHora]([TB017].[DT_CADASTRO]), '') AS [DT_ABERTURA]
  787.                     ,(
  788.                         CASE
  789.                             WHEN [TB056_B].[ID_SECAO] IS NOT NULL THEN
  790.                                 [dbo].[fnRetornaSecaoArvore]([TB056_B].[ID_SECAO])
  791.                             ELSE
  792.                                 [dbo].[fnRetornaSecaoArvore]([TB056_A].[ID_SECAO])
  793.                             END
  794.                     ) AS [DE_DADO_SOLICITACAO]
  795.                     ,dbo.fnDecodificaHTML( dbo.fnNormalizaHTML( dbo.fnDecodificaWord([TB017].[DE_NOTIFICACAO]))) AS [DE_DESCRICAO_SOLICITACAO]
  796.                     ,[dbo].[fnNormalizaTexto]([TB016].[DE_STATUS_NOTIFICACAO], 'RECEBIDO') AS [DE_STATUS_NOTIFICACAO]
  797.                     ,[dbo].[fnNormalizaTexto]([dbo].[fnNormalizaDataHora]([TH001].[DT_ALTERACAO]), '') AS [DT_ALTERACAO]
  798.                     ,[dbo].[fnNormalizaTexto](UPPER([TB005].[DE_USUARIO]), '') AS [DE_USUARIO]
  799.                     ,dbo.fnDecodificaHTML( dbo.fnNormalizaHTML( dbo.fnDecodificaWord([TH001].[DE_RESPOSTA]))) AS [DE_RESPOSTA]
  800.                 FROM
  801.                     [dbo].[TB017_NOTIFICACAO_SOLICITACAO] AS TB017 WITH(NOLOCK)
  802.                     INNER JOIN
  803.                         [dbo].[TB009_PESSOA] AS TB009 WITH(NOLOCK)
  804.                             ON
  805.                                 [TB009].[ID_PESSOA] = [TB017].[ID_PESSOA]  
  806.                     INNER JOIN
  807.                         [dbo].[TB056_DADO_SOLICITACAO] AS TB056_A WITH(NOLOCK)
  808.                             ON
  809.                                 [TB056_A].[ID_DADO_SOLICITACAO] = [TB017].[ID_DADO_SOLICITACAO]
  810.                     INNER JOIN
  811.                         [dbo].[TB041_ORGAO] AS TB041_A WITH(NOLOCK)
  812.                             ON
  813.                                 [TB041_A].[ID_ORGAO] = [TB056_A].[ID_ORGAO]
  814.           INNER JOIN
  815.             [dtc].[TB001_SECAO_ARVORE] as DTC001_A WITH(NOLOCK)
  816.               ON [TB056_A].[ID_SECAO] = [DTC001_A].[ID_SECAO]
  817.                     INNER JOIN
  818.                         [dbo].[TB057_DADO_SOLICITACAO_INTERNACIONALIZA] AS TB057_A WITH(NOLOCK)
  819.                             ON
  820.                                 [TB057_A].[ID_DADO_SOLICITACAO] = [TB056_A].[ID_DADO_SOLICITACAO]
  821.                     LEFT OUTER JOIN
  822.                         [dbo].[TH006_RECATEGORIZACAO_SOLICITACAO] AS TH006 WITH(NOLOCK)
  823.                             ON
  824.                                 [TH006].[ID_RECATEGORIZACAO] = [TB017].[ID_HISTORICO_RECATEGORIZACAO_ATUAL]
  825.  
  826.                     LEFT OUTER JOIN
  827.                         [dbo].[TB056_DADO_SOLICITACAO] AS TB056_B WITH(NOLOCK)
  828.                             ON
  829.                                 [TB056_B].[ID_DADO_SOLICITACAO] = [TH006].[ID_DADO_SOLICITACAO_ATUAL]
  830.                     LEFT OUTER  JOIN
  831.                         [dbo].[TB041_ORGAO] AS TB041_B WITH(NOLOCK)
  832.                             ON
  833.                                 [TB041_B].[ID_ORGAO] = [TB056_B].[ID_ORGAO]
  834.           LEFT OUTER JOIN
  835.             [dtc].[TB001_SECAO_ARVORE] as DTC001_B WITH(NOLOCK)
  836.               ON [TB056_B].[ID_SECAO] = [DTC001_B].[ID_SECAO]
  837.                     LEFT OUTER JOIN
  838.                         [dbo].[TB057_DADO_SOLICITACAO_INTERNACIONALIZA] AS TB057_B WITH(NOLOCK)
  839.                             ON
  840.                                 [TB057_B].[ID_DADO_SOLICITACAO] = [TB056_B].[ID_DADO_SOLICITACAO]
  841.                     LEFT OUTER JOIN
  842.                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001 WITH(NOLOCK)
  843.                             ON
  844.                                 [TH001].[ID_NOTIFICACAO_SOLICITACAO_STATUS] = [TB017].[ID_HISTORICO_ATUAL]
  845.                     LEFT OUTER JOIN
  846.                         [dbo].[TB005_USUARIO] AS TB005 WITH(NOLOCK)
  847.                             ON
  848.                                 [TB005].[ID_USUARIO] = [TH001].[ID_USUARIO_ALTERACAO]
  849.                     LEFT OUTER JOIN
  850.                         [dbo].[TB016_STATUS_NOTIFICACAO] AS TB016 WITH(NOLOCK)
  851.                             ON
  852.                                 [TB016].[ID_STATUS_NOTIFICACAO] = [TH001].[ID_STATUS_NOTIFICACAO_SOLICITACAO_ATUAL]
  853.                 WHERE [TB017].[ST_STATUS] not in (4) AND
  854.                     (
  855.                         (
  856.                             @NU_PROTOCOLO <> 0
  857.                             AND
  858.                             [TB017].[ID_NOTIFICACAO_SOLICITACAO] = @NU_PROTOCOLO
  859.                         )
  860.                         OR
  861.                         (
  862.                             @NU_PROTOCOLO = 0
  863.                             AND
  864.                             (
  865.                                 @DE_STATUS = '--TODOS--'
  866.                                 OR
  867.                                 [dbo].[fnNormalizaTexto]([TB016].[DE_STATUS_NOTIFICACAO], 'RECEBIDO')  = @DE_STATUS
  868.                             )
  869.                             AND
  870.                             [dbo].[fnValidaOrgao](
  871.                             (
  872.                                 CASE
  873.                                     WHEN EXISTS
  874.                                         (
  875.                                             SELECT
  876.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO]
  877.                                             FROM
  878.                                                 [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  879.                                             WHERE
  880.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  881.                                                 AND
  882.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  883.                                         )
  884.                                     THEN
  885.                                     (
  886.                                         SELECT
  887.                                             TOP 1
  888.                                             [TB041_ORGAO_ATUAL].[DE_SIGLA_ORGAO]
  889.                                         FROM
  890.                                             [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  891.                                             INNER JOIN
  892.                                                 [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  893.                                                 ON
  894.                                                     [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  895.                                             WHERE
  896.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  897.                                                 AND
  898.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  899.                                             ORDER BY
  900.                                                 [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  901.                                     )
  902.                                     ELSE
  903.                                         CASE
  904.                                             WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  905.                                                 [TB041_B].[DE_SIGLA_ORGAO]
  906.                                             ELSE
  907.                                                 [TB041_A].[DE_SIGLA_ORGAO]
  908.                                             END
  909.                                     END        
  910.                             ), @DE_ORGAO) = 1
  911.                             AND
  912.                             [dbo].[fnValidaOrgaoNivel](
  913.                             (
  914.                                 CASE
  915.                                     WHEN EXISTS
  916.                                         (
  917.                                             SELECT
  918.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO]
  919.                                             FROM
  920.                                                 [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  921.                                             WHERE
  922.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  923.                                                 AND
  924.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  925.                                         )
  926.                                     THEN
  927.                                     (
  928.                                         SELECT
  929.                                             TOP 1
  930.                                             [dbo].[fnNormalizaOrgaoNivel]([TB041_ORGAO_ATUAL].[NU_NIVEL], DEFAULT)
  931.                                         FROM
  932.                                             [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  933.                                             INNER JOIN
  934.                                                 [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  935.                                                 ON
  936.                                                     [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  937.                                             WHERE
  938.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  939.                                                 AND
  940.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  941.                                             ORDER BY
  942.                                                 [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  943.                                     )
  944.                                     ELSE
  945.                                         CASE
  946.                                             WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  947.                                                 [dbo].[fnNormalizaOrgaoNivel]([TB041_B].[NU_NIVEL], DEFAULT)
  948.                                             ELSE
  949.                                                 [dbo].[fnNormalizaOrgaoNivel]([TB041_A].[NU_NIVEL], DEFAULT)
  950.                                             END
  951.                                     END
  952.                             ), @NU_NIVEL, DEFAULT) = 1
  953.                             AND
  954.                             CONVERT(DATE, [TB017].[DT_CADASTRO]) BETWEEN @DT_DATA_INICIO AND @DT_DATA_FIM
  955.                         )
  956.                     )
  957.                     AND
  958.                     (
  959.                         @ST_PENDENTES = 0
  960.                         OR
  961.                         (
  962.                             @ST_PENDENTES = 1
  963.                             AND
  964.                             [dbo].[fnNormalizaTexto]([TB016].[DE_STATUS_NOTIFICACAO], 'RECEBIDO') NOT IN ('FINALIZADO', 'CANCELADO', 'FINALIZADO E ENVIADO AO PORTAL')
  965.                         )
  966.                     )
  967.           AND
  968.           (
  969.             @DE_GRUPO = 0
  970.             OR (@DE_GRUPO <> 0
  971.                 AND
  972.                 (CASE
  973.                                     WHEN EXISTS
  974.                                         (
  975.                                             SELECT
  976.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO]
  977.                                             FROM
  978.                                                 [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  979.                                             WHERE
  980.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  981.                                                 AND
  982.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  983.                                         )
  984.                                     THEN
  985.                                     (
  986.                                         SELECT
  987.                                             TOP 1
  988.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO]
  989.                                         FROM
  990.                                             [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  991.                                             INNER JOIN
  992.                                                 [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  993.                                                 ON
  994.                                                     [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  995.                                             WHERE
  996.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  997.                                                 AND
  998.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  999.                                             ORDER BY
  1000.                                                 [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  1001.                                     )
  1002.                                     ELSE
  1003.                                         CASE
  1004.                                             WHEN [TB041_B].[ID_ORGAO] IS NOT NULL THEN
  1005.                                                 [TB041_B].[ID_ORGAO]
  1006.                                             ELSE
  1007.                                                 [TB041_A].[ID_ORGAO]
  1008.                                             END
  1009.                                     END        
  1010.                               ) = @DE_GRUPO              
  1011.               )
  1012.           )
  1013.           AND
  1014.           (
  1015.             @DE_ASSUNTO = '--TODOS--'
  1016.             OR
  1017.             (@DE_ASSUNTO <> '--TODOS--'
  1018.              AND
  1019.               (CASE
  1020.                                     WHEN [DTC001_B].[ID_SECAO] IS NOT NULL THEN
  1021.                                       dbo.fnRetiraAcento([DTC001_B].[DE_SECAO_ARVORE_NIVEL_01] + ' -> ' + [DTC001_B].[DE_SECAO_ARVORE_NIVEL_02])
  1022.                                     ELSE
  1023.                                         dbo.fnRetiraAcento([DTC001_A].[DE_SECAO_ARVORE_NIVEL_01] + ' -> ' + [DTC001_A].[DE_SECAO_ARVORE_NIVEL_02])
  1024.                             END) = @DE_ASSUNTO
  1025.             )
  1026.           )
  1027.                 ORDER BY
  1028.                     [NU_PROTOCOLO] ASC
  1029.             END
  1030.     END
  1031.  
  1032.  
  1033. -- QUERY 2 QUE ESTA DEMORANDO  
  1034.  
  1035. CREATE PROCEDURE [mbi].[spRelatorio_Solicitacoes_sview]
  1036. @NU_PROTOCOLO int = 0, @DE_ORGAO varchar(128) = '--TODOS--', @NU_NIVEL int = 0, @DE_ORIGEM varchar(64) = '--TODOS--', @DE_MEIO_COMUNICACAO varchar(128) = '--TODOS--', @DE_STATUS varchar(128) = '--TODOS--', @DE_SECAO varchar(8000) = '--TODOS--', @DE_BAIRRO varchar(128) = '--TODOS--', @DE_CIDADE varchar(128) = '--TODOS--', @DE_ESTADO varchar(2) = '--', @DE_LOGIN_TRATAMENTO varchar(128) = null, @DE_USUARIO_TRATAMENTO varchar(128) = null, @DE_LOGIN_ALTERACAO varchar(128) = null, @DE_USUARIO_ALTERACAO varchar(128) = null, @DT_DATA_CADASTRO date = null, @DT_DATA_CADASTRO_INICIO date = null, @DT_DATA_CADASTRO_FIM date = null, @DT_DATA_ALTERACAO date = null, @DT_DATA_ALTERACAO_INICIO date = null, @DT_DATA_ALTERACAO_FIM date = null
  1037. WITH EXEC AS CALLER
  1038. AS
  1039. BEGIN
  1040.         SELECT
  1041.             [TB017].[ID_NOTIFICACAO_SOLICITACAO] AS [NU_PROTOCOLO]
  1042.             ,ISNULL(UPPER([DC003].[DE_ORIGEM]), NULL) AS [DE_ORIGEM]
  1043.             ,[TB008].[ID_MEIO_COMUNICACAO]
  1044.             ,[TB008].[DE_MEIO_COMUNICACAO]
  1045.             ,(
  1046.                 CASE   
  1047.                     WHEN [TB016].[DE_STATUS_NOTIFICACAO] IS NULL AND [TB017].[ID_USUARIO_TRATAMENTO] IS NULL THEN
  1048.                         'ABERTA'
  1049.                     WHEN [TB016].[DE_STATUS_NOTIFICACAO] IS NULL AND [TB017].[ID_USUARIO_TRATAMENTO] IS NOT NULL THEN
  1050.                         'EM ANDAMENTO'
  1051.                     ELSE
  1052.                         [TB016].[DE_STATUS_NOTIFICACAO]
  1053.                     END
  1054.             ) AS [DE_STATUS]
  1055.     ,(
  1056.                         CASE
  1057.                             WHEN EXISTS
  1058.                                 (
  1059.                                     SELECT
  1060.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1061.                                     FROM
  1062.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1063.                                     WHERE
  1064.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1065.                                         AND
  1066.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1067.                                 )
  1068.                             THEN
  1069.                             (
  1070.                                 SELECT
  1071.                                     TOP 1
  1072.                                     [TB041_ORGAO_ATUAL].[ID_ORGAO]
  1073.                                 FROM
  1074.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1075.                                     INNER JOIN
  1076.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  1077.                                         ON
  1078.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1079.                                     WHERE
  1080.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1081.                                         AND
  1082.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1083.                                     ORDER BY
  1084.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  1085.                             )
  1086.                             ELSE
  1087.                                 CASE
  1088.                                     WHEN [TB041_B].[ID_ORGAO] IS NOT NULL THEN
  1089.                                         [TB041_B].[ID_ORGAO]
  1090.                                     ELSE
  1091.                                         [TB041_A].[ID_ORGAO]
  1092.                                     END
  1093.                             END
  1094.                     ) AS [ID_ORGAO]
  1095.                                 ,(
  1096.                         CASE
  1097.                             WHEN EXISTS
  1098.                                 (
  1099.                                     SELECT
  1100.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1101.                                     FROM
  1102.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1103.                                     WHERE
  1104.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1105.                                         AND
  1106.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1107.                                 )
  1108.                             THEN
  1109.                             (
  1110.                                 SELECT
  1111.                                     TOP 1
  1112.                                     [TB041_ORGAO_ATUAL].[DE_ORGAO]
  1113.                                 FROM
  1114.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1115.                                     INNER JOIN
  1116.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  1117.                                         ON
  1118.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1119.                                     WHERE
  1120.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1121.                                         AND
  1122.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1123.                                     ORDER BY
  1124.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  1125.                             )
  1126.                             ELSE
  1127.                                 CASE
  1128.                                     WHEN [TB041_B].[DE_ORGAO] IS NOT NULL THEN
  1129.                                         [TB041_B].[DE_ORGAO]
  1130.                                     ELSE
  1131.                                         [TB041_A].[DE_ORGAO]
  1132.                                     END
  1133.                             END
  1134.                     ) AS [DE_ORGAO]
  1135.             ,(
  1136.                         CASE
  1137.                             WHEN EXISTS
  1138.                                 (
  1139.                                     SELECT
  1140.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1141.                                     FROM
  1142.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1143.                                     WHERE
  1144.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1145.                                         AND
  1146.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1147.                                 )
  1148.                             THEN
  1149.                             (
  1150.                                 SELECT
  1151.                                     TOP 1
  1152.                                     [dbo].[fnNormalizaOrgaoNivel]([TB041_ORGAO_ATUAL].[NU_NIVEL], DEFAULT)
  1153.                                 FROM
  1154.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1155.                                     INNER JOIN
  1156.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  1157.                                         ON
  1158.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1159.                                     WHERE
  1160.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1161.                                         AND
  1162.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1163.                                     ORDER BY
  1164.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  1165.                             )
  1166.                             ELSE
  1167.                                 CASE
  1168.                                     WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  1169.                                         [dbo].[fnNormalizaOrgaoNivel]([TB041_B].[NU_NIVEL], DEFAULT)
  1170.                                     ELSE
  1171.                                         [dbo].[fnNormalizaOrgaoNivel]([TB041_A].[NU_NIVEL], DEFAULT)
  1172.                                     END
  1173.                             END
  1174.                     ) AS [NU_ORGAO_NIVEL]
  1175.      
  1176.       ,(
  1177.                         CASE
  1178.                             WHEN EXISTS
  1179.                                 (
  1180.                                     SELECT
  1181.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1182.                                     FROM
  1183.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1184.                                     WHERE
  1185.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1186.                                         AND
  1187.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1188.                                 )
  1189.                             THEN
  1190.                             (
  1191.                                 SELECT
  1192.                                     TOP 1
  1193.                                     [TB041_ORGAO_ATUAL].[DE_SIGLA_ORGAO]
  1194.                                 FROM
  1195.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1196.                                     INNER JOIN
  1197.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  1198.                                         ON
  1199.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1200.                                     WHERE
  1201.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1202.                                         AND
  1203.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1204.                                     ORDER BY
  1205.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  1206.                             )
  1207.                             ELSE
  1208.                                 CASE
  1209.                                     WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  1210.                                         [TB041_B].[DE_SIGLA_ORGAO]
  1211.                                     ELSE
  1212.                                         [TB041_A].[DE_SIGLA_ORGAO]
  1213.                                     END
  1214.                             END
  1215.                     ) AS [DE_ORGAO_SIGLA]
  1216.      
  1217.         --  ,UPPER([TB041].[DE_SIGLA_ORGAO]) AS [DE_ORGAO_SIGLA]
  1218.             ,[TB009].[ID_PESSOA] AS [ID_SOLICITANTE]
  1219.             ,(
  1220.                 CASE
  1221.                     WHEN [TB009].[ST_TIPO_PESSOA] = 1 THEN
  1222.                         'PESSOA JURÍDICA'
  1223.                     ELSE
  1224.                         'PESSOA FÍSICA'
  1225.                     END            
  1226.             ) AS [DE_SOLICITANTE_TIPO]
  1227.             ,UPPER([TB009].[DE_PESSOA]) AS [DE_SOLICITANTE_NOME]
  1228.             ,(
  1229.                 CASE
  1230.                     WHEN [TB009].[ST_TIPO_PESSOA] = 1 AND [TB009].[DE_NOME_FANTASIA] IS NOT NULL THEN
  1231.                         UPPER([TB009].[DE_NOME_FANTASIA])
  1232.                     ELSE
  1233.                         NULL
  1234.                     END
  1235.             ) AS [DE_SOLICITANTE_NOME_FANTASIA]
  1236.             ,(
  1237.                 CASE
  1238.                     WHEN [TB009].[ST_TIPO_PESSOA] = 1 THEN
  1239.                         NULL
  1240.                     ELSE
  1241.                         CASE
  1242.                             WHEN [TB009].[ST_SEXO] = 0 THEN
  1243.                                 'FEMININO'
  1244.                             WHEN [TB009].[ST_SEXO] = 1 THEN
  1245.                                 'MASCULINO'
  1246.                             ELSE
  1247.                                 NULL
  1248.                             END
  1249.                     END
  1250.             ) AS [DE_SOLICITANTE_SEXO]
  1251.             ,(
  1252.                 CASE
  1253.                     WHEN [TB009].[ST_TIPO_PESSOA] = 1 THEN
  1254.                         NULL
  1255.                     ELSE
  1256.                         [dbo].[fnValida_CPF]([TB009].[DE_CPF], 1)
  1257.                     END
  1258.             ) AS [DE_SOLICITANTE_CPF]
  1259.             ,(
  1260.                 CASE
  1261.                     WHEN [TB009].[ST_TIPO_PESSOA] = 1 THEN
  1262.                         NULL
  1263.                     ELSE
  1264.                         [TB009].[DE_RG]
  1265.                     END
  1266.             ) AS [DE_SOLICITANTE_RG]
  1267.             ,(
  1268.                 CASE
  1269.                     WHEN [TB009].[ST_TIPO_PESSOA] = 1 THEN
  1270.                         [dbo].[fnValida_CNPJ]([TB009].[DE_CNPJ], 1)
  1271.                     ELSE
  1272.                         NULL
  1273.                     END
  1274.             ) AS [DE_SOLICITANTE_CNPJ]
  1275.             ,(
  1276.                 CASE
  1277.                     WHEN [TB009].[ST_TIPO_PESSOA] = 1 THEN
  1278.                         UPPER([TB009].[DE_INSCRICAO_ESTADUAL])
  1279.                     ELSE
  1280.                         NULL
  1281.                     END
  1282.             ) AS [DE_SOLICITANTE_IE]
  1283.             ,(
  1284.                 CASE
  1285.                     WHEN [TB009].[DE_EMAIL] IS NOT NULL AND LEN(LTRIM(RTRIM([DE_EMAIL]))) > 0 THEN
  1286.                         LOWER([TB009].[DE_EMAIL])
  1287.                     ELSE
  1288.                         NULL
  1289.                     END
  1290.             ) AS [DE_SOLICITANTE_EMAIL]
  1291.             ,[DC004].[DE_TELEFONE] AS [DE_SOLICITANTE_TELEFONE]
  1292.             ,(
  1293.                 CASE
  1294.                     WHEN [TB009].[DE_CEP] IS NOT NULL THEN
  1295.                         [dbo].[fnValida_CEP]([TB009].[DE_CEP], 1)
  1296.                     ELSE
  1297.                         NULL
  1298.                     END
  1299.             ) [DE_SOLICITANTE_CEP]
  1300.             ,(
  1301.                 CASE   
  1302.                     WHEN [TB009].[DE_LOGRADOURO] IS NOT NULL AND LEN(LTRIM(RTRIM([TB009].[DE_LOGRADOURO]))) > 0 THEN
  1303.                         CASE   
  1304.                             WHEN  [TB009].[NU_LOGRADOURO] IS NOT NULL AND LEN(LTRIM(RTRIM([TB009].[NU_LOGRADOURO]))) > 0 THEN
  1305.                                 UPPER([TB009].[DE_LOGRADOURO]) +  ', ' +  [TB009].[NU_LOGRADOURO]
  1306.                             ELSE
  1307.                                 [TB009].[DE_LOGRADOURO]
  1308.                             END
  1309.                     ELSE
  1310.                         NULL
  1311.                     END
  1312.             ) AS [DE_SOLICITANTE_ENDERECO]
  1313.             ,(
  1314.                 CASE
  1315.                     WHEN [TB009].[DE_COMPLEMENTO] IS NOT NULL AND LEN(LTRIM(RTRIM([TB009].[DE_COMPLEMENTO]))) > 0 THEN
  1316.                         UPPER([TB009].[DE_COMPLEMENTO])
  1317.                     ELSE
  1318.                         NULL
  1319.                     END
  1320.             ) AS [DE_SOLICITANTE_COMPLEMENTO]
  1321.             ,(
  1322.                 CASE
  1323.                     WHEN [TB009].[DE_BAIRRO] IS NOT NULL AND LEN(LTRIM(RTRIM([TB009].[DE_BAIRRO]))) > 0 THEN
  1324.                         UPPER([TB009].[DE_BAIRRO])
  1325.                     ELSE
  1326.                         NULL
  1327.                     END
  1328.             ) AS [DE_SOLICITANTE_BAIRRO]
  1329.             ,(
  1330.                 CASE
  1331.                     WHEN [TB009].[DE_CIDADE] IS NOT NULL AND LEN(LTRIM(RTRIM([TB009].[DE_CIDADE]))) > 0 THEN
  1332.                         UPPER([TB009].[DE_CIDADE])
  1333.                     ELSE
  1334.                         NULL
  1335.                     END
  1336.             ) AS [DE_SOLICITANTE_CIDADE]
  1337.             ,(
  1338.                 CASE
  1339.                     WHEN [TB009].[DE_UF] IS NOT NULL AND LEN(LTRIM(RTRIM([TB009].[DE_UF]))) > 0 THEN
  1340.                         UPPER([TB009].[DE_UF])
  1341.                     ELSE
  1342.                         NULL
  1343.                     END
  1344.             ) AS [DE_SOLICITANTE_ESTADO]
  1345.             ,ISNULL(UPPER([TB005_TRATAMENTO].[DE_LOGIN]), NULL) AS [DE_TRATAMENTO_LOGIN]
  1346.             ,(
  1347.                 CASE
  1348.                     WHEN [TB005_TRATAMENTO].[DE_USUARIO] IS NOT NULL THEN
  1349.                         UPPER([TB005_TRATAMENTO].[DE_USUARIO])
  1350.                     ELSE
  1351.                         NULL
  1352.                     END
  1353.             ) AS [DE_TRATAMENTO_USUARIO]
  1354.             ,[TB017].[DT_CADASTRO]
  1355.             ,[TH001].[DT_ALTERACAO]
  1356.             ,ISNULL(UPPER([TB005_ALTERACAO].[DE_LOGIN]), NULL) AS [DE_ALTERACAO_LOGIN]
  1357.             ,(
  1358.                 CASE
  1359.                     WHEN [TB005_ALTERACAO].[DE_USUARIO] IS NOT NULL THEN
  1360.                         UPPER([TB005_ALTERACAO].[DE_USUARIO])
  1361.                     ELSE
  1362.                         NULL
  1363.                     END
  1364.             ) AS [DE_ALTERACAO_USUARIO]
  1365.             ,(
  1366.                 CASE   
  1367.                     WHEN [DC001_RECATEGORIZADO].[ID_SECAO] IS NOT NULL THEN
  1368.                         [DC001_RECATEGORIZADO].[ID_SECAO]
  1369.                     ELSE
  1370.                         [DC001_BASE].[ID_SECAO]
  1371.               END
  1372.             ) AS [ID_SECAO]
  1373.             ,(
  1374.                 CASE   
  1375.                     WHEN [DC001_RECATEGORIZADO].[DE_SECAO_ARVORE_COMPLETA] IS NOT NULL THEN
  1376.                         UPPER([DC001_RECATEGORIZADO].[DE_SECAO_ARVORE_COMPLETA])
  1377.                     ELSE
  1378.                         UPPER([DC001_BASE].[DE_SECAO_ARVORE_COMPLETA])
  1379.                 END
  1380.             ) AS [DE_SECAO]
  1381.             ,(
  1382.                 CASE   
  1383.                     WHEN [TB057_RECATEGORIZADO].[ID_DADO_SOLICITACAO] IS NOT NULL THEN
  1384.                         [TB057_RECATEGORIZADO].[ID_DADO_SOLICITACAO]
  1385.                     ELSE
  1386.                         [TB057_BASE].[ID_DADO_SOLICITACAO]
  1387.                 END
  1388.             ) AS [ID_CONTEUDO]
  1389.             ,(
  1390.                 CASE   
  1391.                     WHEN [TB057_RECATEGORIZADO].[DE_DADO_SOLICITACAO] IS NOT NULL THEN
  1392.                         UPPER([TB057_RECATEGORIZADO].[DE_DADO_SOLICITACAO])
  1393.                     ELSE
  1394.                         UPPER([TB057_BASE].[DE_DADO_SOLICITACAO])
  1395.                 END
  1396.             ) AS [DE_CONTEUDO]
  1397.             ,[dbo].[fnNormalizaTexto]([TB017].[DE_NOTIFICACAO],'') AS [DE_SOLICITACAO]
  1398.             ,(
  1399.                 CASE
  1400.                     WHEN [TH001].[DE_RESPOSTA] IS NOT NULL THEN
  1401.                         dbo.fnDecodificaHTML( dbo.fnNormalizaHTML( dbo.fnDecodificaWord([TH001].[DE_RESPOSTA])))
  1402.                     ELSE
  1403.                         NULL
  1404.                     END
  1405.             ) AS [DE_RESPOSTA]
  1406.         FROM
  1407.             [dbo].[TB017_NOTIFICACAO_SOLICITACAO] AS TB017 WITH (NOLOCK)
  1408.             INNER JOIN
  1409.                 [dbo].[TB008_MEIO_COMUNICACAO] AS TB008 WITH (NOLOCK)
  1410.                     ON
  1411.                         [TB008].[ID_MEIO_COMUNICACAO] = [TB017].[ID_MEIO_COMUNICACAO]
  1412.             INNER JOIN
  1413.                 [dbo].[TB009_PESSOA] AS TB009 WITH (NOLOCK)
  1414.                     ON
  1415.                         [TB009].[ID_PESSOA] = [TB017].[ID_PESSOA]
  1416.             LEFT JOIN
  1417.                 [dtc].[TB004_PESSOA_TELEFONE] AS DC004 WITH (NOLOCK)
  1418.                     ON
  1419.                         [DC004].[ID_PESSOA] = [TB009].[ID_PESSOA]
  1420.         LEFT JOIN
  1421.                 [dtc].[TB003_NOTIFICACAO_SOLICITACAO_ORIGEM] AS DC003 WITH (NOLOCK)
  1422.                     ON
  1423.                         [DC003].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1424. --          INNER JOIN
  1425. --              [dtc].[TB002_NOTIFICACAO_SOLICITACAO_ORGAO] AS DC002 WITH (NOLOCK)
  1426. --                  ON
  1427. --                      [DC002].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1428.            
  1429.             INNER JOIN
  1430.                 [dbo].[TB056_DADO_SOLICITACAO] AS TB056_BASE WITH(NOLOCK)
  1431.                     ON
  1432.                         [TB056_BASE].[ID_DADO_SOLICITACAO] = [TB017].[ID_DADO_SOLICITACAO]
  1433.            
  1434.       INNER JOIN
  1435.                         [dbo].[TB041_ORGAO] AS TB041_A WITH(NOLOCK)
  1436.                             ON
  1437.                                 [TB041_A].[ID_ORGAO] = [TB056_BASE].[ID_ORGAO]
  1438.                
  1439.             INNER JOIN
  1440.                 [dbo].[TB057_DADO_SOLICITACAO_INTERNACIONALIZA] AS TB057_BASE WITH(NOLOCK)
  1441.                     ON
  1442.                         [TB057_BASE].[ID_DADO_SOLICITACAO] = [TB056_BASE].[ID_DADO_SOLICITACAO]
  1443.                         AND
  1444.                         [TB057_BASE].[DE_LOCALE] = 'PORTUGUES'
  1445.             INNER JOIN
  1446.                 [dtc].[TB001_SECAO_ARVORE] AS DC001_BASE WITH (NOLOCK)
  1447.                     ON
  1448.                         [DC001_BASE].[ID_SECAO] = [TB056_BASE].[ID_SECAO]
  1449.             LEFT JOIN
  1450.                 [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001 WITH (NOLOCK)
  1451.                     ON [TH001].[ID_NOTIFICACAO_SOLICITACAO_STATUS] = [TB017].[ID_HISTORICO_ATUAL]
  1452.  
  1453.             LEFT JOIN
  1454.                 [dbo].[TB016_STATUS_NOTIFICACAO] AS TB016 WITH (NOLOCK)
  1455.                     ON
  1456.                         [TB016].[ID_STATUS_NOTIFICACAO] = [TH001].[ID_STATUS_NOTIFICACAO_SOLICITACAO_ATUAL]
  1457.             LEFT OUTER JOIN
  1458.                 [dbo].[TH006_RECATEGORIZACAO_SOLICITACAO] AS TH006 WITH(NOLOCK)
  1459.                     ON
  1460.                         [TH006].[ID_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1461.             AND TH006.ID_RECATEGORIZACAO = (SELECT MAX(TH006_DENTRO.ID_RECATEGORIZACAO)
  1462.                                             FROM TH006_RECATEGORIZACAO_SOLICITACAO AS TH006_DENTRO
  1463.                                             WHERE TH006_DENTRO.ID_SOLICITACAO = TB017.ID_NOTIFICACAO_SOLICITACAO
  1464.                                             )
  1465.             LEFT OUTER JOIN
  1466.                 [dbo].[TB056_DADO_SOLICITACAO] AS TB056_RECATEGORIZADO WITH(NOLOCK)
  1467.                     ON
  1468.                         [TB056_RECATEGORIZADO].[ID_DADO_SOLICITACAO] = [TH006].[ID_DADO_SOLICITACAO_ATUAL]
  1469.       LEFT OUTER  JOIN
  1470.                         [dbo].[TB041_ORGAO] AS TB041_B WITH(NOLOCK)
  1471.                             ON
  1472.                                 [TB041_B].[ID_ORGAO] = [TB056_RECATEGORIZADO].[ID_ORGAO]
  1473.             LEFT OUTER JOIN
  1474.                 [dbo].[TB057_DADO_SOLICITACAO_INTERNACIONALIZA] AS TB057_RECATEGORIZADO WITH(NOLOCK)
  1475.                     ON
  1476.                         [TB057_RECATEGORIZADO].[ID_DADO_SOLICITACAO] = [TB056_RECATEGORIZADO].[ID_DADO_SOLICITACAO]
  1477.                         AND
  1478.                         [TB057_RECATEGORIZADO].[DE_LOCALE] = 'PORTUGUES'
  1479.             LEFT OUTER JOIN
  1480.                 [dtc].[TB001_SECAO_ARVORE] AS DC001_RECATEGORIZADO WITH (NOLOCK)
  1481.                     ON
  1482.                         [DC001_RECATEGORIZADO].[ID_SECAO] = [TB056_RECATEGORIZADO].[ID_SECAO]
  1483.             LEFT OUTER JOIN
  1484.                 [dbo].[TB005_USUARIO] AS TB005_TRATAMENTO WITH (NOLOCK)
  1485.                     ON
  1486.                         [TB005_TRATAMENTO].[ID_USUARIO] = [TB017].[ID_USUARIO_TRATAMENTO]
  1487.             LEFT OUTER JOIN
  1488.                 [dbo].[TB005_USUARIO] AS TB005_ALTERACAO WITH (NOLOCK)
  1489.                     ON
  1490.                         [TB005_ALTERACAO].[ID_USUARIO] = [TH001].[ID_USUARIO_ALTERACAO]
  1491.         WHERE
  1492.             [TB017].[ST_STATUS] IN (0,1,2)
  1493.             AND
  1494.             (
  1495.                 @NU_PROTOCOLO = 0
  1496.                 OR
  1497.                 (
  1498.                     @NU_PROTOCOLO <> 0
  1499.                     AND
  1500.                     [TB017].[ID_NOTIFICACAO_SOLICITACAO] = @NU_PROTOCOLO
  1501.                 )
  1502.             )
  1503.         AND
  1504.                             [dbo].[fnValidaOrgao](
  1505.                             (
  1506.                                 CASE
  1507.                                     WHEN EXISTS
  1508.                                         (
  1509.                                             SELECT
  1510.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1511.                                             FROM
  1512.                                                 [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1513.                                             WHERE
  1514.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1515.                                                 AND
  1516.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1517.                                         )
  1518.                                     THEN
  1519.                                     (
  1520.                                         SELECT
  1521.                                             TOP 1
  1522.                                             [TB041_ORGAO_ATUAL].[DE_SIGLA_ORGAO]
  1523.                                         FROM
  1524.                                             [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1525.                                             INNER JOIN
  1526.                                                 [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  1527.                                                 ON
  1528.                                                     [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1529.                                             WHERE
  1530.                                                 [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1531.                                                 AND
  1532.                                                 [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1533.                                             ORDER BY
  1534.                                                 [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  1535.                                     )
  1536.                                     ELSE
  1537.                                         CASE
  1538.                                             WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  1539.                                                 [TB041_B].[DE_SIGLA_ORGAO]
  1540.                                             ELSE
  1541.                                                 [TB041_A].[DE_SIGLA_ORGAO]
  1542.                                             END
  1543.                                     END        
  1544.                             ), @DE_ORGAO) = 1
  1545.             AND
  1546.                     [dbo].[fnValidaORgaoNivel]((
  1547.                         CASE
  1548.                             WHEN EXISTS
  1549.                                 (
  1550.                                     SELECT
  1551.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1552.                                     FROM
  1553.                                         [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1554.                                     WHERE
  1555.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1556.                                         AND
  1557.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1558.                                 )
  1559.                             THEN
  1560.                             (
  1561.                                 SELECT
  1562.                                     TOP 1
  1563.                                     [dbo].[fnNormalizaOrgaoNivel]([TB041_ORGAO_ATUAL].[NU_NIVEL], DEFAULT)
  1564.                                 FROM
  1565.                                     [dbo].[TH001_NOTIFICACAO_SOLICITACAO_STATUS] AS TH001_ORGAO_ATUAL WITH(NOLOCK)
  1566.                                     INNER JOIN
  1567.                                         [dbo].[TB041_ORGAO] AS TB041_ORGAO_ATUAL WITH(NOLOCK)
  1568.                                         ON
  1569.                                             [TB041_ORGAO_ATUAL].[ID_ORGAO] = [TH001_ORGAO_ATUAL].[ID_ORGAO]
  1570.                                     WHERE
  1571.                                         [TH001_ORGAO_ATUAL].[ID_ORGAO] IS NOT NULL
  1572.                                         AND
  1573.                                         [TH001_ORGAO_ATUAL].[ID_NOTIFICACAO_SOLICITACAO] = [TB017].[ID_NOTIFICACAO_SOLICITACAO]
  1574.                                     ORDER BY
  1575.                                         [TH001_ORGAO_ATUAL].[DT_ALTERACAO] DESC
  1576.                             )
  1577.                             ELSE
  1578.                                 CASE
  1579.                                     WHEN [TB041_B].[NU_NIVEL] IS NOT NULL THEN
  1580.                                         [dbo].[fnNormalizaOrgaoNivel]([TB041_B].[NU_NIVEL], DEFAULT)
  1581.                                     ELSE
  1582.                                         [dbo].[fnNormalizaOrgaoNivel]([TB041_A].[NU_NIVEL], DEFAULT)
  1583.                                     END
  1584.                             END
  1585.                     ), @NU_NIVEL, DEFAULT) = 1
  1586.  
  1587.             AND
  1588.             (
  1589.                 @DE_ORIGEM = '--TODOS--'
  1590.                 OR
  1591.                 (
  1592.                     @DE_ORIGEM <> '--TODOS--'
  1593.                     AND
  1594.                     [DC003].[DE_ORIGEM] = @DE_ORIGEM
  1595.                 )
  1596.             )
  1597.             AND
  1598.             (
  1599.                 @DE_MEIO_COMUNICACAO = '--TODOS--'
  1600.                 OR
  1601.                 (
  1602.                     @DE_MEIO_COMUNICACAO <> '--TODOS--'
  1603.                     AND
  1604.                     [TB008].[DE_MEIO_COMUNICACAO] = @DE_MEIO_COMUNICACAO
  1605.                 )
  1606.             )
  1607.             AND
  1608.             (
  1609.                 @DE_STATUS = '--TODOS--'
  1610.                 OR
  1611.                 (
  1612.                     @DE_STATUS <> '--TODOS--'
  1613.                     AND
  1614.                     (
  1615.                         CASE   
  1616.                             WHEN [TB016].[DE_STATUS_NOTIFICACAO] IS NULL AND [TB017].[ID_USUARIO_TRATAMENTO] IS NULL THEN
  1617.                                 'ABERTA'
  1618.                             WHEN [TB016].[DE_STATUS_NOTIFICACAO] IS NULL AND [TB017].[ID_USUARIO_TRATAMENTO] IS NOT NULL THEN
  1619.                                 'EM ANDAMENTO'
  1620.                             ELSE
  1621.                                 [TB016].[DE_STATUS_NOTIFICACAO]
  1622.                             END
  1623.                     ) = @DE_STATUS
  1624.                 )
  1625.             )
  1626.             AND
  1627.             (
  1628.                 @DE_SECAO = '--TODOS--'
  1629.                 OR
  1630.                 (
  1631.                     @DE_SECAO <> '--TODOS--'
  1632.                     AND
  1633.                     (
  1634.                         CASE   
  1635.                             WHEN [DC001_RECATEGORIZADO].[DE_SECAO_ARVORE_COMPLETA] IS NOT NULL THEN
  1636.                                 UPPER([DC001_RECATEGORIZADO].[DE_SECAO_ARVORE_COMPLETA])
  1637.                             ELSE
  1638.                                 UPPER([DC001_BASE].[DE_SECAO_ARVORE_COMPLETA])
  1639.                             END
  1640.                     ) = @DE_SECAO
  1641.                 )
  1642.             )
  1643.             AND
  1644.             (
  1645.                 @DE_BAIRRO = '--TODOS--'
  1646.                 OR
  1647.                 (
  1648.                     @DE_BAIRRO <> '--TODOS--'
  1649.                     AND
  1650.                     [TB009].[DE_BAIRRO] = @DE_BAIRRO
  1651.                 )
  1652.             )
  1653.             AND
  1654.             (
  1655.                 @DE_CIDADE = '--TODOS--'
  1656.                 OR
  1657.                 (
  1658.                     @DE_CIDADE <> '--TODOS--'
  1659.                     AND
  1660.                     [TB009].[DE_CIDADE] = @DE_CIDADE
  1661.                 )
  1662.             )
  1663.             AND
  1664.             (
  1665.                 @DE_ESTADO = '--'
  1666.                 OR
  1667.                 (
  1668.                     @DE_ESTADO <> '--'
  1669.                     AND
  1670.                     [TB009].[DE_UF] = @DE_ESTADO
  1671.                 )
  1672.             )
  1673.             AND
  1674.             (
  1675.                 (
  1676.                     @DE_LOGIN_TRATAMENTO IS NULL
  1677.                     AND
  1678.                     @DE_LOGIN_ALTERACAO IS NULL
  1679.                 )
  1680.                 OR
  1681.                 (
  1682.                     @DE_LOGIN_TRATAMENTO IS NOT NULL
  1683.                     AND
  1684.                     @DE_LOGIN_ALTERACAO IS NOT NULL
  1685.                     AND
  1686.                     (
  1687.                         [TB005_TRATAMENTO].[DE_LOGIN] = @DE_LOGIN_TRATAMENTO
  1688.                         OR
  1689.                         [TB005_ALTERACAO].[DE_LOGIN] = @DE_LOGIN_ALTERACAO
  1690.                     )
  1691.                 )
  1692.                 OR
  1693.                 (
  1694.                     @DE_LOGIN_TRATAMENTO IS NOT NULL
  1695.                     AND
  1696.                     @DE_LOGIN_ALTERACAO IS NULL
  1697.                     AND
  1698.                     [TB005_TRATAMENTO].[DE_LOGIN] = @DE_LOGIN_TRATAMENTO
  1699.                 )
  1700.                 OR
  1701.                 (
  1702.                     @DE_LOGIN_TRATAMENTO IS NULL
  1703.                     AND
  1704.                     @DE_LOGIN_ALTERACAO IS NOT NULL
  1705.                     AND
  1706.                     [TB005_ALTERACAO].[DE_LOGIN] = @DE_LOGIN_ALTERACAO
  1707.                 )
  1708.             )
  1709.             AND
  1710.             (
  1711.                 (
  1712.                     @DE_USUARIO_TRATAMENTO IS NULL
  1713.                     AND
  1714.                     @DE_USUARIO_ALTERACAO IS NULL
  1715.                 )
  1716.                 OR
  1717.                 (
  1718.                     @DE_USUARIO_TRATAMENTO IS NOT NULL
  1719.                     AND
  1720.                     @DE_USUARIO_ALTERACAO IS NOT NULL
  1721.                     AND
  1722.                     (
  1723.                         [TB005_TRATAMENTO].[DE_LOGIN] = @DE_USUARIO_TRATAMENTO
  1724.                         OR
  1725.                         [TB005_ALTERACAO].[DE_LOGIN] = @DE_USUARIO_ALTERACAO
  1726.                     )
  1727.                 )
  1728.                 OR
  1729.                 (
  1730.                     @DE_USUARIO_TRATAMENTO IS NOT NULL
  1731.                     AND
  1732.                     @DE_USUARIO_ALTERACAO IS NULL
  1733.                     AND
  1734.                     [TB005_TRATAMENTO].[DE_LOGIN] = @DE_USUARIO_TRATAMENTO
  1735.                 )
  1736.                 OR
  1737.                 (
  1738.                     @DE_USUARIO_TRATAMENTO IS NULL
  1739.                     AND
  1740.                     @DE_USUARIO_ALTERACAO IS NOT NULL
  1741.                     AND
  1742.                     [TB005_ALTERACAO].[DE_LOGIN] = @DE_USUARIO_ALTERACAO
  1743.                 )
  1744.             )
  1745.             AND
  1746.             (
  1747.                 (
  1748.                     @DT_DATA_CADASTRO IS NULL
  1749.                     AND
  1750.                     @DT_DATA_CADASTRO_INICIO IS NULL
  1751.                     AND
  1752.                     @DT_DATA_CADASTRO_FIM IS NULL
  1753.                 )
  1754.                 OR
  1755.                 (
  1756.                     @DT_DATA_CADASTRO IS NOT NULL
  1757.                     AND
  1758.                     CONVERT(DATE, [TB017].[DT_CADASTRO]) = @DT_DATA_CADASTRO
  1759.                 )
  1760.                 OR
  1761.                 (
  1762.                     @DT_DATA_CADASTRO IS NULL
  1763.                     AND
  1764.                     @DT_DATA_CADASTRO_INICIO IS NOT NULL
  1765.                     AND
  1766.                     @DT_DATA_CADASTRO_FIM IS NOT NULL
  1767.                     AND
  1768.                     CONVERT(DATE, [TB017].[DT_CADASTRO]) BETWEEN @DT_DATA_CADASTRO_INICIO AND @DT_DATA_CADASTRO_FIM
  1769.                 )
  1770.             )  
  1771.             AND
  1772.             (
  1773.                 (
  1774.                     @DT_DATA_ALTERACAO IS NULL
  1775.                     AND
  1776.                     @DT_DATA_ALTERACAO_INICIO IS NULL
  1777.                     AND
  1778.                     @DT_DATA_ALTERACAO_FIM IS NULL
  1779.                 )
  1780.                 OR
  1781.                 (
  1782.                     @DT_DATA_ALTERACAO IS NOT NULL
  1783.                     AND
  1784.                     CONVERT(DATE, [TB017].[DT_CADASTRO]) = @DT_DATA_ALTERACAO
  1785.                 )
  1786.                 OR
  1787.                 (
  1788.                     @DT_DATA_ALTERACAO IS NULL
  1789.                     AND
  1790.                     @DT_DATA_ALTERACAO_INICIO IS NOT NULL
  1791.                     AND
  1792.                     @DT_DATA_ALTERACAO_FIM IS NOT NULL
  1793.                     AND
  1794.                     [TH001].[DT_ALTERACAO] IS NOT NULL
  1795.                     AND
  1796.                     CONVERT(DATE, [TH001].[DT_ALTERACAO]) BETWEEN @DT_DATA_ALTERACAO_INICIO AND @DT_DATA_ALTERACAO_FIM
  1797.                 )
  1798.             )  
  1799.     END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement