03k3實施技術(shù)專題-02k3bos插件開發(fā)產(chǎn)品培訓(xùn)_第1頁
03k3實施技術(shù)專題-02k3bos插件開發(fā)產(chǎn)品培訓(xùn)_第2頁
03k3實施技術(shù)專題-02k3bos插件開發(fā)產(chǎn)品培訓(xùn)_第3頁
03k3實施技術(shù)專題-02k3bos插件開發(fā)產(chǎn)品培訓(xùn)_第4頁
03k3實施技術(shù)專題-02k3bos插件開發(fā)產(chǎn)品培訓(xùn)_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

提綱插件開發(fā)概述案例介紹插件開發(fā)基礎(chǔ)插件開發(fā)向?qū)3ClassEvents業(yè)務(wù)對象接口BillEventListEvents單據(jù)接口序事簿接口K3ClassEvents公用對象K3Lib為什么要用插件完成當(dāng)前版本無法用K/3

BOS

標(biāo)準(zhǔn)功能實現(xiàn)的需求,插件原理圖如下插件開發(fā)概述插件開發(fā)概述插件的作用實現(xiàn)單據(jù)、序時簿、基礎(chǔ)資料序時簿中特殊的業(yè)務(wù)流程處理中間層數(shù)據(jù)改變時的特殊處理規(guī)則個性化的菜單、外觀定制;增加自定義的菜單并響應(yīng)其操作對審核、消息流程的自定義控制插件開發(fā)環(huán)境金蝶K/3

v10.1以上的版本必選安裝客戶端、K/3

BOS, 同時安裝中間層

Visual

Basic使用vb

6.0

版本,并且安裝SP5Windows

2000

Server以上版本采用Server

類操作系統(tǒng)作為開發(fā)、調(diào)試操作系統(tǒng)注意:如果要使用“金蝶K/3

BOS插件開發(fā)向?qū)А惫ぞ?,需要采用簡體中文操作系統(tǒng)SQL

Server

2000數(shù)據(jù)庫插件開發(fā)概述-開發(fā)環(huán)境介紹提綱插件開發(fā)概述案例介紹插件開發(fā)基礎(chǔ)插件開發(fā)向?qū)3ClassEvents業(yè)務(wù)對象接口BillEventListEvents單據(jù)接口序事簿接口K3ClassEvents公用對象K3LibABC公司主營業(yè)務(wù)是生產(chǎn)和銷售各種高檔衛(wèi)浴五金、水暖器材等。擁有五個廠區(qū),產(chǎn)品外銷歐美、 等國家和地區(qū)占用嚴(yán)重的問題,ABC公司提出了寄存?zhèn)}的管理模為了 物流管理,解決重復(fù)請購、式,與供應(yīng)商之間通過

窗口來管理供應(yīng)商將物料寄存到ABC公司指定的物流中心倉庫,但所

屬供應(yīng)商ABC公司根據(jù)生產(chǎn)實際需求從物流中心領(lǐng)料并進(jìn)行相應(yīng)的結(jié)算處理案例分析解決方案演示案例—插件開發(fā)需求在寄存入庫單單據(jù)上增加 按鈕的浮動按鈕,隱藏“頁面設(shè)置”菜單當(dāng)前登錄用戶只能看到本人制作的寄存入庫單寄存入庫單新增時給表體賦一行默認(rèn)值寄存入庫單下推外購入庫單時,所選記錄必須部門相同提綱插件開發(fā)概述案例介紹插件開發(fā)基礎(chǔ)插件開發(fā)向?qū)3ClassEvents業(yè)務(wù)對象接口BillEventListEvents單據(jù)接口序事簿接口K3ClassEvents公用對象K3Lib插件開發(fā)基礎(chǔ)

插件開發(fā)向?qū)w驗K/3

BOS插件開發(fā)向?qū)峋V插件開發(fā)概述案例介紹插件開發(fā)基礎(chǔ)插件開發(fā)向?qū)3ClassEvents業(yè)務(wù)對象接口BillEventListEvents單據(jù)接口序事簿接口K3ClassEvents公用對象K3Lib插件對象模型(BillEvent)單據(jù)接口序事簿接口基礎(chǔ)資料序事簿接口K3ClassEventsBillEventListEventsBaseClassEventBillEventK3LibNetUserAccountBarBillHeadsBillEntrysBillHeadBillEntryBOSBandsBOSToolsBOSFieldsBOSBandBOSToolBOSFieldsBOSFieldBOSFieldBillEvent對象BillEvent對象Bar概述BOSBands和BOSBand對象

BOSTools和BOSTool對象單據(jù)基礎(chǔ)對象BillHeads和BillEntrysBOSFields單據(jù)接口常用事件常用函數(shù)、方法常用屬性概述BOSBands、BOSTools對象在BillEvent、ListEventsBar屬性使用。對象中包含例如:Dim

oBar

As

K3ClassEvents.BarbarSet

oBar

=BillEventObject.在BillEvent、ListEvents、BaseClassEvent對象新增事件SubSubBoolean)BarInitialize(ByVal

o Bar

As

K3ClassEvents.

Bar)BarClick(ByVal

BOSTool

As

K3ClassEvents.BOSTool,

Cancel

AsBOSBands和BOSBand對象基本和ActiveBar的Bands、Band對象屬性、方法一致BOSBands不能使用

For

Each

方法遍歷BOSBand對象可以通過

Add

方法來新建BOSBand對象。BOSTools常用方法Function

Add(ToolName

As

String)

As

BOSTool與ActiveBar的Tools的Add相比可以在任何的BOSTools對象中調(diào)用不需要考慮ToolID重復(fù)的問題Sub

InsertBefore(Index,

oTool

As

BOSTool)Index

可以是數(shù)字,以表示當(dāng)前BOSBand上的BOSTool的順序(與ActiveBar中的方法一致)也可以是一個BOSTool的Name(字符串)Sub

InsertAfter(Index,

oTool

As

BOSTool)新增方法,特性與上相同練習(xí)在寄存入庫單單據(jù)上增加面設(shè)置”菜單按鈕的浮動按鈕,隱藏“頁BillEvent對象BillEvent對象Bar概述BOSBands和BOSBand對象BOSTools和BOSTool對象單據(jù)基礎(chǔ)對象BillHeads和BillEntrysBOSFields單據(jù)接口事件函數(shù)、方法屬性概述在BillEvent對象中包含使用。例如:Dim

oHead As

K3ClassEvents.BillHeadSet

oHead

=

BillEventObject.BillHeads(1)BillHeads、BillEntrys、BOSFields不能使用For

Each方法遍歷對象BillEventBillHeadsBillEntrysBillHeadBillEntryBOSFieldsBOSFieldBOSFieldsBOSFieldBillEntrys對象BillEntrys對象包含了和單據(jù)體相關(guān)的屬性通過這些屬性可以在運(yùn)行時操作單據(jù)體分錄相關(guān)信息CountLong分錄的個數(shù)EntryIndexLong序號BOSFields(BOSFields)包含的字段TableNameString分錄對應(yīng)在數(shù)據(jù)庫中的表名EntryLeftLong分錄的左EntryTopLong分錄的上EntryWidthLong分錄的寬度EntryHeightLong分錄的高度LayerLong分錄所在的層EntryTypeLong分錄的類型(單分錄、多分錄)VisibleBoolean分錄的可見性KeyFieldString分錄的關(guān)鍵字段MaxRowsLong可以在運(yùn)行時調(diào)整單據(jù)體行數(shù)(大于1且小于2000)BOSFields和BOSField對象字段相關(guān)信息CountLong字段的個數(shù)CaptionString字段的標(biāo)題FieldNameString字段名TableNameString字段對應(yīng)在數(shù)據(jù)庫中的表名FieldLeftLong字段的左FieldTopLong字段的上FieldWidthLong字段的寬度FieldHeightLong字段的高度LayerLong字段所在的層FieldLockBoolean字段是否鎖定VisibleBoolean字段是否可見FilterString字段的過濾FontBoldBoolean字段字體屬性FontItalicBoolean字段字體屬性FontNameString字段字體屬性FontSizeCurrency字段字體屬性FrameBorderBoolean是否顯示邊框FrameBorderColorLong邊框顏色LabelColorLong顏色LabelWidthInteger寬度MustInputBoolean是否必錄NeedSaveBoolean是否需要保存NoteString備注NumberVariant字段的值(用于查找類型字段)PageInteger字段所在的PageTextVariant字段的顯示值TextColorLong字段的顏色ValueVariant字段的保存值FKeyString字段的內(nèi)碼BOSField對象每個字段對象,對應(yīng)單據(jù)(包括單據(jù)頭和單據(jù)體)上的每一個字段通過這些屬性,可以在運(yùn)行時操作字段。屬性集BOSField屬性某些屬性值只適用于單據(jù)頭中的字段FieldTop\FieldLeft\FieldHeight\FieldWidthLabelWidth\LabelColor\FrameBorderColor\FrameBorderFontName\FontSize\FontBold\FontItalic\TextColor某些兩者都支持TableName\FieldName\Caption\Page\Layer\FKeyVisible\NeedSave\MustInput\FieldLock\Note某些只適用于特殊的字段Row僅支持多分錄單據(jù)體僅支持基礎(chǔ)資料字段FilterBOSField屬性詳解Visible:字段顯示/隱藏屬性,只有設(shè)計時沒有設(shè)計為“可見”狀態(tài)的字段,才可以在運(yùn)行時更改可見性狀態(tài)FieldLock:只有設(shè)計時沒有設(shè)計為“鎖定”狀態(tài)的字段,才可以在運(yùn)行時更改鎖定狀態(tài)Value:得到字段內(nèi)碼值。即保存在數(shù)據(jù)庫中的值

Number:得到字段查找類型字段查找值Text:得到字段顯示值。即顯示在界面的值,不支持通過該屬性直接賦值。Value:得到/設(shè)置字段非查找類型字段賦值使用Number :得到/設(shè)置字段查找類型字段賦值使用BillEvent對象BillEvent對象Bar概述BOSBands和BOSBand對象BOSTools和BOSTool對象單據(jù)基礎(chǔ)對象BillHeads和BillEntrysBOSFields單據(jù)接口常用事件常用函數(shù)、方法常用屬性BillEvent對象-常用事件事件Event

BarInitialize(oBar

AsBar)說明:該事件在菜單、

初始化時發(fā)生。Event

BarClick(BOSTool

As

BOSTool,

Cancel

As

Boolean)項時發(fā)生。說明:該事件在點擊菜單、Event

AfterNewBill()說明:新建單據(jù)對象后發(fā)生。Event

AfterLoadBill()說明:單據(jù)對象加載完成后發(fā)生。Event

AfterSelBill(lSelBillType

As

Long)說明:選單操作完成后發(fā)生。Event

Change(d Dictionary,

dctFld

As

Dictionary,

Col

AsLong,

Row

As

Long,

Cancel

As

Boolean)說明:單據(jù)對象上的字段值發(fā)生改變時發(fā)生。BillEvent對象-常用函數(shù)、方法方法Function

GetFieldValue(sKey

As

String,

[nRow

As

Long

=

-1],[ValueType

As

Enu_ValueType

=

Enu_ValueType_FFLD])說明:用于返回字段的值。Function

SetFieldValue(sKey

As

String,

vValue,

[nRow

As

Long=

-1])

As

Boolean說明:用于設(shè)置字段的值。Function

InsertNewRowAndFill(nPage

As

Long,

nRow

As

Long,ParamArray

vFieldsData()

As

Variant)

As

Boolean說明:在多分錄單據(jù)體中

一個新行,并填充數(shù)據(jù)。BillEvent對象-屬性練習(xí)通過插件實現(xiàn)寄存入庫單新增時給表體賦一行值,物料代碼為”01.001”,應(yīng)收數(shù)量為100,實收數(shù)量為100,單價為1500。主要練習(xí)Insertnewrowandfill方法插件對象模型(ListEvents)單據(jù)接口序事簿接口基礎(chǔ)資料序事簿接口K3ClassEventsBillEventListEventsBaseClassEventListEventsK3LibNetUserAccountBarBOSBandsBOSToolsBOSBandBOSToolListEvents對象ListEvents對象常用事件常用函數(shù)、方法常用屬性ListEvents對象-常用事件Event

BarInitialize(o Bar

As說明:菜單、

初始化時發(fā)生。Bar)Event

BarClick(BOSTool

AsBOSTool,

Cancel

As

Boolean)說明:點擊菜單、 項時發(fā)生。Event

ListFillRow(lRow

As

Long,

RowData

As

Object,

HeadDiDictionary,

CellData

As

String,

BackColor

As

Long,

ContinueRaise

AsBoolean)說明:序時簿的行填充數(shù)據(jù)時發(fā)生。ListEvents對象-常用方法Function

GetSelectedBillInfo()

As

Vector說明:獲取當(dāng)前選中的單據(jù)的數(shù)據(jù)。ListEvents對象-屬性ListFilterString說明:序事簿運(yùn)行時設(shè)置過濾條件練習(xí)通過插件實現(xiàn)當(dāng)前登錄用戶只能看到本人制作的寄存入庫單,主要練習(xí)序事簿ListFilterString屬性提綱插件開發(fā)概述案例介紹插件開發(fā)基礎(chǔ)插件開發(fā)向?qū)?shù)據(jù)結(jié)構(gòu)K3ClassEvents業(yè)務(wù)對象接口BillEventListEvents單據(jù)接口序事簿接口K3ClassEvents公用對象

K3Lib常用元數(shù)據(jù)表結(jié)構(gòu)概述在BillEvent、ListEvents、BaseClassEvent對象中包含K3Lib對象使用。例如:Dim

oK3

As

K3ClassEvents.K3LibSet

oK3=BillEventObject.K3Lib也可直接使用:lUserID

=BillEventObject.K3Lib.User.UserIDK3LibAccountIDCommitMutexBeginMutexAccountNameSetupTypeQueryFuncUserNameCreateK3ObjectLoadKDStringGetK3LanguageUpdateDataGetDataNetUserAccountUserIDQuerySubSys方法集Function

GetData(SQLCode

As

String)

As

Object數(shù)據(jù)庫,返回數(shù)據(jù)。返回值是通過SQL語句從中間層ADODB.Recordset

類型Sub

UpdateData(SQLCode)通過SQL語句從中間層數(shù)據(jù)庫,更新數(shù)據(jù)參數(shù)SQLCode可以是String(單條SQL語句),也可以是String()(多條SQL語句)Function

CreateK3Object(ClassString

As

String)

As

Object通過這個函數(shù)在插件中創(chuàng)建K/3的對象,使得插件可以單獨(dú)調(diào)試練習(xí)通過插件實現(xiàn)寄存入庫單下推外購入庫單時所選單據(jù)部門必須相同,主要練習(xí)K3lib方法GetData以及序事簿方法GetSelectedBillInfo資料關(guān)于K/3

BOS完整案例的介紹,請參考《K3BOS應(yīng)用開發(fā)培訓(xùn)》關(guān)于K/3BOS完整開發(fā)流程的介紹,請參考《K3

BOS開發(fā)指導(dǎo)手冊》關(guān)于插件中接口的函數(shù)、方法、事件、屬性的詳細(xì)信息,請參考《K3BOS插件開發(fā)參考手冊》關(guān)于BOS萬能報表工具包介紹,請參考《K3

BOS萬能報表工具包用戶手冊》常見問題請參考《K/3

BOS百問百答》關(guān)于工業(yè)單據(jù)插件開發(fā),函數(shù)、方法、屬性的詳細(xì)信息,《K3客戶化開發(fā)工具包》謝 謝!特別或為任何目的

或 本文檔的任何部沒有金蝶 (中國) 的特別 ,任何人不能以分。本文檔中包含的信息

更改,恕不另行通知。由金蝶 (中國) 和其分銷商所銷售的某些產(chǎn)品包含有其它 供應(yīng)商的 組件。?、WINDOWS?、NT?、EXCEL?、Word?、

?

和SQL

Server?是微軟公司的 商標(biāo)

溫馨提示

  • 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

提交評論