Ir para conteúdo
Seja Membro VIP - Remova Banners de Propagandas, Tenha Liberado Qualquer Download, Além de Acessos em Áreas Exclusivas!! ×
Quer acesso a todas as Áreas do Fórum, até aquelas só para membros VIPs? Também quer poder baixar qualquer ARQUIVO? ×

lucas.guimaraes

Membros
  • Total de itens

    5
  • Registro em

  • Última visita

Sobre lucas.guimaraes

  • Data de Nascimento 21-08-1979

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

Conquistas de lucas.guimaraes

Recém-Chegado

Recém-Chegado (1/10)

  • Primeira Semana Concluída
  • Primeiro Post
  • Iniciador de Conversa

Distintivos Recentes

2

Reputação

1

Respostas da Comunidade

  1. Boa tarde @luisgustavogomes ! Consegui resolver meu problema com a seguinte linha na consulta... AND REPLACE((',' + :TIPOCURSO + ','), ' ', '') LIKE ('%,' + CAST(SCURSO.CODTIPOCURSO AS VARCHAR)+ ',%') Com isso, consigo executar consultas SQL no RM Resports que usam parâmetros com múltiplos valores. Atenciosamente, Lucas Guimarães.
  2. Fiz como recomendou e, somente as mensagens referente ao 'NOLOCK' e o uso do 'DECLARE' foram exibidas. Ao executar o relatório pelo RM Reports nenhum registro foi exibido. Tem alguma ideia do que ainda pode ser? Segue imagens das configurações setadas nos parâmetros que estão usando (TIPOCURSO e CURSO, os demais 'setei' valores fixos no WHERE). Inclusive testei configurado ambos como Tipo = Numero(inteiro de 16 bits) e o resultado foi o mesmo. /* faturamento - analitico */ SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; SET NOCOUNT ON; DECLARE @CODCOLIGADA INT = 0 DECLARE @CODTIPOCURSO VARCHAR(500) = '1' --:CODTIPOCURSO DECLARE @CODCURSO VARCHAR(500) = '1,4' --:CODCURSO ;WITH FILTRO_TIPOCURSO AS ( SELECT FS.ID, CONVERT(INT,FS.PALAVRA) AS 'TIPOCURSO' FROM [dbo].[fncSplitTexto](@CODTIPOCURSO, ',') FS ) , FILTRO_CURSO AS ( SELECT FS.ID, CONVERT(INT,FS.PALAVRA) AS 'CURSO' FROM [dbo].[fncSplitTexto](@CODCURSO, ',') FS ) SELECT DISTINCT SCURSO.CODCURSO ,SCURSO.NOME CURSO ,STIPOCURSO.CODTIPOCURSO ,STIPOCURSO.NOME TIPOCURSO ,YEAR(FLAN.DATAVENCIMENTO) ANO ,SCONTRATO.RA MATRICULA ,PPESSOA.NOME NOME ,SPARCELA.PARCELA PARCELA ,SPLETIVO.CODPERLET ,FLAN.VALORORIGINAL VALOR ,FLAN.DATAVENCIMENTO FROM DBO.SCONTRATO JOIN DBO.SPARCELA ON (SCONTRATO.CODCOLIGADA = SPARCELA.CODCOLIGADA AND SCONTRATO.RA = SPARCELA.RA AND SCONTRATO.IDPERLET = SPARCELA.IDPERLET AND SCONTRATO.CODCONTRATO = SPARCELA.CODCONTRATO) JOIN DBO.SLAN ON (SCONTRATO.CODCOLIGADA = SLAN.CODCOLIGADA AND SPARCELA.IDPARCELA = SLAN.IDPARCELA) JOIN DBO.FLAN ON (SCONTRATO.CODCOLIGADA = FLAN.CODCOLIGADA AND SLAN.IDLAN = FLAN.IDLAN) JOIN DBO.SALUNO ON (SCONTRATO.CODCOLIGADA = SALUNO.CODCOLIGADA AND SCONTRATO.RA = SALUNO.RA) JOIN DBO.PPESSOA ON (SALUNO.CODPESSOA = PPESSOA.CODIGO) JOIN DBO.STIPOCURSO ON (SCONTRATO.CODCOLIGADA = STIPOCURSO.CODCOLIGADA AND SCONTRATO.CODTIPOCURSO = STIPOCURSO.CODTIPOCURSO) JOIN DBO.SHABILITACAOFILIAL ON (SCONTRATO.CODCOLIGADA = SHABILITACAOFILIAL.CODCOLIGADA AND SCONTRATO.IDHABILITACAOFILIAL = SHABILITACAOFILIAL.IDHABILITACAOFILIAL) JOIN DBO.SCURSO ON (SCONTRATO.CODCOLIGADA = SCURSO.CODCOLIGADA AND SHABILITACAOFILIAL.CODTIPOCURSO = SCURSO.CODTIPOCURSO AND SHABILITACAOFILIAL.CODCURSO = SCURSO.CODCURSO) JOIN DBO.SPLETIVO ON (SCONTRATO.CODCOLIGADA = SPLETIVO.CODCOLIGADA AND SCONTRATO.IDPERLET = SPLETIVO.IDPERLET) JOIN DBO.SHABILITACAOFILIALPL ON (SCONTRATO.CODCOLIGADA = SHABILITACAOFILIALPL.CODCOLIGADA AND SHABILITACAOFILIAL.IDHABILITACAOFILIAL = SHABILITACAOFILIALPL.IDHABILITACAOFILIAL) JOIN DBO.SSERVICO ON (SCONTRATO.CODCOLIGADA = SSERVICO.CODCOLIGADA AND SPARCELA.CODSERVICO = SSERVICO.CODSERVICO) JOIN DBO.SMATRICULA ON (SCONTRATO.CODCOLIGADA = SMATRICULA.CODCOLIGADA AND SCONTRATO.RA = SMATRICULA.RA AND SCONTRATO.IDPERLET = SMATRICULA.IDPERLET AND SHABILITACAOFILIAL.IDHABILITACAOFILIAL = SMATRICULA.IDHABILITACAOFILIAL) JOIN DBO.SSTATUS ON (SMATRICULA.CODCOLIGADA = SSTATUS.CODCOLIGADA AND SMATRICULA.CODSTATUS = SSTATUS.CODSTATUS ) JOIN FILTRO_TIPOCURSO ON (FILTRO_TIPOCURSO.TIPOCURSO = SCURSO.CODTIPOCURSO) JOIN FILTRO_CURSO ON (FILTRO_CURSO.CURSO = SCURSO.CODCURSO) WHERE FLAN.STATUSLAN NOT IN (0,4) /*AND year(FLAN.DATAVENCIMENTO) >= 2016*/ AND YEAR(FLAN.MESDECOMPETENCIA) = 2023 /*:COMPETENCIAANO*/ AND MONTH(FLAN.MESDECOMPETENCIA) = 4 /*:COMPETENCIAMES*/ AND SSERVICO.CODSERVICO IN (1282) /*(:CODSERVICO)*/ AND SSTATUS.CODSTATUS IN (14) /*(:CODSTATUS)*/ ORDER BY STIPOCURSO.NOME, SCURSO.NOME, PPESSOA.NOME,SPARCELA.PARCELA
  3. Boa tarde @luisgustavogomes ! Ao executar a consulta direto no SQL Server funciona. Após incorporar consulta no RM Reports através da tela de 'Editar Sentença' ocorrem alguns erros e o relatório não retorna nenhum registro (fornecendo os mesmos dados para os parâmetros definidos na consulta) Você já se deparou com esses erros e mensagens? Consegue me orientar? 1 - logo após clicar em Salvar 2- logo após fechar a primeira mensagem exibida 3- após clicar em OK, da tela de Editar Sentença Consulta que está sendo usada... /* faturamento - analitico */ SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; SET NOCOUNT ON; DECLARE @CODCOLIGADA INT = 0 DECLARE @CODTIPOCURSO VARCHAR(500) = :CODTIPOCURSO DECLARE @CODCURSO VARCHAR(500) = :CODCURSO ;WITH FILTRO_TIPOCURSO AS ( SELECT FS.ID, CONVERT(INT,FS.PALAVRA) AS 'TIPOCURSO' FROM [dbo].[fncSplitTexto](@CODTIPOCURSO, ',') FS ) , FILTRO_CURSO AS ( SELECT FS.ID, CONVERT(INT,FS.PALAVRA) AS 'CURSO' FROM [dbo].[fncSplitTexto](@CODCURSO, ',') FS ) SELECT DISTINCT SCURSO.CODCURSO ,SCURSO.NOME CURSO ,STIPOCURSO.CODTIPOCURSO ,STIPOCURSO.NOME TIPOCURSO ,YEAR(FLAN.DATAVENCIMENTO) ANO ,SCONTRATO.RA MATRICULA ,PPESSOA.NOME NOME ,SPARCELA.PARCELA PARCELA ,SPLETIVO.CODPERLET ,FLAN.VALORORIGINAL VALOR ,FLAN.DATAVENCIMENTO FROM DBO.SCONTRATO (NOLOCK) JOIN DBO.SPARCELA (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SPARCELA.CODCOLIGADA AND SCONTRATO.RA = SPARCELA.RA AND SCONTRATO.IDPERLET = SPARCELA.IDPERLET AND SCONTRATO.CODCONTRATO = SPARCELA.CODCONTRATO) JOIN DBO.SLAN (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SLAN.CODCOLIGADA AND SPARCELA.IDPARCELA = SLAN.IDPARCELA) JOIN DBO.FLAN (NOLOCK) ON (SCONTRATO.CODCOLIGADA = FLAN.CODCOLIGADA AND SLAN.IDLAN = FLAN.IDLAN) JOIN DBO.SALUNO (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SALUNO.CODCOLIGADA AND SCONTRATO.RA = SALUNO.RA) JOIN DBO.PPESSOA (NOLOCK) ON (SALUNO.CODPESSOA = PPESSOA.CODIGO) JOIN DBO.STIPOCURSO (NOLOCK) ON (SCONTRATO.CODCOLIGADA = STIPOCURSO.CODCOLIGADA AND SCONTRATO.CODTIPOCURSO = STIPOCURSO.CODTIPOCURSO) JOIN DBO.SHABILITACAOFILIAL (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SHABILITACAOFILIAL.CODCOLIGADA AND SCONTRATO.IDHABILITACAOFILIAL = SHABILITACAOFILIAL.IDHABILITACAOFILIAL) JOIN DBO.SCURSO (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SCURSO.CODCOLIGADA AND SHABILITACAOFILIAL.CODTIPOCURSO = SCURSO.CODTIPOCURSO AND SHABILITACAOFILIAL.CODCURSO = SCURSO.CODCURSO) JOIN DBO.SPLETIVO (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SPLETIVO.CODCOLIGADA AND SCONTRATO.IDPERLET = SPLETIVO.IDPERLET) JOIN DBO.SHABILITACAOFILIALPL (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SHABILITACAOFILIALPL.CODCOLIGADA AND SHABILITACAOFILIAL.IDHABILITACAOFILIAL = SHABILITACAOFILIALPL.IDHABILITACAOFILIAL) JOIN DBO.SSERVICO (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SSERVICO.CODCOLIGADA AND SPARCELA.CODSERVICO = SSERVICO.CODSERVICO) JOIN DBO.SMATRICULA (NOLOCK) ON (SCONTRATO.CODCOLIGADA = SMATRICULA.CODCOLIGADA AND SCONTRATO.RA = SMATRICULA.RA AND SCONTRATO.IDPERLET = SMATRICULA.IDPERLET AND SHABILITACAOFILIAL.IDHABILITACAOFILIAL = SMATRICULA.IDHABILITACAOFILIAL) JOIN DBO.SSTATUS (NOLOCK) ON (SMATRICULA.CODCOLIGADA = SSTATUS.CODCOLIGADA AND SMATRICULA.CODSTATUS = SSTATUS.CODSTATUS ) JOIN FILTRO_TIPOCURSO (NOLOCK) ON (FILTRO_TIPOCURSO.TIPOCURSO = SCURSO.CODTIPOCURSO) JOIN FILTRO_CURSO (NOLOCK) ON (FILTRO_CURSO.CURSO = SCURSO.CODCURSO) WHERE FLAN.STATUSLAN NOT IN (0,4) /*AND year(FLAN.DATAVENCIMENTO) >= 2016*/ AND YEAR(FLAN.MESDECOMPETENCIA) = 2023 /*:COMPETENCIAANO*/ AND MONTH(FLAN.MESDECOMPETENCIA) = 4 /*:COMPETENCIAMES*/ AND SSERVICO.CODSERVICO IN (1282) /*(:CODSERVICO)*/ AND SSTATUS.CODSTATUS IN (14) /*(:CODSTATUS)*/ ORDER BY STIPOCURSO.NOME, SCURSO.NOME, PPESSOA.NOME,SPARCELA.PARCELA
  4. Bom dia @luisgustavogomes ! Criei a função 'fncSplitTexto' porém, não consegui aplicar na consulta com sucesso me baseando no seu exemplo do post de 10/05/2022. O 'COMPATIBILITY_LEVEL' do meu banco 'CorporeRM' é 110 e acredito que isso é algo que não posso alterar. Encaminho a consulta original anexada a mensagem sem usar a função. Preciso aplicar a 'fncSplitTexto' em todos campos mencionados no WHERE que estão usando a clausula 'IN', isso seria possível? Caso não tome muito seu tempo poderia me exemplificar o uso da função em apenas um dos campos da filtragem da minha consulta? Atenciosamente, Lucas de Oliveira Guimaraes SQLQuery4.sql
  5. Olá Pessoal, bom dia! Estou utilizando parâmetros em um relatório cuja fonte de dados é uma consulta SQL própria/customizada. O parâmetro TIPOCURSO precisa comportar mais de um dado caso o usuário queira e para isso a consulta SQL foi ajustada para essa filtragem usando a linha 'AND STIPOCURSO.CODTIPOCURSO IN (:TIPOCURSO)' no WHERE. Porém quando usuário usa esse parâmetro, só está retornando registros quando é informado apenas um valor (exemplo: 1) para TIPOCURSO, caso o usuário queira visualizar informações e mais de um TIPOCURSO (exemplo: 1,2) não é retornado nenhum registro. Minha duvida é, se isso é possível fazer usando parâmetros e se estou fazendo da maneira correta Anexei a mensagem uma imagem de como foi realizado esse processo Atenciosamente, Lucas de Oliveira Guimarães.
×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.