Private Sub btnSave_Click()
On Error GoTo ErrorHandler
If Not CheckRequired(Me) Then Exit Sub
If Not CheckTextLength(Me) Then Exit Sub
If Not CheckRequired(Me.sfrDetail) Then Exit Sub
Dim cnn: Set cnn = GetADOConnection()
cnn.BeginTrans
Dim blnTransBegin As Boolean: blnTransBegin = True
Dim strSQL: strSQL = "SELECT * FROM [产品入厂表] WHERE [入厂ID]=" & SQLText(Me![入厂ID])
Dim rst: Set rst = ADO.OpenRecordset(strSQL, adLockOptimistic, cnn)
If rst.EOF Then rst.AddNew
UpdateRecord Me, rst
'你的自定义代码
'rst!Field1 = Me!Field1
'rst!Field2 = Me!Field2
rst.Update
rst.Close
cnn.Execute "DELETE FROM [产品入厂明细表] WHERE [入厂ID]=" & SQLText(Me![入厂ID])
strSQL = "SELECT * FROM [产品入厂明细表] WHERE [入厂ID]=" & SQLText(Me![入厂ID])
Set rst = ADO.OpenRecordset(strSQL, adLockOptimistic, cnn)
Dim rstTmp: Set rstTmp = CurrentDb.OpenRecordset("TMP_产品入厂明细表")
Do Until rstTmp.EOF
rst.AddNew
UpdateRecord rstTmp, rst
'你的自定义代码
'rst!Field1 = Me!Field1
'rst!Field2 = Me!Field2
rst![入厂ID] = Me![入厂ID]
rst.Update
rstTmp.MoveNext
Loop
rst.Close
rstTmp.Close
cnn.CommitTrans
blnTransBegin = False
RequeryDataObject gsfrList
MsgBoxEx LoadString("Saved Successfully."), vbInformation
If Me.DataEntry Then
Me.InitData
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
Private Sub btnCancel_Click()
On Error Resume Next
DoCmd.Close acForm, Me.Name, acSaveNo
End Sub
Private Sub ListXsd_Click()
On Error GoTo ErrorHandler
Dim strSQL As String
Dim rst As Object
Dim rstTmp As Object
If Me.ChlXsd.Form.Recordset.RecordCount > 0 Then
CurrentDb.Execute "DELETE FROM [TMP_RC_产品入厂明细表]"
End If
strSQL = " SELECT * FROM 销售合同查询_明细 WHERE [合同ID]=" & SQLText(Me.ListXsd)
Set rst = OpenADORecordset(strSQL, , CurrentProject.Connection)
Set rstTmp = CurrentDb.OpenRecordset("TMP_RC_产品入厂明细表")
Do Until rst.EOF
rstTmp.AddNew
rstTmp![合同ID] = rst![合同ID]
rstTmp![产品ID] = rst![产品ID]
rstTmp![产品名称] = rst![产品名称]
rstTmp![规格型号] = rst![规格型号]
rstTmp![单位] = rst![单位]
rstTmp![单价] = rst![单价]
rstTmp.Update
rst.MoveNext
Loop
rst.Close
rstTmp.Close
Me.ChlXsd.Requery
ExitHere:
Set rst = Nothing
Set rstTmp = Nothing
Exit Sub
ErrorHandler:
MsgBoxEx Err.Description, vbCritical
Resume ExitHere
End Sub
Private Sub 客户ID_AfterUpdate()
Me.ListXsd.RowSource = " SELECT [合同ID] FROM [销售合同表] WHERE [客户ID]=" & SQLText(Me![客户ID])
Me.ListXsd.Requery
End Sub