📄 productschemedao.cls
字号:
' 执行存储过程的命令的设置
cmdProc.CommandText = "productScheme_new_psmaterial" ' 指定存储过程的名子
cmdProc.CommandType = adCmdStoredProc
cmdProc.Parameters.Refresh
cmdProc.Parameters(1) = psId ' 参数
cmdProc.Parameters(2) = bomName ' 参数
cmdProc.Parameters(3) = processName ' 参数
cmdProc.Parameters(4) = totalfee ' 参数
cmdProc.Parameters(5) = fee ' 参数
cmdProc.Parameters(6) = bomCost ' 参数
cmdProc.Parameters(7) = totalCost ' 参数
cmdProc.Parameters(8) = quantity ' 参数
cmdProc.Parameters(9) = finish ' 参数
cmdProc.Parameters(10) = bomId ' 参数
cmdProc.Parameters(11) = materialType ' 参数
cmdProc.Parameters(12) = materialId ' 参数
cmdProc.Parameters(13) = "00000" ' 参数
cmdProc.Parameters(14) = madeBillNum
' 执行命令 把查询到的结果放在recSet中
' MainForm.g_application.m_databaseCon.m_adoConnection.BeginTrans ' 开始事务
On Error GoTo Cwcl
cmdProc.Execute
NewSchemeMaterial = cmdProc.Parameters(13)
' MainForm.g_application.m_databaseCon.m_adoConnection.CommitTrans ' 结束事务
Exit Function
Cwcl:
' MainForm.g_application.m_databaseCon.m_adoConnection.RollbackTrans ' 回滚事务
NewSchemeMaterial = ""
End Function
'**************************************
'* 功 能 描 述 :删除一个生产计划单的所有物料清单
'* 输 入 参 数 :无
'* 输 出 能 数 :True - 成功
'* False - 失败
'**************************************
Public Function DeletePsMaterial(recSet As ADODB.Recordset, _
psId As String) As Boolean
Dim cmdProc As ADODB.Command ' 执行存储过程的命令
DeletePsMaterial = False
Set cmdProc = New ADODB.Command
Set cmdProc.ActiveConnection = MainForm.g_application.m_databaseCon.m_adoConnection
' 执行存储过程的命令的设置
cmdProc.CommandText = "productScheme_delete_psmaterial" ' 指定存储过程的名子
cmdProc.CommandType = adCmdStoredProc
cmdProc.Parameters.Refresh
cmdProc.Parameters(1) = psId ' 参数
' 执行命令 把查询到的结果放在recSet中
MainForm.g_application.m_databaseCon.m_adoConnection.BeginTrans ' 开始事务
On Error GoTo Cwcl
cmdProc.Execute
DeletePsMaterial = True
MainForm.g_application.m_databaseCon.m_adoConnection.CommitTrans ' 结束事务
Exit Function
Cwcl:
MainForm.g_application.m_databaseCon.m_adoConnection.RollbackTrans ' 回滚事务
DeletePsMaterial = False
End Function
'**************************************
'* 功 能 描 述 :根据生产计划单编号找到生产计划单物料清单
'* 输 入 参 数 :opType - 0 查找所有的物料
'* 1 查找原料
'* 2 查找零件
'* 3 查找产品
'* 输 出 能 数 :True - 成功
'* False - 失败
'**************************************
Public Function FindSchemeMaterial(recSet As ADODB.Recordset, _
schemeId As String, _
opType As String) As Boolean
Dim cmdProc As ADODB.Command ' 执行存储过程的命令
FindSchemeMaterial = False
Set cmdProc = New ADODB.Command
Set cmdProc.ActiveConnection = MainForm.g_application.m_databaseCon.m_adoConnection
' 执行存储过程的命令的设置
cmdProc.CommandText = "productScheme_find_psmaterial" ' 指定存储过程的名子
cmdProc.CommandType = adCmdStoredProc
cmdProc.Parameters.Refresh
cmdProc.Parameters(1) = schemeId ' 参数
cmdProc.Parameters(2) = opType ' 参数
On Error GoTo Cwcl
' 执行命令 把查询到的结果放在recSet中
With recSet
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open cmdProc
End With
With recSet
If Not .EOF Then
FindSchemeMaterial = True
Else
FindSchemeMaterial = False
End If
End With
Exit Function
Cwcl:
FindSchemeMaterial = False
Exit Function
End Function
'**************************************
'* 功 能 描 述 :根据生产计划单ID和生产计划单BOMID找到生产计划单物料记录
'* 输 入 参 数 :schemeId - 生产计划单ID
'* psBomId - 生产计划单BOM ID
'* 输 出 能 数 :True - 成功
'* False - 失败
'**************************************
Public Function FindSchemeMaterialByPsidPsbomid(recSet As ADODB.Recordset, _
schemeId As String, _
psBomId As String) As Boolean
Dim cmdProc As ADODB.Command ' 执行存储过程的命令
FindSchemeMaterialByPsidPsbomid = False
Set cmdProc = New ADODB.Command
Set cmdProc.ActiveConnection = MainForm.g_application.m_databaseCon.m_adoConnection
' 执行存储过程的命令的设置
cmdProc.CommandText = "productScheme_material_findByPsBomId" ' 指定存储过程的名子
cmdProc.CommandType = adCmdStoredProc
cmdProc.Parameters.Refresh
cmdProc.Parameters(1) = schemeId ' 参数
cmdProc.Parameters(2) = psBomId ' 参数
On Error GoTo Cwcl
' 执行命令 把查询到的结果放在recSet中
With recSet
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open cmdProc
End With
With recSet
If Not .EOF Then
FindSchemeMaterialByPsidPsbomid = True
Else
FindSchemeMaterialByPsidPsbomid = False
End If
End With
Exit Function
Cwcl:
FindSchemeMaterialByPsidPsbomid = False
Exit Function
End Function
'**************************************
'* 功 能 描 述 :根据零件的物料ID找到其所有的工序物料清单
'* 输 入 参 数 :parentMaterialId - 父零件的物料ID
'* 输 出 能 数 :True - 成功
'* False - 失败
'**************************************
Public Function FindSchemeMaterialByParentMaterialId(recSet As ADODB.Recordset, _
parentMaterialId As String) As Boolean
Dim cmdProc As ADODB.Command ' 执行存储过程的命令
FindSchemeMaterialByParentMaterialId = False
Set cmdProc = New ADODB.Command
Set cmdProc.ActiveConnection = MainForm.g_application.m_databaseCon.m_adoConnection
' 执行存储过程的命令的设置
cmdProc.CommandText = "productScheme_material_findByParentMaterial" ' 指定存储过程的名子
cmdProc.CommandType = adCmdStoredProc
cmdProc.Parameters.Refresh
cmdProc.Parameters(1) = parentMaterialId ' 参数
On Error GoTo Cwcl
' 执行命令 把查询到的结果放在recSet中
With recSet
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open cmdProc
End With
With recSet
If Not .EOF Then
FindSchemeMaterialByParentMaterialId = True
Else
FindSchemeMaterialByParentMaterialId = False
End If
End With
Exit Function
Cwcl:
FindSchemeMaterialByParentMaterialId = False
Exit Function
End Function
'**************************************
'* 功 能 描 述 :根据生产计划单编号找到生产计划单各物料清单的执行情况
'* 输 入 参 数 :opType - 0 查找所有的物料
'* 1 查找原料
'* 2 查找零件
'* 输 出 能 数 :True - 成功
'* False - 失败
'**************************************
Public Function FindSchemeExeState(recSet As ADODB.Recordset, _
schemeId As String, _
opType As String) As Boolean
Dim cmdProc As ADODB.Command ' 执行存储过程的命令
FindSchemeExeState = False
Set cmdProc = New ADODB.Command
Set cmdProc.ActiveConnection = MainForm.g_application.m_databaseCon.m_adoConnection
' 执行存储过程的命令的设置
cmdProc.CommandText = "productScheme_exe_state" ' 指定存储过程的名子
cmdProc.CommandType = adCmdStoredProc
cmdProc.Parameters.Refresh
cmdProc.Parameters(1) = schemeId ' 参数
cmdProc.Parameters(2) = opType ' 参数
On Error GoTo Cwcl
' 执行命令 把查询到的结果放在recSet中
With recSet
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open cmdProc
End With
With recSet
If Not .EOF Then
FindSchemeExeState = True
Else
FindSchemeExeState = False
End If
End With
Exit Function
Cwcl:
FindSchemeExeState = False
Exit Function
End Function
'**************************************
'* 功 能 描 述 :设置生产计划单中的物料完成的数量
'* 输 入 参 数 :无
'* 输 出 能 数 :True - 成功
'* False - 失败
'**************************************
Public Function SetPsMaterialNum(recSet As ADODB.Recordset, _
psMaterialId As String, _
finishNum As Double) As Boolean
Dim cmdProc As ADODB.Command ' 执行存储过程的命令
SetPsMaterialNum = False
Set cmdProc = New ADODB.Command
Set cmdProc.ActiveConnection = MainForm.g_application.m_databaseCon.m_adoConnection
' 执行存储过程的命令的设置
cmdProc.CommandText = "productScheme_material_setFinishNum" ' 指定存储过程的名子
cmdProc.CommandType = adCmdStoredProc
cmdProc.Parameters.Refresh
cmdProc.Parameters(1) = psMaterialId ' 参数
cmdProc.Parameters(2) = finishNum ' 参数
' 执行命令 把查询到的结果放在recSet中
MainForm.g_application.m_databaseCon.m_adoConnection.BeginTrans ' 开始事务
On Error GoTo Cwcl
cmdProc.Execute
SetPsMaterialNum = True
MainForm.g_application.m_databaseCon.m_adoConnection.CommitTrans ' 结束事务
Exit Function
Cwcl:
MainForm.g_application.m_databaseCon.m_adoConnection.RollbackTrans ' 回滚事务
SetPsMaterialNum = False
End Function
'**************************************
'* 功 能 描 述 :设置生产物料清单的工序编号
'* 输 入 参 数 :psMaterialId - 要修改的生产物料清单
'* processNo - 物料工序的编号
'* parentMaterial - 父零件的物料ID
'* 输 出 能 数 :True - 成功
'* False - 失败
'**************************************
Public Function SetPsMaterialProcessNo(psMaterialId As String, _
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -