專利名稱::一種單據(jù)頁面動態(tài)布局的方法及裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及數(shù)據(jù)庫處理領(lǐng)域,特別是涉及一種單據(jù)頁面動態(tài)布局的方法及裝置。
背景技術(shù):
:企業(yè)資源計劃系統(tǒng)(EnterpriseResourcePlanning,ERP),是指建立在信息技術(shù)基礎(chǔ)上,對企業(yè)的所有資源(物流、資金流、信息流或人力資源)進行整合集成管理,釆用信息化手段實現(xiàn)企業(yè)供銷鏈管理,從而達到對供應(yīng)鏈上的每一環(huán)節(jié)實現(xiàn)科學(xué)管理的目的。在ERP系統(tǒng)中,需要生成各種類型的單據(jù)作為業(yè)務(wù)憑證,可以通過復(fù)制訂單、發(fā)票或出庫單生成單據(jù),例如銷售發(fā)票可以通過復(fù)制銷售訂單生成。不同的單據(jù)有不同的單據(jù)頁面布局,或者,用戶在錄入、查詢單據(jù)時,有時還需要根據(jù)具體的業(yè)務(wù)場景、用戶的角色或單據(jù)的狀態(tài),在同一種單據(jù)中使用不同的單據(jù)頁面布局,以滿足不同程度的業(yè)務(wù)需求。目前,單據(jù)的布局一般是靜態(tài)的,即是用戶選擇一種單據(jù)布局的名稱,才會呈現(xiàn)所選固定樣式的單據(jù)布局,當(dāng)用戶需要切換其他單據(jù)布局時,需要重新進行選擇?,F(xiàn)有技術(shù)中,有一種切換單據(jù)頁面布局的方法,主要過程為將不同的單據(jù)頁面布局轉(zhuǎn)換為相應(yīng)的單據(jù)源代碼,其中,單據(jù)頁面布局是由字段、控件的位置、可見性、外觀、標(biāo)題等信息構(gòu)成的,在實現(xiàn)單據(jù)頁面布局的切換時,可以將所述信息編寫到單據(jù)源代碼中,通過開發(fā)工具開發(fā)多套單據(jù)頁面布局,當(dāng)用戶有不同的需求時,由專門的開發(fā)人員在用戶現(xiàn)場,將如何加載單據(jù)頁面布局的邏輯轉(zhuǎn)換為計算機可以識別的程序,并重新進行編i,、發(fā)布后進行應(yīng)用,此過程也叫二次開發(fā)。但是該方法也存在缺點因為它對開發(fā)人員的技術(shù)要求比較高,需要專業(yè)程序開發(fā)人員才能完成切換過程,所以使得開發(fā)成本相對較高,進一步的,在新增業(yè)務(wù)場景的情況下,又需要進行源代碼的開發(fā)并重新編譯發(fā)布,因此易用性較差??傊?,目前需要本領(lǐng)域技術(shù)人員迫切解決的一個技術(shù)問題就是如何能夠提出一種單據(jù)頁面布局轉(zhuǎn)換的方法,用以解決在單據(jù)布局轉(zhuǎn)換過程中需要改動源代碼使得成本較高且易用性差的問題。
發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問題是提供一種單據(jù)頁面動態(tài)布局的方法,用以降低改動源代碼的成本并提高易用性。本發(fā)明的另一個目的是將上述構(gòu)思應(yīng)用于具體的應(yīng)用環(huán)境中,提供一種單據(jù)頁面動態(tài)布局的裝置,從而保證該方法的實現(xiàn)和應(yīng)用。為解決上述技術(shù)問題,本發(fā)明實施例提供了一種單據(jù)頁面動態(tài)布局的方法,包4舌用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元凄t據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱,并將所述條件表達式及單據(jù)頁面布局名稱保存至元數(shù)據(jù)中;依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息,并依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。中的步驟包括將所述條件表達式和單據(jù)頁面布局名稱轉(zhuǎn)換為計算機能夠識別的業(yè)務(wù)規(guī)則表達式;將所述業(yè)務(wù)規(guī)則表達式添加到元數(shù)據(jù)中。優(yōu)選的,所述依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息的步驟包括解析所述條件表達式;依據(jù)所述條件表達式的值,選擇所分配的單據(jù)頁面布局名稱;依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取所述頁面布局元素的標(biāo)識信息和屬性信息。優(yōu)選的,所述用元數(shù)據(jù)描述單據(jù)的頁面布局元素的步驟包括在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局;保存所述頁面布局元素的設(shè)計或編輯,形成單據(jù)頁面布局的元數(shù)據(jù)。優(yōu)選的,所述用元數(shù)據(jù)描述單據(jù)的頁面布局元素之后,還包括對所述元數(shù)據(jù)進行管理,所述管理包括增加、刪除、修改或查詢。優(yōu)選的,所述頁面布局元素的屬性信息包括所述頁面布局元素的標(biāo)題、外觀信息或可見性。本發(fā)明實施例還提供了一種單據(jù)頁面動態(tài)布局的裝置,包括描述元數(shù)據(jù)模塊,用于用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;獲取模塊,用于獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱;據(jù)中;第一讀取模塊,用于依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀耳又相應(yīng)的標(biāo)識信息和屬性信息;調(diào)整模塊,用于依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。優(yōu)選的,所述保存模塊包括轉(zhuǎn)換子模塊,用于將所述條件表達式和單據(jù)頁面布局名稱轉(zhuǎn)換為計算機能夠識別的業(yè)務(wù)規(guī)則表達式;添加子模塊,用于將所述業(yè)務(wù)規(guī)則表達式添加到元數(shù)據(jù)中。優(yōu)選的,所述描述元數(shù)據(jù)模塊包括選擇子模塊,用于在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局;設(shè)計編輯子模塊,用于在新建頁面布局或者已有頁面布局上設(shè)計或編輯頁面布局元素;形成元數(shù)據(jù)子模塊,用于保存所述頁面布局元素的設(shè)計或編輯,形成單據(jù)頁面布局的元數(shù)據(jù)。優(yōu)選的,所述裝置還包括管理模塊,用于對所述元數(shù)據(jù)進行管理,所述管理包括增加、刪除、〈奮改或查詢。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點本發(fā)明通過將單據(jù)的頁面布局元素用元數(shù)據(jù)描述,使用戶可以根據(jù)所述元數(shù)據(jù)設(shè)置條件表達式,以及為所述條件式分配單據(jù)頁面布局名稱,并可以依據(jù)元數(shù)據(jù)中的頁面布局元素的屬性信息進行調(diào)整,從而更新單據(jù)的頁面布局,可以看出,不同的用戶可以在不改動源代碼的情況下,實現(xiàn)單據(jù)頁面布局動態(tài)配置并根據(jù)業(yè)務(wù)規(guī)則實現(xiàn)自動切換,從而降低了成本也提高了頁面布局動態(tài)配置的易用性。圖1是本發(fā)明的一種單據(jù)頁面動態(tài)布局的方法實施例1的流程圖;圖2是本發(fā)明的一種單據(jù)頁面動態(tài)布局的方法實施例2的流程圖;圖3是本發(fā)明的一個具體例子中一個新建頁面布局或選擇已有頁面布局的界面示意圖;圖4是本發(fā)明的一個具體例子中單據(jù)布局的參考管理的界面示意圖;圖5是本發(fā)明的一個具體例子中用戶設(shè)置條件表達式以及分配單據(jù)頁面布局名稱的一個界面示意圖;圖6是本發(fā)明的一種單據(jù)頁面動態(tài)布局的裝置實施例的結(jié)構(gòu)框圖;圖7是本發(fā)明的一種單據(jù)頁面動態(tài)布局的裝置優(yōu)選實施例的結(jié)構(gòu)框圖;圖8是應(yīng)用圖7所示的優(yōu)選實施例進行單據(jù)頁面動態(tài)布局的流程圖。具體實施方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式對本發(fā)明作進一步詳細的說明。本發(fā)明可用于眾多通用或?qū)S玫挠嬎阆到y(tǒng)環(huán)境或配置中。例如個人計算機、服務(wù)器計算機、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、包括以上任何系統(tǒng)或設(shè)備的分布式計算環(huán)境等等。本發(fā)明可以在由計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計算環(huán)境中實踐本發(fā)明,在這些分布式計算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠程處理設(shè)備來執(zhí)行任務(wù)。在分布式計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠程計算才幾存儲介質(zhì)中。本發(fā)明實施例的核心構(gòu)思之一在于,本發(fā)明采用首先將單據(jù)的頁面布局元素用元數(shù)據(jù)描述的方法,所述元^t據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息,從而可以直接獲取用戶針對頁面布局元素所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱,然后根據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息,并依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,就可以實現(xiàn)單據(jù)頁面布局的更新。運用本發(fā)明的方法在更新單據(jù)頁面布局時可以從元數(shù)據(jù)中讀取相關(guān)的標(biāo)識信息和屬性信息,不再需要軟件開發(fā)人員手工改動源代碼,大大降低了單據(jù)頁面動態(tài)布局中的成本,還可以進一步提高單據(jù)頁面動態(tài)布局的易用性。參考圖1,示出了本發(fā)明的一種單據(jù)頁面動態(tài)布局的方法實施例1的流程圖,可以包括以下步驟步驟101:用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;步驟102:獲取用戶針對頁面布局元素所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱,并將所述條件表達式及單據(jù)頁面布局名稱保存至元數(shù)據(jù)中;步驟103:依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息,并依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。在本實施例中,首先用元數(shù)據(jù)描述單據(jù)的頁面布局元素,其中元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息,然后用戶就可以自主設(shè)置條件表達式,以及,為所述條件表達式分配需要加載的頁面布局名稱,并保存至元數(shù)據(jù)中,然后從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息,并對相應(yīng)的頁面布局元素的屬性信息進4亍調(diào)整,從而可以更新單據(jù)的頁面布局。需要說明的是,本發(fā)明的方法可以運用于ERP業(yè)務(wù)系統(tǒng)中,所述頁面布局元素的標(biāo)識信息可以對頁面布局元素進行唯一的表示,所述頁面布局元素的屬性信息可以包括所述頁面布局元素的標(biāo)題、外觀信息或可見性;其中,所述頁面布局也可以包括已有頁面布局或新建頁面布局,這樣在元凄t據(jù)中既包4舌已有頁面布局的頁面布局元素的標(biāo)識信息和屬性信息,也有新建頁面布局的頁面布局的元素的標(biāo)識信息和屬性信息,可以實現(xiàn)在新增頁面布局的情況下,也可以實現(xiàn)對單據(jù)頁面的動態(tài)布局;可以看出,本實施例中,解決了單據(jù)頁面布局及布局切換觸發(fā)條件輯的更改和定制,從而降低了實施成本,以較低的成本和較高的易用性可以滿足用戶對于單據(jù)頁面布局控制的個性化需求。參考圖2,示出了本發(fā)明的一種單據(jù)頁面動態(tài)布局的方法實施例2的流程圖,可以包括以下步驟步驟201:用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;在本實施例中,優(yōu)選的,步驟201可以由以下子步驟組成子步驟2011:在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局;所述頁面布局可以包括新建頁面布局或已有頁面布局,在當(dāng)前單據(jù)節(jié)點上可以選擇新建頁面布局,或者可以選4奪已有頁面布局;子步驟2012:在新建頁面布局或者已有頁面布局上設(shè)計或編輯頁面布局元素;當(dāng)打開新建布局時,系統(tǒng)可以#4居缺省的頁面布局生成新的單據(jù)頁編輯;當(dāng)打開已有頁面布局時,用戶可以在所述已有頁面布局上對頁面布局元素進行修改或者編輯;子步驟2013:保存所述頁面布局元素的設(shè)計或編輯,形成單據(jù)頁面布局的元數(shù)據(jù);設(shè)計編輯完成之后,用戶保存所述設(shè)計編輯的內(nèi)容到數(shù)據(jù)庫中,形成單據(jù)的頁面布局元素的元數(shù)據(jù);步驟202:對所述元數(shù)據(jù)進行管理,所述管理包括增加、刪除、修改或查詢;在步驟201之后,還可以包括步驟202的內(nèi)容,對所述元數(shù)據(jù)進行管理操作,所述管理可以包括增加、刪除、修改或查詢,在本實施例中,每個單據(jù)可以對應(yīng)多個單據(jù)布局,所述管理為對每個單據(jù)對應(yīng)的多個布局進行增加、刪除、修改或者查詢操作,所述管理可以通過可視化的設(shè)計工具完成,本步驟的目的就是形成單據(jù)頁面布局元素的元數(shù)據(jù),可以為以后的讀取元數(shù)據(jù)的內(nèi)容做鋪墊,最終可以實現(xiàn)布局由用戶自由配置和切換;步驟203:獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱;在形成元數(shù)據(jù)后,用戶可以針對頁面布局名稱,設(shè)置條件表達式,果滿足條件A或B時,加載單據(jù)頁面布局A或B;否則,則加載缺省單據(jù)的頁面布局;用戶設(shè)置的時候,可以用自然語言的方式進行配置;需要說明的是,本步驟還可以理解為將單據(jù)頁面的布局配置分解為三個部分,即為觸發(fā)加載和切換行為的事件(例如單據(jù)加載事件、字段值改變事件和菜單單擊事件),控制和選擇單據(jù)頁面的條件(所述條件包括單據(jù)頁面上的字段,或者單據(jù)狀態(tài))和加載和改變布局的方法,分解成三個部分后,通過元數(shù)據(jù)描述加載和切換的調(diào)度過程;其中,所述條件在本實施例中即為用戶設(shè)置的條件表達式,觸發(fā)加載和切換行為的事件可以理解為所述條件表達式的內(nèi)容;因為單據(jù)頁面的更新一般在觸發(fā)單據(jù)顯示事件、菜單事件、單據(jù)上的值改變事件時發(fā)生,所以用戶在配置單據(jù)頁面動態(tài)布局時的條件表達式時,需要根據(jù)單據(jù)運行時對前述事件處理過程的業(yè)務(wù)邏輯,在布局加載條件列上設(shè)置條件表達式,在該條件對應(yīng)的布局中選擇已經(jīng)定義好的布局名稱;數(shù)據(jù)中;本步驟的目的即是,將計算機可識別的條件表達式及單據(jù)頁面布局名稱保存到單據(jù)上事件處理過程的元數(shù)據(jù)中,為單據(jù)運行時依據(jù)所述單據(jù)頁面布局名稱讀取元數(shù)據(jù)做好準(zhǔn)備,其中,本步驟的實現(xiàn)過程可以包括以下子步驟子步驟2041:將所述條件表達式和單據(jù)頁面布局名稱轉(zhuǎn)換為計算機能夠識別的業(yè)務(wù)規(guī)則表達式;步驟2042:將所述業(yè)務(wù)規(guī)則表達式添加到元數(shù)據(jù)中;步驟205:依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的頁面布局元素的標(biāo)識信息和屬性信息;本步驟的實現(xiàn)過程可以包"fe以下子步驟步驟2051:解析所述條件表達式;步驟2052:依據(jù)所述條件表達式的值,選擇所分配的單據(jù)頁面布局名稱;步驟2053:依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取所述頁面布局元素的標(biāo)識信息和屬性信息;在實際應(yīng)用中,單據(jù)頁面更新時需要根據(jù)單據(jù)狀態(tài)字段的值加載不同的頁面布局,加載時,首先需要對所述條件表達式進行解析,根據(jù)所單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取所述頁面布局元素的標(biāo)識信息和屬性信息,為步驟206做準(zhǔn)備;步驟206:依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。在條件表達式解析完成后,確定了該條件下單據(jù)頁面布局名稱,調(diào)用單據(jù)運行時的內(nèi)部布局加載函數(shù),根據(jù)讀取到的頁面布局元素的屬性信息,所述屬性信息包括頁面布局元素的位置、父子關(guān)系、標(biāo)題、可見性、標(biāo)題的值等,對頁面布局元素的相關(guān)屬性進行更改,就可以實現(xiàn)布局的更新;在本實施例中,用戶可以隨時根據(jù)自身需求的變化,在元數(shù)據(jù)中新增、修改或刪除界面布局元素,并通過提交自主設(shè)置的條件表達式和單在整個動態(tài)布局單據(jù)頁面的過程中,無需專業(yè)開發(fā)人員,一般用戶即可根據(jù)個性化需求的變化隨時通過筒單配置完成,無需源代碼的重新編譯和重新發(fā)布部署,從而提升了該方法的易用性。對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明,以下結(jié)合本發(fā)明在實際中應(yīng)用的具體例子對本發(fā)明進一步說明。步驟S1:在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局;參考圖3,示出了在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局的界面示意圖,如圖3中所示,在當(dāng)前單據(jù)節(jié)點上選擇新增布局,可以新建當(dāng)前單據(jù)的布局,雙擊已有布局則可以對已有布局進行修改;元素;參考圖4,示出了單據(jù)布局的參考管理界面,可以在所述界面上對頁面布局元素進行增加、刪除、修改等才喿作,以對頁面布局進行設(shè)計和步驟S3:保存所述頁面布局元素的設(shè)計或編輯,形成單據(jù)頁面布局的元數(shù)據(jù);在本例子中,元數(shù)據(jù)的內(nèi)容分為主要信息和詳細信息,其中,元數(shù)據(jù)主要信息結(jié)構(gòu)如下表所示<table>tableseeoriginaldocumentpage13</column></row><table>可以看出,元數(shù)據(jù)的主要信息用來描述頁面布局的名稱,還有對應(yīng)的單據(jù)類型等信息;其中,所述元數(shù)據(jù)的主要信息的內(nèi)容如下表所示<table>tableseeoriginaldocumentpage13</column></row><table>22000000000Layout002布局2元數(shù)據(jù)詳細信息結(jié)構(gòu)如下表所示:字段代碼字段名稱說明FIDFID主鍵,Identity(1,1),自增長關(guān)鍵字FClassTypeID單據(jù)類型ID單據(jù)類型IDFLayoutld單據(jù)布局ID單據(jù)布局IDFKey字段的Key值字,殳的key^直,唯一標(biāo)識單據(jù)上的一個字段FTop字段在單據(jù)上的上邊距字段在單據(jù)上的上邊距FLeft字段在單據(jù)上的左邊距字段在單據(jù)上的左邊距FWi她字段控件的寬度字段控件的寬度FHeight字段控件的高度字段控件的高度FCaption—CHS簡體中文名稱在簡體中文環(huán)境下,字段輸入控件的標(biāo)簽名稱FCaption一CHT繁體中文名稱在繁體中文環(huán)境下,字段輸入控件的標(biāo)簽的名稱FCaption—EN英文名稱在英文環(huán)境下,字段輸入控件的標(biāo)簽的名稱FVisible可見性字段的可見性FMustlnput是否必錄字段是否必錄FEnable是否可用字段是否是可用的Flock鎖定性字段的可用性Flayer字段所在層字,殳所在層FFont字體字段輸入控件的字體FFrameBorder邊框樣式字段輸入控件的邊框樣式FFrameBorderColor邊框顏色字段輸入控件的邊框顏色<table>tableseeoriginaldocumentpage15</column></row><table>可以看出,所述詳細信息主要用來描述頁面布局中的單據(jù)字段、控件的位置(左上坐標(biāo)、右上坐標(biāo))、標(biāo)題、外觀(寬度、高度)、可見性等信息;其中,所述元數(shù)據(jù)的詳細信息的內(nèi)容如下表所示:詳細信息<table>tableseeoriginaldocumentpage15</column></row><table><table>tableseeoriginaldocumentpage16</column></row><table>步驟S4:對所述元數(shù)據(jù)進行管理,所述管理包括增加、刪除、修改或查詢;步驟S5:根據(jù)管理后的元數(shù)據(jù)內(nèi)容,獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱;在本步驟中,用戶首先針對元數(shù)據(jù)中頁面布局名稱設(shè)置條件表達式,以及,為所述條件表達式分配單據(jù)頁面布局名稱,參考圖5,示出了用戶設(shè)置條件表達式以及分配單據(jù)頁面布局名稱的一個界面示意圖,在圖5中,"布局加載條件"一列可以填寫所述條件表達式,在"布局,,一列填寫單據(jù)頁面布局名稱,即可以理解為當(dāng)滿足所述布局加載條件時,步驟S6:將所述條件表達式和單據(jù)頁面布局名稱轉(zhuǎn)換為計算機能夠識別的業(yè)務(wù)規(guī)則表達式;在本步驟中,例如,加載條件為單據(jù)狀態(tài)="審核,,,對應(yīng)的布局標(biāo)識信息為Layout001;轉(zhuǎn)化為計算機系統(tǒng)可識別的業(yè)務(wù)MJ'J表達式可以為SetLayout{FStauts=l,LayoutOOl};其中SetLayout為布局加載業(yè)務(wù)規(guī)則標(biāo)識,F(xiàn)Stauts為"單據(jù)狀態(tài)"的程序內(nèi)部字段變量標(biāo)識,1代表審核狀態(tài),Layout00l為單據(jù)頁面布局名稱;步驟S7:將所述業(yè)務(wù)規(guī)則表達式添加到元數(shù)據(jù)中;在本例子中,即是將SetLayout{FStauts=l,LayoutOOl}保存到元數(shù)據(jù)中;步驟S8:從所述元數(shù)據(jù)中讀取所述條件表達式;當(dāng)單據(jù)運行時,可以從所述元數(shù)據(jù)中讀取用戶設(shè)置的條件表達式,在本例子中,所述條件表達式為FStauts=l;步驟S9:依據(jù)所述條件表達式的值,選擇所分配的單據(jù)標(biāo)識信息;依據(jù)所述條件表達式的值(在本例子中為1),選擇所述業(yè)務(wù)規(guī)則表達式指定的單據(jù)布局名稱,即Layout001;需要說明的是,當(dāng)所述條件表達式不成立的時候,選擇的是缺省的默認布局名稱,所述默認布局名稱用戶可以根據(jù)需要自主設(shè)定,默認布局名稱并不影響本發(fā)明的實現(xiàn),本發(fā)明對此并不作出限定;步驟S10:依據(jù)所述單據(jù)標(biāo)識信息,從所述元數(shù)據(jù)中讀取所述頁面布局元素的標(biāo)識信息和屬性信息;依據(jù)所述單據(jù)標(biāo)識信息LayoutOOl,讀取與所述Layout001對應(yīng)的頁面布局元素的標(biāo)識信息和屬性信息;步驟Sll:依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。依據(jù)讀耳又到的頁面布局元素的標(biāo)識信息,對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整或更改,根據(jù)元數(shù)據(jù)對單據(jù)上的界面元素的位置、標(biāo)題、可見性、標(biāo)題的值對界面的元素的相關(guān)屬性進行更改,從而可以實現(xiàn)當(dāng)前布局的更新。綜上所述,本發(fā)明將單據(jù)的頁面布局元素用元數(shù)據(jù)描述,可以使用戶直接根據(jù)需求設(shè)置條件表達式和單據(jù)標(biāo)識信息,解決了在二次開發(fā)和用戶的個性化需求中對單據(jù)頁面布局可配置、可復(fù)用以及切換邏輯的事件驅(qū)動和規(guī)則控制,無需編碼和編程專業(yè)知識就可以完成已有單據(jù)和客戶新增單據(jù)頁面布局自主定義,進一步的,還可以根據(jù)用戶需求實現(xiàn)當(dāng)前單據(jù)頁面的依據(jù)應(yīng)用場景動態(tài)布局。參考圖6,示出了本發(fā)明的一種單據(jù)頁面動態(tài)布局的裝置實施例的結(jié)構(gòu)框圖,可以包括以下模塊描述元數(shù)據(jù)模塊601,用于用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;獲取模塊602,用于獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱;元數(shù)據(jù)中;17第一讀取模塊604,用于依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的頁面布局元素標(biāo)識信息和屬性信息;性信息進行調(diào)整,以更新單據(jù)的頁面布局。在本實施例中,描述元數(shù)據(jù)才莫塊首先用元數(shù)據(jù)描述單據(jù)的頁面布局用戶就可以自主設(shè)置條件表達式,以及,為所述條件表達式分配需要加載的頁面布局名稱,并保存至元數(shù)據(jù)中,然后第一讀取模塊從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息,最后調(diào)整模塊對相應(yīng)的頁面布局元素的屬性信息進4亍調(diào)整,從而可以更新單據(jù)的頁面布局。本實施例無需改動源代碼即可實現(xiàn)單據(jù)頁面的動態(tài)布局,進一步的,用戶可以根據(jù)需要自主設(shè)置單據(jù)頁面的切換條件,大大提升了單據(jù)頁面動態(tài)布局的易用性。參考圖7,示出了本發(fā)明的一種單據(jù)頁面動態(tài)布局的裝置優(yōu)選實施例的結(jié)構(gòu)框圖,可以包括以下模塊描述元數(shù)據(jù)模塊701,用于用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;優(yōu)選的,描述元數(shù)據(jù)模塊701具體可以包括以下子模塊選擇子模塊7011,用于在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局;設(shè)計編輯子模塊7012,用于在新建頁面布局或者已有頁面布局上設(shè)計或編輯頁面布局元素;形成元數(shù)據(jù)子模塊7013,用于保存所述頁面布局元素的設(shè)計或編輯,形成單據(jù)頁面布局的元數(shù)據(jù);管理模塊702,用于對所述元數(shù)據(jù)進行管理,所述管理包括增加、刪除、修改或查詢;獲取模塊703,用于獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱;元數(shù)據(jù)中;優(yōu)選的,所述保存模塊可以包括以下子模塊轉(zhuǎn)換子模塊7041,用于將所述條件表達式和單據(jù)頁面布局名稱轉(zhuǎn)換為計算機能夠識別的業(yè)務(wù)規(guī)則表達式;添加子模塊7042,用于將所述業(yè)務(wù)規(guī)則表達式添加到元數(shù)據(jù)中;第一讀取模塊705,用于依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息;優(yōu)選的,所述讀取模塊可以包括以下子模塊解析子模塊7051,用于解析所述業(yè)務(wù)規(guī)則表達式中的條件表達式;選擇子模塊7052,用于依據(jù)所述條件表達式的值,選擇所分配的單據(jù)頁面布局名稱;第二讀取子模塊7053,用于依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取所述頁面布局元素的標(biāo)識信息和屬性信息。調(diào)整模塊706,用于依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。參考圖8,示出了應(yīng)用圖7所示的優(yōu)選實施例進行單據(jù)頁面動態(tài)布局的流程圖,可以包括以下步驟步驟801:選擇子模塊在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局;步驟802:設(shè)計編輯子才莫塊在新建頁面布局或者已有頁面布局上i殳i十或編4專頁面布局元素;步驟803:形成元數(shù)據(jù)子模塊保存所述頁面布局元素的設(shè)計或編輯,形成單據(jù)頁面布局的元數(shù)據(jù);步驟804:管理模塊對所述元數(shù)據(jù)進行管理,所述管理包括增加、刪除、》務(wù)改或查詢;步驟805:獲取模塊獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱;步驟806:轉(zhuǎn)換子模塊將所述條件表達式和單據(jù)頁面布局名稱轉(zhuǎn)換為計算機能夠識別的業(yè)務(wù)規(guī)則表達式;步驟807:添加子模塊將所述業(yè)務(wù)規(guī)則表達式添加到元數(shù)據(jù)中;步驟808:解析子模塊解析所述業(yè)務(wù)規(guī)則表達式中的條件表達式;步驟809:選擇子模塊依據(jù)所述條件表達式的值,選擇所分配的單據(jù)頁面布局名稱;步驟8010:第二讀取子模塊依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取所述頁面布局元素的標(biāo)識信息和屬性信息;步驟8011:調(diào)整模塊依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。需要說明的是,本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。對于裝置實施例而言,由于其基本相應(yīng)于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分i兌明即可。以上對本發(fā)明所提供的一種單據(jù)頁面動態(tài)布局的方法及單據(jù)頁面動態(tài)布局的裝置進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。權(quán)利要求1、一種單據(jù)頁面動態(tài)布局的方法,其特征在于,包括用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱,并將所述條件表達式及單據(jù)頁面布局名稱保存至元數(shù)據(jù)中;依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息,并依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。2、如權(quán)利要求1所述的方法,其特征在于,所述將所述條件表達式及單據(jù)頁面布局名稱保存至元數(shù)據(jù)中的步驟包括將所述條件表達式和單據(jù)頁面布局名稱轉(zhuǎn)換為計算機能夠識別的業(yè)務(wù)規(guī)則表達式;將所述業(yè)務(wù)規(guī)則表達式添加到元數(shù)據(jù)中。3、如權(quán)利要求1所述的方法,其特征在于,所述依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取相應(yīng)的標(biāo)識信息和屬性信息的步驟包括解析所述條件表達式;依據(jù)所述條件表達式的值,選擇所分配的單據(jù)頁面布局名稱;依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取所述頁面布局元素的標(biāo)識信息和屬性信息。4、如權(quán)利要求1所述的方法,其特征在于,所述用元數(shù)據(jù)描述單據(jù)的頁面布局元素的步驟包括在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局;保存所述頁面布局元素的設(shè)計或編輯,形成單據(jù)頁面布局的元數(shù)據(jù)。5、如權(quán)利要求1所述的方法,其特征在于,所述用元數(shù)據(jù)描述單據(jù)的頁面布局元素之后,還包括對所述元數(shù)據(jù)進行管理,所述管理包括增加、刪除、修改或查詢。6、如權(quán)利要求1所述的方法,其特征在于,所述頁面布局元素的屬性信息包括所述頁面布局元素的標(biāo)題、外觀信息或可見性。7、一種單據(jù)頁面動態(tài)布局的裝置,其特征在于,包括描述元數(shù)據(jù)模塊,用于用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;獲取模塊,用于獲取用戶針對頁面布局名稱所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱;據(jù)中;第一讀取模塊,用于依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀^^相應(yīng)的標(biāo)識信息和屬性信息;調(diào)整模塊,用于依據(jù)所述標(biāo)識信息對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。8、如權(quán)利要求7所述的裝置,其特征在于,所述保存模塊包括轉(zhuǎn)換子模塊,用于將所述條件表達式和單據(jù)頁面布局名稱轉(zhuǎn)換為計算機能夠識別的業(yè)務(wù)規(guī)則表達式;添加子模塊,用于將所述業(yè)務(wù)規(guī)則表達式添加到元數(shù)據(jù)中。9、如權(quán)利要求7所述的裝置,其特征在于,所述描述元數(shù)據(jù)模塊包括選擇子模塊,用于在當(dāng)前單據(jù)節(jié)點上選擇新建頁面布局,或者選擇已有頁面布局;設(shè)計編輯子才莫塊,用于在新建頁面布局或者已有頁面布局上設(shè)計或編l專頁面布局元素;形成元數(shù)據(jù)子模塊,用于保存所述頁面布局元素的設(shè)計或編輯,形成單據(jù)頁面布局的元數(shù)據(jù)。10、如權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括管理模塊,用于對所述元數(shù)據(jù)進行管理,所述管理包括增加、刪除、修改或查詢。全文摘要本發(fā)明提供了一種單據(jù)頁面動態(tài)布局的方法,包括首先用元數(shù)據(jù)描述單據(jù)的頁面布局元素,所述元數(shù)據(jù)包括所述頁面布局元素的標(biāo)識信息和屬性信息;然后獲取用戶針對頁面布局名稱進行選擇應(yīng)用所設(shè)置的條件表達式,以及,為所述條件表達式所分配的單據(jù)頁面布局名稱,并將所述條件表達式及單據(jù)頁面布局名稱信息保存至單據(jù)元數(shù)據(jù)中;最后依據(jù)所述單據(jù)頁面布局名稱,從所述元數(shù)據(jù)中讀取與所述頁面布局名稱對應(yīng)的單據(jù)頁面布局元素的標(biāo)識和屬性信息,并依據(jù)所述標(biāo)識對相應(yīng)的頁面布局元素的屬性信息進行調(diào)整,以更新單據(jù)的頁面布局。運用本發(fā)明的方法,可以降低在布局單據(jù)頁面時改動源代碼的成本并提高易用性。文檔編號G06F17/30GK101320365SQ20081013270公開日2008年12月10日申請日期2008年7月9日優(yōu)先權(quán)日2008年7月9日發(fā)明者張利軍申請人:金蝶軟件(中國)有限公司