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

2 participantes

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    =>Nois
    =>Nois
    Super Avançado
    Super Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 919
    Registrado : 09/11/2012

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  =>Nois 9/7/2021, 14:12

    Em suma minha consulta é esta:

    'Crio uma consulta normalmente

    Sub Cria_cns_Graf_Prod()

    Dim strSQL As String

    strSQL = "SELECT Sum(Round([Cubagem],3)) AS Prod " & _
    "FROM tbl_produtividade_volumes " & _
    "WHERE (((tbl_produtividade_volumes.Data_Volume_ref)=[Forms]![frm_Painel_Graf]![txtData]) AND ((tbl_produtividade_volumes.Turno_ref) Like [Forms]![frm_Painel_Graf]![txtTurno] & '*'));"

    Dim db As DAO.Database
    Set db = CurrentDb
    Dim qdf As DAO.QueryDef
    Dim newSQL As String

    newSQL = strSQL
    Set qdf = db.CreateQueryDef("cns_Graf_Prod", newSQL)

    End Sub


    'Minha dúvida é ao tentar criar uma tabela temporária a partir da consulta acima não vai pra frente, ao lançar a data manual funciona utilizando a hastag #09/07/2021#

    'Criar Tabelas Temporárias
    CurrentDb.Execute "SELECT * INTO tmp_cns_Graf_Prod FROM cns_Graf_Prod;"


    como introduzir no codigo a data usando # para criar a tabela

    WHERE (((tbl_produtividade_volumes.Data_Volume_ref)=[Forms]![frm_Painel_Graf]![txtData])

    pensei em algo assim:

    =#" & [Forms]![frm_Painel_Graf]![txtData] & "#));"


    .................................................................................
    Att. Nois

    Se tudo não der certo... tente de novo drunken
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1781
    Registrado : 13/12/2016

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  Alexandre Fim 9/7/2021, 15:49

    Bom dia Nois,

    Deixa eu entender melhor:
    Voce está criando uma consulta em tempo de execução para criar uma tabela temporária? É isso?
    Qual a real necessidade deste procedimento?

    Se voce ja tem a Instrução SQL para criar a consulta, utilize ela para criar a tabela direto, e não cria a consulta!

    É isso!!

    []'s

    FIM
    =>Nois
    =>Nois
    Super Avançado
    Super Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 919
    Registrado : 09/11/2012

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  =>Nois 9/7/2021, 16:14

    faz mais sentido realmente, substituindo a query por table na instrução abaixo não funfa, tem alguma sugestão?



    Sub Cria_cns_Graf_Prod()

    Dim strSQL As String

    strSQL = "SELECT Sum(Round([Cubagem],3)) AS Prod " & _
    "FROM tbl_produtividade_volumes " & _
    "WHERE (((tbl_produtividade_volumes.Data_Volume_ref)=[Forms]![frm_Painel_Graf]![txtData]) AND ((tbl_produtividade_volumes.Turno_ref) Like [Forms]![frm_Painel_Graf]![txtTurno] & '*'));"

    Dim db As DAO.Database
    Set db = CurrentDb
    Dim qdf As DAO.TableDef
    Dim newSQL As String

    newSQL = strSQL
    Set qdf = db.CreateTableDef("tmp_cns_Graf_Prod", newSQL)

    End Sub



    ou algo assim:


    Sub Cria_cns_Graf_Prod()

    Dim strSQL As String

    strSQL = "SELECT Sum(Round([Cubagem],3)) AS Prod " & _
    "FROM tbl_produtividade_volumes " & _
    "WHERE (((tbl_produtividade_volumes.Data_Volume_ref)=[Forms]![frm_Painel_Graf]![txtData]) AND ((tbl_produtividade_volumes.Turno_ref) Like [Forms]![frm_Painel_Graf]![txtTurno] & '*'));"

    CurrentDb.Execute "SELECT * INTO tmp_cns_Graf_Prod FROM " & strSQL


    End Sub




    .................................................................................
    Att. Nois

    Se tudo não der certo... tente de novo drunken
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1781
    Registrado : 13/12/2016

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  Alexandre Fim 9/7/2021, 16:25

    Vamos facilitar as cosas !

    Voce vai usar essa tabela para qual finalidade?
    Gerar um relatório? Consulta em tela?

    Voce pode utilizar o resultado da Instrução SQL diretamente, sem criar tabela temporária ou query.

    Dê mais detalhes do que vc precisa.

    []'s

    FIM
    =>Nois
    =>Nois
    Super Avançado
    Super Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 919
    Registrado : 09/11/2012

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  =>Nois 9/7/2021, 16:31

    Certo,

    criei vários graficos que irão atualizar a cada 5 minutos, utilizando consultas nativas do access
    via wi-fi nao me atende sem cabeamento para a televisão que tenho no trabalho
    sem contar que aquele vinculo fica super pesado e as tabelas em uso

    minha idéia inicial, criar uma consulta que de uma carga em uma tabela temporária e depois exclua a consulta

    esse método ja fiz para outro controle ao meu ver ficou bom... no entanto para uma consulta que envolve filtro de data ainda nao tinha feito

    eis a dificuldade nao cria a tabela, somente a consulta


    .................................................................................
    Att. Nois

    Se tudo não der certo... tente de novo drunken
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1781
    Registrado : 13/12/2016

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  Alexandre Fim 9/7/2021, 17:44

    Cara?

    Voce pode criar essa tabela com característica de "temporária" para carregar ps gráficos.
    Na vdd, ela é uma tabela normal, mas que servirá somente como repositório de dados e, a cada 5 minutos vc exclui os dados e grava os novos dados nela novamente.

    É só criar uma consulta Consulta Acrescimo apontando para esta tabela.
    É simples !

    Não há necessidade de criar a query e a tabela em tempo de execução!
    Crie a tabela com os dados necessários para o grafico e deixa ela vazia. Toda vez que for gerar o grafico, vc preenche. Após 5 min, exclui os dados novamente e preenche novamente.

    Sacou?

    Faça isso...rsss

    []'s

    FIM

    =>Nois
    =>Nois
    Super Avançado
    Super Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 919
    Registrado : 09/11/2012

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  =>Nois 9/7/2021, 18:03

    saquei drunken

    mas ao fechar o formulário quero excluir tudo, tabelas e consultas temporárias



    .................................................................................
    Att. Nois

    Se tudo não der certo... tente de novo drunken
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1781
    Registrado : 13/12/2016

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  Alexandre Fim 9/7/2021, 19:05

    Ao fechar, vc vai executar um DELETE na tabela "temporária".
    A consulta vc vai criar no banco tambem e deixar prota para usá-la.
    Não precisa excluir nenhum objeto. Deixa eles criados no banco.
    É isso!!

    []'s
    =>Nois
    =>Nois
    Super Avançado
    Super Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 919
    Registrado : 09/11/2012

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  =>Nois 9/7/2021, 20:16

    Meu Bd é bem grande, gostaria de ter menos objetos

    Talvez eu crie esse Dashboard em um access a parte vou matutando aqui


    .................................................................................
    Att. Nois

    Se tudo não der certo... tente de novo drunken
    =>Nois
    =>Nois
    Super Avançado
    Super Avançado

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 919
    Registrado : 09/11/2012

    [Resolvido]Gerar consulta de Data e criar Tabela Temporária Empty Re: [Resolvido]Gerar consulta de Data e criar Tabela Temporária

    Mensagem  =>Nois 9/7/2021, 21:31

    Resolvido

    de:

    CurrentDb.Execute "SELECT * INTO tmp_cns_Graf_Prod FROM cns_Graf_Prod;"

    para:

    DoCmd.RunSQL "SELECT * INTO tmp_cns_Graf_Prod FROM cns_Graf_Prod;"


    .................................................................................
    Att. Nois

    Se tudo não der certo... tente de novo drunken

      Data/hora atual: 23/9/2021, 00:08