北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |
一个窗体中带有通用附件,首次添加记录和附件保存后,重新打开时附件没有保存到,重新添加一次附件保存后就可以正常,请帮忙看看是什么地方有问题?谢谢!(自动编号的附件可以一次保存成功)
Option Compare Database
Option Explicit
Private Sub Form_Load()
On Error GoTo ErrorHandler
Dim strSQL As String
Dim cnn As Object 'ADODB.Connection
Dim rst As Object 'ADODB.Recordset
ApplyTheme Me
LoadLocalLanguage Me
If IsNull(Me.OpenArgs) Then
Me.DataEntry = True
End If
If Me.DataEntry Then
GoTo ExitHere
End If
Me.btnSave.Enabled = Me.AllowEdits
Set cnn = CurrentProject.Connection
strSQL = "SELECT * FROM [TBL_IPO] WHERE [WenJianBianHao]=" & SQLText(Me.OpenArgs)
Set rst = OpenADORecordset(strSQL, , cnn)
Me![ChuLiLeiBie] = rst![ChuLiLeiBie]
Me![WenJianBianHao] = rst![WenJianBianHao]
Me![Ver] = rst![Ver]
Me![QianFaRiQi] = rst![QianFaRiQi]
Me![BenChangXingHao] = rst![BenChangXingHao]
Me![KeKuanXingHao] = rst![KeKuanXingHao]
Me![YaoQiuShuLiang] = rst![YaoQiuShuLiang]
Me![ZuiHouFuYunRiQi] = rst![ZuiHouFuYunRiQi]
Me![PartNo] = rst![PartNo]
Me![BOM] = rst![BOM]
Me![GuiGe] = rst![GuiGe]
Me![BuMen] = rst![BuMen]
Me![ShenQingRen] = rst![ShenQingRen]
Me![BeiZhu] = rst![BeiZhu]
Me![ShenHeZhuangTai] = rst![ShenHeZhuangTai]
Me![XiuDingRen] = rst![XiuDingRen]
Me![XiuDingRiQi] = rst![XiuDingRiQi]
rst.Close
'通过这一行代码的调用实现附件的加载
Call Me.sfrAttachments.Form.LoadAttachmentData("附件", Me!WenJianBianHao, cnn)
ExitHere:
Set rst = Nothing
Set cnn = Nothing
Exit Sub
ErrorHandler:
RDPErrorHandler Me.Name & ": Sub Form_Load()"
Resume ExitHere
End Sub
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
If Not CheckRequired(Me) Then Exit Sub
If Not CheckTextLength(Me) Then Exit Sub
Set cnn = CurrentProject.Connection
strSQL = "SELECT * FROM [TBL_IPO] WHERE [WenJianBianHao]=" & SQLText(Me![WenJianBianHao])
Set rst = OpenADORecordset(strSQL, adLockOptimistic, cnn)
If rst.EOF Then
rst.AddNew
End If
rst![ChuLiLeiBie] = Me![ChuLiLeiBie]
rst![WenJianBianHao] = Me![WenJianBianHao]
rst![Ver] = Me![Ver]
rst![QianFaRiQi] = Me![QianFaRiQi]
rst![BenChangXingHao] = Me![BenChangXingHao]
rst![KeKuanXingHao] = Me![KeKuanXingHao]
rst![YaoQiuShuLiang] = Me![YaoQiuShuLiang]
rst![ZuiHouFuYunRiQi] = Me![ZuiHouFuYunRiQi]
rst![PartNo] = Me![PartNo]
rst![BOM] = Me![BOM]
rst![GuiGe] = Me![GuiGe]
rst![BuMen] = Me![BuMen]
rst![ShenQingRen] = Me![ShenQingRen]
rst![BeiZhu] = Me![BeiZhu]
rst![ShenHeZhuangTai] = Me![ShenHeZhuangTai]
rst![XiuDingRen] = Forms!sysfrmMain!Nickname
rst![XiuDingRiQi] = Now()
rst.Update
rst.Close
'通过这一行代码的调用实现附件的保存
Call Me.sfrAttachments.Form.SaveAttachmentData("附件", Me!WenJianBianHao, cnn)
Form_frm_IPO.RefreshDataList
MsgBoxEx LoadString("Saved Successfully."), vbInformation
' If Me.DataEntry Then
' ClearControlValues Me
' Else
DoCmd.Close acForm, Me.Name, acSaveNo
' End If
ExitHere:
Set rst = Nothing
Set cnn = Nothing
Exit Sub
ErrorHandler:
RDPErrorHandler Me.Name & ": Sub btnSave_Click()"
Resume ExitHere
End Sub