Я знаю, что это довольно распространенная ошибка, но я работаю в приложении, которое позволяет создавать собственные отчеты с использованием vb.net или C # для сценариев.Обработка ошибок очень плохая, и я не обладаю достаточными знаниями, чтобы добавить свой собственный (если это возможно).
Мой код просто получает значение, которое хранится в текстовом поле в отчете, отформатированном как LastName, FirstName и усекает все символы после запятой.Это значение LastName помещается в новое текстовое поле отчета.Вот мой код:
Sub Detail1_Format
Dim lastNameFirstName As String = ""
Dim lastName As String = ""
Dim lastNameCommaIndex As Integer=
'set lastNameFirstName value from data on report'
lastNameFirstName = ReportUtilities.ReturnTextBoxValue(rpt,"Detail1","txtdtr_DTOOLS_CompanyName")
'find index of first comma in lastNameFirstName string'
lastNameCommaIndex = lastNameFirstName.IndexOf(",")
'set contents of lastName using substring of lastNameFirstString'
lastName = lastNameFirstName.SubString(0, lastNameCommaIndex)
'the error happens above when I use lastNameCommaIndex'
'to set the number of characters in my substring'
'set client name textbox value using lastName'
ReportUtilities.SetTextBoxValue(rpt,"Detail1","txtdtr_CALC_ClientName",lastName)
End Sub
Ошибка возникает, когда я использую lastNameCommaIndex, чтобы установить количество символов в моей подстроке.Если я заменю его на номер, отчет будет опубликован должным образом.