流程圖的生成方法和裝置的制造方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種流程圖的生成方法,所述方法包括以下節(jié)點(diǎn):獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果;根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系;根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。本發(fā)明還公開(kāi)了一種流程圖的生成裝置。本發(fā)明能夠快速有效地實(shí)現(xiàn)流程圖的生成,保證業(yè)務(wù)邏輯清晰,避免出錯(cuò)。
【專(zhuān)利說(shuō)明】
流程圖的生成方法和裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及流程圖設(shè)計(jì)技術(shù)領(lǐng)域,尤其涉及一種流程圖的生成方法和裝置。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的快速發(fā)展和社會(huì)各領(lǐng)域信息化水平的提高,數(shù)據(jù)量正以史無(wú)前例的速度井噴。在大數(shù)據(jù)領(lǐng)域,處理海量數(shù)據(jù)的抽取和加工的工作流工具系統(tǒng)有著非常重要的工業(yè)用途。在大數(shù)據(jù)工作流工具系統(tǒng)中,用戶會(huì)依據(jù)復(fù)雜的業(yè)務(wù)邏輯來(lái)建立不同的工作流程圖,來(lái)描繪不同操作的流程。在這種情況下,用戶手工創(chuàng)建的流程圖因含有實(shí)際的業(yè)務(wù)邏輯,通常復(fù)雜、混亂。不能滿足大數(shù)據(jù)工業(yè)應(yīng)用中工具的實(shí)際需要。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的主要目的在于提出一種流程圖的生成方法和裝置,旨在實(shí)現(xiàn)流程圖的自動(dòng)生成,以滿足大數(shù)據(jù)工業(yè)應(yīng)用中工具的實(shí)際需要。
[0004]為實(shí)現(xiàn)上述目的,本發(fā)明提供的一種流程圖的生成方法,所述方法包括以下步驟:
[0005]獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果;
[0006]根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系;
[0007]根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。
[0008]可選地,所述根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的節(jié)點(diǎn)包括:
[0009]根據(jù)所述拓?fù)浣Y(jié)構(gòu)確定所述流程圖的開(kāi)始節(jié)點(diǎn),并獲得所述開(kāi)始節(jié)點(diǎn)的等級(jí),其中所述開(kāi)始節(jié)點(diǎn)的等級(jí)為第一預(yù)設(shè)值;
[0010]根據(jù)所述開(kāi)始節(jié)點(diǎn)計(jì)算其他節(jié)點(diǎn)的等級(jí),其中其他節(jié)點(diǎn)的等級(jí)等于所述第一預(yù)設(shè)值,與所述開(kāi)始節(jié)點(diǎn)相隔最多的節(jié)點(diǎn)數(shù)和預(yù)設(shè)的第二預(yù)設(shè)值之和;
[0011]等級(jí)相同的節(jié)點(diǎn)設(shè)置在所述流程圖的同一層。
[0012]可選地,所述根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的節(jié)點(diǎn)還包括:
[0013]根據(jù)所述邏輯關(guān)系確定所述流程圖的主線節(jié)點(diǎn);
[0014]將所述主線節(jié)點(diǎn)設(shè)置在同一列,并對(duì)齊。
[0015]可選地,所述根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的節(jié)點(diǎn)還包括:
[0016]根據(jù)所述識(shí)別結(jié)果,獲得各節(jié)點(diǎn)的類(lèi)型;
[0017]根據(jù)各節(jié)點(diǎn)的類(lèi)型確定各節(jié)點(diǎn)的框圖形狀,并將各節(jié)點(diǎn)的內(nèi)容放置在對(duì)應(yīng)的框圖形狀中。
[0018]可選地,所述流程圖為有向無(wú)環(huán)圖或包括環(huán)的有向圖。
[0019]此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提供一流程圖的生成裝置,所述裝置包括:
[0020]識(shí)別模塊,用于獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果;[0021 ]獲得模塊,用于根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系;
[0022]生成模塊,用于根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。
[0023]可選地,所述生成模塊包括:
[0024]第一獲得單元,用于根據(jù)所述拓?fù)浣Y(jié)構(gòu)確定所述流程圖的開(kāi)始節(jié)點(diǎn),并獲得所述開(kāi)始節(jié)點(diǎn)的等級(jí),其中所述開(kāi)始節(jié)點(diǎn)的等級(jí)為第一預(yù)設(shè)值;
[0025]計(jì)算單元,用于根據(jù)所述開(kāi)始節(jié)點(diǎn)計(jì)算其他節(jié)點(diǎn)的等級(jí),其中其他節(jié)點(diǎn)的等級(jí)等于所述第一預(yù)設(shè)值,與所述開(kāi)始節(jié)點(diǎn)之間的節(jié)點(diǎn)數(shù)和預(yù)設(shè)的第二預(yù)設(shè)值之和;
[0026]設(shè)置單元,用于等級(jí)相同的節(jié)點(diǎn)設(shè)置在所述流程圖的同一層。
[0027]可選地,所述生成模塊還包括:
[0028]第一確定單元,用于根據(jù)所述邏輯關(guān)系確定所述流程圖的主線路節(jié)點(diǎn);
[0029]對(duì)齊單元,用于將所述主線路節(jié)點(diǎn)設(shè)置在同一列,并對(duì)齊。
[0030]可選地,所述生成模塊還包括:
[0031]第二獲得單元,用于根據(jù)所述識(shí)別結(jié)果,獲得各節(jié)點(diǎn)的類(lèi)型;
[0032]第二確定單元,用于根據(jù)各節(jié)點(diǎn)的類(lèi)型確定各節(jié)點(diǎn)的框圖形狀,并將各節(jié)點(diǎn)的內(nèi)容放置在對(duì)應(yīng)的框圖形狀中。
[0033]可選地,所述流程圖為有向無(wú)環(huán)圖或包括環(huán)的有向圖。
[0034]本發(fā)明通過(guò)獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果;根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系;根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。通過(guò)上述方式,本發(fā)明對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別,然后根據(jù)識(shí)別結(jié)果獲得各節(jié)點(diǎn)之間的邏輯關(guān)系,從而確定各節(jié)點(diǎn)之間的拓?fù)浣Y(jié)構(gòu),進(jìn)而生成流程圖。本發(fā)明能夠快速有效地實(shí)現(xiàn)流程圖的生成,保證業(yè)務(wù)邏輯清晰,避免出錯(cuò),能夠滿足大數(shù)據(jù)工業(yè)應(yīng)用中工具的實(shí)際需要。
【附圖說(shuō)明】
[0035]圖1為本發(fā)明流程圖的生成方法第一實(shí)施例的流程示意圖;
[0036]圖2為本發(fā)明實(shí)施例中根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的一種細(xì)化流程示意圖;
[0037]圖3為本發(fā)明實(shí)施例中根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的另一種細(xì)化流程示意圖;
[0038]圖4為本發(fā)明流程圖的生成裝置第一實(shí)施例的功能模塊示意圖;
[0039]圖5為本發(fā)明實(shí)施例中生成模塊的一種細(xì)化功能模塊示意圖;
[0040]圖6為本發(fā)明實(shí)施例中生成模塊的另一種細(xì)化功能模塊示意圖。
[0041 ]本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說(shuō)明。
【具體實(shí)施方式】
[0042]應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。[0043 ]本發(fā)明提供一種流程圖的生成方法。
[0044]參照?qǐng)D1,圖1為本發(fā)明流程圖的生成方法第一實(shí)施例的流程示意圖。
[0045]在本實(shí)施例中,該流程圖的生成方法包括:
[0046]步驟SlO,獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果;
[0047]本發(fā)明中節(jié)點(diǎn)可以包括部門(mén)、處理步驟等中的至少一種,為使得本發(fā)明能夠正常實(shí)施,本發(fā)明還需事先設(shè)置識(shí)別規(guī)則,比如某個(gè)節(jié)點(diǎn)為生產(chǎn)部門(mén)處理的步驟:切割、加工等,根據(jù)步驟的內(nèi)容這可以識(shí)別該節(jié)點(diǎn)屬于生產(chǎn)部門(mén),且需根據(jù)計(jì)劃部門(mén)或銷(xiāo)售部門(mén)的相應(yīng)指令進(jìn)行;或者某個(gè)節(jié)點(diǎn)所執(zhí)行的步驟必須邏輯于其他節(jié)點(diǎn)所執(zhí)行的步驟所獲得的結(jié)果,因此可以根據(jù)識(shí)別出的內(nèi)容確定先后關(guān)系。
[0048]在需要生成流程圖時(shí),用戶可以通過(guò)輸入菜單將需生成流程圖的各個(gè)節(jié)點(diǎn)信息輸入本發(fā)明中,或者通過(guò)文件導(dǎo)入至本發(fā)明,從而獲得各節(jié)點(diǎn)的內(nèi)容。在獲得各節(jié)點(diǎn)的內(nèi)容后,對(duì)各節(jié)點(diǎn)的內(nèi)容按照預(yù)先設(shè)置的識(shí)別規(guī)則進(jìn)行識(shí)別,獲得對(duì)應(yīng)的識(shí)別結(jié)果。
[0049]步驟S20,根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系;
[0050]步驟S30,根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。
[0051]根據(jù)步驟SlO獲得的識(shí)別結(jié)果確定各節(jié)點(diǎn)之間的邏輯關(guān)系,比如節(jié)點(diǎn)A必須邏輯B執(zhí)行,則節(jié)點(diǎn)A和B的邏輯關(guān)系可以表示為B—A,然后根據(jù)各個(gè)節(jié)點(diǎn)的邏輯關(guān)系確定各個(gè)節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),拓?fù)浣Y(jié)構(gòu)能夠表示所有節(jié)點(diǎn)的邏輯關(guān)系,然后根據(jù)拓?fù)浣Y(jié)構(gòu)生成流程圖,具體地,可以根據(jù)用戶習(xí)慣從左到右或者從上至下等進(jìn)行排序。流程圖可以為有向無(wú)環(huán)圖或包括環(huán)的有向圖。
[0052]本發(fā)明通過(guò)獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果;根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系;根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。通過(guò)上述方式,本發(fā)明對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別,然后根據(jù)識(shí)別結(jié)果獲得各節(jié)點(diǎn)之間的邏輯關(guān)系,從而確定各節(jié)點(diǎn)之間的拓?fù)浣Y(jié)構(gòu),進(jìn)而生成流程圖。本發(fā)明能夠快速有效地實(shí)現(xiàn)流程圖的生成,保證業(yè)務(wù)邏輯清晰,避免出錯(cuò),能夠滿足大數(shù)據(jù)工業(yè)應(yīng)用中工具的實(shí)際需要。
[0053]參照?qǐng)D2,圖2為本發(fā)明實(shí)施例中根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的一種細(xì)化流程示意圖。
[0054]基于本發(fā)明流程圖的生成方法第一實(shí)施例,步驟S30可以包括:
[0055]步驟S31,根據(jù)所述拓?fù)浣Y(jié)構(gòu)獲得所述流程圖的開(kāi)始節(jié)點(diǎn),并獲得所述開(kāi)始節(jié)點(diǎn)的等級(jí),其中所述開(kāi)始節(jié)點(diǎn)的等級(jí)為第一預(yù)設(shè)值;
[0056]本實(shí)施例中在獲得的各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),確定流程圖中的開(kāi)始節(jié)點(diǎn),具體地,在有向無(wú)環(huán)圖中,直接可以根據(jù)拓?fù)浣Y(jié)構(gòu)查找到兩個(gè)端的節(jié)點(diǎn),即查找到開(kāi)始和結(jié)束的節(jié)點(diǎn),然后根據(jù)通過(guò)邏輯關(guān)系確定的流向,進(jìn)而確定開(kāi)始節(jié)點(diǎn)。在確定開(kāi)始節(jié)點(diǎn)時(shí)獲得對(duì)應(yīng)的等級(jí),其中開(kāi)始節(jié)點(diǎn)的等級(jí)為第一預(yù)設(shè)值,比如開(kāi)始節(jié)點(diǎn)的等級(jí)為I。
[0057]在有環(huán)的流程圖中,即在包括環(huán)的有向流程圖中,有些環(huán)形的邏輯關(guān)系可以直接根據(jù)邏輯關(guān)系確定開(kāi)始節(jié)點(diǎn),或者可以通過(guò)識(shí)別節(jié)點(diǎn)中是否存在返回、重新等內(nèi)容,從而確定開(kāi)始節(jié)點(diǎn)的位置,比如確定返回的節(jié)點(diǎn)則為開(kāi)始節(jié)點(diǎn)。當(dāng)然如果返回的節(jié)點(diǎn)之前還有其他的節(jié)點(diǎn)進(jìn)行處理,則根據(jù)邏輯關(guān)系進(jìn)行確定開(kāi)始節(jié)點(diǎn)。
[0058]另外還設(shè)置其他節(jié)點(diǎn)的等級(jí)的計(jì)算規(guī)則,其他節(jié)點(diǎn)的等級(jí)等于所述第一預(yù)設(shè)值,與所述開(kāi)始節(jié)點(diǎn)相隔最多的節(jié)點(diǎn)數(shù)和預(yù)設(shè)的第二預(yù)設(shè)值之和。
[0059]步驟S32,根據(jù)所述開(kāi)始節(jié)點(diǎn)計(jì)算其他節(jié)點(diǎn)的等級(jí);
[0060]在獲得開(kāi)始節(jié)點(diǎn)的等級(jí)后,根據(jù)預(yù)先設(shè)置的計(jì)算規(guī)則,計(jì)算獲得其他節(jié)點(diǎn)的等級(jí),本實(shí)施例中第二預(yù)設(shè)值也為I,也就是說(shuō)其他節(jié)點(diǎn)的等級(jí)=1+與所述開(kāi)始節(jié)點(diǎn)相隔最多的節(jié)點(diǎn)數(shù)+1。比如邏輯關(guān)系為B節(jié)點(diǎn)需在A節(jié)點(diǎn)之后,S卩A—B,C根據(jù)A和B節(jié)點(diǎn)處理結(jié)果進(jìn)行對(duì)應(yīng)的處理,則C與A之間相隔最大的節(jié)點(diǎn)數(shù)為I,C的等級(jí)為3。具體實(shí)施中如果設(shè)置的第一預(yù)設(shè)值和第二預(yù)設(shè)值不同則計(jì)算結(jié)果會(huì)不同。在更多的實(shí)施中還可以設(shè)置其他的計(jì)算規(guī)則,比如將上述計(jì)算規(guī)則乘以10倍。
[0061]步驟S33,等級(jí)相同的節(jié)點(diǎn)設(shè)置在所述流程圖的同一層。
[0062]根據(jù)計(jì)算獲得所有節(jié)點(diǎn)的等級(jí)之后,為優(yōu)化流程圖,使得流程圖更加美觀、清晰,本實(shí)施例中將等級(jí)相同的節(jié)點(diǎn)設(shè)置在流程圖的同一層。減少人工繪圖時(shí),由于邏輯關(guān)系較多,從而在流程圖中存在的交叉點(diǎn)較多的現(xiàn)象。
[0063]步驟S34,根據(jù)所述邏輯關(guān)系確定所述流程圖的主線節(jié)點(diǎn);
[0064]本實(shí)施例中本步驟位于步驟S33之后執(zhí)行,具體實(shí)施中可以與步驟S31之后執(zhí)行。根據(jù)獲得各個(gè)節(jié)點(diǎn)的邏輯關(guān)系,確定流程圖的主線流程,一般主線流程的節(jié)點(diǎn)比較多,即從開(kāi)始到結(jié)束的節(jié)點(diǎn)數(shù)最多,且不包括分支節(jié)點(diǎn)。在無(wú)法確定主線流程的流程圖中,則任一選擇一流程作為主線流程,其對(duì)應(yīng)的節(jié)點(diǎn)則為主線節(jié)點(diǎn)。
[0065]步驟S35,將所述主線節(jié)點(diǎn)設(shè)置在同一列,并對(duì)齊。
[0066]將通過(guò)步驟S34確定的主線節(jié)點(diǎn)設(shè)置在同一列中,并且對(duì)齊,本實(shí)施例中將各個(gè)節(jié)點(diǎn)的左側(cè)對(duì)齊,具體實(shí)施中還可以將各個(gè)節(jié)點(diǎn)的中間進(jìn)行對(duì)齊。在其他的實(shí)施例中還可以將各個(gè)節(jié)點(diǎn)的寬度設(shè)置為同一寬度,然后將各個(gè)節(jié)點(diǎn)的左側(cè)對(duì)齊。從而使得流程圖更加整潔、美觀。
[0067]需要特別說(shuō)明的是本實(shí)施例中的層和列可以互換,即可以改變流程圖的布局方向。
[0068]參照?qǐng)D3,圖3為本發(fā)明實(shí)施例中根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的另一種細(xì)化流程示意圖。
[0069]基于本發(fā)明流程圖的生成方法第一實(shí)施例,所述方法還可以包括:
[0070]步驟S36,根據(jù)所述識(shí)別結(jié)果,獲得各節(jié)點(diǎn)的類(lèi)型;
[0071]只有文字的流程圖中如果各節(jié)點(diǎn)的間距比較小,則會(huì)使得用戶看起來(lái)不是很方便,兩個(gè)節(jié)點(diǎn)的內(nèi)容,由于距離小則可能被認(rèn)為是一個(gè)節(jié)點(diǎn)的內(nèi)容,本實(shí)施例中為使得流程圖更加美觀、整潔,本實(shí)施例中根據(jù)識(shí)別結(jié)果,獲得各個(gè)節(jié)點(diǎn)的類(lèi)型,比如節(jié)點(diǎn)的類(lèi)型為部門(mén)名稱(chēng)、判斷等。
[0072]步驟S37,根據(jù)各節(jié)點(diǎn)的類(lèi)型確定各節(jié)點(diǎn)的框圖形狀,并將各節(jié)點(diǎn)的內(nèi)容放置在對(duì)應(yīng)的框圖形狀中。
[0073]預(yù)先不同的類(lèi)型的節(jié)點(diǎn)設(shè)置對(duì)應(yīng)的形狀,比如表示判斷的節(jié)點(diǎn),對(duì)應(yīng)的框圖形狀為菱形,其他類(lèi)型的形狀為矩形等。根據(jù)確定的各個(gè)節(jié)點(diǎn)的類(lèi)型確定各個(gè)節(jié)點(diǎn)的框圖形狀,然后將各節(jié)點(diǎn)的內(nèi)容放置在對(duì)應(yīng)的形狀中,即將各節(jié)點(diǎn)的內(nèi)容框起來(lái),從而使得流程圖更加美觀、整潔,方便用戶查看。
[0074]需特別說(shuō)明的是,本實(shí)施例中步驟可以與上述的其他步驟的順序可以改變,比如可以先確定節(jié)點(diǎn)的框圖的形狀,然后進(jìn)行對(duì)齊。
[0075]本發(fā)明進(jìn)一步提供一種流程圖的生成裝置。
[0076]參照?qǐng)D4,圖4為本發(fā)明流程圖的生成裝置第一實(shí)施例的功能模塊示意圖。
[0077]在本實(shí)施例中,該流程圖的生成裝置包括:
[0078]識(shí)別模塊10,用于獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果;
[0079]本發(fā)明中節(jié)點(diǎn)可以包括部門(mén)、處理步驟等中的至少一種,為使得本發(fā)明能夠正常實(shí)施,本發(fā)明還需事先設(shè)置識(shí)別規(guī)則,比如某個(gè)節(jié)點(diǎn)為生產(chǎn)部門(mén)處理的步驟:切割、加工等,根據(jù)步驟的內(nèi)容這可以識(shí)別該節(jié)點(diǎn)屬于生產(chǎn)部門(mén),且需根據(jù)計(jì)劃部門(mén)或銷(xiāo)售部門(mén)的相應(yīng)指令進(jìn)行;或者某個(gè)節(jié)點(diǎn)所執(zhí)行的步驟必須邏輯于其他節(jié)點(diǎn)所執(zhí)行的步驟所獲得的結(jié)果,因此可以根據(jù)識(shí)別出的內(nèi)容確定先后關(guān)系。
[0080]在需要生成流程圖時(shí),用戶可以通過(guò)輸入菜單將需生成流程圖的各個(gè)節(jié)點(diǎn)信息輸入本發(fā)明中,或者通過(guò)文件導(dǎo)入至本發(fā)明,從而獲得各節(jié)點(diǎn)的內(nèi)容。在獲得各節(jié)點(diǎn)的內(nèi)容后,對(duì)各節(jié)點(diǎn)的內(nèi)容按照預(yù)先設(shè)置的識(shí)別規(guī)則進(jìn)行識(shí)別,獲得對(duì)應(yīng)的識(shí)別結(jié)果。
[0081 ]獲得模塊20,用于根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系;
[0082]生成模塊30,用于根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。
[0083]根據(jù)步驟SlO獲得的識(shí)別結(jié)果確定各節(jié)點(diǎn)之間的邏輯關(guān)系,比如節(jié)點(diǎn)A必須邏輯B執(zhí)行,則節(jié)點(diǎn)A和B的邏輯關(guān)系可以表示為B—A,然后根據(jù)各個(gè)節(jié)點(diǎn)的邏輯關(guān)系確定各個(gè)節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),拓?fù)浣Y(jié)構(gòu)能夠表示所有節(jié)點(diǎn)的邏輯關(guān)系,然后根據(jù)拓?fù)浣Y(jié)構(gòu)生成流程圖,具體地,可以根據(jù)用戶習(xí)慣從左到右或者從上至下等進(jìn)行排序。流程圖可以為有向無(wú)環(huán)圖或包括環(huán)的有向圖。
[0084]本發(fā)明通過(guò)獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果;根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系;根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。通過(guò)上述方式,本發(fā)明對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別,然后根據(jù)識(shí)別結(jié)果獲得各節(jié)點(diǎn)之間的邏輯關(guān)系,從而確定各節(jié)點(diǎn)之間的拓?fù)浣Y(jié)構(gòu),進(jìn)而生成流程圖。本發(fā)明能夠快速有效地實(shí)現(xiàn)流程圖的生成,保證業(yè)務(wù)邏輯清晰,避免出錯(cuò),能夠滿足大數(shù)據(jù)工業(yè)應(yīng)用中工具的實(shí)際需要。
[0085]參閱圖5,圖5為本發(fā)明實(shí)施例中生成模塊的一種細(xì)化功能模塊示意圖
[0086]基于本發(fā)明流程圖的生成裝置第一實(shí)施例,生成模塊30可以包括:
[0087]第一獲得單元31,用于根據(jù)所述拓?fù)浣Y(jié)構(gòu)確定所述流程圖的開(kāi)始節(jié)點(diǎn),并獲得所述開(kāi)始節(jié)點(diǎn)的等級(jí),其中所述開(kāi)始節(jié)點(diǎn)的等級(jí)為第一預(yù)設(shè)值;
[0088]本實(shí)施例中在獲得的各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),確定流程圖中的開(kāi)始節(jié)點(diǎn),具體地,在有向無(wú)環(huán)圖中,直接可以根據(jù)拓?fù)浣Y(jié)構(gòu)查找到兩個(gè)端的節(jié)點(diǎn),即查找到開(kāi)始和結(jié)束的節(jié)點(diǎn),然后根據(jù)通過(guò)邏輯關(guān)系確定的流向,進(jìn)而確定開(kāi)始節(jié)點(diǎn)。在確定開(kāi)始節(jié)點(diǎn)時(shí)獲得對(duì)應(yīng)的等級(jí),其中開(kāi)始節(jié)點(diǎn)的等級(jí)為第一預(yù)設(shè)值,比如開(kāi)始節(jié)點(diǎn)的等級(jí)為I。
[0089]在有環(huán)的流程圖中,即在包括環(huán)的有向流程圖中,有些環(huán)形的邏輯關(guān)系可以直接根據(jù)邏輯關(guān)系確定開(kāi)始節(jié)點(diǎn),或者可以通過(guò)識(shí)別節(jié)點(diǎn)中是否存在返回、重新等內(nèi)容,從而確定開(kāi)始節(jié)點(diǎn)的位置,比如確定返回的節(jié)點(diǎn)則為開(kāi)始節(jié)點(diǎn)。當(dāng)然如果返回的節(jié)點(diǎn)之前還有其他的節(jié)點(diǎn)進(jìn)行處理,則根據(jù)邏輯關(guān)系進(jìn)行確定開(kāi)始節(jié)點(diǎn)。
[0090]另外還設(shè)置其他節(jié)點(diǎn)的等級(jí)的計(jì)算規(guī)則,其他節(jié)點(diǎn)的等級(jí)等于所述第一預(yù)設(shè)值,與所述開(kāi)始節(jié)點(diǎn)相隔最多的節(jié)點(diǎn)數(shù)和預(yù)設(shè)的第二預(yù)設(shè)值之和。
[0091]計(jì)算單元32,用于根據(jù)所述開(kāi)始節(jié)點(diǎn)計(jì)算其他節(jié)點(diǎn)的等級(jí);
[0092]在獲得開(kāi)始節(jié)點(diǎn)的等級(jí)后,根據(jù)預(yù)先設(shè)置的計(jì)算規(guī)則,計(jì)算獲得其他節(jié)點(diǎn)的等級(jí),本實(shí)施例中第二預(yù)設(shè)值也為I,也就是說(shuō)其他節(jié)點(diǎn)的等級(jí)=1+與所述開(kāi)始節(jié)點(diǎn)相隔最多的節(jié)點(diǎn)數(shù)+1。比如邏輯關(guān)系為B節(jié)點(diǎn)需在A節(jié)點(diǎn)之后,S卩A—B,C根據(jù)A和B節(jié)點(diǎn)處理結(jié)果進(jìn)行對(duì)應(yīng)的處理,則C與A之間相隔最大的節(jié)點(diǎn)數(shù)為I,C的等級(jí)為3。具體實(shí)施中如果設(shè)置的第一預(yù)設(shè)值和第二預(yù)設(shè)值不同則計(jì)算結(jié)果會(huì)不同。在更多的實(shí)施中還可以設(shè)置其他的計(jì)算規(guī)則,比如將上述計(jì)算規(guī)則乘以10倍。
[0093]設(shè)置單元33,用于等級(jí)相同的節(jié)點(diǎn)設(shè)置在所述流程圖的同一層。
[0094]根據(jù)計(jì)算獲得所有節(jié)點(diǎn)的等級(jí)之后,為優(yōu)化流程圖,使得流程圖更加美觀、清晰,本實(shí)施例中將等級(jí)相同的節(jié)點(diǎn)設(shè)置在流程圖的同一層。減少人工繪圖時(shí),由于邏輯關(guān)系較多,從而在流程圖中存在的交叉點(diǎn)較多的現(xiàn)象。
[0095]第一確定單元34,用于根據(jù)所述邏輯關(guān)系確定所述流程圖的主線路節(jié)點(diǎn);
[0096]本實(shí)施例中第一確定單元34的處理可以根據(jù)設(shè)置單元33的結(jié)果執(zhí)行,具體實(shí)施中可以在第一獲得單元31之后執(zhí)行。根據(jù)獲得各個(gè)節(jié)點(diǎn)的邏輯關(guān)系,確定流程圖的主線流程,一般主線流程的節(jié)點(diǎn)比較多,即從開(kāi)始到結(jié)束的節(jié)點(diǎn)數(shù)最多,且不包括分支節(jié)點(diǎn)。在無(wú)法確定主線流程的流程圖中,則任一選擇一流程作為主線流程,其對(duì)應(yīng)的節(jié)點(diǎn)則為主線節(jié)點(diǎn)。
[0097]對(duì)齊單元35,用于將所述主線路節(jié)點(diǎn)設(shè)置在同一列,并對(duì)齊。
[0098]將通過(guò)第一確定單元34確定的主線節(jié)點(diǎn)設(shè)置在同一列中,并且對(duì)齊,本實(shí)施例中將各個(gè)節(jié)點(diǎn)的左側(cè)對(duì)齊,具體實(shí)施中還可以將各個(gè)節(jié)點(diǎn)的中間進(jìn)行對(duì)齊。在其他的實(shí)施例中還可以將各個(gè)節(jié)點(diǎn)的寬度設(shè)置為同一寬度,然后將各個(gè)節(jié)點(diǎn)的左側(cè)對(duì)齊。從而使得流程圖更加整潔、美觀。
[0099]需要特別說(shuō)明的是本實(shí)施例中的層和列可以互換,即可以改變流程圖的布局方向。
[0100]參閱圖6,圖6為本發(fā)明實(shí)施例中生成模塊的另一種細(xì)化功能模塊示意圖
[0101]基于本發(fā)明流程圖的生成裝置第一實(shí)施例,生成模塊30還包括:
[0102]第二獲得單元36,用于根據(jù)所述識(shí)別結(jié)果,獲得各節(jié)點(diǎn)的類(lèi)型;
[0103]只有文字的流程圖中如果各節(jié)點(diǎn)的間距比較小,則會(huì)使得用戶看起來(lái)不是很方便,兩個(gè)節(jié)點(diǎn)的內(nèi)容,由于距離小則可能被認(rèn)為是一個(gè)節(jié)點(diǎn)的內(nèi)容,本實(shí)施例中為使得流程圖更加美觀、整潔,本實(shí)施例中根據(jù)識(shí)別結(jié)果,獲得各個(gè)節(jié)點(diǎn)的類(lèi)型,比如節(jié)點(diǎn)的類(lèi)型為部門(mén)名稱(chēng)、判斷等。
[0104]第二確定單元37,用于根據(jù)各節(jié)點(diǎn)的類(lèi)型確定各節(jié)點(diǎn)的框圖形狀,并將各節(jié)點(diǎn)的內(nèi)容放置在對(duì)應(yīng)的框圖形狀中。
[0105]預(yù)先不同的類(lèi)型的節(jié)點(diǎn)設(shè)置對(duì)應(yīng)的形狀,比如表示判斷的節(jié)點(diǎn),對(duì)應(yīng)的框圖形狀為菱形,其他類(lèi)型的形狀為矩形等。根據(jù)確定的各個(gè)節(jié)點(diǎn)的類(lèi)型確定各個(gè)節(jié)點(diǎn)的框圖形狀,然后將各節(jié)點(diǎn)的內(nèi)容放置在對(duì)應(yīng)的形狀中,即將各節(jié)點(diǎn)的內(nèi)容框起來(lái),從而使得流程圖更加美觀、整潔,方便用戶查看。
[0106]需特別說(shuō)明的是,本實(shí)施例中步驟可以與上述的其他步驟的順序可以改變,比如可以先確定節(jié)點(diǎn)的框圖的形狀,然后進(jìn)行對(duì)齊。
[0107]以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專(zhuān)利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專(zhuān)利保護(hù)范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種流程圖的生成方法,其特征在于,所述方法包括以下步驟: 獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果; 根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系; 根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。2.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的節(jié)點(diǎn)包括: 根據(jù)所述拓?fù)浣Y(jié)構(gòu)確定所述流程圖的開(kāi)始節(jié)點(diǎn),并獲得所述開(kāi)始節(jié)點(diǎn)的等級(jí),其中所述開(kāi)始節(jié)點(diǎn)的等級(jí)為第一預(yù)設(shè)值; 根據(jù)所述開(kāi)始節(jié)點(diǎn)計(jì)算其他節(jié)點(diǎn)的等級(jí),其中其他節(jié)點(diǎn)的等級(jí)等于所述第一預(yù)設(shè)值,與所述開(kāi)始節(jié)點(diǎn)相隔最多的節(jié)點(diǎn)數(shù)和預(yù)設(shè)的第二預(yù)設(shè)值之和; 等級(jí)相同的節(jié)點(diǎn)設(shè)置在所述流程圖的同一層。3.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的節(jié)點(diǎn)還包括: 根據(jù)所述邏輯關(guān)系確定所述流程圖的主線節(jié)點(diǎn); 將所述主線節(jié)點(diǎn)設(shè)置在同一列,并對(duì)齊。4.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖的節(jié)點(diǎn)還包括: 根據(jù)所述識(shí)別結(jié)果,獲得各節(jié)點(diǎn)的類(lèi)型; 根據(jù)各節(jié)點(diǎn)的類(lèi)型確定各節(jié)點(diǎn)的框圖形狀,并將各節(jié)點(diǎn)的內(nèi)容放置在對(duì)應(yīng)的框圖形狀中。5.如權(quán)利要求1-4中任一項(xiàng)所述的方法,其特征在于,所述流程圖為有向無(wú)環(huán)圖或包括環(huán)的有向圖。6.一種流程圖的生成裝置,其特征在于,所述裝置包括: 識(shí)別模塊,用于獲取各節(jié)點(diǎn)的內(nèi)容,并對(duì)各節(jié)點(diǎn)的內(nèi)容進(jìn)行識(shí)別獲得識(shí)別結(jié)果; 獲得模塊,用于根據(jù)所述識(shí)別結(jié)果獲得各節(jié)點(diǎn)的邏輯關(guān)系; 生成模塊,用于根據(jù)所述邏輯關(guān)系確定各節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu),并生成流程圖。7.如權(quán)利要求6所述的裝置,其特征在于,所述生成模塊包括: 第一獲得單元,用于根據(jù)所述拓?fù)浣Y(jié)構(gòu)確定所述流程圖的開(kāi)始節(jié)點(diǎn),并獲得所述開(kāi)始節(jié)點(diǎn)的等級(jí),其中所述開(kāi)始節(jié)點(diǎn)的等級(jí)為第一預(yù)設(shè)值; 計(jì)算單元,用于根據(jù)所述開(kāi)始節(jié)點(diǎn)計(jì)算其他節(jié)點(diǎn)的等級(jí),其中其他節(jié)點(diǎn)的等級(jí)等于所述第一預(yù)設(shè)值,與所述開(kāi)始節(jié)點(diǎn)之間的節(jié)點(diǎn)數(shù)和預(yù)設(shè)的第二預(yù)設(shè)值之和; 設(shè)置單元,用于等級(jí)相同的節(jié)點(diǎn)設(shè)置在所述流程圖的同一層。8.如權(quán)利要求6所述的裝置,其特征在于,所述生成模塊還包括: 第一確定單元,用于根據(jù)所述邏輯關(guān)系確定所述流程圖的主線路節(jié)點(diǎn); 對(duì)齊單元,用于將所述主線路節(jié)點(diǎn)設(shè)置在同一列,并對(duì)齊。9.如權(quán)利要求6所述的裝置,其特征在于,所述生成模塊還包括: 第二獲得單元,用于根據(jù)所述識(shí)別結(jié)果,獲得各節(jié)點(diǎn)的類(lèi)型; 第二確定單元,用于根據(jù)各節(jié)點(diǎn)的類(lèi)型確定各節(jié)點(diǎn)的框圖形狀,并將各節(jié)點(diǎn)的內(nèi)容放置在對(duì)應(yīng)的框圖形狀中。10.如權(quán)利要求6-9中任一項(xiàng)所述的裝置,其特征在于,所述流程圖為有向無(wú)環(huán)圖或包括環(huán)的有向圖。
【文檔編號(hào)】G06T11/20GK106056649SQ201610377957
【公開(kāi)日】2016年10月26日
【申請(qǐng)日】2016年5月31日
【發(fā)明人】張銳
【申請(qǐng)人】深圳市永興元科技有限公司