thiago.severino Postado 3 de Abril de 2013 Tópicos Que Criei: 3 Tópicos/Dia: 0.00 Meu Conteúdo: 11 Conteúdo/Dia: 0.00 Reputação: 1 Pontos/Conquistas: 95 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Denunciar Compartilhar Postado 3 de Abril de 2013 Pessoal, boa tarde! Em um movimento que possui aprovação, estou tentando fazer um filtro por perfil para que usuários desse perfil só consigam visualizar movimentos aprovados. O filtro está funcionando perfeitamente, mas o usuário desse perfil não consegue visualizar nenhum movimento que não seja os aprovados. Exemplo: Usuário José só pode visualizar os movimentos aprovados do Mov. 1.1.01. Isso está ocorrendo perfeitamente com o filtro. O problema ocorre quando José tenta acessar outros Mov., como o 1.1.00 ou 1.1.03. Todos os movimentos lá dentro somem. O filtro foi bem simples, da seguinte forma: SELECT TMOV.IDMOV FROM TMOV, TMOVAPROVA WHERE TMOV.IDMOV = TMOVAPROVA.IDMOV Entendo que o sistema está se comportando de maneira correta, pois o filtro manda que somente movimentos aprovados sejam mostrados para o José. Preciso de uma condicional que faça com que essa limitação ocorra somente no Mov 1.1.01. Tentei colocar ao final desse select essa condição: AND TMOV.CODTMV = '1.1.01' Mas não altera em nada o resultado. Gostaria de ajuda de voces para formar uma condicional para este caso. Imagino que ela deva ocorrer antes do select, mas não estou sabendo como proceder. Desde já agradeço! Att, Thiago Henriques Severino Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
João Rodrigo Postado 3 de Abril de 2013 Tópicos Que Criei: 6 Tópicos/Dia: 0.00 Meu Conteúdo: 290 Conteúdo/Dia: 0.06 Reputação: 17 Pontos/Conquistas: 1.523 Conteúdo Resolvido: 0 Dias Ganho: 12 Status: Offline Denunciar Compartilhar Postado 3 de Abril de 2013 Thiago, os movimentos 1.1.00 ou 1.1.03 ( ou outros) possuem "aprovação"? faça um teste com este select e me fale o resultado: SELECT TMOV.IDMOV FROM TMOV, TMOVAPROVA WHERE (TMOV.IDMOV *= TMOVAPROVA.IDMOV) 1 Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
thiago.severino Postado 3 de Abril de 2013 Tópicos Que Criei: 3 Tópicos/Dia: 0.00 Meu Conteúdo: 11 Conteúdo/Dia: 0.00 Reputação: 1 Pontos/Conquistas: 95 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Autor Denunciar Compartilhar Postado 3 de Abril de 2013 Thiago, os movimentos 1.1.00 ou 1.1.03 ( ou outros) possuem "aprovação"? faça um teste com este select e me fale o resultado: SELECT TMOV.IDMOV FROM TMOV, TMOVAPROVA WHERE (TMOV.IDMOV *= TMOVAPROVA.IDMOV) Por enquanto, o único movimento que utiliza aprovação é o 1.1.01. Com esse SELECT que você passou, selecionou todos os movimentos existentes no Nucleus quando fiz a consulta. E no usuário do Perfil, deu este erro para qualquer movimento que eu entre utilizando esse filtro: Ocorreu um erro ao efetuar a leitura da visão: Outer join operators cannot be specified in a query containing joined tables. Obrigado! Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
João Rodrigo Postado 3 de Abril de 2013 Tópicos Que Criei: 6 Tópicos/Dia: 0.00 Meu Conteúdo: 290 Conteúdo/Dia: 0.06 Reputação: 17 Pontos/Conquistas: 1.523 Conteúdo Resolvido: 0 Dias Ganho: 12 Status: Offline Denunciar Compartilhar Postado 3 de Abril de 2013 você pode enviar um print do seu filtro? 1 Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
thiago.severino Postado 3 de Abril de 2013 Tópicos Que Criei: 3 Tópicos/Dia: 0.00 Meu Conteúdo: 11 Conteúdo/Dia: 0.00 Reputação: 1 Pontos/Conquistas: 95 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Autor Denunciar Compartilhar Postado 3 de Abril de 2013 você pode enviar um print do seu filtro? Claro! Segue anexo SS da consulta SQL e do Filtro. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
João Rodrigo Postado 3 de Abril de 2013 Tópicos Que Criei: 6 Tópicos/Dia: 0.00 Meu Conteúdo: 290 Conteúdo/Dia: 0.06 Reputação: 17 Pontos/Conquistas: 1.523 Conteúdo Resolvido: 0 Dias Ganho: 12 Status: Offline Denunciar Compartilhar Postado 3 de Abril de 2013 consegui fazer funcionar com esta query: SELECT f.IDMOV FROM TMOV f, TMOVAPROVA a WHERE (f.IDMOV = a.IDMOV and f.codtmv ='1.1.01') union all SELECT IDMOV FROM TMOV where codtmv <>'1.1.01' 1 Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
thiago.severino Postado 3 de Abril de 2013 Tópicos Que Criei: 3 Tópicos/Dia: 0.00 Meu Conteúdo: 11 Conteúdo/Dia: 0.00 Reputação: 1 Pontos/Conquistas: 95 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Autor Denunciar Compartilhar Postado 3 de Abril de 2013 consegui fazer funcionar com esta query: SELECT f.IDMOV FROM TMOV f, TMOVAPROVA a WHERE (f.IDMOV = a.IDMOV and f.codtmv ='1.1.01') union all SELECT IDMOV FROM TMOV where codtmv <>'1.1.01' João Rodrigo, não sei nem como te agradecer, cara. Na hora da consulta SQL, eu estava esperando como resultado somente os movimentos aprovados. E quando executei sua consulta, me retornou todos os lançamentos novamente. Só ai me dei conta de que, se na consulta me mostrasse somente os aprovados, era só isso que o usuário iria ver. Na consulta tem que mostrar tudo mesmo. Dessa forma ele consegue visualizar todos os movimentos que tem permissão, e no movimento com aprovação ele vê somente os aprovados. Muito obrigado mesmo! Resolvido! Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
João Rodrigo Postado 3 de Abril de 2013 Tópicos Que Criei: 6 Tópicos/Dia: 0.00 Meu Conteúdo: 290 Conteúdo/Dia: 0.06 Reputação: 17 Pontos/Conquistas: 1.523 Conteúdo Resolvido: 0 Dias Ganho: 12 Status: Offline Denunciar Compartilhar Postado 3 de Abril de 2013 maravilha! Disponha! 1 Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
markitu Postado 9 de Abril de 2013 Tópicos Que Criei: 110 Tópicos/Dia: 0.02 Meu Conteúdo: 1.391 Conteúdo/Dia: 0.21 Reputação: 17 Pontos/Conquistas: 8.047 Conteúdo Resolvido: 0 Dias Ganho: 9 Status: Offline Idade: 47 Dispositivo: Windows Denunciar Compartilhar Postado 9 de Abril de 2013 Tópico Fechado / Resolvido. O mesmo foi marcado como resolvido por não haver mais nada a resolver, pelo mesmo ter ficado parado por muito tempo sem o membro que o iniciou voltar a participar ou comentar, ou por não ter mais comentários de nenhum outro membro do Fórum. Qualquer coisa, alguma dúvida ou questionamento sobre o assunto, pode postar novamente que analisaremos, ou se preferir, favor entrar em contato com a administração ou moderação, através do link: Administradores e Moderadores que retiraremos o STATUS de RESOLVIDO do seu título. Se preferir, mande um email para admin@forumrm.com.br Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Participe da conversa
Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.