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]Inserir variável de data inicial e data final

    avatar
    stefanoc1
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 05/04/2011

    [Resolvido]Inserir variável de data inicial e data final Empty Inserir variável de data inicial e data final

    Mensagem  stefanoc1 10/7/2012, 20:00

    Boa tarde,

    Estou tentando fazer um form que alimenta várias consultas em cadeia, tentei fazer assim:

    Option Explicit
    Option Compare Database

    Public DataIni As Date
    Public DataFim As Date

    Private Sub botaoTodasConsultas_Click()

    DataIni = [DataInicial]
    DataFim = [DataFinal]

    DoCmd.SetWarnings False
    DoCmd.OpenQuery "01 - LimpaCadAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "02 - ImportaCadAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "03 - CadastroAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "04 - SaldoAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "05 - AtualizaDimensão", acViewNormal, acEdit

    End Sub

    Mas ele apresenta o seguinte erro:
    Erro em tempo de exevução '3085':
    Função 'DataFinal' indefinida na expressão
    Os campos "DataFinal" e "DataInicial" são originados do form.
    Mas ele armazena as variaveis, na Janela de Verificação Imediata quando apresenta o erro:

    ? DataIni
    01/06/2012

    ? DataFim
    30/06/2012

    O que estou fazendo de errado?

    []'s

    Stefano
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  JPaulo 10/7/2012, 20:03

    Ola seja bem vindo ao forum;

    Como é que tem no criterio das consultas ?



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Instruções SQL como utilizar...
    avatar
    stefanoc1
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 05/04/2011

    [Resolvido]Inserir variável de data inicial e data final Empty Inserir variável de data inicial e data final

    Mensagem  stefanoc1 10/7/2012, 20:12

    Olá

    Em SQL a consulta está assim:
    SELECT TransAtivoFixo.[Número do ativo fixo], CadAtivoFixo.[Grupo de ativos fixos], CadAtivoFixo.[Método de depreciação], "" AS [Períodos de depreciação restantes], CadAtivoFixo.[Número do Item], CadAtivoFixo.[Nome do Item], CadAtivoFixo.[Nº de série], IIf(Sum(IIf(TransAtivoFixo.[Tipo de transação]="Alienação - venda" And TransAtivoFixo.[Data da transação]<=[Data Final],1,0)) Mod 2=1,"Vendido",IIf(Sum(IIf(TransAtivoFixo.[Tipo de transação]="Alienação - sucata" And TransAtivoFixo.[Data da transação]<=[Data Final],1,0)) Mod 2=1,"Inativado","Ativo")) AS Status, Round(Sum(IIf((TransAtivoFixo![Tipo de transação]="Aquisição" And TransAtivoFixo![Data da transação]<=[Data Final]),TransAtivoFixo!Valor,0))+Sum(IIf((TransAtivoFixo![Tipo de transação]="Ajuste de aquisição" And TransAtivoFixo![Data da transação]<=[Data Final]),TransAtivoFixo!Valor,0)),2) AS Aquisição, CadAtivoFixo.[Centro de Custo], CadAtivoFixo.Segmento, CadAtivoFixo.Contrato, CadAtivoFixo.Site, CadAtivoFixo.[Data de Aquisição], CadAtivoFixo.[Data da Emissão], CadAtivoFixo.[Nota Fiscal de Aquisição], CadAtivoFixo.[Nome do Fornecedor] INTO RelatCadAtivoFixo
    FROM CadAtivoFixo INNER JOIN TransAtivoFixo ON (CadAtivoFixo.[Método de depreciação] = TransAtivoFixo.[Método de depreciação]) AND (CadAtivoFixo.[Número do ativo fixo] = TransAtivoFixo.[Número do ativo fixo])
    GROUP BY TransAtivoFixo.[Número do ativo fixo], CadAtivoFixo.[Grupo de ativos fixos], CadAtivoFixo.[Método de depreciação], "", CadAtivoFixo.[Número do Item], CadAtivoFixo.[Nome do Item], CadAtivoFixo.[Nº de série], CadAtivoFixo.[Centro de Custo], CadAtivoFixo.Segmento, CadAtivoFixo.Contrato, CadAtivoFixo.Site, CadAtivoFixo.[Data de Aquisição], CadAtivoFixo.[Data da Emissão], CadAtivoFixo.[Nota Fiscal de Aquisição], CadAtivoFixo.[Nome do Fornecedor]
    HAVING (((CadAtivoFixo.[Data de Aquisição])<=[Formulários]![frm1]![DataFinal]));

    E no QBE:

    Coloquei no modo design no campo critério do campo "[Data de Aquisição]": <=[Formulários]![frm1]![DataFinal] e também <=DataFinal() e <=DataFim()...
    A consulta não consegue "enxergar" as variáveis...

    Obrigado!

    Stefano
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  JPaulo 10/7/2012, 20:35

    Só enxerga, se você chamar em função e guardar a variavel em global, tem de estar num modulo separado;


    Global DataIni As Date
    Global DataFim As Date


    Public Function FiltraDataInicial()
    FiltraDataInicial = Forms!SeuForm!SeuCampoDataInicial
    DataIni = FiltraDataInicial
    End Function


    Public Function FiltraDataFinal()
    FiltraDataFinal = Forms!SeuForm!SeuCampoDataFinal
    DataFim = FiltraDataInicial
    End Function




    no campo critério do campo "[Data de Aquisição]"

    >=FiltraDataInicial() e <=FiltraDataFinal()


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Instruções SQL como utilizar...
    avatar
    stefanoc1
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 05/04/2011

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  stefanoc1 10/7/2012, 20:50

    Desculpe, mas preciso mudar o meu código original? Pois não conheço muito de VBA....
    Inclui o módulo do jeito que você passou só substituindo o caminho do form...
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  JPaulo 10/7/2012, 21:04

    Isso;

    Inclua num modulo, altere apenas o nome do form e campo, salve.

    Nas consultas tem de chamar as funções como lhe passei acima.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Instruções SQL como utilizar...
    avatar
    stefanoc1
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 05/04/2011

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  stefanoc1 10/7/2012, 21:20

    Olá

    Coloquei conforme as suas instruções, mas ao clicar no botão ele não executa...
    Estou mandando o anexo o mdb que estou trabalhando, achoque facilita...

    Form:

    Option Explicit
    Option Compare Database

    Public DataIni As Date
    Public DataFim As Date

    Private Sub botaoTodasConsultas_Click()

    DataIni = [DataInicial]
    DataFim = [DataFinal]

    DoCmd.SetWarnings False
    DoCmd.OpenQuery "01 - LimpaCadAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "02 - ImportaCadAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "03 - CadastroAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "04 - SaldoAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "05 - AtualizaDimensão", acViewNormal, acEdit

    End Sub

    Modulo:

    Option Compare Database

    Global DataIni As Date
    Global DataFim As Date


    Public Function FiltraDataInicial()
    FiltraDataInicial = [Formulários]![frm1]![DataInicial]
    DataIni = FiltraDataInicial
    End Function


    Public Function FiltraDataFinal()
    FiltraDataFinal = [Formulários]![frm1]![DataFinal]
    DataFim = FiltraDataInicial
    End Function


    Obrigado

    Stefano
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  JPaulo 10/7/2012, 22:20

    Onde está o anexo ?


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Instruções SQL como utilizar...
    avatar
    stefanoc1
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 05/04/2011

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  stefanoc1 10/7/2012, 23:43

    Segue o anexo que faltou... desculpe

    Stefano
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  JPaulo 10/7/2012, 23:57

    Veja e ajuste à sua necessidade;

    Está a funfar;

    https://dl.dropbox.com/u/771097/SaldoAtivoFixoCS%20V.4d_OLD.rar



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Instruções SQL como utilizar...
    avatar
    stefanoc1
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 05/04/2011

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  stefanoc1 11/7/2012, 04:38

    Pessoal consegui graças à ajuda de dois excelentes profissionais fazer o meu projeto do Access funcionar, agradeço ao Flavio Nascimento do ItLab (http://comunidade.itlab.com.br/) pela paciência e didática ao me orientar como aperfeiçoar os códigos que fiz; ao JPaulo do MáximoAccess (http://maximoaccess.forumeiros.com) pela solução que fez as minhas consultas "enxergarem" as variáveis..

    No form ficou assim...

    Option Compare Database
    ____________________________________________________________________
    Private Sub botaoTodasConsultas_Click()

    DoCmd.SetWarnings False
    DoCmd.OpenQuery "01 - LimpaCadAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "02 - ImportaCadAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "03 - CadastroAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "04 - SaldoAtivoFixo", acViewNormal, acEdit
    DoCmd.OpenQuery "05 - AtualizaDimensão", acViewNormal, acEdit
    DoCmd.SetWarnings True
    End Sub


    E foi necessário criar um módulo à parte para usar as váriaveis

    Option Compare Database

    Global DataIni As Date
    Global DataFim As Date
    ____________________________________________________________________

    Public Function FiltraDataInicial()
    FiltraDataInicial = Forms![frm1]![DataInicial]
    DataIni = FiltraDataInicial
    End Function

    ____________________________________________________________________
    Public Function FiltraDataFinal()
    FiltraDataFinal = Forms![frm1]![DataFinal]
    DataFim = FiltraDataInicial
    End Function

    Obrigadão mesmo pela ajuda!!!

    http://maximoaccess.forumeiros.com/t8552-inserir-variavel-de-data-inicial-e-data-final#69092
    http://comunidade.itlab.com.br/eve/forums?a=tpc&s=92260328&f=273606921&m=2707087753&r=9707059753#9707059753
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  JPaulo 11/7/2012, 08:47

    Obrigado pelo retorno, o fórum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Inserir variável de data inicial e data final Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Inserir variável de data inicial e data final Empty Re: [Resolvido]Inserir variável de data inicial e data final

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 06:45