以下のコードを参照してください(null値の処理に関する問題)
Dts.Variables("File_Name").Value = Framework.GetValue("FileName")
Dts.Variables("File_Id").Value = Framework.GetValue("FileName")
Dts.Variables("File_Name").Value - Data type defined in STRING
Dts.Variables("File_Id").Value - Data type defined in INTEGER
Framework.GetValue
-戻り値STRING
(データベースに格納されている値をフェッチします)
問題-データベースに値が存在しないためにFramework.GetValueが何も返さない場合、SSISスクリプトコンポーネントでエラーがスローされます。キャプチャする方法NULL
は私たちが直面している問題です
パブリック関数GetValue(ByVal FetchParameter As String)As String
Dim lGetValue As String = String.Empty
Using Conn New SqlConnection(ConnString)
SQLCommand = New SqlCommand("ParameterValues", _ETLFrameworkConn)
SQLCommand.CommandText = "Select ParamValue from ParameterValues where Parameter_Name=@ParameterField"
SQLCommand.Parameters.Add(New SqlParameter("@ParameterField").Value SqlDbType.NVarChar))
SQLCommand.Parameters("@ParameterField").Value = FetchParameter
Try
Conn.Open()
lGetValue = SQLCommand.ExecuteScalar()
Catch ex As Exception
End Try
End Using
Return lGetValue
終了機能
よろしく