MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


3 participantes

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    avatar
    Ruiborges
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Ruiborges 8/3/2012, 18:35

    Prezados,

    Fiz uma automatização em um formulário que quando escolho o relatório de uma lista aparece algumas escolhas para preencher (tipo, data inicial, data final etc..).

    Essas escolhas eu coloquei no TAG (marca) do relatório e quando eu mando visualizar, eu busco neste TAG também quais os campos que devo colocar na string SQL.

    Está funcionando muito bem.

    Mas preciso escolher entre dois campos quando uma das escolhas for um certo valor.
    Tentei colocar na TAG um " Case When" mas dá erro na SQL.

    Alguem pode me ajudar?

    A paz
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  criquio 8/3/2012, 19:20

    Coloque o código completo para ver se entendemos melhor. Para mim ficou meio confuso.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    Ruiborges
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Ruiborges 8/3/2012, 19:26

    Evento no formulario:
    Private Sub btImprimir2_Click()
    Dim n As Integer
    Dim dadosFiltro
    Dim ctl As control
    Dim a As Integer
    'Conto a quantidade de campos usados como filtros
    QuantFiltro = 0
    For Each ctl In [Formulario Filtro Relatorio].Controls
    a = ctl.ControlType
    If a = acTextBox Or a = acComboBox Or a = acOptionGroup Then
    QuantFiltro = QuantFiltro + 1
    End If
    Next ctl
    If IsNull(Me!cboLista.Value) Or (Me!cboLista.Value) = "" Then
    MsgBox "Selecione um relatório da lista...", vbInformation, "Aviso"
    Exit Sub
    End If
    Dim strSql As String, intCounter As Integer
    ' Build SQL String.
    IndiceVetor = 0
    For intCounter = 1 To QuantFiltro
    If Not [Formulario Filtro Relatorio]("Filter" & intCounter).Locked Then
    IndiceFiltro = intCounter
    n = IndiceVetor + (QuantFiltroReal)
    If [Formulario Filtro Relatorio]("Filter" & intCounter) <> "" Then
    If [Formulario Filtro Relatorio]("Filter" & intCounter).Name = "Filter1" Or [Formulario Filtro Relatorio]("Filter" & intCounter).Name = "Filter2" Then
    dadosFiltro = fncAcertaData([Formulario Filtro Relatorio]("Filter" & intCounter).Value)
    ElseIf [Formulario Filtro Relatorio]("Filter" & intCounter).Name = "Filter8" Then
    dadosFiltro = [Formulario Filtro Relatorio]("Filter" & intCounter)
    Else
    dadosFiltro = Chr(34) & [Formulario Filtro Relatorio]("Filter" & intCounter) & Chr(34)
    End If
    strSql = strSql & Vetor1(n) & dadosFiltro & " And "
    End If
    IndiceVetor = IndiceVetor + 1
    End If
    Next
    'Retiro o ultimo AND.
    If strSql <> "" Then
    strSql = Left(strSql, (Len(strSql) - 5))
    End If
    DoCmd.OpenReport Me!cboLista.Column(0), acViewReport, , strSql
    End Sub

    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Tag nos relatórios

    1,2,3,4,[DataMovimento]>=,[DataMovimento]<=,[tipomovimento]=,[respmovimento]=


    Tag que tentei alterar

    1,2,5,8,"case [Filtradata] when 1 then [datavencimento]>= when 2 then [datapagamento]>= end",[datavencimento]<=,[fornecedornf]=,[FiltraData]=

    A Paz

    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  criquio 27/3/2012, 14:32

    E aí amigo, conseguiu resolver?


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    Ruiborges
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Ruiborges 27/3/2012, 16:15

    Prezado Criquio,

    Ainda não resolvi. Fiquei na esperança de vc com o código, poder ter uma idéia.

    Mas não desisti. Ainda aceito sugestões.

    A Paz
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Alexandre Neves 27/3/2012, 20:17

    Boa noite, ruiborges
    Explique o que quer dizer com

    Tag nos relatórios

    1,2,3,4,[DataMovimento]>=,[DataMovimento]<=,[tipomovimento]=,[respmovimento]=


    Tag que tentei alterar

    1,2,5,8,"case [Filtradata] when 1 then [datavencimento]>= when 2 then [datapagamento]>= end",[datavencimento]<=,[fornecedornf]=,[FiltraData]=
    avatar
    Ruiborges
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Ruiborges 27/3/2012, 20:32

    A TAG ou Marca são dados extras que podemos armazenar com o objeto, no caso, com o relatório. Está na folha de propriedades do relatório na guia "outra" (access 2007).

    A paz
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Alexandre Neves 27/3/2012, 21:46

    Boa noite,

    E a explicação do resto?
    avatar
    Ruiborges
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Ruiborges 27/3/2012, 22:27

    Tag nos relatórios
    1,2,3,4,[DataMovimento]>=,[DataMovimento]<=,[tipomovimento]=,[respmovimento]=

    Esses são os dados que coloco na TAG do relatório e funciona perfeitamente


    Tag que tentei alterar
    1,2,5,8,"case [Filtradata] when 1 then [datavencimento]>= when 2 then [datapagamento]>= end",[datavencimento]<=,[fornecedornf]=,[FiltraData]=

    Esses são os novos valores que tentei colocar na TAG que deram erro.


    A paz
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  criquio 27/3/2012, 23:16

    Amigão, isso está bastante confuso. Explique melhor o que você precisa fazer.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    Ruiborges
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Ruiborges 27/3/2012, 23:35

    Bem...
    Acho que não sei explicar melhor.
    Já coloquei as informações nas postagens anteriores, inclusive o código.
    Para mim está muito difícil de resolver.
    Mas mesmo assim obrigado.
    A paz
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  criquio 28/3/2012, 00:36

    Amigo, explique a lógica do que você espera dessas linhas. Quando a linha for alguma coisa, deve retornar algo de alguma maneira.

    1,2,3,4,[DataMovimento]>=,[DataMovimento]<=,[tipomovimento]=,[respmovimento]=

    Nessa linha acima,o que quer dizer cada número e cada campo quando "maior ou igual" ou "menor ou igual"? Na outra linha, o que deveria acontecer que não está acontecendo?

    Explique a função desses caracteres para ver se entendemos melhor.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    Ruiborges
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Ruiborges 28/3/2012, 18:31

    Vamos lá.
    Fiz um formulário que me da a possibilidade de escolher qualquer relatório que adiciono ao sistema, através de uma combo.

    Neste formulário existem campos variados que insiro dados para os filtros dos relatórios.
    Por exemplo: Data de inicio; Data de fim; Responsável e etc..
    Esses campos podem ser digitados,em combos ou em caixa de seleção.
    São campos quase todos comums aos relatórios.

    Armazenei uma string na TAG dos reatórios e coloco esta string em um vetor que me diz o seguinte:
    Ex: 1,2,3,4,[DataMovimento]>=,[DataMovimento]<=,[tipomovimento]=,[respmovimento]=
    Os números 1,2,3,4 representam um índice de quais campos vou utilizar do formulario.
    Os dados seguintes são as strings (com os nomes dos campos dos relatórios específicos) que vou colocar dentro da SQL para a filtragem.
    as virgulas separam os os campos.

    Com os indices dos campos varro o formulário e verifico se ele tem algum dado digitado pelo usuário (chamei os campos de campo1; campo2; etc..).
    Vou armazenando esses dados coletados na SQL
    ex: [datamovimento]>=01/03/2012 and [datamovimento]<=10/03/2012 and [tipomovimento]="" and [respmovimento]="Rui Borges"

    O que eu quero fazer é saber qual foi a escolha do usuário em um "grupo de opções" e adiciona-lo a SQL.
    ex:1,2,5,8,"se a escolha for 1 então ([datavencimento]>=) se for 2 então ([datapagamento]>=)",[fornecedornf]=,[FiltraData]=

    Se o usuario escolher a opção 1, significa que escolheu filtrar por "data de vencimento".
    Se escolheu 2, escolheu filtrar por "data de pagamento"
    Preciso que entre a SQL ou só "[datavencimento]>=" ou só "[datapagamento]>=".

    Está tudo funcionando, mas não consigo fazer esta escolha para colocar dentro da SQL.

    Pode me ajudar?

    Muito obrigado. A Paz.





    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Alexandre Neves 28/3/2012, 21:21

    Boa noite, rui

    Parece-me, à primeira vista, que está a embrulhar um bocado. Mas, para facilitar na parte que necessita, utilize a função IIF
    avatar
    Ruiborges
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Ruiborges 29/3/2012, 17:56

    Usei o IIF deu o seguinte erro:

    Erro de sintaxe (operador faltando) na expressão de consulta "iif([Filtradata]=1;"[datavencimento]>=";"[datapagamento]>=)"#1/1/2012# And [datavencimento]<=#1/30/2012# And [FiltraData]=1

    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Alexandre Neves 29/3/2012, 18:16

    Relativamente ao IIf
    iif([Filtradata]=1;"[datavencimento]>=";"[datapagamento]>=")
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Alexandre Neves 30/7/2012, 18:59

    Tópico resolvido, por falta de retorno atempado.

    Conteúdo patrocinado


    [Resolvido]Filtro em relatório usando a propriedade TAG e SQL Empty Re: [Resolvido]Filtro em relatório usando a propriedade TAG e SQL

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 7/5/2024, 19:15