Quantcast
Channel: Inserindo valores nulos
Viewing all articles
Browse latest Browse all 5

Inserindo valores nulos

$
0
0

Estou tentando executar uma storedProcedure, quando todos os campos têm valor, os dados são inseridos sem problema, porem se alguns campos quando nulos, os parâmetros não são criados e aparece a mensagem:

Minha Procedure:

ALTER PROCEDURE [dbo].[sp_InsereAcordo]
(
	@idUnidade int,
	@dataAcordo datetime,
	@valorParcelado float,
	@valorAdvogado float=NULL,
	@quantidadeParcelas int,
	@valorDaParcela float,
	@vencPrimeiraParcela datetime,
	@diaVencDemaisParcelas nchar(2),
	@acordoJudicial bit,
	@numeroProcesso nvarchar(8)= NULL,
	@digitoNumeroProcesso nchar(2)= NULL,
	@anoNumeroProcesso nchar(4)= NULL,
	@orgaoJudiciario nchar(1)= NULL,
	@tribunal nchar(2)= NULL,
	@comarca nchar(4)= NULL,
	@id_Advogado int= NULL,
	@observacoes nvarchar(4000)= NULL,
	@id_AcordoFinanceiro int OUT
) 
AS
BEGIN
	INSERT INTO AcordoFinanceiro
    (idUnidade, dataAcordo, valorParcelado, valorAdvogado, quantidadeParcelas, valorDaParcela, vencPrimeiraParcela, diaVencDemaisParcelas, acordoJudicial, numeroProcesso,
	 digitoNumeroProcesso, anoNumeroProcesso, orgaoJudiciario, tribunal, comarca, id_Advogado, observacoes)
	VALUES        
	(@idUnidade,@dataAcordo,@valorParcelado,@valorAdvogado,@quantidadeParcelas,@valorDaParcela,@vencPrimeiraParcela,@diaVencDemaisParcelas,@acordoJudicial,@numeroProcesso,
	 @digitoNumeroProcesso,@anoNumeroProcesso,@orgaoJudiciario,@tribunal,@comarca,@id_Advogado,@observacoes)
	 SET @id_AcordoFinanceiro = SCOPE_IDENTITY()
END

Função:

 Public Function insereAcordo(strConexao As String, strAcordo As String) As Integer
        Dim conn As New SqlConnection
        Dim strVAL() As String
        Dim cmd As New SqlCommand
        Dim idAC As Long
        Dim trans As SqlTransaction

        conn.ConnectionString = strConexao
        conn.Open()

        trans = conn.BeginTransaction

        strVAL = Split(strAcordo, ";")

        Try
            With cmd
                .CommandType = CommandType.StoredProcedure
                .CommandText = "sp_InsereAcordo"
                .Connection = conn
                .Transaction = trans
                .Parameters.Add(New SqlParameter("@idUnidade", SqlDbType.Int)).Value = strVAL(0)
                .Parameters.Add(New SqlParameter("@dataAcordo", SqlDbType.DateTime)).Value = strVAL(1)
                .Parameters.Add(New SqlParameter("@valorParcelado", SqlDbType.Float)).Value = strVAL(2)
                .Parameters.Add(New SqlParameter("@quantidadeParcelas", SqlDbType.Int)).Value = strVAL(4)
                .Parameters.Add(New SqlParameter("@valorDaParcela", SqlDbType.Float)).Value = strVAL(5)
                .Parameters.Add(New SqlParameter("@vencPrimeiraParcela", SqlDbType.DateTime)).Value = strVAL(6)
                .Parameters.Add(New SqlParameter("@diaVencDemaisParcelas", SqlDbType.NChar)).Value = strVAL(7)
                .Parameters.Add(New SqlParameter("@acordoJudicial", SqlDbType.Bit)).Value = IIf(strVAL(8) = "0", 0, 1)

                If strVAL(8) = "1" Then
                    .Parameters.Add(New SqlParameter("@numeroProcesso", SqlDbType.NVarChar)).Value = strVAL(9)
                    .Parameters.Add(New SqlParameter("@digitoNumeroProcesso", SqlDbType.NChar)).Value = strVAL(10)
                    .Parameters.Add(New SqlParameter("@anoNumeroProcesso", SqlDbType.NChar)).Value = strVAL(11)
                    .Parameters.Add(New SqlParameter("@orgaoJudiciario", SqlDbType.NChar)).Value = strVAL(12)
                    .Parameters.Add(New SqlParameter("@tribunal", SqlDbType.NChar)).Value = strVAL(13)
                    .Parameters.Add(New SqlParameter("@comarca", SqlDbType.NChar)).Value = strVAL(14)

                    .Parameters.Add(New SqlParameter("@id_Advogado", SqlDbType.BigInt)).Value = strVAL(15)
                    .Parameters.Add(New SqlParameter("@valorAdvogado", SqlDbType.Float)).Value = strVAL(3)
                End If

                If Len(strVAL(16)) > 0 Then
                    .Parameters.Add(New SqlParameter("@observacoes", SqlDbType.NVarChar)).Value = strVAL(16)
                End If

                .Parameters.Add(New SqlParameter("@id_AcordoFinanceiro", SqlDbType.Int))
                .Parameters("@id_AcordoFinanceiro").Direction = ParameterDirection.Output
                .ExecuteNonQuery()
            End With

            idAC = cmd.Parameters("@id_AcordoFinanceiro").Value


Sergio Ivanenko



Viewing all articles
Browse latest Browse all 5

Latest Images

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Vimeo 10.6.2 by Vimeo.com, Inc.

Vimeo 10.6.2 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.





Latest Images

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Vimeo 10.6.1 by Vimeo.com, Inc.

Vimeo 10.6.1 by Vimeo.com, Inc.