Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

开发平台如何设计子窗体中的子窗体代码

王萌萌  发表于:2017-06-26 10:46:03  
复制

 

Top
王岚 发表于:2017-06-26 10:47:59

Private Sub btnSave_Click()
    On Error GoTo ErrorHandler
    Dim strWhere      As String
    Dim strSQL        As String
    Dim cnn           As Object 'ADODB.Connection
    Dim rst           As Object 'ADODB.Recordset
    Dim rstTmp        As Object 'DAO.Recordset
    Dim blnTransBegin As Boolean

    If Not CheckRequired(Me) Then Exit Sub
    If Not CheckTextLength(Me) Then Exit Sub
    If Not CheckRequired(Me.sfrDetail) Then Exit Sub

    Set cnn = CurrentProject.Connection

    cnn.BeginTrans: blnTransBegin = True

    strSQL = "SELECT * FROM [tbl_配件入库] WHERE [入库单号]=" & SQLText(Me![入库单号])
    Set rst = OpenADORecordset(strSQL, adLockOptimistic, cnn)
    If rst.EOF Then
        rst.AddNew
        rst![入库单号] = GetAutoNumber("配件入库单号")
        rst![审核状态] = "待审核"
        rst![制单人] = Forms!SysFrmMain.Nickname
        rst![制单日期] = Now()
    End If
    rst![入库日期] = Me![入库日期]
    rst![仓库名称] = Me![仓库名称]
    rst![供应商] = Me![供应商]
    rst![进货单号] = Me![进货单号]
    rst![备注] = Me![备注]
    rst.Update
    Me![入库单号] = rst![入库单号]
    rst.Close

    strSQL = "SELECT * FROM [tbl_配件入库list] WHERE [入库单号]=" & SQLText(Me![入库单号])
    Set rst = OpenADORecordset(strSQL, adLockOptimistic, cnn)
    Do Until rst.EOF
        rst.Delete
        rst.MoveNext
    Loop
    Set rstTmp = CurrentDb.OpenRecordset("TMP_tbl_配件入库list")
    Do Until rstTmp.EOF
        rst.AddNew
        rst![序号] = rstTmp![序号]
        rst![入库单号] = Me![入库单号]
        rst![配件编号] = rstTmp![配件编号]
        rst![品名] = rstTmp![品名]
        rst![规格型号] = rstTmp![规格型号]
        rst![单位] = rstTmp![单位]
        rst![实收数量] = rstTmp![实收数量]
        rst![入库数量] = rstTmp![入库数量]
        rst![检验状态] = "待检验"
        rst![说明] = rstTmp![说明]
        rst.Update
        rstTmp.MoveNext
    Loop
    rst.Close
    rstTmp.Close
   
    strSQL = "SELECT * FROM [tbl_配件入库质检_List_D] WHERE [入库单号]=" & SQLText(Me![入库单号])
    Set rst = OpenADORecordset(strSQL, adLockOptimistic, cnn)
    Do Until rst.EOF
        rst.Delete
        rst.MoveNext
    Loop
    Set rstTmp = CurrentDb.OpenRecordset("TMP_tbl_配件入库质检_List_D")
    Do Until rstTmp.EOF
        rst.AddNew
        rst![入库单号] = Me![入库单号]
        rst![检验日期] = rstTmp![检验日期]
        rst![检验员] = rstTmp![检验员]
        rst![实入数量] = rstTmp![实入数量]
        rst![检验数量] = rstTmp![检验数量]
        rst![检验结果] = rstTmp![检验结果]
        rst![说明] = rstTmp![说明]
        rst.Update
        rstTmp.MoveNext
    Loop
    rst.Close
    rstTmp.Close
    cnn.CommitTrans: blnTransBegin = False
            DoCmd.SetWarnings False

    If Form_SysFrmMain.sfrChild.SourceObject = "frm_配件入库" Then
    Form_frm_配件入库.RefreshDataList
    MsgBoxEx LoadString("Saved Successfully."), vbInformation, , 1000
    WriteOperationLog "配件入库单", "保存", [入库单号]
    End If

    'If Me.DataEntry Then
     '   ClearControlValues Me
      '  CurrentDb.Execute "DELETE FROM [TMP_tbl_配件入库list]"
        Me.sfrDetail.Requery

    'Else
    '    DoCmd.Close acForm, Me.Name, acSaveNo
    'End If

ExitHere:
    Set rst = Nothing
    Set cnn = Nothing
    Set rstTmp = Nothing
    Exit Sub

ErrorHandler:
    If blnTransBegin Then
        cnn.RollbackTrans
        blnTransBegin = False
    End If
    RDPErrorHandler Me.Name & ": Sub btnSave_Click()"
    Resume ExitHere
End Sub



总记录:1篇  页次:1/1 9 1 :