【正文】
eMode, 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。從草稿打開 OpenFromDraft DraftMode Case 7 DraftMode, m_sCurrentDraftID Case 8 39。單據(jù)助手對(duì)象 響應(yīng)打開模板或者草稿的事件 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。 2:用戶可以把錄入一部分的單據(jù)暫存為草稿,下次有時(shí)間的時(shí)候接著錄入。 . 表體批改 . ShowBatchModify () . 單據(jù)內(nèi)容模板和草稿 單據(jù)內(nèi)容模板和草稿主要有以下功能: 1:用戶可以把已有的單據(jù)保存為模板,以利于 下次內(nèi)容差不多的情況下,可以快速使用模板,簡(jiǎn)單修改就可以了,類似于單據(jù)復(fù)制,但是單據(jù)復(fù)制一般是完整的單據(jù)表頭、或者表體、或者整單,模板可以是任意的部分內(nèi)容。設(shè)置單據(jù)數(shù)據(jù)源對(duì)象 單據(jù)數(shù)據(jù)源對(duì)象是單據(jù)的數(shù)據(jù)訪問組件, 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è)置字段的參照類型,需要指定一個(gè)文本字段的參照類型為附件 2:需要配置應(yīng)用服務(wù)器的文件服務(wù)器設(shè)置。00139。8839。139。139。 ? GetVoucherDataXML 方法 功能: 得到單據(jù)數(shù)據(jù) DOM 對(duì)象 語法: Public Sub getVoucherData(oDomhead As Variant,oDomBody As Variant) 參數(shù): rstHeader: 表頭數(shù)據(jù) DOM 對(duì)象 ( 對(duì)象 ) rstBody: 表體數(shù)據(jù) DOM 對(duì)象 ( 對(duì)象 ) 返回值: 無 備注: 更新數(shù)據(jù) (從控件生成 DOMDocumetn 對(duì)象 ) ? GetLineDom 方法 功能: 返回當(dāng)前或指定行的 Dom 對(duì)象 (得到表體一行的全部 Dom 數(shù)據(jù)對(duì)象 ) 語法: Public Function GetLineDom(Optional ByVal nRow As Long = 0) As DOMDocument 參數(shù): nRow 指定的行 Index,缺省為 0,即取當(dāng)有 Mouse 所在行的數(shù)據(jù) 返回值: DOMDocument 對(duì)象 ? PrintVoucherEx 方法 功能:打印單據(jù)數(shù)據(jù) 語法: Public Function PrintVoucherEx(ByVal rsTemplate As Variant, ByVal rsField As Variant, Optional ByVal bShowPrintDlg As Boolean = True) As Long 參數(shù): rsTemplate [IN]記錄集 單據(jù)模版數(shù)據(jù) (必需通過單據(jù)后臺(tái)服務(wù)提供 ) rsField [IN]記錄集 固定文本數(shù)據(jù) (必需通過單據(jù)后臺(tái)服務(wù)提供 ) bShowPrintViewDlg [IN] 布爾值 是否顯示打印對(duì)話框 返回值: 如果打印成功返回 0,否則返回非 0,具體的錯(cuò)誤信息請(qǐng)參考打印控件 (Error Table) 例子: Public Sub Command1_Click() Dim o as Object Dim rsTemplate as Recordset Dim rsField as Recordset Set o = CreateObject(‘’) If o is nothing then Exit Sub ‘如果創(chuàng)建對(duì)象 Fail,則退出 Set rsTemplate = (數(shù)據(jù)庫連接 (Connection),單據(jù) (CardNumber),模版號(hào) (VT_ID)) Set rsField = (數(shù)據(jù)庫連接字符串 (String),模版號(hào) (VT_ID)) Call (rsTemplate, rsField, True) ’顯示打印對(duì)話框 End Sub ? ExportToFile 方法 功能: 導(dǎo)出單據(jù)單據(jù)數(shù)據(jù)到指定的文件 語法: Public Function ExportToFile(ByVal rsTemplate As Variant, ByVal rsField As Variant) As Boolean 參數(shù): rsTemplate [IN]記錄集 單據(jù)模版數(shù) 據(jù) (必需通過單據(jù)后臺(tái)服務(wù)提供 ) rsField [IN]記錄集 固定文本數(shù)據(jù) (必需通過單據(jù)后臺(tái)服務(wù)提供 ) 返回值: 如果導(dǎo)出成功返回 0,否則返回非 0,具體的錯(cuò)誤信息請(qǐng)參考打印控件 (Error Table)。 語法: Public Sub DelLine(Optional Byval nRow as Long) 參數(shù): nRow 為單據(jù)表體的具體行號(hào) 返回值: 無 ? AddNew 方法 功能: 增加一張新單據(jù) 語法: Public Sub AddNew( Byval eMode as AddNewMode) 參數(shù): eMode 為新增時(shí)的增加模式 返回值: 無 備注: 增加一張新單據(jù),實(shí)際上就是將表頭對(duì)象 (Header)和表體對(duì)象 (Body)中各項(xiàng)目的值據(jù)增加模式清空。包括定位、模版信息。 單據(jù)控件的主要方法 ? setTemplateData 方法 功能: 設(shè)置單據(jù)控件的模版數(shù)據(jù)記錄集,在第一次初始化單據(jù)控件時(shí),必須設(shè) 置單據(jù)模版數(shù)據(jù)。 備注: 該屬性只為 Web 模式設(shè)置, C/S 結(jié)構(gòu)另 (詳見 DEMO)。請(qǐng)?jiān)谧鼍唧w的操 作時(shí),考慮用戶權(quán)限的問題。 String 字符串表達(dá) 式 Example: Public Sub Command1_Click() (1,1)=‘用友軟件公司 ’ (1,‘cCusName’)= ‘用友軟件公司 ’ cCusName=‘客戶名稱 ’ End Sub ? BodyColWidth 屬性 設(shè)置表體指定行的寬度 語法: voucher. BodyColWidth (Col as Variant)= [=value] 參數(shù) 描述 Voucher 單據(jù)控件名稱 Col 可變體,可以是列,也可用關(guān)鍵值來表 示表體里的哪一行。 ? HeadText 屬性 設(shè)置或返回表頭項(xiàng)目的值 語法: (Index)= [=str