📄 producefinish.frm
字号:
'*******************************************************
'* 模 块 名 称 :保存外协收工单维护与管理
'* 功 能 描 述 :保存外协收工单的基本信息
'* 程序员姓名 :黄朝和
'* 最后修改人 :
'* 最后修改时间:2005/09/12
'* 备 注:
'*******************************************************
Option Explicit
Private m_recordset As ADODB.Recordset
Private m_ProduceFinishDAO As ProduceFinishDAO
Private m_produceDAO As ProduceDAO
Private m_warehouseDAO As WarehouseDAO
Private m_cooperatefinishDAO As CooperateFinishDAO ' 外协单完工单数据库操作类(用于库位的判断)
Private quantity As String '生产数量
Private quote As Double '报价
Private finishNum As Double ' 已完成的数量
Private g_recordset As ADODB.Recordset
Private n_recordset As ADODB.Recordset
Public c_goodsid As String
Public c_goods_type As String
Public c_goodsname As String
Public m_cooperateId As String '生产外协单编号
Public m_cooperateFinishId As String '完工单号
Public m_cooperateType As Integer
Private minserial As Double '最小序列号
Private maxserial As Double '最大序列号
Private Sub Combo1_Click()
m_warehouseDAO.FindAll m_recordset
With m_recordset
Do While Not .EOF
If Combo1.text = Trim(.Fields("仓库名称")) Then '职员名称
Combo1.Tag = Trim(.Fields("warehouseid")) '权限编号
Exit Do
End If
.MoveNext
Loop
End With
m_recordset.Close
End Sub
'**************************************
'* 功 能 描 述 :新增记录按钮
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub Command1_Click()
If Not Check Then ' 判断输入文本的内容
Exit Sub
End If
If Not judge_position Then '判断商品库位是否存在
Exit Sub
End If
Call xzjl
Call clear
End Sub
'**************************************
'* 功 能 描 述 :保存按钮
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub Command2_Click()
If Not Check Then ' 判断输入文本的内容
Exit Sub
End If
If Not judge_position Then ' 判断商品库位是否存在
Exit Sub
End If
Call xzjl
End Sub
'**************************************
'* 功 能 描 述 :退出按钮
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub Command3_Click()
Unload Me
End Sub
'**************************************
'* 功 能 描 述 :打印按钮
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub Command4_Click()
' Dim Report As producefinishprint
If Not Check Then ' 判断输入文本的内容
Exit Sub
End If
If Not judge_position Then ' 判断商品库位是否存在
Exit Sub
End If
If m_cooperateType = 0 Then
Call xzjl
End If
If m_cooperateFinishId <> "" Then ' 完工单为空时不打印
' Set Report = New producefinishprint
' Report.PrintDataId m_cooperateFinishId, Trim(Text11.text)
' Report.show 1
PrintCrystalReport "生产完工单", "'" & m_cooperateFinishId & "'"
Unload Me
Else
MainForm.g_msgText = "生产完工单没有生成!请检查输入数据!"
HMsgBox MainForm.g_msgText, 0, 1
Exit Sub
End If
End Sub
'**************************************
'* 功 能 描 述 :调用外协生产查询窗体
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub Command5_Click()
Dim ret As Boolean
QueryFom.m_currentQuery = QUERY_PRODUCE
QueryFom.show vbModal
ret = m_produceDAO.produce_findById_c(m_recordset, MainForm.g_application.m_queryResultId)
m_cooperateId = MainForm.g_application.m_queryResultId
If ret Then
Text1.Tag = Trim(m_recordset.Fields("produceId"))
minserial = Trim(m_recordset.Fields("最小序列号"))
maxserial = Trim(m_recordset.Fields("最大序列号"))
Text1.text = Trim(m_recordset.Fields("pocessno"))
Text10.text = Trim(m_recordset.Fields("exeEmployeeName"))
Text2.text = Trim(m_recordset.Fields("bomName"))
Text2.Tag = Trim(m_recordset.Fields("materialId"))
Text11.text = CDbl(m_recordset.Fields("quantity")) - CDbl(m_recordset.Fields("finishNum"))
' Text7.text = CDate(Trim(m_recordset.Fields("finishdate")))
Text7.text = Date
Text7.text = Trim(m_recordset.Fields("materialType"))
quote = CDbl(Trim(m_recordset.Fields("fee")))
quantity = CDbl(Trim(m_recordset.Fields("quantity")))
finishNum = CDbl(m_recordset.Fields("finishNum"))
Text5.text = CDbl(m_recordset.Fields("quantity")) - CDbl(m_recordset.Fields("finishNum"))
Else
MainForm.g_msgText = "你查找的生产单质量检验还没有全部合格或者还没有检验,请重新选择其他的生产单!"
HMsgBox MainForm.g_msgText, 0, 1
End If
m_recordset.Close
End Sub
'**************************************
'* 功 能 描 述 :调用仓库查询窗体
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub Command6_Click()
StockOrder.type_m = 3
Dim ret As Boolean
QueryFom.m_currentQuery = QUERY_WAREHOUSE
QueryFom.show vbModal
' 如果此原料已有BOM记录,则调出些条BOM的信息
ret = m_warehouseDAO.Findwarehouse(m_recordset, _
MainForm.g_application.m_queryResultId)
If ret Then
With m_recordset '将查询到的记录传到列表显示
Text9.Tag = Trim(.Fields("warehouseid"))
Text9.text = Trim(.Fields("仓库名称"))
End With
End If
m_recordset.Close
End Sub
'**************************************
'* 功 能 描 述 :载入窗体显示数据
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub Form_Load()
Set m_recordset = New ADODB.Recordset
Set g_recordset = New ADODB.Recordset
Set m_ProduceFinishDAO = New ProduceFinishDAO
Set m_produceDAO = New ProduceDAO
Set m_warehouseDAO = New WarehouseDAO
Set n_recordset = New ADODB.Recordset
Set m_cooperatefinishDAO = New CooperateFinishDAO
Me.caption = "生产入库单"
SetToCenter Me
m_warehouseDAO.FindAll m_recordset '获得未核检列表
With m_recordset
Do While Not .EOF
Combo1.AddItem Trim(.Fields("仓库名称"))
.MoveNext
Loop
End With
m_recordset.Close
Command1.Visible = False
'---------------查看一条完工单---------------
If m_cooperateType = 2 Then '判断该页是否是从stockorderlistsupplier传过来的 0--表示是,1--表示否
Call cooperatefinish_show
Command2.Enabled = False
Command1.Enabled = False
Command5.Visible = False
Command6.Visible = False
Text3.Enabled = False
Text4.Enabled = False
Text5.Enabled = False
Text8.Enabled = False
Label1.Enabled = False
Label9.Enabled = False
Combo1.Enabled = False
ElseIf m_cooperateType = 1 Then
End If
'---------------新增一条完工单---------------
If m_cooperateType = 0 Then
Label1.Enabled = False
Command1.Enabled = False
Dim ret As Boolean
ret = m_produceDAO.produce_print(m_recordset, Trim(m_cooperateId))
If ret Then
Text1.Tag = Trim(m_recordset.Fields("produceId"))
Text1.text = Trim(m_recordset.Fields("pocessno"))
Text10.text = Trim(m_recordset.Fields("exeEmployeeName"))
Text2.text = Trim(m_recordset.Fields("bomName"))
Text2.Tag = Trim(m_recordset.Fields("materialId"))
minserial = CInt(Trim(m_recordset.Fields("最小序列号")))
maxserial = CInt(Trim(m_recordset.Fields("最大序列号")))
Text11.text = CDbl(m_recordset.Fields("quantity")) - CDbl(m_recordset.Fields("finishNum"))
' Text7.text = CDate(Trim(m_recordset.Fields("finishdate")))
Text7.text = Date
Text7.Tag = Trim(m_recordset.Fields("materialType"))
quote = CDbl(Trim(m_recordset.Fields("fee")))
quantity = CDbl(Trim(m_recordset.Fields("quantity")))
finishNum = CDbl(m_recordset.Fields("finishNum"))
Text5.text = CDbl(m_recordset.Fields("quantity")) - CDbl(m_recordset.Fields("finishNum"))
Else
' MainForm.g_msgText = "你查找的生产单质量检验还没有全部合格或者还没有检验,请重新选择其他的生产单!"
' HMsgBox MainForm.g_msgText, 0, 1
Command2.Visible = False
Command4.Visible = False
End If
' Else
'' MainForm.g_msgText = "你查找的生产单质量检验还没有全部合格或者还没有检验,请重新选择其他的生产单!"
'' HMsgBox MainForm.g_msgText, 0, 1
' Command2.Visible = False
' Command4.Visible = False
' End If
' g_recordset.Close
m_recordset.Close
End If
End Sub
Private Sub clear()
Text1.text = ""
Text2.text = ""
Text3.text = ""
Text4.text = ""
Text5.text = ""
Text6.text = ""
Text7.text = ""
Text8.text = ""
End Sub
Private Sub xzjl()
Dim ret As Boolean
Dim ret1 As Boolean
Dim h As Double
Dim findSerial As Boolean ' 是否找到最大的序列号
' Dim maxSerial As Integer ' 当前产品最大的序列号
' Dim i As Integer ' 循环变量
' Dim pcrDAO As productcheckrecordDAO ' 生产检验记录数据库操作对象
' Dim recSet As ADODB.Recordset
'
' Set pcrDAO = New productcheckrecordDAO
' Set recSet = New ADODB.Recordset
MainForm.g_application.m_databaseCon.m_adoConnection.BeginTrans
Me.MousePointer = 11 '设置鼠标形状为沙漏状
On Error GoTo EXITSUB
For h = minserial To maxserial
ret1 = m_ProduceFinishDAO.check_findproduction(m_recordset, Trim(Text1.Tag), CDbl(Trim(h)))
If ret1 Then
If Trim(m_recordset.Fields("jybj")) = "3" Then
m_ProduceFinishDAO.checkrecord_modifyjybj n_recordset, Trim(m_recordset.Fields("checkRecordId")), "5"
End If
End If
m_recordset.Close
' n_recordset.Close
Next h
If m_cooperateType = 1 Then
m_cooperateFinishId = m_ProduceFinishDAO.NewProduceFinish(m_recordset, Trim(Text1.Tag), Trim(Text1.text), CDbl(Trim(Text3.text)), _
CDbl(Trim(Text4.text)), CDbl(Trim(Text5.text)), CDbl(Trim(Replace(Trim(Text6.text), "¥", ""))), CDate(Trim(Text7.text)), _
Trim(Text8.text), Trim(Combo1.Tag), Trim(Text2.Tag), _
Trim(Text7.Tag))
ElseIf m_cooperateType = 0 Then
m_cooperateFinishId = m_ProduceFinishDAO.NewProduceFinish(m_recordset, Trim(Text1.Tag), Trim(Text1.text), CDbl(Trim(Text3.text)), _
CDbl(Trim(Text4.text)), CDbl(Trim(Text5.text)), CDbl(Trim(Replace(Trim(Text6.text), "¥", ""))), CDate(Trim(Text7.text)), _
Trim(Text8.text), Trim(Combo1.Tag), Trim(Text2.Tag), _
Trim(Text7.Tag))
End If
MainForm.g_application.m_databaseCon.m_adoConnection.CommitTrans
Me.MousePointer = 0 '设置鼠标形状为正常状态
Unload Me
Exit Sub
EXITSUB:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -