As an update: We have spent much time debugging on the server. The only thing we've gleaned is that the data is pulled from the table, that it's set to the right fields, but the movement of the selector is not recognized, for some reason. But why on earth does it work for the first instance of the repeating section, or work just fine while in the InfoPath client, we are at a loss.
As requested, here is the code that loops through the repeating section on a user-button click. The code is the same for all five section, and runs each time the button is pressed.
*variable declarations*
nodes = docXN.SelectSingleNode("/my:myFields/my:AddAddlInstructor", Me.NamespaceManager)
go = nodes.MoveToChild("AddlIISection", nodespace)
strHoldNodesValue = nodes.Value
IIErrorMsg.SetValue(" ")
While go
nodes.MoveToChild("InstID", nodespace)
Dim testnumericvar As String
Dim testnumeric As Boolean
Dim sqlStmt10 As String
Dim strIDNumber As String = 0
Dim strHoldNodeInfo As String
IIErrorMsg.SetValue(" ")
testnumericvar = nodes.Value
testnumeric = IsNumeric(testnumericvar)
If testnumeric = False Then
IIErrorMsg.SetValue("Instructor ID is not Numeric")
Exit Sub
Else
IIErrorMsg.SetValue(" ")
End If
strIDNumber = nodes.Value
sqlStmt10 = "select last_name, first_name, id " & _
"from tablename" & _
"where id = '" & strIDNumber & "'"
ds = service.GetData(tablename10, sqlStmt10)
If ds.Tables("instructor").Rows.Count = 0 Then
IIErrorMsg.SetValue("Instructor Not Found")
InstFirst.SetValue(" ")
InstLast.SetValue(" ")
Exit Sub
End If
myrow = ds.Tables("instructor").Rows(0)
If ds.Tables("instructor").Rows.Count <> 0 Then
myrow = ds.Tables("instructor").Rows(0)
nodes.MoveToPrevious()
strHoldNodeInfo = nodes.MoveToPrevious()
nodes.SetValue(myrow("first_name").ToString())
strHoldNodeInfo = nodes.MoveToPrevious()
nodes.MoveToPrevious()
nodes.SetValue(myrow("last_name").ToString())
End If
Any and all help is appreciated in this frustrating form.