【文章內(nèi)容簡(jiǎn)介】
berChecksucceed 在設(shè)置單據(jù)編號(hào)規(guī)則后,如果當(dāng)前單據(jù)滿(mǎn)足了編號(hào)規(guī)則后,將會(huì)激活當(dāng)前事件 ? AddNewLineEvent 當(dāng)調(diào)用 AddLine 方法時(shí),該事件將會(huì)產(chǎn)生 4. 應(yīng)用案例: . 表頭附件 1) Toolbar 增加按鈕 附件 按鈕響應(yīng)事件代碼 () 需要根據(jù)自己?jiǎn)螕?jù)的狀態(tài)設(shè)置按鈕的狀態(tài) 2) 單據(jù)保存部分 在原來(lái)的單據(jù)內(nèi)容保存完成以后,事務(wù)提交以前增減保存附件的代碼 Dim n As New m_strConnect Dim ErrDesc As String Dim blnsaveAcc As Boolean Dim strXml As String strXml = (ErrDesc) If ErrDesc Then MsgBox ErrDesc End If Dim m_oServer as Dim objDoc As New Call (strXml) Call (VoucherTypeID, 88) Call (VoucherID, 01) strXml = set objDoc = nothing Call (strXml, n, ErrDesc) If ErrDesc Then MsgBox ErrDesc End If 備注: 藍(lán)字部分如果不是新增,則可以不寫(xiě) VoucherTypeID 如果沒(méi)有更改(即和單據(jù)模版一致)也可以不用設(shè)置 VoucherID 表示單據(jù)主鍵值的 value ,可以是組合 2020001{}003 , 順序和前面的vchtblPrimarykeyNames 順序一致 如果是單據(jù)刪除 , Call (strXml, n, ErrDesc) 刪除附件 strXML = Data AccessoriesChanged=39。139。 Deleted=39。139。 VoucherTypeID=39。8839。 VoucherID=39。00139。 / 3) 初始化模版代碼部分 39。設(shè)置單據(jù)數(shù)據(jù)源對(duì)象 單據(jù)數(shù)據(jù)源對(duì)象是單據(jù)的數(shù)據(jù)訪問(wèn)組件, web 版使用的時(shí)候需要自己實(shí)現(xiàn)這個(gè)接口 Dim m_oDataSource As Object Set m_oDataSource = CreateObject() If m_oDataSource Is Nothing Then MsgBox 設(shè)置單據(jù)數(shù)據(jù)源對(duì)象 Fail!, vbCritical, 渣昫 End If m_oLogin Set = m_oDataSource . 表體附件 1: 870 單據(jù)格式 設(shè)計(jì)器中可以設(shè)置字段的參照類(lèi)型,需要指定一個(gè)文本字段的參照類(lèi)型為附件 2:需要配置應(yīng)用服務(wù)器的文件服務(wù)器設(shè)置。 3: 如果需要顯示的支持該功能,需要在單據(jù)模板中增加一條文本類(lèi)型,參照類(lèi) 型為附件的記錄 . 表體定位 1: Toolbar 增加按鈕 定位 2: 按鈕響應(yīng)事件代碼 需要根據(jù)自己?jiǎn)螕?jù)的狀態(tài)設(shè)置按鈕的狀態(tài) . 表體固定行 單據(jù)控件設(shè)計(jì)態(tài)時(shí)設(shè)置 ShowFIxColer = true . 表體排序 單據(jù)控件設(shè)計(jì)態(tài)時(shí)設(shè)置 ShowSorter = true . 表體匯總 1: Toolbar 增加按鈕 匯總 2: 按鈕響應(yīng)事件代碼 Call 需要根據(jù)自己?jiǎn)螕?jù)的狀態(tài)設(shè)置按鈕的狀態(tài),只 有在查看狀態(tài)可用。 . 表體批改 . ShowBatchModify () . 單據(jù)內(nèi)容模板和草稿 單據(jù)內(nèi)容模板和草稿主要有以下功能: 1:用戶(hù)可以把已有的單據(jù)保存為模板,以利于 下次內(nèi)容差不多的情況下,可以快速使用模板,簡(jiǎn)單修改就可以了,類(lèi)似于單據(jù)復(fù)制,但是單據(jù)復(fù)制一般是完整的單據(jù)表頭、或者表體、或者整單,模板可以是任意的部分內(nèi)容。類(lèi)似于缺省值的功能。 2:用戶(hù)可以把錄入一部分的單據(jù)暫存為草稿,下次有時(shí)間的時(shí)候接著錄入。 示例: 聲明模板助手對(duì)象 Private WithEvents m_oHelper As Helper 39。單據(jù)助手對(duì)象 響應(yīng)打開(kāi)模板或者草稿的事件 Private Sub m_oHelper_LoadFromTemplate(ByVal enumType As , ByVal TemplateID As String, oDomHead As Variant, oDomBody As Variant, oOtherDom As Variant) m_sCurrentDraftID = TemplateID oDomHead, oDomBody End Sub 增加六 個(gè)按鈕 Case 5 39。保存為草稿 SaveAsDraft DraftMode Case 6 39。從草稿打開(kāi) OpenFromDraft DraftMode Case 7 DraftMode, m_sCurrentDraftID Case 8 39。保存為模板 SaveAsDraft TemplateMode Case 9 39。從模板打開(kāi) OpenFromDraft TemplateMode Case 10 刪除草稿,用于草稿單據(jù)正式保存以后 TemplateMode, m_sCurrentDraftID Case 11 草稿或者模板管理 TemplateMode, m_bill() Sub OpenFromDraft(ByVal nMode As TemplateModes) Dim sCardNum As String sCardNum = m_bill() Call (nMode, sCardNum) End Sub Sub SaveAsDraft(ByVal nMode As TemplateModes) Dim sCardNum As String sCardNum = m_bill() Dim str As String Dim DomHead As DOMDocument Dim DomBody As DOMDocument Call (DomHead, DomBody) MsgBox 草稿編號(hào): amp。 (nMode, sCardNum, ().sTitle, DomHead, DomBody) End Sub . 模擬錄入和模擬參照 39。 39。 Procedure : SimulateInput 39。 DateTime : 20200506 16:03 39。 Author : lizheng 39。 Purpose : 模擬參照, col 是列名,或者顯示的真實(shí)列 39。 39。 Public Sub SimulateInput(ByVal section As SectionsConstants, ByVal nRow As Long, ByVal Col As Variant, ByRef sRetValue As String, ByRef eCheck As Long) 3