您的位置:首页 > 其它

三层结构:逻辑层

2004-06-23 17:20 309 查看
逻辑层:
Imports System.Data.SqlClient
Imports WorkVision.DJ0211E
Public Class LogicTransact
Private ObjDataBaseOperate As DataBaseOperate
Public Sub New()
'构造函数
MyBase.New()
ObjDataBaseOperate = New DataBaseOperate
End Sub
Public Function Read_DJ31() As DataView
'指定要读的表名
Dim StrTableName As String
StrTableName = "DJ31"
Return ObjDataBaseOperate.Read(StrTableName, "1", "1")
End Function
Public Function IU_DateBase(ByVal Ds As DataSet, ByVal Op As String) As String
'将DataSet中的记录插入到相应数据库,或利用DataSet更新相应数据库数据
'事务处理
Dim DbConn As SqlConnection
DbConn = ObjDataBaseOperate.GetConnection '从实体层获得数据库连接
Dim Tx As SqlTransaction
Dim i, j As Integer
Dim StrWrong As String = ""
Try
DbConn.Open()
Tx = DbConn.BeginTransaction
For i = 0 To Ds.Tables.Count() - 1 '调用实体层的Insert函数把Ds中所有Table的所有行的数据依次插入数据库
For j = 0 To Ds.Tables(i).Rows.Count() - 1
If Op = "Add" Then
ObjDataBaseOperate.Insert(DbConn, Tx, Ds.Tables(i).Rows(j))
ElseIf Op = "Edit" Then
ObjDataBaseOperate.Update(DbConn, Tx, Ds.Tables(i).Rows(j))
End If
Next
Next
Tx.Commit()
Catch e As Exception
Tx.Rollback()
StrWrong = e.ToString
Beep()
Finally
DbConn.Close()
End Try
Return StrWrong
End Function
Public Function Delete_DJ32DJ33(ByVal StrID As String, ByVal StrFileID As String) As String
Dim DbConn As SqlConnection = ObjDataBaseOperate.GetConnection
Dim Tx As SqlTransaction
Dim StrTableName, StrField, StrParameter, StrField2, StrParameter2 As String
Dim StrWrong As String
DbConn.Open()
Try
Tx = DbConn.BeginTransaction
StrTableName = "DJ32"
StrField = "DJ32_000"
StrParameter = StrID
StrField2 = "DJ32_001"
StrParameter2 = StrFileID
ObjDataBaseOperate.Delete(DbConn, Tx, StrTableName, StrField, StrParameter, StrField2, StrParameter2)
StrTableName = "DJ33"
StrField = "DJ33_000"
StrParameter = StrID
StrField2 = "DJ33_001"
StrParameter2 = StrFileID
ObjDataBaseOperate.Delete(DbConn, Tx, StrTableName, StrField, StrParameter, StrField2, StrParameter2)
ObjDataBaseOperate.Update_DJ32DJ33(DbConn, Tx, StrID, StrFileID)
Tx.Commit()
Catch ex As Exception
Tx.Rollback()
Beep()
StrWrong = ex.ToString
Finally
DbConn.Close()
End Try
Return StrWrong
End Function
Public Function Insert_Row(ByVal Dr As DataRow) As String
ObjDataBaseOperate.Insert(Dr)
End Function
End Class
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: