none
Extrair SDF para Excel RRS feed

  • Pergunta

  • Boa tarde galera, tudo bem?

    Eu estou desenvolvendo um aplicativo para meu PC que vai ler, abrir e converter para o excel um arquivo SDF que armazena dados que eu cadastrei em uma aplicação móvel.
    Eu achei uma solução legal na internet de como converter para o Excel, mais essa conversao é para aruqivos de SQL Server e nao SQL Server CE, acontece que eu preciso converter isso pra excel.
    Ele dá uma mensagem de erro assim:
    "Não é possivel converter um objeto do tipo 'System.String' no tipo 'System.Data.SqlServerCe.SqlConection'"

    Por favor eu preciso de uma big ajuda sobre o assunto por que já procurei em tudo que foi lugar e nao achei!!!!!!

    Abraços
    terça-feira, 18 de setembro de 2007 17:44

Respostas

  • Então, voce está atribuindo a um objeto Conection uma string ? Aí vai dar erro mesmo. por exemplo esse seu método conectaBanco deveria retornar uma conexão e não somente a string.

    Ou então mudar a linha :

    Code Snippet
    objDA.SelectCommand.Connection = conectaBanco(NomeArquivo)

     

     

     para :
    Code Snippet
    objDA.SelectCommand.Connection = new SqlCeConnection( conectaBanco(NomeArquivo))

     

     


    Só uma pergunta esse erro aparece no build certo ?

    quarta-feira, 19 de setembro de 2007 17:19

Todas as Respostas

  • Olá Francieli,

     

     Por favor, detalhe melhor, por exemplo, esse sdf está no dispositivo, em um servidor ou em um desktop, qual a ferramenta que vc está utilizando, e qual a versão, essa solução que vc achou, poste o link para que possamos tomar conhecimento também.

     

    Abraços

    terça-feira, 18 de setembro de 2007 18:03
  • Julio,

    eu uso o VS2005 com SQL 2005 tambem.
    O SDF está em uma pasta dentro do meu projeto. Só que cada semana o SDF tem um nome diferente, ai eu gero uma String que junto com o caminho monta a String de Conexão, ai ele conecta e tenta gerar o Excel, mais quando vou gerar ele fala que eu nao posso converter uma String como já citei no outro post.

    eu usei a ideia do site abaixo para fazer a conversao
    http://www.macoratti.net/vbn_eead.htm

    Eu nao sei mais o que fazer... se voce conseguir me ajudar eu te agradeço muuuuuuuitooo!!!!!!!

    Abraços
    terça-feira, 18 de setembro de 2007 18:11
  • Olá Francieli,

     

    Então eu estava vasculhando o forum, e vi que voce já tinha postado uma dúvida de como acessar o sdf por uma aplicação windows, aliás voce bem que poderia ter finalizado o tópico ou postado um feed back sobre aquele assunto né ?

     

    Poste um bom trecho do código onde o erro ocorre. Só com essas informações não tenho nem como chutar o que está acontecendo, a não ser que voce está atribuindo uma string para um objeto do tipo SqlCeConnection, ou vice e versa.

     

    Abraços

     

    terça-feira, 18 de setembro de 2007 18:37
  • Julio, me desculpe por ter criado outro tópico, é por que os assuntos apesar de serem os mesmos o erro era outro.

    Bom segue o trecho do cógido que está o erro, no ERRO1 é onde ele me da a mensagem...

    Code Snippet

    Try
                        objCommand.CommandType = CommandType.Text
                        objDA.SelectCommand = objCommand
                        objDA.SelectCommand.Connection = conectaBanco(NomeArquivo)

                        objDA.Fill(objDS)

                    Catch ex As Exception
                        MessageBox.Show("Erro1: " & ex.Message)
                    End Try



    Se precisar de mais alguma coisa pode pedir!!!!

    Abraços
    terça-feira, 18 de setembro de 2007 19:26
  • Olha, pelo contrário, ainda bem que voce abriu outro tópico, a questão é voce deveria ter finalizado ou postado um feed back sobre aquele tópico.

     

    O que o método conectaBanco faz ? e qual o valor da variável NomeArquivo ?

     

    Abraços

    terça-feira, 18 de setembro de 2007 20:26
  • Julio, a função conectaBanco retorna a String de conexão com o banco como segue no codigo:
    Code Snippet


    Public Function conectaBanco(ByVal NomeArquivo As String)

            Dim strConn As String = "Data Source=" & My.Application.Info.DirectoryPath & "\DB\" & NomeArquivo
            Return strConn

        End Function


    Essa variável nomeArquivo ela vai receber o Nome do Arquivo que deverá ser aberto pelo banco. Assim como eu dise que cada semana o arquivo SDF do banco muda de nome, então o usuário vai entrar com o nome do arquivo que ele quer acessar, e assim converter para Excel.

    Abraços
    quarta-feira, 19 de setembro de 2007 14:59
  • Então, voce está atribuindo a um objeto Conection uma string ? Aí vai dar erro mesmo. por exemplo esse seu método conectaBanco deveria retornar uma conexão e não somente a string.

    Ou então mudar a linha :

    Code Snippet
    objDA.SelectCommand.Connection = conectaBanco(NomeArquivo)

     

     

     para :
    Code Snippet
    objDA.SelectCommand.Connection = new SqlCeConnection( conectaBanco(NomeArquivo))

     

     


    Só uma pergunta esse erro aparece no build certo ?

    quarta-feira, 19 de setembro de 2007 17:19
  • Julio, eu consegui resolver!!!
    Eu estava passando um parametro incorreto mesmo, assim como voce disse acima, eu tava passando uma string e nao uma conexao com o Banco.! Isso está resolvido.

    Meu problema agora é outro! Eu tenho 4 tabelas que serão distribuidas cada uma em uma planilha do Excel só que o Excel só inicia com 3 planilhas e da erro, como eu faço pra iniciar o excel com 4 planilhas em um aplicativo apenas????

    Obrigada
    segunda-feira, 24 de setembro de 2007 14:04
  • Então, aí já é outro tópico em outro lugar eheheheh

    Mas é só voce criar uma nova instancia do excelWorksheet

     

    Abraços

    segunda-feira, 24 de setembro de 2007 14:34
  • Então, aí já é outro tópico em outro lugar eheheheh

    Mas é só voce criar uma nova instancia do excelWorksheet (eu acho)

     

    Abraços

    segunda-feira, 24 de setembro de 2007 14:34