微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

原文地址:https://www.jb51.cc/vb/260626.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐