專(zhuān)利名稱(chēng):可定制參數(shù)用戶(hù)界面的制作方法
可定制參數(shù)用戶(hù)界面
祖旦 冃尿
數(shù)據(jù)庫(kù)是有組織的數(shù)據(jù)集合。數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是被設(shè)計(jì)來(lái) 管理數(shù)據(jù)庫(kù)并在多個(gè)客戶(hù)機(jī)所請(qǐng)求的數(shù)據(jù)上運(yùn)行操作的計(jì)算機(jī)程序(或更 典型地,其套件)。DBMS允許編寫(xiě)和執(zhí)行査詢(xún)以檢索數(shù)據(jù)。DBMS還可 以允許創(chuàng)建表單或報(bào)表。還可以從DBMS執(zhí)行更精細(xì)的査詢(xún)。這些定制的 查詢(xún)/報(bào)表/表單可能需要在對(duì)數(shù)據(jù)庫(kù)執(zhí)行查詢(xún)/報(bào)表/表單之前提供某些參 數(shù)。這種定制的查詢(xún)/報(bào)表/表單通常涉及若干復(fù)雜的步驟且結(jié)果通常難于理 解或修改。
概述
提供本概述以便以簡(jiǎn)化的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的 一些概念。該概述不旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān)鍵特征或必要特征, 也不旨在用于幫助確定所要求保護(hù)的主題的范圍。
提供了一種用于輸入關(guān)于數(shù)據(jù)庫(kù)査詢(xún)的所請(qǐng)求的參數(shù)的可定制用戶(hù)界 面。該定制參數(shù)用戶(hù)界面提供與根據(jù)數(shù)據(jù)庫(kù)査詢(xún)產(chǎn)生的數(shù)據(jù)視圖(例如, 表單或報(bào)表)相關(guān)的參數(shù)輸入對(duì)話(huà)框/窗口。所輸入的參數(shù)可以提供對(duì)數(shù)據(jù)
視圖的修改。同樣,數(shù)據(jù)庫(kù)的管理者可以構(gòu)建數(shù)據(jù)庫(kù)的數(shù)據(jù)視圖以在數(shù)據(jù) 庫(kù)返回結(jié)果之前自動(dòng)地包括參數(shù)提示。這些提示可以由管理者來(lái)定制并可 根據(jù)諸如彈出框、下拉菜單、飛出框、或各種其它用戶(hù)界面組件等對(duì)話(huà)框 來(lái)提供。因此,提供了直觀的、高效的和可修改的數(shù)據(jù)視圖。
附圖
參考以下附圖描述了本發(fā)明的非限定性且非詳盡的實(shí)施例,其中除非 另有指定,否則相同的附圖標(biāo)記指代各個(gè)視圖中相同的部分。
圖1示出一計(jì)算機(jī)的示例性計(jì)算體系結(jié)構(gòu);
圖2示出用于在數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)中提供定制參數(shù)用戶(hù)界面 的示例性系統(tǒng)的功能框圖3是用于提供與一數(shù)據(jù)庫(kù)査詢(xún)相關(guān)聯(lián)的定制參數(shù)輸入表單的過(guò)程的 操作流程圖;圖4示出用于向定制參數(shù)表單添加參數(shù)的操作流程圖;圖5示出在通過(guò)向生成表單的查詢(xún)輸入附加參數(shù)來(lái)修改之前的示例性報(bào)表;
圖6示出圖5的示例性報(bào)表,其中正做出過(guò)濾對(duì)應(yīng)于該報(bào)表的査詢(xún)結(jié)果的選擇;
圖7示出示例性參數(shù)生成表單;圖8示出尚未被定制的示例性參數(shù)輸入表單;圖9示出示例性定制的參數(shù)輸入表單;以及圖10示出圖5和圖6的、結(jié)果根據(jù)所輸入的參數(shù)修改的報(bào)表。
詳細(xì)描述
以下將參考形成本發(fā)明一部分并示出用于實(shí)現(xiàn)各實(shí)施例的具體示例的附圖在此更詳盡地描述各個(gè)實(shí)施例。然而,各實(shí)施例可以用許多不同的形式來(lái)實(shí)現(xiàn),并且不應(yīng)被解釋為限于在此所闡明的各實(shí)施例;相反,提供這些實(shí)施例以使本公開(kāi)變得全面且完整,并且將本主題的范圍完全傳達(dá)給本領(lǐng)域技術(shù)人員。所公開(kāi)的各實(shí)施例可被實(shí)踐為方法、系統(tǒng)或設(shè)備。因此,所公開(kāi)的各實(shí)施例可采用完全硬件實(shí)現(xiàn)、完全軟件實(shí)現(xiàn)或者結(jié)合軟件和硬件方面實(shí)現(xiàn)的形式。從而,以下詳細(xì)描述并不取限制意義。
當(dāng)閱讀對(duì)在此提供的例程的討論時(shí),應(yīng)當(dāng)理解,各種實(shí)施例的邏輯操作被實(shí)現(xiàn)為(l)運(yùn)行于計(jì)算系統(tǒng)上的一系列計(jì)算機(jī)實(shí)現(xiàn)的動(dòng)作或程序模塊,和/或(2)計(jì)算系統(tǒng)內(nèi)互連的機(jī)器邏輯電路或電路模塊。該實(shí)現(xiàn)是取決于實(shí)現(xiàn)本發(fā)明的計(jì)算機(jī)系統(tǒng)的性能要求來(lái)選擇的。因此,所例示的并且構(gòu)成此處所描述的實(shí)施例的邏輯操作被不同地稱(chēng)為操作、結(jié)構(gòu)性設(shè)備、動(dòng)作或模塊。這些操作、結(jié)構(gòu)性設(shè)備、動(dòng)作和模塊可用軟件、固件、專(zhuān)用數(shù)字邏輯及其任何組合來(lái)實(shí)現(xiàn)。
現(xiàn)參考附圖,附圖中相同的標(biāo)記表示相同的元素。圖1和相應(yīng)的討論旨在提供對(duì)在其中可以實(shí)現(xiàn)本發(fā)明實(shí)施例的合適計(jì)算環(huán)境的簡(jiǎn)要概括描述。
一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類(lèi)型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)和其它類(lèi)型的結(jié)構(gòu)。也可使用其它計(jì)算機(jī)系統(tǒng)配置,包括手持式設(shè)備、多處理器系統(tǒng)、基于微處理器或可編程消費(fèi)電子產(chǎn)品、小型計(jì)算機(jī)、大型計(jì)算機(jī)等等。也可使用在其中任務(wù)由通過(guò)通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行的分布式計(jì)算環(huán)境。在分布式計(jì)算環(huán)境中,程序模塊可位于本地和遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備中。
現(xiàn)參考圖1,將描述在各實(shí)施例中利用的計(jì)算設(shè)備100的示例性計(jì)算
機(jī)體系結(jié)構(gòu)。例如,計(jì)算機(jī)可被配置為個(gè)人計(jì)算機(jī)、移動(dòng)計(jì)算機(jī)等。如圖
所示,計(jì)算設(shè)備100包括中央處理單元102 ( "CPU")、含有隨機(jī)存取存儲(chǔ)器106 ( "RAM")和只讀存儲(chǔ)器("ROM" ) 108的系統(tǒng)存儲(chǔ)器104、以及將存儲(chǔ)器耦合至CPU 102的系統(tǒng)總線(xiàn)116?;据斎?輸出系統(tǒng)存儲(chǔ)在ROM 108中,它包含幫助在諸如啟動(dòng)期間在計(jì)算機(jī)內(nèi)的元件之間傳遞信息的基本例程。計(jì)算設(shè)備100還包括用于存儲(chǔ)操作系統(tǒng)122、應(yīng)用程序和其它程序模塊等的大容量存儲(chǔ)設(shè)備120,這將在以下更為詳盡地描述。
大容量存儲(chǔ)設(shè)備120及其相關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)為計(jì)算設(shè)備100提供易失性和非易失性存儲(chǔ)。計(jì)算機(jī)可讀介質(zhì)可以包括任何類(lèi)型的可移動(dòng)和/或不可移動(dòng)介質(zhì)。
計(jì)算設(shè)備100可以使用通過(guò)諸如因特網(wǎng)等網(wǎng)絡(luò)112與遠(yuǎn)程計(jì)算機(jī)的邏輯連接在網(wǎng)絡(luò)化環(huán)境中操作。計(jì)算設(shè)備100可以通過(guò)連接至總線(xiàn)116的網(wǎng)絡(luò)接口單元110與網(wǎng)絡(luò)112相連。
計(jì)算設(shè)備100還可以包括輸入/輸出控制器114,用于接收并處理來(lái)自諸如鍵盤(pán)、鼠標(biāo)、電子指示筆等多個(gè)設(shè)備的輸入。類(lèi)似地,輸入/輸出控制器114可以為顯示屏、打印機(jī)或某些其它類(lèi)型的設(shè)備(未示出)提供輸出。
如前簡(jiǎn)述,多個(gè)程序模塊和數(shù)據(jù)文件可以存儲(chǔ)在計(jì)算設(shè)備100的大容量存儲(chǔ)設(shè)備120和RAM 106內(nèi),包括適用于控制聯(lián)網(wǎng)計(jì)算機(jī)的操作的操作系統(tǒng)122。大容量存儲(chǔ)設(shè)備120和RAM 106還可以存儲(chǔ)一個(gè)或多個(gè)程序模塊。具體地,大容量存儲(chǔ)設(shè)備120和RAM 106可以存儲(chǔ)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS) 124的本地組件。
DBMS 124的本地組件包括用于呈現(xiàn)用于輸入關(guān)于數(shù)據(jù)庫(kù)搜索查詢(xún)的參數(shù)的定制參數(shù)用戶(hù)界面的功能。定制參數(shù)用戶(hù)界面提供與根據(jù)數(shù)據(jù)庫(kù)査詢(xún)產(chǎn)生的數(shù)據(jù)視圖(例如,表單或報(bào)表)相關(guān)的參數(shù)輸入對(duì)話(huà)框/窗口。所輸入的參數(shù)可以允許修改數(shù)據(jù)視圖。修改可以在不更改原始査詢(xún)語(yǔ)句的情況下發(fā)生。修改還可以通過(guò)直接修改查詢(xún)語(yǔ)句而發(fā)生。修改的持久性可以與記錄源、査詢(xún)對(duì)象禾口/或參數(shù)屬性相關(guān)聯(lián)。同樣,數(shù)據(jù)庫(kù)的管理者可以構(gòu)造數(shù)據(jù)庫(kù)的數(shù)據(jù)視圖以在數(shù)據(jù)庫(kù)返回結(jié)果之前自動(dòng)地包括參數(shù)提示。這些提示可以由管理者來(lái)定制并可根據(jù)諸如彈出框、下拉菜單、飛出框、或各種其它用戶(hù)界面組件等對(duì)話(huà)框來(lái)提供。因此,提供了直觀的、高效的和可
修改的數(shù)據(jù)視圖。
如此處所使用的,"控件" 一般指的是子顯示幀,應(yīng)用程序結(jié)合另一
顯示幀使用該子顯示幀來(lái)執(zhí)行簡(jiǎn)單的輸入和輸出(I/O)任務(wù)??丶钔ǔ?br>
被用于對(duì)話(huà)框中,但也可被用在其它顯示幀中。對(duì)話(huà)框中的控件向用戶(hù)提供鍵入文本、選擇選項(xiàng)、和指導(dǎo)對(duì)話(huà)框完成其動(dòng)作的手段。其它顯示幀中的控件提供各種服務(wù),如使用戶(hù)選擇命令、查看狀態(tài)及査看和編輯文本??丶囊粋€(gè)示例是呈現(xiàn)應(yīng)用程序的用戶(hù)界面的子顯示幀的右擊選擇菜單。
"數(shù)據(jù)視圖" 一般指的是表示數(shù)據(jù)庫(kù)的數(shù)據(jù)集合的表單、報(bào)表和/或表格。根據(jù)數(shù)據(jù)庫(kù)搜索查詢(xún),可以用表單或報(bào)表的形式來(lái)提供數(shù)據(jù)庫(kù)的數(shù)據(jù)集合。根據(jù)定制參數(shù)用戶(hù)界面,可通過(guò)輸入任何參數(shù)來(lái)修改數(shù)據(jù)視圖。
如此處以下所使用的,"參數(shù)"一般指的是與數(shù)據(jù)視圖中所包含的數(shù)據(jù)相關(guān)聯(lián)的任何數(shù)據(jù)值或數(shù)據(jù)值集。根據(jù)定制參數(shù)用戶(hù)界面,在被輸入后,所輸入的參數(shù)可以修改特定的數(shù)據(jù)視圖。
"參數(shù)輸入提示"一般指的是所提供的用于輸入與數(shù)據(jù)視圖相關(guān)聯(lián)的參數(shù)的用戶(hù)界面對(duì)話(huà)框。用戶(hù)界面對(duì)話(huà)框可以采用顯示幀、彈出框、下拉菜單、飛出框、或各種其它用戶(hù)界面組件的形式。參數(shù)輸入提示中的參數(shù)輸入可以作為文本框輸入、下拉選擇框、或其它類(lèi)型的數(shù)據(jù)輸入用戶(hù)界面組件來(lái)提供。
"參數(shù)過(guò)濾器屬性"(PFilter) —般指的是對(duì)應(yīng)于所輸入的與一數(shù)據(jù)視圖相關(guān)聯(lián)的參數(shù)的屬性。根據(jù)布爾與(Boolean AND)運(yùn)算將參數(shù)過(guò)濾器屬性添加到查詢(xún)語(yǔ)句以修改包括在數(shù)據(jù)視圖中的結(jié)果。
"參數(shù)表單屬性"(PForm) —般指的是在被激活后指示定制參數(shù)表單與特定數(shù)據(jù)視圖相關(guān)聯(lián)的屬性。"記錄源"一般指的是對(duì)應(yīng)于表示數(shù)據(jù)視圖的查詢(xún)語(yǔ)句的所存儲(chǔ)的屬性。在根據(jù)本發(fā)明輸入?yún)?shù)時(shí),可以根據(jù)布爾與運(yùn)算來(lái)將該參數(shù)添加到記豕源。
"査詢(xún)語(yǔ)句"對(duì)應(yīng)于用于產(chǎn)生數(shù)據(jù)視圖的對(duì)數(shù)據(jù)庫(kù)的查詢(xún)的語(yǔ)句。在結(jié)構(gòu)化查詢(xún)語(yǔ)言(SQL)數(shù)據(jù)庫(kù)中,查詢(xún)語(yǔ)句對(duì)應(yīng)于傳遞到數(shù)據(jù)庫(kù)引擎的、用于檢索對(duì)應(yīng)于數(shù)據(jù)視圖的數(shù)據(jù)庫(kù)結(jié)果的SQL語(yǔ)句。
圖2示出根據(jù)本發(fā)明的用于在數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)中提供定制參數(shù)用戶(hù)界面的示例性系統(tǒng)的功能框圖。DBMS接口 124包括數(shù)據(jù)視圖瀏覽器202、參數(shù)提示模塊204、定制參數(shù)用戶(hù)界面模塊206、和屬性管理器208。數(shù)據(jù)視圖瀏覽器202還包括語(yǔ)句生成器210且被耦合到數(shù)據(jù)庫(kù)引擎230。數(shù)據(jù)庫(kù)引擎230被耦合到數(shù)據(jù)庫(kù)240。屬性管理器208被耦合到存儲(chǔ)212。存儲(chǔ)212包括關(guān)于記錄源214、參數(shù)過(guò)濾器屬性216、和參數(shù)表單屬性220的條目。
在操作中,數(shù)據(jù)視圖瀏覽器202在數(shù)據(jù)庫(kù)引擎230和DBMS 124的其它功能塊之間進(jìn)行通信,以提供包含在數(shù)據(jù)庫(kù)240中的數(shù)據(jù)的數(shù)據(jù)視圖(例如,表單或報(bào)表,參見(jiàn)圖5)。包括在數(shù)據(jù)視圖瀏覽器202中的語(yǔ)句生成器210生成被傳遞到數(shù)據(jù)庫(kù)引擎230的查詢(xún)語(yǔ)句232。如果查詢(xún)語(yǔ)句232以其當(dāng)前形式是可執(zhí)行的,則數(shù)據(jù)庫(kù)引擎230向數(shù)據(jù)視圖瀏覽器202返回查詢(xún)結(jié)果236。如果相反,查詢(xún)語(yǔ)句232因其需要査詢(xún)語(yǔ)句232中不包括的附加參數(shù)的標(biāo)識(shí)而是不可執(zhí)行的,則數(shù)據(jù)庫(kù)引擎230向數(shù)據(jù)視圖瀏覽器202返回任何必需的參數(shù)請(qǐng)求。
數(shù)據(jù)視圖瀏覽器202將任何參數(shù)請(qǐng)求234傳送給參數(shù)提示模塊204。參數(shù)提示模塊304與屬性管理器208進(jìn)行協(xié)商以確定定制參數(shù)表單是否與當(dāng)前數(shù)據(jù)視圖相關(guān)聯(lián)。屬性管理器208訪問(wèn)存儲(chǔ)212中的屬性列表(例如,214-220)以作出決定。存儲(chǔ)212可以是臨時(shí)或永久存儲(chǔ),且可以對(duì)應(yīng)于圖1中所示的系統(tǒng)存儲(chǔ)器104或大容量存儲(chǔ)設(shè)備120。
如果大容量存儲(chǔ)設(shè)備中的屬性(例如,214-220)指示定制參數(shù)表單與數(shù)據(jù)視圖相關(guān)聯(lián),則使用定制參數(shù)用戶(hù)界面模塊206所提供的功能來(lái)顯示與數(shù)據(jù)視圖相關(guān)聯(lián)的定制參數(shù)表單。然而,如果屬性(例如,214-220)指
9示沒(méi)有定制參數(shù)表單與數(shù)據(jù)視圖相關(guān)聯(lián),則參數(shù)提示模塊204提供常規(guī)參數(shù)表單以向用戶(hù)請(qǐng)求所請(qǐng)求的參數(shù)輸入。
圖2中所描述的功能塊不是可能與DBMS相關(guān)聯(lián)的功能框的詳盡性表示??梢园ǜ嗷蚋俚墓δ軌K而DBMS仍然可用于其預(yù)期的目的。例如,在替換實(shí)施例中,可以是定制參數(shù)用戶(hù)界面模塊206直接與數(shù)據(jù)視圖瀏覽器202進(jìn)行通信而不是通過(guò)參數(shù)提示模塊204進(jìn)行通信的情況。在另一替換實(shí)施例中,數(shù)據(jù)庫(kù)管理者可以做出要為特定數(shù)據(jù)庫(kù)產(chǎn)生的每一表單或報(bào)表都需要定制參數(shù)表單的決定。在該實(shí)施例中,參數(shù)提示模塊204和存儲(chǔ)212的某些屬性(例如,214-220)可以是不必需的,因?yàn)槊恳粩?shù)據(jù)視圖都將具有相關(guān)聯(lián)的定制參數(shù)表單。
圖3是根據(jù)本發(fā)明的用于提供與一數(shù)據(jù)庫(kù)查詢(xún)相關(guān)聯(lián)的定制參數(shù)輸入表單的過(guò)程的操作流程圖。處理在生成了對(duì)于數(shù)據(jù)庫(kù)的查詢(xún)時(shí)開(kāi)始,該查詢(xún)不包括執(zhí)行該查詢(xún)所需的所有參數(shù)從而使得需要輸入?yún)?shù)。處理繼續(xù)至操作302。
在操作302,打開(kāi)以易于理解的格式返回對(duì)查詢(xún)的響應(yīng)的對(duì)象/視圖(例如,表單或報(bào)表)。在打開(kāi)報(bào)表的同時(shí),處理繼續(xù)至判定操作304。
在判定操作304,作出是否為查詢(xún)指定了 PFilter屬性的判定。PFilter屬性指示査詢(xún)中的WHERE從句,以便請(qǐng)求對(duì)查詢(xún)的附加過(guò)濾。如果沒(méi)有指定PFilter屬性,則處理前進(jìn)至操作308。然而,如果指定了 PFilter屬性,則處理繼續(xù)至操作306。
在查詢(xún)306,將對(duì)應(yīng)于所指定的PFilter屬性的PFilter子句添加到査詢(xún)語(yǔ)句。例如,如果PFilter屬性是指示結(jié)果要以字母"A"開(kāi)始的字母表限制的屬性,且原始査詢(xún)是關(guān)于當(dāng)前顧客的,則添加子句以使所得查詢(xún)針對(duì)以字母"A"開(kāi)始的顧客。處理在操作308處繼續(xù)。
在操作308,執(zhí)行査詢(xún)語(yǔ)句。在執(zhí)行査詢(xún)語(yǔ)句的同時(shí),處理繼續(xù)至判定操作310。
在判定操作310,作出査詢(xún)語(yǔ)句的執(zhí)行是否需要參數(shù)來(lái)完成的決定。如果不需要參數(shù),則處理前進(jìn)至操作322。然而,如果需要輸入?yún)?shù),則處理移至判定操作312。在判定操作312,作出是否已指定用于請(qǐng)求參數(shù)輸入的表單的判定。
在一實(shí)施例中,參數(shù)表單在由PForm屬性指示時(shí)指定。如果未指定表單, 則處理移至操作314。
在操作314,提供用于輸入不包括根據(jù)本發(fā)明所生成的參數(shù)表單中可 用的定制在內(nèi)的參數(shù)的提示。 一旦顯示了提示,處理繼續(xù)至判定操作316。
然而,如果指定了參數(shù)表單,則處理繼續(xù)至操作318。在操作318,顯 示用于輸入?yún)?shù)的指定表單。 一旦顯示了指定表單,處理繼續(xù)至判定操作 316。
在判定操作316,作出用戶(hù)是否選擇取消査詢(xún)的判定??筛鶕?jù)用戶(hù)選 擇隨時(shí)取消查詢(xún)。如果用戶(hù)已取消査詢(xún),則處理移至操作318。在操作318, 取消數(shù)據(jù)對(duì)象/視圖的打開(kāi),且處理結(jié)束。
然而,如果查詢(xún)未被取消,則處理移至操作320。在操作320,執(zhí)行用 參數(shù)輸入修改的語(yǔ)句的執(zhí)行。修改可以在不更改原始査詢(xún)語(yǔ)句的情況下發(fā) 生。修改還可以通過(guò)直接修改査詢(xún)語(yǔ)句而發(fā)生。修改的持久性可以與記錄 源、査詢(xún)對(duì)象和/或參數(shù)屬性相關(guān)聯(lián)。處理在操作322處繼續(xù)。
在操作322,將査詢(xún)結(jié)果綁定到對(duì)象/視圖且結(jié)果被示為由所輸入的參 數(shù)修改。 一旦顯示了對(duì)象/視圖,則過(guò)程300結(jié)束,且處理繼續(xù)移至其它任 務(wù)。
圖4示出根據(jù)本發(fā)明的用于向定制參數(shù)表單添加參數(shù)的操作流程圖。 處理在開(kāi)發(fā)者期望向定制參數(shù)表單添加參數(shù)時(shí)開(kāi)始。處理繼續(xù)至操作402。
在操作402,接收向定制參數(shù)表單添加參數(shù)的命令。該命令可來(lái)自定 制表單的開(kāi)發(fā)者的下拉菜單選擇或其它編輯選擇。處理繼續(xù)至判定操作
404。
在判定操作404,作出PFilter屬性是否已經(jīng)包含要添加的參數(shù)的判定。 如果PFilter屬性不包含該參數(shù),則處理移至操作406,在此向PFilter屬性 添加該參數(shù)。如果PFilter屬性已填充了該參數(shù)或一旦PFilter屬性被填充了 該參數(shù),則處理移至判定操作408。
在判定操作408,作出PForm屬性是否指示已經(jīng)指定參數(shù)表單以包括 該屬性的判定。如果尚未生成參數(shù)表單,則處理移至操作410,在此創(chuàng)建參數(shù)表單并設(shè)置PForm屬性。
如果已創(chuàng)建參數(shù)表單以包括參數(shù),或一旦創(chuàng)建了參數(shù)表單,則處理繼 續(xù)至操作判定操作412。
在判定操作412,作出是否已表單上生成控件以供參數(shù)輸入的判定。 如果不存在控件,則處理移至操作414,在此開(kāi)始在參數(shù)表單上生成控件以 供參數(shù)輸入的過(guò)程。
如果已經(jīng)生成了控件,或一旦生成了控件,則處理繼續(xù)至操作416。 在操作416,在執(zhí)行查詢(xún)語(yǔ)句之后,可以顯示具有所添加的參數(shù)的數(shù)據(jù)對(duì)象 /視圖。 一旦顯示了對(duì)象/視圖,則過(guò)程400結(jié)束,且處理移至其它任務(wù)。
圖5示出根據(jù)本發(fā)明的在通過(guò)向生成表單的査詢(xún)輸入附加參數(shù)修改之 前的示例性報(bào)表。報(bào)表500包括關(guān)于產(chǎn)品、產(chǎn)品號(hào)、產(chǎn)品何時(shí)發(fā)貨和銷(xiāo)售 量的年度銷(xiāo)售清單。
圖6示出根據(jù)本發(fā)明的圖5的示例性報(bào)表,其中正做出過(guò)濾對(duì)應(yīng)于該 報(bào)表的查詢(xún)結(jié)果的選擇。在報(bào)表600中所做出的選擇是根據(jù)指示將結(jié)果限 于所指定的兩個(gè)日期之間發(fā)生的那些結(jié)果的日期過(guò)濾器來(lái)過(guò)濾結(jié)果。
圖7示出根據(jù)本發(fā)明的示例性參數(shù)生成表單。參數(shù)生成表單700允許 參數(shù)表單開(kāi)發(fā)者選擇來(lái)定制參數(shù)提示以輸入?yún)?shù)。選擇創(chuàng)建參數(shù)將提示置 于編輯模式以設(shè)計(jì)參數(shù)提示和控件。
圖8示出根據(jù)本發(fā)明的尚未被定制的示例性參數(shù)輸入表單。參數(shù)輸入 表單800不具有指定的、關(guān)于該提示所關(guān)聯(lián)到的報(bào)表的信息。相反,圖9 示出根據(jù)本發(fā)明的示例性定制參數(shù)輸入表單。定制參數(shù)輸入表單卯0示出 所標(biāo)記的與圖8的參數(shù)輸入表單的不同之處。定制參數(shù)輸入表單900包括 示出其與為之生成該定制表單的表單相關(guān)的信息。例如,取代僅僅描述開(kāi)
始和結(jié)束日期,表單的提示示出"最早發(fā)貨日期"和"最新發(fā)貨日期"。 表單的標(biāo)題也被改變。定制參數(shù)輸入表單900可以包括用于用不同值來(lái)填 充下拉顯示幀的附加邏輯。作為一個(gè)示例,取決于創(chuàng)作需求,可以從數(shù)據(jù) 庫(kù)設(shè)置中獲得或?yàn)樘囟攴萦?jì)算默認(rèn)值。在輸入關(guān)于數(shù)據(jù)庫(kù)的搜索查詢(xún)的 參數(shù)時(shí),表單的定制允許更無(wú)縫的用戶(hù)體驗(yàn)。
圖10示出根據(jù)本發(fā)明的圖5和圖6的、結(jié)果根據(jù)所輸入的參數(shù)修改的報(bào)表。報(bào)表IOOO示出具有關(guān)于由輸入到定制參數(shù)表單中的發(fā)貨日期所修改 的査詢(xún)結(jié)果的發(fā)貨日期的顯示幀。
以上說(shuō)明、示例和數(shù)據(jù)提供了對(duì)本發(fā)明組成的制造和使用的全面描述。 因?yàn)榭梢栽诓槐畴x本發(fā)明的精神和范圍的情況下做出本發(fā)明的許多實(shí)施 例,所以本發(fā)明落在所附權(quán)利要求的范圍內(nèi)。
權(quán)利要求
1. 一種提供用于輸入與數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句相關(guān)聯(lián)的參數(shù)的用戶(hù)界面的計(jì)算機(jī)實(shí)現(xiàn)的方法,所述方法包括生成關(guān)于數(shù)據(jù)視圖的查詢(xún)語(yǔ)句(210);將所述查詢(xún)語(yǔ)句(232)發(fā)送到數(shù)據(jù)庫(kù)引擎;在所述查詢(xún)語(yǔ)句不可執(zhí)行時(shí)接收參數(shù)請(qǐng)求(234);訪問(wèn)屬性列表(212)以確定定制參數(shù)表單是否與所述數(shù)據(jù)視圖相關(guān)聯(lián);以及在所述屬性列表指示定制參數(shù)表單與所述數(shù)據(jù)視圖相關(guān)聯(lián)時(shí)顯示所述定制參數(shù)表單(206)。
2. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述數(shù)據(jù)視 圖(302)包括以下的至少一項(xiàng)表單、報(bào)表、和表格。
3. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述屬性列 表(212)包括表示指示所述數(shù)據(jù)視圖的所述查詢(xún)語(yǔ)句的記錄源屬性(214)。
4. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述屬性列 表(212)包括用于根據(jù)布爾運(yùn)算向所述査詢(xún)語(yǔ)句添加參數(shù)以修改與所述數(shù) 據(jù)視圖相關(guān)聯(lián)的結(jié)果的參數(shù)過(guò)濾器屬性(216)。
5. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,還包括通過(guò) 更改所述查詢(xún)語(yǔ)句來(lái)修改所述數(shù)據(jù)視圖(302)。
6. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述屬性列 表(212)包括指示定制參數(shù)表單與所述數(shù)據(jù)視圖相關(guān)聯(lián)的參數(shù)表單屬性(220)。
7. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,還包括在所 述屬性列表(212)未指示定制參數(shù)表單與所述數(shù)據(jù)視圖相關(guān)聯(lián)時(shí),訪問(wèn)標(biāo) 準(zhǔn)參數(shù)表單(204)。
8. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述定制參 數(shù)表單(206)包括所述數(shù)據(jù)視圖專(zhuān)用的文本框(900)。
9. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述定制參 數(shù)表單(206)被配置為提供以下的至少一項(xiàng)附加屬性、附加過(guò)濾器屬性、和控件。
10. 如權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,還包括與所述參數(shù)表單的一個(gè)參數(shù)相關(guān)聯(lián)地修改所述數(shù)據(jù)視圖(302),其中所述數(shù) 據(jù)視圖(302)在不更改所述査詢(xún)語(yǔ)句的情況下修改。
11. 一種具有用于輸入與數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句相關(guān)聯(lián)的參數(shù)的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀的介質(zhì),所述指令包括確定查詢(xún)語(yǔ)句的執(zhí)行是否需要參數(shù)以完成數(shù)據(jù)視圖(310);在所述査詢(xún)語(yǔ)句需要參數(shù)以完成所述數(shù)據(jù)視圖時(shí)訪問(wèn)屬性列表(212);從所述屬性列表(212)的參數(shù)表單屬性(220)中確定定制屬性表單 是否與所述數(shù)據(jù)視圖相關(guān)聯(lián);以及在所述參數(shù)表單屬性(220)與所述屬性列表(212)相關(guān)聯(lián)時(shí),顯示 所述定制屬性表單(206)。
12. 如權(quán)利要求11所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述屬性 列表(212)包括表示指示所述數(shù)據(jù)視圖的所述查詢(xún)語(yǔ)句的記錄源屬性(214)。
13. 如權(quán)利要求11所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述屬性 列表(212)包括用于根據(jù)布爾運(yùn)算向所述査詢(xún)語(yǔ)句添加參數(shù)以修改與所述 數(shù)據(jù)視圖相關(guān)聯(lián)的結(jié)果的參數(shù)過(guò)濾器屬性(216)。
14. 如權(quán)利要求11所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,還包括通 過(guò)更改所述查詢(xún)語(yǔ)句來(lái)修改所述數(shù)據(jù)視圖(302)。
15. 如權(quán)利要求11所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述定制 參數(shù)表單(206)被配置為提供以下的至少一項(xiàng)附加屬性、附加過(guò)濾器屬 性、和控件。
16. 如權(quán)利要求11所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,還包括與 所述參數(shù)表單的一個(gè)參數(shù)相關(guān)聯(lián)地修改所述數(shù)據(jù)視圖(322),其中所述數(shù) 據(jù)視圖是在不更改所述查詢(xún)語(yǔ)句的情況下修改的。
17. —種用于將定制屬性表單和數(shù)據(jù)視圖進(jìn)行相關(guān)的計(jì)算機(jī)實(shí)現(xiàn)的 方法,所述方法包括響應(yīng)于查詢(xún)語(yǔ)句接收參數(shù)請(qǐng)求(324);訪問(wèn)屬性管理器(208)以確定屬性列表(212)是否指示定制屬性表 單(206)與所述數(shù)據(jù)視圖相關(guān)聯(lián);在所述屬性列表(212)指示所述定制屬性表單(206)與所述數(shù)據(jù)視 圖相關(guān)聯(lián)時(shí)顯示所述定制屬性表單(206);在所述屬性列表未指示所述定制屬性表單與所述數(shù)據(jù)視圖相關(guān)聯(lián)時(shí)顯 示標(biāo)準(zhǔn)屬性表單;將參數(shù)與以下的至少一項(xiàng)進(jìn)行關(guān)聯(lián)所述定制屬性表單(206)和所述 標(biāo)準(zhǔn)屬性表單(204);以及與所述參數(shù)相關(guān)聯(lián)地修改所述數(shù)據(jù)視圖(322)而不更改所述査詢(xún)語(yǔ)句。
18. 如權(quán)利要求17所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述屬 性列表(212)包括用于根據(jù)布爾運(yùn)算向所述査詢(xún)語(yǔ)句添加參數(shù)以修改與所 述數(shù)據(jù)視圖相關(guān)聯(lián)的結(jié)果的參數(shù)過(guò)濾器屬性(216)。
19. 如權(quán)利要求17所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,還包括 修改所述數(shù)據(jù)視圖(302)而不更改所述查詢(xún)語(yǔ)句。
20. 如權(quán)利要求17所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述屬 性列表(212)包括指示定制參數(shù)表單與所述數(shù)據(jù)視圖相關(guān)聯(lián)的參數(shù)表單屬 性(220)。
全文摘要
提供了用于輸入與查詢(xún)相關(guān)聯(lián)的參數(shù)的定制表單。用戶(hù)可能期望修改從對(duì)數(shù)據(jù)庫(kù)的查詢(xún)所得的報(bào)表。為輸入修改參數(shù),向用戶(hù)顯示定制表單。定制表單允許根據(jù)因其表現(xiàn)而與正被生成的表單相關(guān)的提示來(lái)輸入?yún)?shù)。
文檔編號(hào)G06F3/14GK101484874SQ200780023872
公開(kāi)日2009年7月15日 申請(qǐng)日期2007年6月25日 優(yōu)先權(quán)日2006年6月26日
發(fā)明者C·D·科維頓, S·喬漢, T·E·格特什 申請(qǐng)人:微軟公司