2011-07-08 46 views
0

我们有一个列表,当尝试向它添加新记录时会出现上述错误。这里是整个类:Sharepoint 2007:价值不在预期范围内

Partial Class NextExclusionNo 
Inherits System.Web.UI.Page 


Private listName As String = "Exclusions List" 

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 

    Dim curYear As String = Now.Year.ToString 
    curYear = Mid(curYear, 3) 

    Dim curMonth As String = Now.Month.ToString 
    If curMonth.Length < 2 Then 
     curMonth = "0" & curMonth 
    End If 

    Dim curDay As String = Now.Day.ToString 
    If curDay.Length < 2 Then 
     curDay = "0" & curDay 
    End If 

    Dim curObsPrefix As String = "E" & curYear & "-" & curMonth & "-" 

    Try 
     Using site As New spSite("http://localhost/exclusions") 

      Using web As spWeb = site.openweb() 

       Dim list As SPList = web.Lists(listName) 

       Dim query As New spQuery 
       query.query = "<Where><BeginsWith><FieldRef Name='Exclusion_x0020__x0023_' />" & _ 
       "<Value Type='Text'>" & curObsPrefix & "</Value>" & _ 
       "</BeginsWith></Where><OrderBy><FieldRef Name='Exclusion_x0020__x0023_' Ascending='False' /></OrderBy>" 


       Dim listItems As spListItemCollection = list.getItems(query) 

       Dim newReportNo As Integer = 1 

       If listItems IsNot Nothing AndAlso listItems.count > 0 Then 
        Dim lastReportNo = listItems.item(0).item("Exclusion_x0020__x0023_") 
        Dim licBits() As String = lastReportNo.split("-") 
        Dim lastNo As Integer = CInt(licBits(2)) 
        newReportNo = lastNo + 1 
       End If 

       Response.Write(getFullReportNo(newReportNo, curObsPrefix)) 

      End Using 

     End Using 

    Catch ex As Exception 
     Response.Write("Error:" & ex.Message) 
    End Try 

End Sub 

Private Function getFullReportNo(ByRef licNo As Integer, ByRef prefix As String) As String 

    Dim lic As String = licNo.ToString 
    While lic.Length < 3 
     lic = "0" & lic 
    End While 

    Return prefix & lic 

End Function 



End Class 

上面嵌套在一个Try/Catch块。任何人都可以帮助我诊断和补救上述代码块吗?非常感谢您的帮助。

+0

你可以添加堆栈跟踪吗? –

回答

0

根据我的分析,只有您指定的列名可能会出现此错误。验证您的专栏名称并与我分享您的发现。

+0

也getFullReportNo可以抛出这个异常,因为我们不知道里面是什么。但是堆栈跟踪会揭示这一点。 –

相关问题