專利名稱:檢索方法
技術領域:
本發(fā)明涉及檢索方法,更具體地涉及管理軟件的全部業(yè)務對象的 快速檢索和定位的方法。
技術背景在用戶的應用系統(tǒng)中,存在大量的數(shù)據(jù),通常情況下,這些數(shù)據(jù) 有兩種檢索方式, 一種方式為全文本檢索,即以文本字符串為基礎數(shù) 據(jù),按照模糊匹配的方式從整個業(yè)務系統(tǒng)中檢索所有相關的業(yè)務數(shù) 據(jù)。另一種方式是按照固定的數(shù)據(jù)字段名稱從指定的數(shù)據(jù)表中檢索數(shù) 據(jù)。但是,這兩種方式各自都有不足之處。全文本檢索方式,往往檢索到的數(shù)據(jù)量非常大,不但檢索數(shù)據(jù) 慢,而且由于檢索到的結果太多,導致最終用戶還要從眾多結果中用 肉眼去檢索自己所需要的數(shù)據(jù),實際效率非常低下。而固定的檢索方 式雖然可以精確地檢索到用戶所需的數(shù)據(jù),但操作復雜,而且不同的 結果要從不同的入口進入,操作局限性很大。因此,需要一種檢索方式,能夠解決上述兩種方法的缺陷。發(fā)明內(nèi)容為了解決上述兩種方式中的缺陷,本發(fā)明提出了一種檢索方法,其特征在于,包括步驟S102,建立元數(shù)據(jù)表,用于存儲元數(shù)據(jù)以 及所述元數(shù)據(jù)之間的關聯(lián)關系;以及步驟S104,根據(jù)用戶輸入的字 符在元數(shù)據(jù)表所描述的業(yè)務數(shù)據(jù)表中進行檢索并返回檢索結果。優(yōu)選地,步驟S104進一步包括在所述用戶輸入的過程中,提 示框自動下拉出與輸入內(nèi)容相匹配的內(nèi)容的下拉列表,其中具有相同 名稱或編碼的不同對象連同其對象類型一起顯示在所述下拉列表中。 優(yōu)選地,在所述用戶從所述下拉列表中選定對象后,如果所述用 戶輸入預設符號,則將所述選定對象所對應的屬性字段標題顯示在下根據(jù)所述用戶選擇的屬性字段標題,從相應的元數(shù)據(jù)表中檢索到 相應的屬性值。優(yōu)選地,如果所檢索到的所述屬性值是引用對象,則將所述引用 對象的元數(shù)據(jù)信息一起返回,以便所述用戶繼續(xù)點擊所述預設符號來 進行下一層引用對象的檢索。優(yōu)選地,步驟S102包括建立以下元數(shù)據(jù)表菜單信息功能表, 用于存儲菜單名稱和相關界面的地址;表信息數(shù)據(jù)信息表,用于存儲 表名稱、基本數(shù)據(jù)條件、用于檢索的名稱字段名和編碼字段;以及字 段信息數(shù)據(jù)屬性表,用于存儲屬性名稱、數(shù)據(jù)表的關聯(lián)以及屬性的引 用關系。其中,所述用戶輸入的字符包括菜單名稱、業(yè)務系統(tǒng)中的基礎檔 案名稱或單據(jù)編碼、基礎檔案或單據(jù)的任意數(shù)據(jù)屬性或屬性的任意下 一級屬性。優(yōu)選地,所述步驟S104包括根據(jù)所述字符的字節(jié)碼判斷所述 字符是否為漢字,并根據(jù)判斷結果確定優(yōu)選檢索的所述元數(shù)據(jù)表。在 判斷所述字符為漢字的情況下,則直接檢索名稱,否則檢索編碼。優(yōu)選地,上述檢索方法進一步包括為所述元數(shù)據(jù)表建立索引, 以確定檢索所述元數(shù)據(jù)表的順序。優(yōu)選地,上述檢索方法進一步包括在檢索到預定數(shù)量的匹配項 后,自動返回。根據(jù)本發(fā)明提出的全對象檢索方法,其不僅解決了上述問題,還 實現(xiàn)了一種高效的檢索定位方式。在業(yè)務系統(tǒng)中,可以提供一個統(tǒng)一 的文本框作為輸入和檢索的入口 ,用戶可以輸入業(yè)務系統(tǒng)中任意數(shù)據(jù) 的名稱或者編碼,在輸入過程中,有著高效便捷的下拉輸入提示,確 定后即可在系統(tǒng)中快速打開所需要的數(shù)據(jù)界面,如果最終用戶只需要 某一條數(shù)據(jù)的一個屬性,還可以繼續(xù)輸入字段標題從而檢索到指定屬 性的數(shù)據(jù)。由于系統(tǒng)之間數(shù)據(jù)是彼此關聯(lián)的,有可能數(shù)據(jù)的某個屬性 還有下一個屬性,該引擎能夠按照對象間的關系檢索到任意級次的數(shù)據(jù),因此這種檢索機制被稱為全對象檢索引擎。
圖l是示出了根據(jù)本發(fā)明的檢索方法的流程圖;以及 圖2是示出了根據(jù)本發(fā)明的實施例的檢索方法的流程圖。
具體實施方式
圖l是示出了根據(jù)本發(fā)明的檢索方法的流程圖。如圖l所示,根 據(jù)本發(fā)明的檢索方法包括步驟S102,建立元數(shù)據(jù)表,用于存儲元 數(shù)據(jù)以及所述元數(shù)據(jù)之間的關聯(lián)關系;以及步驟S104,根據(jù)用戶輸 入的字符在元數(shù)據(jù)表所描述的業(yè)務數(shù)據(jù)表中進行檢索并返回檢索結 果。優(yōu)選地,步驟S104進一步包括在所述用戶輸入的過程中,提 示框自動下拉出與輸入內(nèi)容相匹配的內(nèi)容的下拉列表,其中具有相同 名稱或編碼的不同對象連同其對象類型一起顯示在所述下拉列表中。優(yōu)選地,在所述用戶從所述下拉列表中選定對象后,如果所述用 戶輸入預設符號,則將所述選定對象所對應的屬性字段標題顯示在下 拉列表中;以及根據(jù)所述用戶選擇的屬性字段標題,從相應的元數(shù)據(jù)表中檢索到 相應的屬性值。優(yōu)選地,如果所檢索到的所述屬性值是引用對象,則將所述引用 對象的元數(shù)據(jù)信息一起返回,以便所述用戶繼續(xù)點擊所述預設符號來 進行下一層引用對象的檢索。優(yōu)選地,步驟S102包括建立以下元數(shù)據(jù)表菜單信息功能表, 用于存儲菜單名稱和相關界面的地址;表信息數(shù)據(jù)信息表,用于存儲 表名稱、基本數(shù)據(jù)條件、用于檢索的名稱字段名和編碼字段;以及字 段信息數(shù)據(jù)屬性表,用于存儲屬性名稱、數(shù)據(jù)表的關聯(lián)以及屬性的引 用關系。其中,所述用戶輸入的字符包括菜單名稱、業(yè)務系統(tǒng)中的基礎檔 案名稱或單據(jù)編碼、基礎檔案或單據(jù)的任意數(shù)據(jù)屬性或屬性的任意下 一級屬性。優(yōu)選地,所述步驟S104包括根據(jù)所述字符判斷所述字符是否 為漢字,并根據(jù)判斷結果確定優(yōu)選檢索的所述元數(shù)據(jù)表。在判斷所述 字符為漢字的情況下,則直接檢索名稱,否則檢索編碼。優(yōu)選地,上述檢索方法進一步包括為所述元數(shù)據(jù)表建立索引, 以確定檢索所述元數(shù)據(jù)表的順序。優(yōu)選地,上述檢索方法進一步包括在檢索到預定數(shù)量的匹配項 后,自動返回。圖2示出了根據(jù)本發(fā)明的實施例的檢索方法的流程圖。下面將結 合圖2具體描述該實施例的應用場景。一、 使用場景描述1、 界面描述全文本檢索引擎的使用界面非常簡單,由一個文 本框、 一個輔助輸入下拉提示框和一個跳轉按鈕組成。用戶在文本框 中錄入的時候,提示框自動下拉出與之相匹配的內(nèi)容,用戶可以隨時 點擊上下按鍵選擇一個下拉項或用鼠標選擇一個下拉項,然后點擊跳 轉按鈕或者回車,就自動打開相關頁面或彈出相關數(shù)據(jù)的提示。2、 檢索方式全文本檢索引擎提供三種最基本的方式用戶可 以輸入系統(tǒng)的功能名稱(菜單名稱)、業(yè)務系統(tǒng)中的基礎檔案名稱或 單據(jù)的編碼、基礎檔案或單據(jù)的某個數(shù)據(jù)屬性或屬性的任意下一級屬 ,昧。例如輸入"商品",確定后,打開商品新增界面;輸入"可口可樂",確定后,打開可口可樂這種商品的編輯界面;輸入"可口可樂.供應商",確定后,彈出提示可口可樂.供應 商是 "XX公司";輸入"可口可樂.供應商.地址",確定后,彈出提示可口可樂. 供應商.地址是 "XX地區(qū)XX街道XX號,,。其中數(shù)據(jù)屬性的分隔符可以輸入空格或者小數(shù)點符號。二、 實現(xiàn)原理1、元數(shù)據(jù)存儲在業(yè)務系統(tǒng)中,存在三張元數(shù)據(jù)表Menulno、Tablelnfo、 Fiddlnfo,分別存儲業(yè)務系統(tǒng)中的菜單信息功能表、表 信息數(shù)據(jù)表、字段信息數(shù)據(jù)屬性表。Menulnfo菜單信息表需要記錄 菜單名稱和相關界面的地址;Tablelnfo數(shù)據(jù)信息表需要記錄表名 稱、基本數(shù)據(jù)條件、用于檢索的名稱字段名和編碼字段名;Fieldlnfo 數(shù)據(jù)屬性表需要記錄屬性名稱、和數(shù)據(jù)表的關聯(lián)以及屬性的引用關 系。這里所描述的是元數(shù)據(jù)的最基本的一種存儲方式,除此之外,還 可以以其他方式來存儲,只要能夠保持數(shù)據(jù)的關聯(lián)信息,就可以根據(jù) 這個關聯(lián)信息取得下一層的數(shù)據(jù)屬性?;緳z索當用戶錄入時,首先根據(jù)用戶錄入的字符,判斷用戶輸入的字符是漢字還是數(shù)字和字母,如果是漢字優(yōu)先檢索名稱,如果 是字母和數(shù)字優(yōu)先檢索編碼。在檢索過程中,檢索時,先和菜單名稱匹配,再從各個數(shù)據(jù)表中依次查找相關記錄,這里基于檢索效率的考 慮,需要為各個數(shù)據(jù)表建立一個索引,以便確定先檢索那些常用的數(shù) 據(jù)表。檢索時,如果找到了 10個匹配項,則自動返回,不再檢索其 他數(shù)據(jù)表,這是出于效率考慮,只需要10個檢索結果,滿足下拉提 示中的一頁即可。3、 高級檢索如果用戶輸入空格或者小數(shù)點分隔符,則根據(jù)當 前檢索信息匹配到的對象類型,繼續(xù)檢索其數(shù)據(jù)屬性,把數(shù)據(jù)字段的 標題列表返回給用戶,用戶選擇一個屬性時,從相應的數(shù)據(jù)表中檢索 到其屬性值,如果屬性是一個引用對象,則還可以將對象元數(shù)據(jù)信息 一起返回,以便用戶繼續(xù)點擊小數(shù)點分隔符進行下一層引用對象的檢 索。用戶點擊確定或者按下回車鍵的時候,把檢索到的數(shù)據(jù)結果提示 給用戶。4、 重復處理如果系統(tǒng)中某些對象的名稱和編碼重復,則在輸 入過程中由于有下拉列表的存在,相同名稱或編碼的不同對象會連同 其對象類型顯示在下拉列表中,這樣,用戶便可以明確地知道自己要 檢索的對象,從而進行進一步的選擇和確認。其具體的操作流程圖見圖2。如圖2所示,用戶輸入(S202)之 后,判斷是否為分隔符(S204 ),如果判斷結果為是,則進行到行到S208,判斷其是否為漢字。如果 判斷結果為是,則優(yōu)先檢索名稱(S212),否則優(yōu)先檢索編碼 (S210)。在S206、 S210和S212之后,都進行到S214,返回10 4亍 列表,在此本領域的技術人員應該了解,具體返回幾行列表是根據(jù)客 戶的實際需要決定的,可以不僅僅是10行。然后進行到S216,用戶 進行選擇和確定。在S218,判斷用戶的選擇是否為數(shù)據(jù)屬性,如果 是,則進行到S220,彈出提示,顯示數(shù)據(jù)結果,否則進行到步驟 S222,打開相關界面。 三、具體實例描述
當用戶輸入文本"張三"時,檢索引擎首先在功能表中檢索有沒 有名稱為張三的菜單,如果有這個菜單項則返回菜單的元數(shù)據(jù)信息。 當用戶回車確定后,打開指定菜單的頁面地址。
如果檢索的文本在功能表中沒有檢索到匹配的菜單,則會在數(shù)據(jù) 信息表中找到所有的數(shù)據(jù)表,循環(huán)所有數(shù)據(jù)表來查找數(shù)據(jù)表中的數(shù) 據(jù),由于"張三"兩個文字是漢字,所以先按照名稱字段查找,再按 照編碼字段查找。在用戶表中找到匹配的數(shù)據(jù)后,會把這條數(shù)據(jù)的信 息返回。如果用戶回車確認,則會打開用戶"張三"的編輯頁面。
如果用戶繼續(xù)輸入"."號,則由于前面的檢索結果,檢索引擎 會知道當前輸入的張三屬于用戶表。進而會繼續(xù)從數(shù)據(jù)屬性表中查找 用戶表的所有字段和字段標題以及引用和關聯(lián)信息,則在輸入下拉框 中會返回所有用戶的字段標題,用戶選擇部門,確認,則會以彈出 框的形式彈出用戶張三的部門名稱。
如果用戶繼續(xù)輸入"."號,則檢索引擎會從數(shù)據(jù)屬性表中查找 用戶的部門字段和哪一張數(shù)據(jù)表關聯(lián),當檢索到用戶的部門屬性和部 門數(shù)據(jù)表關聯(lián)后,會進而檢索部門表下面的字段列表,則在輸入下拉 框中會顯示出張三的部門的所有屬性列表,如果用戶選擇部門的負責 人,確定后,會以彈出框的形式彈出用戶張三的部門的負責人姓名。
綜上,本發(fā)明的檢索方法是針對全文本檢索引擎的不足而提出的 全新概念,在用戶實際應用過程中,對于特定對象的檢索或者特定數(shù)據(jù)的檢索是非常普遍的,全文本檢索由于檢索速度慢、結果不精確、 以及在業(yè)務系統(tǒng)中建立全文本檢索引擎的復雜性,決定了其應用范圍 是非常有限的,因此用戶的使用頻率非常低。
在絕大多數(shù)的條件下,用戶對于他所要查找的數(shù)據(jù),是能夠明確 知道其名稱或者編碼的,而且在絕大多數(shù)系統(tǒng)中,對象的名稱或編碼 在全系統(tǒng)中是唯一的,重復現(xiàn)象并不多,因此,用戶就可以很方便的 在系統(tǒng)的主界面中快速錄入該對象的名稱和編碼,回車后快速打開該 對象的查看或編輯界面。而上述動作如果通過主菜單打開相應的對象 查詢界面,輸入編碼查詢后再打開,則增加了四五步的操作。
在更多的時候,用戶只想查看某一對象的某個特定的屬性,比如 客戶張三的電話號碼,在這類情況下,全對象檢索引擎更能起到其便 捷高效的使用效果,用戶只需要在文本框中輸入"張",則下拉框中 自動出現(xiàn)"張三",選擇張三后點擊空格,則下拉框中自動出現(xiàn) "電話號碼",選擇后確定,則張三的電話就會自動提示給用戶。這 顯然比打開用戶的編輯界面檢索到張三的記錄再查看電話號碼要簡潔 和高效的多。
眾所周知,BS系統(tǒng)中,界面效率是一個很大的瓶頸,通過全對 象檢索引擎可以大大方便用戶的使用、減少操作時間和響應時間,是 非常值得推廣的技術。該引擎提供的元數(shù)據(jù)機制使全對象檢索引擎不 局限于固定的某個業(yè)務系統(tǒng),任何管理軟件只要建立了元數(shù)據(jù)表并對 自己的業(yè)務數(shù)據(jù)表做一個全面描述就可以方便的啟用全對象檢索功 能。而且,該引擎可以和語音輸入系統(tǒng)有效的結合起來,當用戶讀出 菜單名稱時,可以打開相關界面,當用戶通過語音讀出"張三的電話 號碼"時,這些文本自動進入全對象檢索框,檢索到相關信息后,以
語音的形式提示給用戶。
根據(jù)本發(fā)明的檢索方法解決了現(xiàn)有技術中的效率問題,為用戶的 檢索提供了一種便捷有效的方式,在一個檢索框中能夠以對象名稱、 編碼和屬性列表的方式迅速檢索到業(yè)務系統(tǒng)中的數(shù)據(jù)并定位到數(shù)據(jù)對 應的編輯界面。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明, 對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本 發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應 包含在本發(fā)明的保護范圍之內(nèi)。
權利要求
1.一種檢索方法,其特征在于,包括步驟S102,建立元數(shù)據(jù)表,用于存儲元數(shù)據(jù)以及所述元數(shù)據(jù)之間的關聯(lián)關系;以及步驟S104,根據(jù)用戶輸入的字符在所述元數(shù)據(jù)表所描述的業(yè)務數(shù)據(jù)表中進行檢索并返回檢索結果。
2. 根據(jù)權利要求1所述的檢索方法,其特征在于,所述步驟 S104進一步包括在所述用戶輸入的過程中,提示框自動下拉出與輸入內(nèi)容相匹配 的內(nèi)容的下拉列表,其中具有相同名稱或編碼的不同對象連同其對象 類型一起顯示在所述下拉列表中。
3. 根據(jù)權利要求2所述的檢索方法,其特征在于,進一步包括在所述用戶從所述下拉列表中選定對象后,如果所述用戶輸入預 設符號,則將所述選定對象所對應的屬性字段標題顯示在下拉列表 中;以及根據(jù)所述用戶選擇的屬性字段標題,從相應的元數(shù)據(jù)表中檢索到 相應的屬性值。
4. 根據(jù)權利要求3所述的檢索方法,其特征在于,進一步包括如果所檢索到的所述屬性值是引用對象,則將所述引用對象的元 數(shù)據(jù)信息一起返回,以便所述用戶繼續(xù)點擊所述預設符號來進行下一 層引用對象的檢索。
5. 根據(jù)權利要求1至3中任一項所述的檢索方法,其特征在 于,所述步驟S102包括建立以下元數(shù)據(jù)表菜單信息功能表,用 于存儲菜單名稱和相關界面的地址;表信息數(shù)據(jù)信息表,用于存儲表 名稱、基本數(shù)據(jù)條件、用于檢索的名稱字段名和編碼字段;以及字段 信息數(shù)據(jù)屬性表,用于存儲屬性名稱、數(shù)據(jù)表的關聯(lián)以及屬性的引用關系。
6. 根據(jù)權利要求5所述的檢索方法,其特征在于,所述用戶輸 入的字符包括菜單名稱、業(yè)務系統(tǒng)中的基礎檔案名稱或單據(jù)編碼、基 礎檔案或單據(jù)的任意數(shù)據(jù)屬性或屬性的任意下一級屬性。
7. 根據(jù)權利要求5所述的檢索方法,其特征在于,所述步驟 S104包括根據(jù)所述字符的字節(jié)碼判斷所述字符是否為漢字,并根據(jù)判斷結 果確定優(yōu)選檢索的所述元數(shù)據(jù)表。
8. 根據(jù)權利要求7所述的檢索方法,其特征在于,在判斷所述 字符為漢字的情況下,則直接檢索名稱,否則檢索編碼。
9. 根據(jù)權利要求1所述的檢索方法,其特征在于,進一步包括為所述元數(shù)據(jù)表建立索引,以確定檢索所述元數(shù)據(jù)表的順序。
10. 根據(jù)權利要求1所述的檢索方法,其特征在于,進一步包括在檢索到預定數(shù)量的匹配項后,自動返回。
全文摘要
本發(fā)明提出了一種檢索方法,其特征在于,包括步驟S102,建立元數(shù)據(jù)表,用于存儲元數(shù)據(jù)以及所述元數(shù)據(jù)之間的關聯(lián)關系;以及步驟S104,根據(jù)用戶輸入的字符在元數(shù)據(jù)表所描述的業(yè)務數(shù)據(jù)表中進行檢索并返回檢索結果。根據(jù)本發(fā)明提出的全對象檢索方法,可以提供一個統(tǒng)一的文本框作為輸入和檢索的入口,用戶可以輸入業(yè)務系統(tǒng)中任意數(shù)據(jù)的名稱或者編碼,在輸入過程中,有著高效便捷的下拉輸入提示,確定后即可在系統(tǒng)中快速打開所需要的數(shù)據(jù)界面,如果最終用戶只需要某一條數(shù)據(jù)的一個屬性,還可以按下空格鍵繼續(xù)輸入字段標題從而檢索到指定屬性的數(shù)據(jù),如果指定屬性的數(shù)據(jù)還存在關聯(lián)數(shù)據(jù),則可以繼續(xù)按下空格鍵輸入后續(xù)屬性的字段標題并檢索屬性值。
文檔編號G06F17/30GK101645086SQ20091009159
公開日2010年2月10日 申請日期2009年8月28日 優(yōu)先權日2009年8月28日
發(fā)明者孫亮朝 申請人:用友軟件股份有限公司