• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

rui_fernandes

[vb.net 2005] Erro ao carregar dataset...

11 mensagens neste tópico

boas, e o seguinte, tenh uma pekena aplicacao k tenh uma listagem de orcamentos, kd mando imprimir um orcamento, o k ele faz e preencher um dataset c o ID desse orcamento, e dp manda imprimir um report. mas n me esta a funcionar...

da-me o erro na que esta na imagem.

se alguem me puder ajudar ficava grato.

Rui Fernandes

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pelo que dá para perceber nesse erro, é que não estás a preencher o Dataset correctamente, ou seja, falta-te preencher algum campo no qual definiste como obrigatório ou foi definido com o tal devido a alguma relação.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Rui podes postar o codigo ????

Era muito melhor para analisar...

pode tar a dar erro ao preencher a dataset mas pode ser muita coisa o erro

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

If TABELA = "OrcamentoVenda" Then
            Try
                Dim SQL_Linhas As String = "SELECT LinhasOrcamentoVenda.*,Artigos.Descricao From LinhasOrcamentoVenda,Artigos,Comerciais WHERE Artigos.Codigo=LinhasOrcamentoVenda.Artigo" & SQL
                Dim SQL_cabecalho As String = "SELECT OrcamentoVenda.*,Clientes.Nome AS NomeCliente,Clientes.Morada,Clientes.Localidade,Clientes.CodigoPostal,Clientes.Contribuinte,Comerciais.Nome AS NomeComercial FROM OrcamentoVenda,Clientes,Comerciais WHERE OrcamentoVenda.Cliente=Clientes.Codigo AND OrcamentoVenda.Comercial=Comerciais.Codigo" & SQL

                LigaBD()

                Dim ds As New DataSetOrcamentoV

                Dim da_linhas As New OleDb.OleDbDataAdapter
                Dim da_cabecalho As New OleDb.OleDbDataAdapter

                'Criar os  DataAdapters
                da_linhas = New OleDb.OleDbDataAdapter(SQL_Linhas, coneccaoBD)
                da_cabecalho = New OleDb.OleDbDataAdapter(SQL_cabecalho, coneccaoBD)

                'Preencher as tabelas do dastaset a partir dos dataAdaperts
                da_cabecalho.Fill(ds, "OrcamentoVenda")
                da_linhas.Fill(ds, "LinhasOrcamentoVenda")

                'Gerar o relatório a partir do dataset e exibí-lo
                Dim rpt As New reportOrcamentoV
                Dim msg = MsgBox("Pretende Visualizar ou imprimir directamente?" & vbCrLf & "Se sim pressione (SIM), caso pretenda imprimir pressione (não).", MsgBoxStyle.YesNoCancel)

                If msg = MsgBoxResult.Yes Then
                    Dim frm As New FRMVisualizar
                    rpt.SetDataSource(ds)
                    frm.CrystalReportViewer1.ReportSource = rpt
                    frm.Show()
                ElseIf msg = MsgBoxResult.No Then
                    rpt.SetDataSource(ds)
                    rpt.PrintToPrinter(1, True, 0, 100)
                End If

                desligaBD()
            Catch ex As Exception
                MessageBox.Show(ex.ToString)
            End Try
            Exit Sub
        End If

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tive a ver se tavam todos os campos do dataset a serem selecionados na query e estavm todos... mas n sei kual e o problema...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Executa o SQL_Linhas e SQL_cabeçalho  directamente na bd  para ver o que retorna...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

directamente na base de dados consigo obter registos....

e na grid tambem....

estas queries consigo por a funcionar se for so um registo na tabela "OrcamentoVenda", e os registos relacionados na tabela "LinhasOrcamenteVenda".

agora se for assim n consigo.  :wallbash:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

e assim, ja vi onde esta o problema, na QUERY linhas, se declarar la tabelas como, clientes p exemplo, da esse erro.

Dim SQL_Linhas As String = "SELECT LinhasOrcamentoVenda.*,Artigos.Descricao From LinhasOrcamentoVenda,Artigos,Comerciais WHERE Artigos.Codigo=LinhasOrcamentoVenda.Artigo" & SQL
Dim SQL_cabecalho As String = "SELECT OrcamentoVenda.*,Clientes.Nome AS NomeCliente,Clientes.Morada,Clientes.Localidade,Clientes.CodigoPostal,Clientes.Contribuinte,Comerciais.Nome AS NomeComercial FROM OrcamentoVenda,Clientes,Comerciais WHERE OrcamentoVenda.Cliente=Clientes.Codigo AND OrcamentoVenda.Comercial=Comerciais.Codigo" & SQL

a logica destas duas Queries, e preencher duas tabelas no dataset, mas tenh um problema, executando a query "SQL_Cabecalho",com a condicao de que o "cliente" seja "RUI", vou ter de executar tambem a outra Query "SQL_Linhas" para obter os artigos do orcamento, e estas linhas têm de ser as relacionadas c o cabecalho..

nao sei se tou a explicar bem  A quuestao....

espero ter feedback...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

BOm tu podes fazer isso numa query apenas axo..... ja ouviste falar no join??? da muito geito... :( tenta saber mais sobre join

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ja fiz isso, mas depois no crystal report da-me cabo da cabeca...pa criar seccoes e grupos....

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora