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


    [Resolvido]Abrir Relatorio Access em Windows Forms C#

    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 17/1/2014, 19:47

    Boa Tarde !
    Alguem saberia me dizer se e possível abrir um relatório em Access no Windows form C# ?


    Obrigado !
    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]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  criquio 17/1/2014, 21:24

    Aqui tem um modelo para VB. É só adaptar a sintaxe para C#.


    .................................................................................
    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
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 18/1/2014, 13:21

    Obrigado Criquio!

    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]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  criquio 18/1/2014, 23:16

    Grato pelo retorno. O fórum agradece.


    .................................................................................
    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
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 23/1/2014, 00:54

    Neste relatório em Access carrego com uma função global feita no Access , teria como eu utilizar a função no click do botao em C# ?
    Sendo que essa função precisa de paramentos que esta no textbox do formulário em C#.
    Alguma ideia ?

    Segue a funcao feita em um Modulo no Access
    Obs: Antes usava um front end Access mas agora uso um FrontEnd Windows C#



    Public Function CarregaVariaveisGLobais()
    'carrega as variaveis
     AtivoFicha = Forms!Frm_Equip_Retidos.LisBx_EquipRetidos.Column(2)
     Modelo = Forms!Frm_Equip_Retidos.LisBx_EquipRetidos.Column(15)
     Numero_OS = Forms!Frm_Equip_Retidos.LisBx_EquipRetidos.Column(4)
     Tipo_Serv = Forms!Frm_Equip_Retidos.LisBx_EquipRetidos.Column(3)
     Sigla = Forms!Frm_Equip_Retidos.LisBx_EquipRetidos.Column(16)
     On Error GoTo Continuar:
     Qtde_Eixo_Ficha = Forms!Frm_Equip_Retidos.LisBx_EquipRetidos.Column(17)
    Continuar:
     Dt_Inicio = Forms!Frm_Equip_Retidos.LisBx_EquipRetidos.Column(6)
     Descricao_Ativo = Forms!Frm_Equip_Retidos.LisBx_EquipRetidos.Column(5)
    End Function


    Public Function UtilizaVariavelGlobal(ParametroGlobal)
    'utiliza as variaveis no criterio dos campos na consulta
    'Exemplo: UtilizaVariavelGlobal('Modelo')
    Select Case ParametroGlobal
      Case "AtivoFicha"
                 UtilizaVariavelGlobal = AtivoFicha
      Case "Modelo"
                 UtilizaVariavelGlobal = Modelo
      Case "Numero_OS"
                 UtilizaVariavelGlobal = Numero_OS
      Case "Tipo_Serv"
                 UtilizaVariavelGlobal = Tipo_Serv
      Case "Sigla"
                 UtilizaVariavelGlobal = Sigla
      Case "Dt_Inicio"
                 UtilizaVariavelGlobal = Dt_Inicio
      Case "Descricao_Ativo"
                 UtilizaVariavelGlobal = Descricao_Ativo
    End Select
    End Function
    Obrigado !
    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]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  criquio 23/1/2014, 13:23

    Eu postei a tempos atrás um exemplo em Access que acessa uma função de outro aplicativo Access. O esquema é o mesmo. Uma vez que você conseguiu abrir o relatório referenciando o Access, basta seguir mais ou menos a mesma ideia. Algo como:

    appAccess.Run "NomeDoModulo"

    Veja se encontra esse exemplo no fórum para ter uma base.


    .................................................................................
    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
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 23/1/2014, 16:49

    Criquio,
    Com sua ajuda ja conseguir progredir bastante,

    Ja consigo abrir o Banco e chamar a funcao.

    Microsoft.Office.Interop.Access.Application MSA = new Microsoft.Office.Interop.Access.Application();
    MSA.Application.Visible = false;

    //Chamar funcao para carregar as variaveis no modulo do access
    MSA.Application.Run("CarregaVariaveisGLobais");
    //Abrir o Banco
    MSA.OpenCurrentDatabase("c:\\dados\\FICHA.accdb", false)
    ....
    ...


    mas quando entro na funcao não sei como referenciar o formulário do C#

    Em Access a gente faz
    Variavel = Forms!Nome_FOrmulario.textBox

    mas como ficaria em C# ?
    tentei dessa forma mas não encontre o formulário.
    Quando chamo a funcao ele vai na funcao mas não encontra o formulário para jogar o valor na variável.

    Mais uma vez muito Obrigado !
    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]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  criquio 23/1/2014, 17:06

    Muitos programadores C# costumam criar uma DLL e a referencia no Access, mas você poderia usar uma tabela do próprio Access e colocar o dado que precisa nessa tabela e então o Access acessa esse dados diretamente na tabela. Acredito ser mais simples. Para colocar esse dados na tabela do Access, você pode usar o ADO da mesma forma que usaria em VB ou VBA. Claro que adaptando para a sintaxe do C#.


    .................................................................................
    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
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 23/1/2014, 17:17

    Criquio, desculpe mas nao conseguiur raciocinar muito bem o que vc quis dizer com "mas você poderia usar uma tabela do próprio Access e colocar o dado que precisa nessa tabela e então o Access acessa esse dados diretamente na tabela"

    Eu ate fui nas referencias no Access e adicionei a referencia abaixo mas nada adiantou.
    microsoft visual studio .net VB and C# Project model
    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 23/1/2014, 20:13

    Alguma Ideia ?

    Obrigado !
    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]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  criquio 23/1/2014, 20:14

    Pelo que entendi você quer colocar o valor de um campo do aplicativo C# no Access, é isso mesmo? Então a ideia seria colocar o valor desse campo na tabela do Access e o Access busca ele na tabela.


    .................................................................................
    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
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 23/1/2014, 20:24

    Sim Criquio é isso que pretendo , jogar o valor de uma textbox do C# na funcao do Access pra abrir o relatorio que tem como paramentro esses valores da funcao.

    Se eu criar uma tabela pra isso vou ter que inserir um registro a cadas vez que o usuário desejar visualizar o relatorio. Esse relatorio é uma ficha que é impressa dezenas de vezes por dia.

    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]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  criquio 23/1/2014, 21:40

    Não seria inserir um registro a cada vez mas sim atualizar um registro já existente com o novo valor. Caso o aplicativo seja usado por mais de um usuário ao mesmo tempo, pode criar registros para cada usuário. Essa tabela teria os campos NomeMaquina e Texto por exemplo e seria criado um registro para cada máquina. Vamos supor as máquinas Maq1 até Maq10. Ao enviar o dado para o Access, pode ser verificado se já existe um registro para a máquina que está enviando. Caso exista, grava o dado no campo Texto do registro dessa máquina. Caso ainda não exista, o programa em C# criaria esse registro com o nome da máquina e o texto. Seria o mesmo trabalho de colocar em uma função no Access, mas ficaria mais prático a meu ver. Outra saída poderia ser criando propriedades no aplicativo. Seria parecido com colocar o dado em um função, mas ele ficaria em uma propriedade personalizada.


    .................................................................................
    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
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 23/1/2014, 21:43

    Estou fazendo a opcao da tabela assim que terminar retorno.
    Ultima pergunta, o que seria "Outra saída poderia ser criando propriedades no aplicativo. "
    Muito Obrigado mesmo.
    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]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  criquio 23/1/2014, 23:40

    Seria só adicionar propriedades às já existentes no Access. O esquema abaixo cria variáveis para representar um objeto Propriedade e as propriedades em si e verifica se elas existem. Caso exista será marcado True, caso contrário será marcado False. Logo após, caso seja False, a propriedade será criada e por último os valores serão adicionados à elas:

    Código:
        Dim vPrp As Property, NomeMaq As String, Texto As String, MaqExiste As Boolean, txtExiste As Boolean

        MaqExiste = False
        txtExiste = False

        For Each vPrp In CurrentDb.Properties

            If vPrp.Name = "NomeMaq" Then
                MaqExiste = True
            End If

            If vPrp.Name = "Texto" Then
                txtExiste = True
            End If

        Next

        If MaqExiste = False Then
            Set vPrp = CurrentDb.CreateProperty("NomeMaq", dbText, ENVIRON("ComputerName"))
            CurrentDb.Properties.Append vPrp
        End If

        If txtExiste = False Then
            Set vPrp = CurrentDb.CreateProperty("Texto", dbText, Me.NomeCampo)
            CurrentDb.Properties.Append vPrp
        End If

        CurrentDb.Properties("NomeMaq") = ENVIRON("ComputerName")
        CurrentDb.Properties("Texto") = Me.NomeCampo

    Isso seria caso fosse feito diretamente no Access. Para o caso de fazer à partir do C#, tem que trocar CurrentDb pelo objeto que representa o banco Access no C#: MSA.Properties.


    .................................................................................
    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
    Convidado
    Convidado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Convidado 24/1/2014, 19:17

    Criquio, muitíssimo Obrigado pela sua genuína ajuda.

    Fiz a opção criando uma tabela e funcionou perfeitamente(Ate melhor que com a função como eu pretendia).

    Valeu mesmo.
    Resolvido!!!
    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]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  criquio 25/1/2014, 17:35

    Grato pelo retorno. Fórum agradece.


    .................................................................................
    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.


    Conteúdo patrocinado


    [Resolvido]Abrir Relatorio Access em Windows Forms C# Empty Re: [Resolvido]Abrir Relatorio Access em Windows Forms C#

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 14:17