Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
Prova De Aptidão Profissional - SoS PeoPleWaRe
10-05-2010, 23:06 (Esta mensagem foi modificada pela última vez a: 10-05-2010 23:39 por Ferreira.)
Mensagem: #1
Prova De Aptidão Profissional - SoS PeoPleWaRe
Boa noite!

Isto é assim eu sou aluno do 12º ano e frequento o curso profissional de técnico de Gestão, E no final dos 3 anos de curso temos que fazer a PaP(Prova de Aptidão Profissional) e só tendo a mesma positiva é que receberemos o diploma com o prémio de fim de curso.

Bem eu para a minha PaP vou fazer uma aplicação de Gestão de venda de productos informáticos, tipo a worten ou a box, mas claro em termos de tamanho é mini xD

E gostava que podesse ter este tópico aqui aberto para ir pondo aqui as minhas duvidas e erros que me vão aparecendo para me irem ajudando...

Bem como programa para a minha base de dados estou a usar o sql server 2008 utilizando o visual basic para a manusear.

e em termos de base de dados já tenho tudo feito, mas agora que comecei a programar acerio é que isto ta mal ^^

Bem então comecei por tentar adicionar clientes na base de dados, a tabela clientes que recebe todos os valores do programa que o utilizador digita, menos o codigo postal que vem numa tabela aparte, ou seja a tabela cliente relaciona se com a codigo postal, de forma a ter todos os codigos postais numa combobox para o utilizador la ir buscar.



tenho o seguinte código:

Código:
Private Sub Novo_Cliente_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  
        Dim adapter_codigopostal As New GesturoDBDataSetTableAdapters.Codigo_PostalTableAdapter
        Dim tb_codigo_postal As New GesturoDBDataSet.Codigo_PostalDataTable
        adapter_codigopostal.Fill(tb_codigo_postal)
        Dim Codigo As DataRow
        For Each Codigo In tb_codigo_postal.Rows
            Codigo_PostalComboBox.Items.Add(Codigo.Item(0))
        Next
End Sub
PS: Esta parte serve para quando o form novo_cliente é carregado vaia buscar a tabela codigopostal os valores a meter na combobox para o utilizador possa selecionar o que deseja.


Código:
Private Sub Avançar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Avançar.Click

        Dim contribuinte As Integer
        Dim nome As String
        Dim telefone As Integer
        Dim email As String
        Dim codigopostal As Integer
        Dim morada As String
        contribuinte = N_ContribuinteMaskedTextBox.Text
        nome = NomeTextBox.Text
        telefone = TelefoneMaskedTextBox.Text
        email = E_mailTextBox.Text
        codigopostal = Codigo_PostalComboBox.Text
        morada = MoradaTextBox.Text
        Const constr As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Pedro Fernandes\Desktop\my precious\escola\PRojecto final de curso\Gesturo\Gesturo\GesturoDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"
        Dim db As New SqlConnection(constr)
        db.Open()

        Dim Varsql As String
      
        Varsql = "INSERT INTO Cliente(N_Contribuinte,Nome,Telefone,E_mail,morada) VALUES(@N_ContribuinteMaskedTextBox,@NomeTextBox,@TelefoneMaskedTextBox,@E_mailT​extBox,@MoradaTextBox)"
        Dim cmd As New SqlCommand(Varsql, db)
        cmd.Parameters.Add("@N_ContribuinteMaskedTextBox", SqlDbType.Int).Value = contribuinte
        cmd.Parameters.Add("@NomeTextBox", SqlDbType.VarChar).Value = nome
        cmd.Parameters.Add("@TelefoneMaskedTextBox", SqlDbType.Int).Value = telefone
        cmd.Parameters.Add("@E_mailTextBox", SqlDbType.VarChar).Value = email
        cmd.Parameters.Add("@Codigo_PostalComboBox", SqlDbType.Int).Value = Codigo_PostalComboBox.Text
        cmd.Parameters.Add("@MoradaTextBox", SqlDbType.VarChar).Value = morada
        cmd.ExecuteNonQuery()
        db.Close()
        Me.Close()

      

    End Sub

PS: esta Parte é para adicionar Valores na base de dados!

Até aqui tudo Bem, mas quando vou correr o programa e acesso á base de dados da me o seguinte erro:

Código:
ConstraintException was unhandled:
Falha ao activar restrições. Uma ou mais linhas contêm valores que violam restrições não nulas, exclusivas ou de chave externa.

Erro este na parte do load do form, quando estou a fazer o código para ir buscar os valores á tabela codigo postal, ja tentei de tudo, ja fui a BD tirar e por os allow nulls activos e desactivos vezes sem conta, e mexi e remexi e da sempre o mesmo erro.

mas o engrançado é que se eu for a tabela clientes e meter o codigo postal como nulo, e na parte do codigo puser em comentario tudo aquilo que tem haver com o codigopostal e correr o programa já consigo adicionar coisas na tabela, o que me leva a crer que o erro deve estar nas ligações entre as tabelas clientes e codigo postal, mas não sei...

portanto se alguem me puder dar uma ajuda nisto força Wink

se não perceberem algo digam ^^
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Mensagem neste Tópico
Prova De Aptidão Profissional - SoS PeoPleWaRe - P3dr0 - 10-05-2010 23:06

Saltar Fórum:


Utilizadores a ver este tópico: 4 Visitante(s)