Jump to content

Recommended Posts

Posted (edited)
If (txtnome.Text.Trim().Length = 0) Then
		ErrorProvider1.SetError(txtnome, "Informe o nome do cliente.")
	Else
		ErrorProvider1.SetError(txtnome, "")
	End If

Boas, eu a partir deste código consigo fazer validação quando o utilizador não insere o nome do cliente, mas eu queria fazer para o Código do Cliente que por acaso é um campo que não pode ser nulo, mas não consigo.

Agradecia a ajuda, cumprimentos.

Edited by Caça
GeSHi
Posted (edited)

Estou com dificuldade porque está a dar-me erro "Column 'Cod_Cartao' does not allow nulls." na linha "Me.UtilizadorBindingSource.EndEdit()" 😉

Devia aparecer o error a dizer para introduzir o código do cartão.

No site onde estava a orientar-me não mostra como fazer caso dê este erro de base de dados, apenas mostra se eu fazer só pela introdução de textbox..

Edited by hypz
Posted (edited)
Private Sub UtilizadorBindingNavigatorSaveItem_Click(sender As System.Object, e As System.EventArgs) Handles UtilizadorBindingNavigatorSaveItem.Click
	Me.Validate()
	Me.UtilizadorBindingSource.EndEdit()
	Me.TableAdapterManager.UpdateAll(Me.PapDataSet)

	If (txtcod.Text.Trim().Length = 0) Then
		ErrorProvider1.SetError(txtcod, "Informe o código do cliente.")
	Else
		ErrorProvider1.SetError(txtcod, "")
	End If

	If (txtnome.Text.Trim().Length = 0) Then
		ErrorProvider1.SetError(txtnome, "Informe o nome do cliente.")
	Else
		ErrorProvider1.SetError(txtnome, "")
	End If
End Sub
End Class

É este o código do meu botão 🙂

Eu até tentei através de AllowNulls = False mas dá-me sempre erro..

Como também estou a fazer validações para um dataset se é assim que se chama, eu não sei muito bem como o fazer..

Edited by Caça
GeSHi
Posted (edited)

Já tentei por o código na form_load e no botão de adicionar e continua a dar o mesmo erro, estou mesmo confuso .. Só no botão de guardar é que ele também faz a validação do campo "Nometxt" , se fizer noutros lados ele deixa introduzir em branco 🙂

Edited by hypz
Posted (edited)

Estavas a colocar o código no sitio certo, mas na posição errada, seria tipo isto

Private Sub UtilizadorBindingNavigatorSaveItem_Click(sender As System.Object, e As System.EventArgs) Handles UtilizadorBindingNavigatorSaveItem.Click

   If (txtcod.Text.Trim().Length = 0) Then
    ErrorProvider1.SetError(txtcod, "Informe o código do cliente.")
       Exit Sub
   Else
    ErrorProvider1.SetError(txtcod, "")
   End If

   If (txtnome.Text.Trim().Length = 0) Then
    ErrorProvider1.SetError(txtnome, "Informe o nome do cliente.")
       Exit Sub
   Else
    ErrorProvider1.SetError(txtnome, "")
   End If                

   ErrorProvider1.Clear()

   Me.Validate()
   Me.UtilizadorBindingSource.EndEdit()
   Me.TableAdapterManager.UpdateAll(Me.PapDataSet)

End Sub
Edited by Caça

Pedro Martins

Não respondo a duvidas por PM

Posted (edited)

Só vi agora a tua resposta, o código já funciona muito bem. Agora ele não está a gravar quando eu peço para eliminar.. Mas se tirar as validações já funciona .. O que faço ?

Já resolvi esta questão Caça, tinha que por depois do "Me.Validate()" e antes do "Me.UtilizadorBindingSource.EndEdit()" 😛

Muito obrigado pela ajuda 😉

Edited by hypz
Posted (edited)

Também não estou a perceber, eu quando testo algo é num programa diferente com a mesma base de dados mas de nomes diferentes. Eu no programa de teste removo e ele grava, no meu programa original eu elimino e ele não me grava.. E o código está todo igual !

btw, enganei-me no nome do tópico obrigado por teres redirecionado 😉

Edited by hypz
Posted (edited)

Estas a dizer que ele nem sempre grava?

O que é que queres dizer com programa de testes e original?

Edited by Caça

Pedro Martins

Não respondo a duvidas por PM

Posted

Por exemplo, eu tenho o programa chamado "Software" e a base de dados chama-se "SoftwareBDExemplo" , e tenho outro programa chamado "Hardware" com a base de dados "HardwareBDExemplo" mas essa base de dados contém tudo que a outra contém, é uma cópia. No programa "Software" eu consigo eliminar e gravar, mas no programa "Hardware" ele não grava o que elimina, apenas o que insere.

Posted (edited)

Sinceramente não sei o que, já redirecionei a connection da bd assim como o datasource e mesmo assim continua a não dar, e ainda agora fui testar ao outro programa e está tudo a correr perfeitamente ..

LOL, isto é demais, arrastei outra vez os campos todos e voltei a fazer o formulário basicamente e já funciona, não sei onde apareceu o bug.

Obrigado pela ajuda Caça mais uma vez 🙂 , cumpz

Edited by hypz

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.