Dim Index1 As Integer
Dim drs1 As List(Of DataRow)
drs1 = DataTables("利息").Select("合同编号='" & rr("合同编号") & "'And 本期结息日= #" & rr("计息结束时间").Addmonths(T) & "#")
For Each dr1 As DataRow In drs1
Index1= Tables("利息").FindRow(dr1)
If Index1> -1 Then '如果找到此行
Tables("利息").Position = Index1
MessageBox.show("合同编号为:" & dr1("合同编号") & "现在开始分期了")
Dim d1 As Date =Tables("利息").current("本期起息日")
Dim d2 As Date =Tables("利息").current("本期结息日")
Dim d As Date = d1
Dim days1 As Integer = d1.day
Do While d1 < d2
Dim r As Row = Tables("利息").AddNew()
r("客户编号")=Tables("合同").Current("客户编号")
r("客户名称")=Tables("合同").Current("客户名称")
r("合同编号")=Tables("合同").Current("合同编号")
r("收据号")=Tables("合同").Current("收据号")
r("本金")=Tables("合同").Current("本金")
r("付息方式")=Tables("合同").Current("付息方式")
r("方式")=Tables("合同").Current("方式")
r("利率")=Tables("合同").Current("利率")
r("合同现状")=Tables("合同").Current("合同现状")
r("本期起息日") = d1
d1 = d1.addmonths(1)
Dim days2 = Date.DaysInMonth(d1.year,d1.month)
If d1.Day < days1
d1 = new Date(d1.year,d1.month,math.min(days2,days1))
End If
If d1 > d2 Then '如果d大于d2
d1 = d2 'd等于d2
End If
r("本期结息日") = d1
Loop
老大你帮我看看这段代码,我用对话框明明可以定位找到合同编号.但是新增行的合同号就是不对,比如
利息表里有002 和 003两个合同编号,对话框一一找到显示,但是分期的时候合同编号全部变成002了,起息日和结息日的分期也对的,就是合同编号不对.错哪儿啦.