vb.net 2008 dataTable Sort函数和Select()函数用法实例

Public Shared Function PFn_SET_次工程設定(ByRef dt工程 As DataTable) As DataTable

Dim tmpDataTable As DataTable
Dim strExpression As String
Dim strExpressionTmp As String

dt工程.defaultview().sort = "アイテム区分 ASC," + _
"アイテムコード ASC," + _
"議事録履歴SEQ ASC," + _
"行番号 ASC," + _
"工程SEQ ASC," + _
"グループ ASC," + _
"工程順 ASC"

tmpDataTable = dt工程.defaultview().ToTable()

For i As Integer = 0 To tmpDataTable.Rows.Count - 1
strExpression = "アイテム区分='" + tmpDataTable.Rows(i)("アイテム区分") + "'" + _
" AND アイテムコード='" + tmpDataTable.Rows(i)("アイテムコード") + "'" + _
" AND 議事録履歴SEQ='" + tmpDataTable.Rows(i)("議事録履歴SEQ") + "'" + _
" AND 行番号='" + tmpDataTable.Rows(i)("行番号") + "'" + _
" AND 工程SEQ='" + tmpDataTable.Rows(i)("工程SEQ") + "'" + _
" AND グループ='" + tmpDataTable.Rows(i)("グループ") + "'"

If i < dt工程.Rows.Count - 1 Then
strExpressionTmp = "アイテム区分='" + tmpDataTable.Rows(i + 1)("アイテム区分") + "'" + _
" AND アイテムコード='" + tmpDataTable.Rows(i + 1)("アイテムコード") + "'" + _
" AND 議事録履歴SEQ='" + tmpDataTable.Rows(i + 1)("議事録履歴SEQ") + "'" + _
" AND 行番号='" + tmpDataTable.Rows(i + 1)("行番号") + "'" + _
" AND 工程SEQ='" + tmpDataTable.Rows(i + 1)("工程SEQ") + "'" + _
" AND グループ='" + tmpDataTable.Rows(i + 1)("グループ") + "'"

If dt工程.Select(strExpression).Count > 1 AndAlso strExpression.Equals(strExpressionTmp) Then
tmpDataTable.Rows(i)("次工程SEQ") = tmpDataTable.Rows(i + 1)("工程SEQ")
tmpDataTable.Rows(i)("次工程グループ") = tmpDataTable.Rows(i + 1)("グループ")
tmpDataTable.Rows(i)("次工程工程順") = tmpDataTable.Rows(i + 1)("工程順")
Else

strExpression = "アイテム区分='" + tmpDataTable.Rows(i)("アイテム区分") + "'" + _
" AND アイテムコード='" + tmpDataTable.Rows(i)("アイテムコード") + "'" + _
" AND 議事録履歴SEQ='" + tmpDataTable.Rows(i)("議事録履歴SEQ") + "'" + _
" AND 行番号='" + tmpDataTable.Rows(i)("行番号") + "'" + _
" AND 工程SEQ ='" + Decimal.Add(CDec(tmpDataTable.Rows(i)("工程SEQ")),1).ToString + "'"

If dt工程.Select(strExpression).Count = 1 Then

Dim arr As DaTarow() = dt工程.Select(strExpression)
tmpDataTable.Rows(i)("次工程SEQ") = arr(0)("工程SEQ")
tmpDataTable.Rows(i)("次工程グループ") = arr(0)("グループ")
tmpDataTable.Rows(i)("次工程工程順") = arr(0)("工程順")
End If

End If
End If

Next

Return tmpDataTable

End Function

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...