⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 producefinish.frm

📁 即时通讯
💻 FRM
📖 第 1 页 / 共 3 页
字号:
'*******************************************************
'*    模 块 名 称 :保存外协收工单维护与管理
'*    功 能 描 述 :保存外协收工单的基本信息
'*    程序员姓名  :黄朝和
'*    最后修改人  :
'*    最后修改时间: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 + -