NENHUM VALOR FOI FORNECIDO

DJHASSELMANN 01/06/2016 09:24:48
#462846
Bom dia a todos!

Estou enfrentando um problema ao desenvolver uma aplicação no VB.NET 2015 onde está dando o erro [Ô]Nenhum valor foi fornecido para um ou mais parametros necessarios[Ô] o codigo onde esta dando tal erro segue abaixo:

Public Class frmClientes
Private bsClientes As New BindingSource()
Dim dtClientes As New DataTable
Dim dsClientes As New DataSet
Dim daClientes As New OleDb.OleDbDataAdapter

Dim WithEvents otxtUF, oMskCNPJ_CPF As Binding

Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
If (m.Msg = WM_SYSCOMMAND AndAlso m.WParam.ToInt32() = SC_MOVE) OrElse (m.Msg = WM_NCLBUTTONDOWN AndAlso m.WParam.ToInt32() = HTCAPTION) Then
Return
Else
MyBase.WndProc(m)
End If
End Sub

Private Sub frmClientes_Load(sender As Object, e As EventArgs) Handles MyBase.Load
BindingNavigatorSearchItem.Image = My.Resources.search1
dgvRegistros.AutoGenerateColumns = False
dgvRegistros.DataSource = bsClientes
Carrega_Dados()
End Sub

Private Sub BindingNavigatorExit_Click(sender As Object, e As EventArgs) Handles BindingNavigatorExit.Click
Me.Dispose()
Me.Close()
End Sub

Private Sub frmClientes_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
If gCN.State = ConnectionState.Open Then gCN.Close()
Me.Dispose()
End Sub

Private Sub Carrega_Dados()

Try

dsClientes.Locale = System.Globalization.CultureInfo.InvariantCulture

If gCN.State = ConnectionState.Open Then gCN.Close()
gCN.Open()

gMensagem = [Ô]Adicionar dados da tabela Clientes para o DataSet.[Ô]
gSQL = [Ô]Select * From tbcliente Order by RazaoSocial asc[Ô]

daClientes = New OleDb.OleDbDataAdapter(gSQL, gCN)
daClientes.TableMappings.Add([Ô]Table[Ô], [Ô]tbCliente[Ô])
daClientes.Fill(dsClientes, [Ô]tbCliente[Ô])

gMensagem = [Ô]Vincular o conector de dados mestre para a tabela Clientes.[Ô]
bsClientes.DataMember = [Ô]tbCliente[Ô]
bsClientes.DataSource = dsClientes

gMensagem = [Ô]Conectar Navegador aos Dados[Ô]
bnClientes.BindingSource = bsClientes
Call Carregar_Controles()

Exit Sub

Catch ex As Exception
MsgBox(ex.Message & vbNewLine & gMensagem, MsgBoxStyle.Critical, [Ô]ERRO: Carregando Tabela[Ô])
End Try

End Sub

Private Sub Carregar_Controles()

Try

gMensagem = [Ô]Formatando Campos [Ô]
otxtUF = New Binding([Ô]Text[Ô], bsClientes, [Ô]Estado[Ô])
oMskCNPJ_CPF = New Binding([Ô]Text[Ô], bsClientes, [Ô]CNPJ_CPF[Ô])

gMensagem = [Ô]Carregando Campos do Form[Ô]
txtNomeRazaoSocial.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]RazaoSocial[Ô])
txtCodNome.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]CodiNome[Ô])
txtEndereco.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Endereco[Ô])
txtNumero.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Numero[Ô])
txtComplemento.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Complemento[Ô])
txtBairro.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Bairro[Ô])
txtCidade.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Cidade[Ô])
txtEstado.DataBindings.Add(otxtUF)
mskCEP.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]CEP[Ô])
mskCNPJ_CPF.DataBindings.Add(oMskCNPJ_CPF)
txtLocalEntrega.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]LocalEntrega[Ô])
txtPrazoPgto.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]PrazoPgto[Ô])
txtAosCuidados.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]AosCuidados[Ô])
txtNomeContato.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Contato[Ô])
mskFone1.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Telefone1[Ô])
mskCelular1.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Telefone2[Ô])
mskFone2.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Telefone3[Ô])
mskCelular2.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Telefone4[Ô])
txtPaginaWEB.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Site[Ô])
txtE_Mail.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]E-Mail[Ô])
txtObservacoes.DataBindings.Add([Ô]Text[Ô], bsClientes, [Ô]Observacoes[Ô])
Exit Sub

Catch ex As Exception
MsgBox(ex.Message & vbNewLine & gMensagem, MsgBoxStyle.Critical, [Ô]Erro: Carregando Controles[Ô])
End Try

End Sub

Private Sub otxtUF_Format(ByVal sender As Object, ByVal e As System.Windows.Forms.ConvertEventArgs) Handles otxtUF.Format

If IsDBNull(e.Value) Then
e.Value = txtEstado.Text
End If

End Sub

Private Sub omskCNPJ_CPF_Format(sender As Object, e As ConvertEventArgs) Handles oMskCNPJ_CPF.Format

If Not IsDBNull(e.Value) AndAlso IsNumeric(e.Value) Then
If Len(e.Value) = 14 Then
mskCNPJ_CPF.Mask = [Ô]00,000,000/0000-00[Ô]
ElseIf Len(e.Value) = 11 Then
mskCNPJ_CPF.Mask = [Ô]000,000,000-00[Ô]
End If
End If

End Sub

Private Sub txtEstado_LostFocus(sender As Object, e As EventArgs) Handles txtEstado.LostFocus
Dim lEstados As String

If txtEstado.Text > [Ô][Ô] Then
lEstados = [Ô]AC-AL-AM-AP-BA-CE-DF-ES-GO-MA-MG-MS-MT-PA-PB-PE-[Ô]
lEstados = lEstados & [Ô]PI-PR-RJ-RN-RO-RR-RS-SC-SE-SP-TO[Ô]
If InStr(1, lEstados, txtEstado.Text, Microsoft.VisualBasic.CompareMethod.Binary) = 0 Then
MsgBox([Ô]Estado inválido[Ô], vbCritical, UCase(txtEstado.Text))
txtEstado.Clear()
txtEstado.Focus()
Exit Sub
End If
Else
MsgBox([Ô]Campo com preenchimento Obrigatório![Ô], vbInformation, [Ô]ATENÇÃO[Ô])
txtEstado.Clear()
txtEstado.Focus()
Exit Sub
End If

End Sub

Private Sub BindingNavigatorSearchItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorSearchItem.Click

If BindingNavigatorSearchText.Text <> [Ô][Ô] Then
If BindingNavigatorSearchItem.Text = [Ô]ButtomSearch[Ô] Then
BindingNavigatorSearchItem.Text = [Ô]ButtomClear[Ô]
BindingNavigatorSearchItem.Image = My.Resources.no
bsClientes.Filter = [Ô]RazaoSocial Like [ô]%[Ô] & BindingNavigatorSearchText.Text & [Ô]%[ô][Ô]
ElseIf BindingNavigatorSearchItem.Text = [Ô]ButtomClear[Ô] Then
BindingNavigatorSearchItem.Text = [Ô]ButtomSearch[Ô]
BindingNavigatorSearchItem.Image = My.Resources.search1
bsClientes.RemoveFilter()
BindingNavigatorSearchText.Clear()
BindingNavigatorSearchText.Focus()
End If
Exit Sub
Else
MsgBox([Ô]Não há nada para buscar![Ô], MsgBoxStyle.Question, [Ô]Buscar Registro[Ô])
BindingNavigatorSearchText.Clear()
BindingNavigatorSearchText.Focus()
Exit Sub
End If

End Sub

Private Sub BindingNavigatorSaveItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorSaveItem.Click

Try

If txtNomeRazaoSocial.Text.Trim = String.Empty Then
MsgBox([Ô]Nome/Razão Social: Campo com preenchmento obrigatório[Ô], MsgBoxStyle.Information, [Ô]ATENÇÃO[Ô])
txtNomeRazaoSocial.Focus()
Exit Sub
End If

[ô]If txtEndereco.Text.Trim = String.Empty Then
[ô] MsgBox([Ô]Endereço: Campo com preenchmento obrigatório[Ô], MsgBoxStyle.Information, [Ô]ATENÇÃO[Ô])
[ô] txtEndereco.Focus()
[ô] Exit Sub
[ô]End If

[ô]If txtBairro.Text.Trim = String.Empty Then
[ô] MsgBox([Ô]Bairro: Campo com preenchmento obrigatório[Ô], MsgBoxStyle.Information, [Ô]ATENÇÃO[Ô])
[ô] txtBairro.Focus()
[ô] Exit Sub
[ô]End If

[ô]If txtCidade.Text.Trim = String.Empty Then
[ô] MsgBox([Ô]Cidade: Campo com preenchmento obrigatório[Ô], MsgBoxStyle.Information, [Ô]ATENÇÃO[Ô])
[ô] txtCidade.Focus()
[ô] Exit Sub
[ô]End If

[ô]If mskCNPJ_CPF.Text.Trim = String.Empty Then
[ô] MsgBox([Ô]CNPJ/CPF: Campo com preenchmento obrigatório[Ô], MsgBoxStyle.Information, [Ô]ATENÇÃO[Ô])
[ô] mskCNPJ_CPF.Focus()
[ô] Exit Sub
[ô]End If

gMensagem = [Ô]Adicionando na Tabela Clientes[Ô]
Validate()
bsClientes.EndEdit()
Dim cm As OleDbCommandBuilder = New OleDbCommandBuilder(daClientes)
daClientes.Update(dsClientes.Tables([Ô]tbCliente[Ô]))
dsClientes.AcceptChanges()

MsgBox([Ô]Registro Adicionado/Alterado com sucesso![Ô], MsgBoxStyle.Exclamation, [Ô]AVISO[Ô])
Exit Sub
Catch ex As Exception
MsgBox(ex.Message & vbNewLine & gMensagem, MsgBoxStyle.Critical, [Ô]Erro: Gravando Registro[Ô])
End Try

O erro esta dando na hora de gravar o registro ou seja na parte em negrito e sublinhada!

A quem realmente puder ajudar-me fico grato!
JABA 01/06/2016 13:17:30
#462860
Você usa uma chamada ao [Ô]Validate()[Ô], mas não vi nenhum código relacionado a ele. Talvez o erro acontece nele. Tente descobrir a linha que gera o erro e coloque aqui pra gente.
DJHASSELMANN 01/06/2016 21:13:43
#462888
Boa noite!

O erro está acontecendo nesta linha

daClientes.Update(dsClientes.Tables([Ô]tbCliente[Ô]))

Tem um detalhe, se eu não editar nenhum registro apresentado não ocorre o erro, porém se acrescento algo em qualquer campo do form e clicar em salvar registro, dá o erro!
Se puder dar-me uma luz fico no aguardo

Obrigado pela atenção!
JABA 01/06/2016 21:44:19
#462890
Eu achei isso aqui na net, vê se te ajuda:

https://social.msdn.microsoft.com/Forums/pt-BR/585b26c7-fabe-4e0a-bdf8-024965425691/nenhum-valor-foi-fornecido-para-um-ou-mais-parmetros-necessrios?forum=adoptpt
PERCIFILHO 02/06/2016 07:19:27
#462902
Dílson, ao que parece, seu erro está relacionado aos campos da tabela e aos parâmetros de gravação, você precisaria rever os nomes dos campos da tabela e os parâmetros, para ver se existe algum campo que está sem parâmetro ou até mesmo com nomes errados.
DJHASSELMANN 02/06/2016 11:20:34
#462915
Pois é até agora não consegui solucionar este problema, outra coisa estou usando o VB.NET 2015 .Framework 4.6!
DJHASSELMANN 11/06/2016 18:13:59
#463366
Boa noite a todos!

Pois é até agora não consegui solucionar este problema, outra coisa estou usando o VB.NET 2015 .Framework 4.6!

KERPLUNK 11/06/2016 20:23:59
#463370
Essa exceção, significa que tem algum campo obrigatório não preenchido e por isso não é possível atualizar o registro. Verifique se todos os campos estão [Ô]amarrados[Ô] e por favor, mostre o que o método [Ô]Validate[Ô] faz.
Tópico encerrado , respostas não são mais permitidas