業(yè)務(wù)處理方式類教程_第1頁
業(yè)務(wù)處理方式類教程_第2頁
業(yè)務(wù)處理方式類教程_第3頁
業(yè)務(wù)處理方式類教程_第4頁
業(yè)務(wù)處理方式類教程_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、業(yè)務(wù)處理方式類教程主要討論項(xiàng)目中間層的數(shù)據(jù)流三個標(biāo)準(zhǔn)基類的介紹業(yè)務(wù)類與數(shù)據(jù)庫通信方式業(yè)務(wù)類的設(shè)計和實(shí)現(xiàn)主要討論項(xiàng)目中間層的數(shù)據(jù)流三個標(biāo)準(zhǔn)基類的介紹業(yè)務(wù)類與數(shù)據(jù)庫通信方式業(yè)務(wù)類的設(shè)計和實(shí)現(xiàn)中間層的數(shù)據(jù)流結(jié)構(gòu)體系圖代理服務(wù)數(shù)據(jù)庫簡單業(yè)務(wù)類復(fù)雜單據(jù)類接口sdClassMgr.dllsdMidBase.dllsdServerBase.dllDcom服務(wù)器中間層的信息流基于TCPIP的消息傳遞DCOM接口與前臺進(jìn)行數(shù)據(jù)交換 中間層的數(shù)據(jù)流客戶數(shù)據(jù)庫數(shù)據(jù)集非綁定的數(shù)據(jù)傳輸方式當(dāng)前對象中間層主要討論項(xiàng)目中間層的數(shù)據(jù)流三個標(biāo)準(zhǔn)基類的介紹業(yè)務(wù)類與數(shù)據(jù)庫通信方式業(yè)務(wù)類的設(shè)計和實(shí)現(xiàn)三個標(biāo)準(zhǔn)基類的介紹標(biāo)準(zhǔn)類TsdSt

2、andard單據(jù)頭TsdHead單據(jù)明細(xì)TsdDetail三個標(biāo)準(zhǔn)基類的介紹ItemItemItemPHeadHeadHeadP1ItemItemp2ItemItemD2標(biāo)準(zhǔn)類單據(jù)類ItemItem三個標(biāo)準(zhǔn)類相同屬性Index索引Key關(guān)鍵字值Bof置頭標(biāo)志Eof置尾標(biāo)志Count記錄數(shù)CurRecNo當(dāng)前記錄號BookMark書簽FieldCount字段數(shù)Found查找返回標(biāo)志FieldNameint index字段名DataTypeint index數(shù)據(jù)類型ADOConnection ADO數(shù)據(jù)連接接口;DllApplication Tapplication對象三個標(biāo)準(zhǔn)類相同屬性Query

3、String查詢主語句FilterString過濾條件CurStatus 記錄狀態(tài)DataComm 數(shù)據(jù)和安全事務(wù)通信接口三個標(biāo)準(zhǔn)類不同的屬性 單據(jù)頭比較豐富CurItemStatus 明細(xì)行的狀態(tài)ItemFieldCount 明細(xì)行的字段數(shù)ItemFieldNameint Index 明細(xì)中序號為Index的字段名稱ItemDataTypeint Index明細(xì)中序號為Index的字段的數(shù)據(jù)類型三個標(biāo)準(zhǔn)類共有的方法Void AddNew()Void Insert(int Index)Void Edit()Void Cancel()Void MoveFirst()Void MoveLast()

4、Void MoveNext()Void MovePrious()三個標(biāo)準(zhǔn)類共有的方法Void MoveBy(int Length)Bool LocateByIndex(int Index)Bool LocateByKey(AnsiString Key)Bool FindKey(AnsiString Key)Void AddRecord(void *Record,AnsiString Key)Void InSertRecord(void *Record,AnsiString Key,int Index)三個標(biāo)準(zhǔn)類共有的方法Void DeleteRecord(AnsiString Key)Void

5、 RemoveRecord(int Index)Void ChangeRecord(void *Record,AnsiString NewKey,AnsiString OldKey)Void *Records(int Index)Void *RecordByKey(AnsiString Key)三個標(biāo)準(zhǔn)類共有的方法Virtual void ClearRecord()Virtual Void *Assign(void *p)Virtual AnsiString GetFieldValue(EnumType euFieldName)Virtual Void SetFieldValue(EnumTy

6、pe euFieldName,AnsiString Value),euFieldname是定義在sdEnumtype.h頭文件里表示不同字段序號的枚舉變量;三個標(biāo)準(zhǔn)類共有的方法Void InitGlobalVar(AnsiString CompanyCode,AnsiString UserCode,AnsiString FMonth, AnsiString IMonth,AnsiString PMonth,AnsiString SMonth,AnsiString MMonth, AnsiString CMonth,AnsiString MMonth,AnsiString HMonth, Ans

7、iString CurrencyCode,AnsiString TaxCode,AnsiString CurDate,AnsiString SysDate);初始化一些系統(tǒng)參數(shù),財務(wù)月份,當(dāng)前時間,系統(tǒng)時間;三個標(biāo)準(zhǔn)類共有的方法Virtual void Update();Virtual void Delete();Virtual bool Find(AnsiString WhereStr);Virtual void Execute(AnsiString Param);Virtual void BackupValue();Virtual void RestoreValue();三個標(biāo)準(zhǔn)類共有的方

8、法TsdStandard(TDataComm *DC)TsdHead(TDataComm *DC)TsdDetail(TDataComm *DC)TsdStandard()TsdHead()TsdDetail()單據(jù)頭所具有的方法void FreeItem();virtual void RestoreItem();virtual void NewDetail();virtual void DeleteDetail();virtual void AddItem();virtual void InsertItem();virtual void EditItem();virtual void Del

9、eteItem();單據(jù)頭所具有的方法virtual void RemoveItem();virtual void ClearItem();virtual void CancelItem();virtual void AddToObject();virtual bool LocateItemByIndex(int Index);virtual bool LocateItemByKey(AnsiString Key);單據(jù)頭所具有的方法virtual void Check(int IsCheck);virtual void BatchCheck(int IsCheck);virtual void

10、 Close(int IsClose);virtual void BatchClose(int IsClose);virtual void Revoke(int IsRevoke);virtual void BatchRevoke(int IsRevoke);virtual void Tally(int IsTally);virtual void BatchTally(int IsTally);主要討論項(xiàng)目中間層的數(shù)據(jù)流三個標(biāo)準(zhǔn)基類的介紹業(yè)務(wù)類與數(shù)據(jù)庫通信方式業(yè)務(wù)類的設(shè)計和實(shí)現(xiàn)業(yè)務(wù)類與數(shù)據(jù)庫通信方式TDataComm數(shù)據(jù)通信封裝類ADO數(shù)據(jù)連接,使用OLE DB最簡單的方法 業(yè)務(wù)類與數(shù)據(jù)庫通信

11、方式數(shù)據(jù)庫服務(wù)器Data Module數(shù)據(jù)模塊TDataComm數(shù)據(jù)通信接口業(yè)務(wù)類1業(yè)務(wù)類2業(yè)務(wù)類n封裝的消息傳遞類的功能作用數(shù)據(jù)通信的橋梁作用業(yè)務(wù)規(guī)則的檢驗(yàn)師數(shù)據(jù)通信的橋梁作用負(fù)責(zé)與數(shù)據(jù)庫的通信,向數(shù)據(jù)庫發(fā)送SQL查詢負(fù)責(zé)創(chuàng)建數(shù)據(jù)集,被動地把記錄傳送到客戶端負(fù)責(zé)把客戶端的數(shù)據(jù)傳送到數(shù)據(jù)庫,向數(shù)據(jù)庫調(diào)用存儲過程起到數(shù)據(jù)光標(biāo)的作用業(yè)務(wù)規(guī)則的檢驗(yàn)師根據(jù)前臺要求,獲取符合要求的數(shù)據(jù)前臺傳回來的數(shù)據(jù)進(jìn)行業(yè)務(wù)規(guī)則校驗(yàn)數(shù)據(jù)類型的驗(yàn)證,合法性驗(yàn)證數(shù)據(jù)安全的保證ADO數(shù)據(jù)連接充分利用微軟ADO技術(shù) ,OLE 自動化接口 OLE DB封裝了ODBC的功能 代碼中用try和catch來捕獲ADO錯誤 避開BDE的

12、不方便 前臺通過DCOM接口進(jìn)行數(shù)據(jù)交換 應(yīng)用服務(wù)器接受客戶端的請求分配組件對象給客戶端使客戶端與應(yīng)用程序取得聯(lián)系前臺所需求的數(shù)據(jù)通過調(diào)用組件對象接口函數(shù)獲取 前臺要更新到數(shù)據(jù)庫的紀(jì)錄也通過組件對象調(diào)用接口函數(shù)與數(shù)據(jù)庫打交道 基于TCPIP的消息傳遞進(jìn)行多方通信應(yīng)用服務(wù)器代理服務(wù)器客戶端業(yè)務(wù)類的設(shè)計和實(shí)現(xiàn)明確處理對象,選擇繼承類理解數(shù)據(jù)表字段意義,發(fā)布類的訪問屬性實(shí)現(xiàn)虛擬函數(shù)功能對數(shù)據(jù)的校驗(yàn)和業(yè)務(wù)功能的處理實(shí)現(xiàn)注意的問題明確處理對象,選擇繼承類簡單基礎(chǔ)資料,獨(dú)立表應(yīng)選用標(biāo)準(zhǔn)類,如客戶資料管理、銷售員資料等復(fù)雜單據(jù),需要主從表共同完成的業(yè)務(wù)就選用單據(jù)類,如訂單、發(fā)貨單等確定單頭,則繼承單據(jù)頭基類

13、,如訂單單頭明細(xì)表類,則繼承于明細(xì)基類,如訂單明細(xì)理解數(shù)據(jù)表字段意義,發(fā)布類的訪問屬性根據(jù)表結(jié)構(gòu)和一些業(yè)務(wù)知識,確定屬性的轉(zhuǎn)換數(shù)據(jù)類型和讀寫類型數(shù)據(jù)類型的轉(zhuǎn)換,一般地有Varchar-AnsiString, decimal-double, tinyint-int, Datatime-AnsiString 等只讀屬性 _property DataType FieldName=read=m_FieldName可讀寫屬性_property DataType FieldName=read=m_FieldName,write=m_FieldName增加類的私有字段,m_FieldName,b_Field

14、Name(備份)對數(shù)據(jù)的校驗(yàn)和業(yè)務(wù)功能的處理實(shí)現(xiàn)完成屬性的賦值 實(shí)現(xiàn)前臺-后臺調(diào)用SetFieldValue(enumType sdFieldName,AnsiString Value)注意數(shù)據(jù)類型轉(zhuǎn)換類內(nèi)部調(diào)用 SetFieldName(DataType Value)對數(shù)據(jù)和業(yè)務(wù)的校驗(yàn)完成屬性的取值 實(shí)現(xiàn)后臺-前臺調(diào)用AnsiString GetFieldValue(enumType sdFieldName)實(shí)現(xiàn)虛擬函數(shù)功能Void BackupValue()備份數(shù)據(jù)實(shí)現(xiàn)b_FieldName=m_FieldNameVoid RestorValue()恢復(fù)數(shù)據(jù)實(shí)現(xiàn)m_FieldName=b_

15、FieldNameVoid Query()實(shí)現(xiàn) 數(shù)據(jù)表-數(shù)據(jù)集的轉(zhuǎn)化Void BatchLetValue()對類私有字段賦值實(shí)現(xiàn)m_FieldName=m_Query-FieldByName“FieldName”實(shí)現(xiàn)虛擬函數(shù)功能Void EmptyValue()清空字段的值Void Update() 更新數(shù)據(jù)表增加記錄,調(diào)用存儲過程TableName_Insert修改記錄,調(diào)用存儲過程TableName_UpdateVoid Delete()刪除記錄,調(diào)用存儲過程TableName_Delete實(shí)現(xiàn)虛擬函數(shù)功能Void AssignValue() 數(shù)據(jù)集-對象Void Assign(void *Record)Void Execute(AnsiString Param)實(shí)現(xiàn)虛擬函數(shù)功能Void Check(int IsCheck)審核單據(jù)調(diào)用存儲過程TableName_CheckVoid Close(i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論