Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qua Nov 20, 2013 3:49 pm Assunto: Ajuda a montar o select? {Resolvido} |
|
|
Boa tarde, tenho um banco em firebird 1.5 e preciso montar um select
Código: | select
relatorios.permissoes,
case relatorios.modulo
when 'AGENDA' then
'Agenda'
when 'AGETEL' then
'Agenda Telefone'
when 'BONIFI' then
'Bonificação'
when 'CADCLI' then
'Cadastro de Clientes'
when 'CADCNV' then
'Cadastro de Convênio'
when 'CADCOC' then
'Cadastro de Contas Correntes'
when 'CADFMT' then
'Cadastro de Fomentador'
when 'CADFOR' then
'Cadastro de Fornecedor'
when 'CADPAC' then
'Cadastro de Pacotes'
when 'CADPRF' then
'Cadastro de Pacotes'
when 'CADUSU' then
'Cadastro de Usuários'
when 'CATPTO' then
'Catalogo de Pontos'
when 'CENCUS' then
'Centro de Custo'
when 'CONCHQ' then
'Controle Cheque'
when 'CONGOR' then
'Controle de Gorgeta'
when 'CONTAS' then
'Contas'
when 'DHISVE' then
'Histórico de Vendas'
when 'DIVCLI' then
'Dividas do Cliente'
when 'FCHCLI' then
'Ficha do Cliente'
when 'FCHFOR' then
'Ficha do Fornecedor'
when 'FCHPAC' then
'Ficha do Pacote'
when 'FCHPRF' then
'Ficha do Profissional'
when 'FCHPRO' then
'Ficha do Produto'
when 'FCHSERV' then
'Ficha do Serviço'
when 'FCHUSU' then
'Ficha do Usuário'
when 'FFCHCX' then
'Fechamento de Caixa'
when 'FORPAG' then
'Forma de Pagamento'
when 'GRUHAB' then
'Grupos de Habilidades'
when 'HISVEN' then
'Histórico de Vendas'
when 'HISVPR' then
'Histórico de Vendas ao Profissional'
when 'MALDIR' then
'Mala Direta'
when 'MOVCBN' then
'Movimentações das Contas Bancárias'
when 'MOVEST' then
'Movimentações no Estoque'
when 'ORDSERV' then
'Ordem de Serviços'
when 'PRORAT' then
'Rateio do Profissional/Assistente'
when 'TABPRO' then
'Tabela de Produtos'
when 'TABSERV' then
'Tabela de Serviços'
when 'TIPUSU' then
'Tipo de Usuários'
else
'Módulo não localizado'
end as MODULOS,
relatorios.TITULO,
relatorios.AUTOR,
relatorios.DESCRICAO,
relatorios.MODULO
From relatorios
FULL JOIN permissao_gerenciadorrelatorios ON(relatorios.modulo = permissao_gerenciadorrelatorios.modulo
AND relatorios.titulo = permissao_gerenciadorrelatorios.titulo AND relatorios.autor =
permissao_gerenciadorrelatorios.autor)
WHERE permissao_gerenciadorrelatorios.tipo = :pTIPO
order by 2 |
Ai do jeito que eu fiz me traz apenas o que esta no parâmetro, mais preciso trazer também neste select todos que tem permissão NULL ou esteja como NÃO, e não esta dando certo desta forma ai.
Alguém pode me ajudar?
Será que vou ter que inserir todos os dados que tenho na tabela RELATORIOS na tabela permissao_gerenciadorrelatorios ?
São 2 tabelas envolvidas.
Obrigado. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree
Editado pela última vez por adriano_servitec em Sex Nov 22, 2013 6:05 pm, num total de 1 vez |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qua Nov 20, 2013 4:09 pm Assunto: |
|
|
Porque esta tabela esta sendo populada conforme vou passando num checkbox do dbgrid que fiz
fiz um método para tratar isso
Código: | procedure GravarDados_tbPermissaoGerRel(Gravar: Boolean);
begin
with QryPermissaoGerenciardorRel do
begin
Close;
SQL.Clear;
//Grava na tabela
if Gravar then
begin
SQL.Text := ' INSERT INTO PERMISSAO_GERENCIADORRELATORIOS '+
' ( TIPO, MODULO, TITULO, AUTOR ) '+
' VALUES (:pTIPO, :pMODULO, :pTITULO,:pAUTOR )';
end
else
//Excluir na tabela
begin
SQL.Text := ' DELETE FROM PERMISSAO_GERENCIADORRELATORIOS '+
' WHERE '+
' TIPO = :pTIPO '+
' AND MODULO = :pMODULO '+
' AND TITULO = :pTITULO '+
' AND AUTOR = :pAUTOR ';
end;
ParamByName('pTIPO').AsString := DBEdt_Tipo.Text;
ParamByName('pMODULO').AsString := IBDS_GerenciadorRelatorios.FieldByName('MODULO').AsString;
ParamByName('pTITULO').AsString := IBDS_GerenciadorRelatorios.FieldByName('TITULO').AsString;
ParamByName('pAUTOR').AsString := IBDS_GerenciadorRelatorios.FieldByName('AUTOR').AsString;
ExecSQL;
end;
end; |
E chamo o método aqui
Código: | procedure TF_Tipo_Usuario.gradeGerenciadorRelatoriosCellClick(
Column: TColumn);
procedure GravarDados_tbPermissaoGerRel(Gravar: Boolean);
begin
with QryPermissaoGerenciardorRel do
begin
Close;
SQL.Clear;
//Grava na tabela
if Gravar then
begin
SQL.Text := ' INSERT INTO PERMISSAO_GERENCIADORRELATORIOS '+
' ( TIPO, MODULO, TITULO, AUTOR ) '+
' VALUES (:pTIPO, :pMODULO, :pTITULO,:pAUTOR )';
end
else
//Excluir na tabela
begin
SQL.Text := ' DELETE FROM PERMISSAO_GERENCIADORRELATORIOS '+
' WHERE '+
' TIPO = :pTIPO '+
' AND MODULO = :pMODULO '+
' AND TITULO = :pTITULO '+
' AND AUTOR = :pAUTOR ';
end;
ParamByName('pTIPO').AsString := DBEdt_Tipo.Text;
ParamByName('pMODULO').AsString := IBDS_GerenciadorRelatorios.FieldByName('MODULO').AsString;
ParamByName('pTITULO').AsString := IBDS_GerenciadorRelatorios.FieldByName('TITULO').AsString;
ParamByName('pAUTOR').AsString := IBDS_GerenciadorRelatorios.FieldByName('AUTOR').AsString;
ExecSQL;
end;
end;
begin
if Column.Field = IBDS_GerenciadorRelatorios.Fields[0] then
begin
IBDS_GerenciadorRelatorios.Edit;
if IBDS_GerenciadorRelatorios.FieldByName('PERMISSOES').AsString = 'Sim' then
begin
IBDS_GerenciadorRelatorios.FieldByName('PERMISSOES').AsString := 'Não';
GravarDados_tbPermissaoGerRel(False);
end
else
begin
IBDS_GerenciadorRelatorios.FieldByName('PERMISSOES').AsString := 'Sim';
GravarDados_tbPermissaoGerRel(True);
end;
try
IBDS_GerenciadorRelatorios.Post;
Interbase.IBTr_Application.CommitRetaining;
except
on E: Exception do
begin
Interbase.IBTr_Application.Rollback;
AzShowPlusMessage(ExtraiMensagemExceptDB( E.Message ), 35, 2)
end
else
raise;
end;
end;
end; |
Funciona, mais ai quando eu marcar no check do grid adiciona, quando desmarcar deleta da tabela.
Mais eu quero que ao selecionar no parametro, mostrar todos dele selecionado e os que não estão selecionado também, só que quando trocar para outro no parametro do select fazer o mesmo, mais mostrar os que eu marquei para ele e os que não estão marcados também.
Não sei se compliquei na explicação.
Obrigado. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
|
Voltar ao Topo |
|
 |
imex Moderador

Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qui Nov 21, 2013 9:19 am Assunto: |
|
|
Bom dia,
Voce diz deixar assim o select?
Código: | select
relatorios.permissoes,
case relatorios.modulo
when 'AGENDA' then
'Agenda'
when 'AGETEL' then
'Agenda Telefone'
when 'BONIFI' then
'Bonificação'
when 'CADCLI' then
'Cadastro de Clientes'
when 'CADCNV' then
'Cadastro de Convênio'
when 'CADCOC' then
'Cadastro de Contas Correntes'
when 'CADFMT' then
'Cadastro de Fomentador'
when 'CADFOR' then
'Cadastro de Fornecedor'
when 'CADPAC' then
'Cadastro de Pacotes'
when 'CADPRF' then
'Cadastro de Pacotes'
when 'CADUSU' then
'Cadastro de Usuários'
when 'CATPTO' then
'Catalogo de Pontos'
when 'CENCUS' then
'Centro de Custo'
when 'CONCHQ' then
'Controle Cheque'
when 'CONGOR' then
'Controle de Gorgeta'
when 'CONTAS' then
'Contas'
when 'DHISVE' then
'Histórico de Vendas'
when 'DIVCLI' then
'Dividas do Cliente'
when 'FCHCLI' then
'Ficha do Cliente'
when 'FCHFOR' then
'Ficha do Fornecedor'
when 'FCHPAC' then
'Ficha do Pacote'
when 'FCHPRF' then
'Ficha do Profissional'
when 'FCHPRO' then
'Ficha do Produto'
when 'FCHSERV' then
'Ficha do Serviço'
when 'FCHUSU' then
'Ficha do Usuário'
when 'FFCHCX' then
'Fechamento de Caixa'
when 'FORPAG' then
'Forma de Pagamento'
when 'GRUHAB' then
'Grupos de Habilidades'
when 'HISVEN' then
'Histórico de Vendas'
when 'HISVPR' then
'Histórico de Vendas ao Profissional'
when 'MALDIR' then
'Mala Direta'
when 'MOVCBN' then
'Movimentações das Contas Bancárias'
when 'MOVEST' then
'Movimentações no Estoque'
when 'ORDSERV' then
'Ordem de Serviços'
when 'PRORAT' then
'Rateio do Profissional/Assistente'
when 'TABPRO' then
'Tabela de Produtos'
when 'TABSERV' then
'Tabela de Serviços'
when 'TIPUSU' then
'Tipo de Usuários'
else
'Módulo não localizado'
end as MODULOS,
relatorios.TITULO,
relatorios.AUTOR,
relatorios.DESCRICAO,
permissao_gerenciadorrelatorios.tipo,
relatorios.MODULO
From relatorios
FULL JOIN permissao_gerenciadorrelatorios ON(relatorios.modulo = permissao_gerenciadorrelatorios.modulo
AND relatorios.titulo = permissao_gerenciadorrelatorios.titulo AND relatorios.autor =
permissao_gerenciadorrelatorios.autor)
and permissao_gerenciadorrelatorios.tipo = :pTIPO
order by 2 |
Se for, não deu certo porque quando seleciono qualquer um dos meus TIPOS aqui ele faz o mesmo select.
Obrigado. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
imex Moderador

Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
Enviada: Qui Nov 21, 2013 9:41 am Assunto: |
|
|
Acredito que a quantidade de linhas retornada seja a mesma mas o valor do campo permissao_gerenciadorrelatorios.tipo deve estar variando de acordo com o parâmetro. Ou não está ocorrendo isso? |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qui Nov 21, 2013 9:50 am Assunto: |
|
|
imex escreveu: | Acredito que a quantidade de linhas retornada seja a mesma mas o valor do campo permissao_gerenciadorrelatorios.tipo deve estar variando de acordo com o parâmetro. Ou não está ocorrendo isso? | Sim muda, mais como posso explicar
O primeiro campo chamado permissão eu estou marcando no checkbox
ai tenho no campo TIPO dois cadastros diferentes
CADASTROS
SEM MOBILE
Selecionei o TIPO SEM MOBILE
Ai no checkbox marquei dois arquivos como SIM e o restante NÃO,isso na tabela RELATORIOS no campo PERMISSÕES.
Mais queria que aparecesse estes dois campos marcados apenas para este TIPO sem mobile, mais o que esta acontecendo é que esta aparecendo os mesmo marcados para o TIPO CADASTROS.
É dificil de explicar o que preciso, mais vou tentar explicar.
Obrigado. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qui Nov 21, 2013 10:04 am Assunto: |
|
|
Imex, vou tentar mostrar com imagens
Tenho a tabela RELATORIOS
Ai no form seleciono por exemplo o TIPO "CADASTRO" ai vou dando check no grid para marcar e o campo PERMISSAO vai mudando conforme vou marcando no grid para "Sim" ou "Não" se desmarcar na grid.
E quando faço isso eu vou incluindo ou deletando na tabela PERMISSAO_GERENCIADORRELATORIOS, conforme imagem
Foi esta a ideia que tive a principio, mais no select se eu selecionar o TIPO "SEM MOBILE" vem todos check na grid os que marquei para o TIPO "CADASTROS" também conforme imagem
Não sei se da nesta confição ai mostrar todos os que estão marcados para o TIPO que selecionei e o restante mostrar na grade desmarcados.
Estou achando que isso da forma que preciso é praticamente impossível, mais vamos ver, se tem alguma ideia.
Obrigado. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
imex Moderador

Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
Enviada: Qui Nov 21, 2013 10:28 am Assunto: |
|
|
Experimente alterar o Full Join para Left Join, mantendo o And no lugar do Where, para ver se é obtido o resultado desejado.
Espero que ajude. |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qui Nov 21, 2013 12:18 pm Assunto: |
|
|
Desta forma com LEFT no select fica igual
Exemplo:
Eu desmarquei todos na tabela PERMISSAO_GERENCIADORRELATORIOS e marquei apenas este aqui "Agendamento por Sala no período"
Ai o select esta assim
Código: | select
relatorios.permissoes,
case relatorios.modulo
when 'AGENDA' then
'Agenda'
when 'AGETEL' then
'Agenda Telefone'
when 'BONIFI' then
'Bonificação'
when 'CADCLI' then
'Cadastro de Clientes'
when 'CADCNV' then
'Cadastro de Convênio'
when 'CADCOC' then
'Cadastro de Contas Correntes'
when 'CADFMT' then
'Cadastro de Fomentador'
when 'CADFOR' then
'Cadastro de Fornecedor'
when 'CADPAC' then
'Cadastro de Pacotes'
when 'CADPRF' then
'Cadastro de Pacotes'
when 'CADUSU' then
'Cadastro de Usuários'
when 'CATPTO' then
'Catalogo de Pontos'
when 'CENCUS' then
'Centro de Custo'
when 'CONCHQ' then
'Controle Cheque'
when 'CONGOR' then
'Controle de Gorgeta'
when 'CONTAS' then
'Contas'
when 'DHISVE' then
'Histórico de Vendas'
when 'DIVCLI' then
'Dividas do Cliente'
when 'FCHCLI' then
'Ficha do Cliente'
when 'FCHFOR' then
'Ficha do Fornecedor'
when 'FCHPAC' then
'Ficha do Pacote'
when 'FCHPRF' then
'Ficha do Profissional'
when 'FCHPRO' then
'Ficha do Produto'
when 'FCHSERV' then
'Ficha do Serviço'
when 'FCHUSU' then
'Ficha do Usuário'
when 'FFCHCX' then
'Fechamento de Caixa'
when 'FORPAG' then
'Forma de Pagamento'
when 'GRUHAB' then
'Grupos de Habilidades'
when 'HISVEN' then
'Histórico de Vendas'
when 'HISVPR' then
'Histórico de Vendas ao Profissional'
when 'MALDIR' then
'Mala Direta'
when 'MOVCBN' then
'Movimentações das Contas Bancárias'
when 'MOVEST' then
'Movimentações no Estoque'
when 'ORDSERV' then
'Ordem de Serviços'
when 'PRORAT' then
'Rateio do Profissional/Assistente'
when 'TABPRO' then
'Tabela de Produtos'
when 'TABSERV' then
'Tabela de Serviços'
when 'TIPUSU' then
'Tipo de Usuários'
else
'Módulo não localizado'
end as MODULOS,
relatorios.TITULO,
relatorios.AUTOR,
relatorios.DESCRICAO,
permissao_gerenciadorrelatorios.tipo,
relatorios.MODULO
From relatorios
left JOIN permissao_gerenciadorrelatorios ON(relatorios.modulo = permissao_gerenciadorrelatorios.modulo
AND relatorios.titulo = permissao_gerenciadorrelatorios.titulo AND relatorios.autor =
permissao_gerenciadorrelatorios.autor)
and permissao_gerenciadorrelatorios.tipo = :pTIPO
order by 2 |
E ai passei o parametro CADASTROS no pTIPO, e se observar o CADASTRO não tem nada na tabela PERMISSAO_GERENCIADORRELATORIOS
E o result do select é este
Se reparar a coluna TIPO não aparece nada no primeiro item da tabela, mais na coluna PERMISOES aparece como 'Sim'
Agora se eu passar no parametro pTIPO SEM MOBILE o resultado do select é este
Neste caso ai aparece na coluna TIPO o tipo que esta cadastrado na tabela PERMISSAO_GERENCIADORRELATORIOS, então estaria correto este mostrar o 'Sim' no campo PERMISSOES deste select
Obrigado. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
imex Moderador

Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
Enviada: Qui Nov 21, 2013 1:00 pm Assunto: |
|
|
Acho que nesse caso não deve ser utilizado esse campo Permissoes da tabela Relatorios para marcar ou não os CheckBoxes.
Se você editar esse registro do relatório "Agendamento por Sala no período" e colocar "Não" vai obter esse valor para os dois tipos ("Cadastro" e "Sem mobile").
Sugeri adicionar o campo Tipo no Select para poder marcar os CheckBoxes. Quando é nulo não teria a permissão. Ou então experimente trocar a coluna Tipo do Select por
Código: | case when permissao_gerenciadorrelatorios.tipo is null then 'Não' else 'Sim' end as TemPermissao, |
Espero que ajude. |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qui Nov 21, 2013 1:56 pm Assunto: |
|
|
imex escreveu: | Acho que nesse caso não deve ser utilizado esse campo Permissoes da tabela Relatorios para marcar ou não os CheckBoxes.
Se você editar esse registro do relatório "Agendamento por Sala no período" e colocar "Não" vai obter esse valor para os dois tipos ("Cadastro" e "Sem mobile").
Sugeri adicionar o campo Tipo no Select para poder marcar os CheckBoxes. Quando é nulo não teria a permissão. Ou então experimente trocar a coluna Tipo do Select por
Código: | case when permissao_gerenciadorrelatorios.tipo is null then 'Não' else 'Sim' end as TemPermissao, |
Espero que ajude. | Imex, acho que estou começando a entender sua ideia.
Vou mudar aqui pra ver.
Depois volto a postar. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qui Nov 21, 2013 2:50 pm Assunto: |
|
|
Da para eu incluir o checkd do checkbox sem gravar os dados no banco?
Ai posso dar um refresh do dataset quando sair do form, assim ao dar o refresh fica esquisito a dbgrid.
E aproveitando o post, tem como criar um select com DISTINCT + ou - da mesma forma do outro?
Quero agrupar pelo segundo campo
Código: | select distinct
case when permissao_gerenciadorrelatorios.tipo is null then
'Não'
else
'Sim'
end as TemPermissao,
case relatorios.modulo
when 'AGENDA' then
'Agenda'
when 'AGETEL' then
'Agenda Telefone'
when 'BONIFI' then
'Bonificação'
when 'CADCLI' then
'Cadastro de Clientes'
when 'CADCNV' then
'Cadastro de Convênio'
when 'CADCOC' then
'Cadastro de Contas Correntes'
when 'CADFMT' then
'Cadastro de Fomentador'
when 'CADFOR' then
'Cadastro de Fornecedor'
when 'CADPAC' then
'Cadastro de Pacotes'
when 'CADPRF' then
'Cadastro de Pacotes'
when 'CADUSU' then
'Cadastro de Usuários'
when 'CATPTO' then
'Catalogo de Pontos'
when 'CENCUS' then
'Centro de Custo'
when 'CONCHQ' then
'Controle Cheque'
when 'CONGOR' then
'Controle de Gorgeta'
when 'CONTAS' then
'Contas'
when 'DHISVE' then
'Histórico de Vendas'
when 'DIVCLI' then
'Dividas do Cliente'
when 'FCHCLI' then
'Ficha do Cliente'
when 'FCHFOR' then
'Ficha do Fornecedor'
when 'FCHPAC' then
'Ficha do Pacote'
when 'FCHPRF' then
'Ficha do Profissional'
when 'FCHPRO' then
'Ficha do Produto'
when 'FCHSERV' then
'Ficha do Serviço'
when 'FCHUSU' then
'Ficha do Usuário'
when 'FFCHCX' then
'Fechamento de Caixa'
when 'FORPAG' then
'Forma de Pagamento'
when 'GRUHAB' then
'Grupos de Habilidades'
when 'HISVEN' then
'Histórico de Vendas'
when 'HISVPR' then
'Histórico de Vendas ao Profissional'
when 'MALDIR' then
'Mala Direta'
when 'MOVCBN' then
'Movimentações das Contas Bancárias'
when 'MOVEST' then
'Movimentações no Estoque'
when 'ORDSERV' then
'Ordem de Serviços'
when 'PRORAT' then
'Rateio do Profissional/Assistente'
when 'TABPRO' then
'Tabela de Produtos'
when 'TABSERV' then
'Tabela de Serviços'
when 'TIPUSU' then
'Tipo de Usuários'
else
'Módulo não localizado'
end as MODULOS,
relatorios.MODULO
From relatorios
left JOIN permissao_gerenciadorrelatorios ON(relatorios.modulo = permissao_gerenciadorrelatorios.modulo
AND relatorios.titulo = permissao_gerenciadorrelatorios.titulo AND relatorios.autor =
permissao_gerenciadorrelatorios.autor)
and permissao_gerenciadorrelatorios.tipo = :pTIPO
order by 2 |
_________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
imex Moderador

Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
Enviada: Qui Nov 21, 2013 3:33 pm Assunto: |
|
|
Não consegui entender direito a questão do Refresh, mas a principio será necessário ter o registro na tabela permissao_gerenciadorrelatorios para marcar o CheckBox.
E sobre o Distinct, a finalidade e saber se determinado tipo tem permissão para todos os relatórios? E se tiver para alguns e não tiver para outros? |
|
Voltar ao Topo |
|
 |
|