[發明專利]基于中文表達式的計算方法、裝置、設備及存儲介質在審
| 申請號: | 202011352143.0 | 申請日: | 2020-11-26 |
| 公開(公告)號: | CN112463819A | 公開(公告)日: | 2021-03-09 |
| 發明(設計)人: | 鄧燦 | 申請(專利權)人: | 北京宏景世紀軟件股份有限公司 |
| 主分類號: | G06F16/242 | 分類號: | G06F16/242;G06F16/2452;G06F40/30 |
| 代理公司: | 北京細軟智谷知識產權代理有限責任公司 11471 | 代理人: | 葛鐘 |
| 地址: | 100089 北京市海淀區豐智*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 中文 表達式 計算方法 裝置 設備 存儲 介質 | ||
本發明涉及一種基于中文表達式的計算方法、裝置、設備及存儲介質。該方法包括:接收用戶輸入中文表達式;對所述中文表達式進行格式合規性驗證;驗證通過后,利用遞歸下降分析法對所述中文表達式進行解析,生成所述中文表達式對應的SQL語句;利用所述SQL語句結合預先獲取的待計算數據進行計算,得到計算結果。上述方法中采用遞歸下降分析法對用戶實時輸入公式進行解析,當用戶改變業務計算邏輯或新增業務時,無需修改代碼僅需維護公式表達式就能達到目的,降低了維護成本提高了系統穩定性。
技術領域
本發明涉及計算機數據處理技術領域,具體涉及一種基于中文表達式的計算方法、裝置、設備及存儲介質。
背景技術
隨著智能管理系統的發展,越來越多的人事應用系統投入使用。人事系統不可避免地需要處理各式各樣的公式,各種人事應用系統內數據的計算公式都是由研發人員通過代碼基于用戶的業務規則事先定義好,用戶可以修改軟件計算公式的變量值但不能修改其計算規則。為了在應用系統中表達這些形式多樣的公式,主流做法是由研發人員提供基于業務現狀定義的已知計算邏輯公式庫由終端用戶選擇。
目前當應用系統正式上線運行,用戶由于企業自身發展需要,某些以前定義的計算公式運算規則將不再適用,這就需要開發人員對原代碼程序進行修改升級處理,公式的修改需要開發人員的參與,此種方式極大的降低應用系統計算的實時性和靈活性,且由于規則代碼的重新編寫還可能導致系統穩定性大打折扣。
發明內容
有鑒于此,本發明的目的在于克服現有技術的不足,提供一種基于中文表達式的計算方法、裝置、設備及存儲介質。
為實現以上目的,本發明采用如下技術方案:
一種基于中文表達式的計算方法,包括:
接收用戶輸入中文表達式;
對所述中文表達式進行格式合規性驗證;
驗證通過后,利用遞歸下降分析法對所述中文表達式進行解析,生成所述中文表達式對應的SQL語句;
利用所述SQL語句結合預先獲取的待計算數據進行計算,得到計算結果。
可選的,所述對所述中文表達式進行格式合規性驗證,包括:
對所述中文表達式進行分析,得到所述中文表達式的運算符號和運算因子;
判斷所述運算符號是否滿足預設運算符號標準;
若滿足預設運算符號標準,判斷所述運算因子是否與預設指標信息集合相匹配;
若與預設指標信息集合匹配,則對所有的所述運算因子進行預設數據標注的匹配。
可選的,所述SQL語句包括:字符SQL語句和符號SQL語句;
所述利用遞歸下降分析法對所述中文表達式進行解析,生成所述中文表達式對應的SQL語句,包括:
對所述中文表達式進行分析,得到公式基本元素;所述公式基本元素包括中文字符元素和運算符號元素;
將所述中文字符元素進行識別并轉換成對應的所述字符SQL語句;
將所述運算符號元素進行識別并轉換成對應的所述符號SQL語句。
可選的,所述利用所述SQL語句結合預先獲取的待計算數據進行計算,得到計算結果,包括:
創建臨時表,將所述中文字符元素存入所述臨時表中;
讀取預先獲取的所述待計算數據存入所述臨時表中所述中文字符元素對應的數據字段內;
執行所述SQL語句對所述數據字段的數據進行計算,得到所述計算結果。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京宏景世紀軟件股份有限公司,未經北京宏景世紀軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011352143.0/2.html,轉載請聲明來源鉆瓜專利網。





