<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    馳騁開源的.net工作流,工作流程管理系統
    馳騁工作流,好用看的見http://ccflow.org. 簡單來自背后的力量.
    posts - 40,comments - 10,trackbacks - 0

    遞歸在算法在工作流程引擎中的應用

    遞歸做為一種算法在程序設計語言中廣泛應用.是指函數/過程/子程序在運行過程中直接或間接調用自身而產生的重入現象.遞歸是計算機科學的一個重要概念,遞歸的方法是程序設計中有效的方法,采用遞歸編寫程序能使程序變得簡潔和清晰.

    遞歸在工作流程引擎中有廣泛的應用,以以下事例來說明:

    應用一:退回到指定的節點,要把當前節電與退回節點之間的節點數據清空。

    /// <summary>

            /// ÌY¨¦¦?y¢??¨²Ì???Ì?ºyY

            /// </summary>

            /// <param name="nds">Ì?ä?Ì?¨²Ì?¡¥?</param>

            publicvoid DeleteToNodesData(Nodes nds)

            {

                /*aº?À¨¦¤¨²Ì?ä?Ì?¨²Ì?¡¥?*/

                foreach (Node nd in nds)

                {

                    Work wk = nd.HisWork;

                    wk.OID = this.WorkID;

                    if (wk.Delete() == 0)

                    {

                        wk.FID = this.WorkID;

                        if (wk.Delete(WorkAttr.FID, this.WorkID) == 0)

                            continue;

                    }

     

                    /*¦Ì¡Â:°?-¦?y?¨²Ì?ºyY¡ê*/

                    DBAccess.RunSQL("DELETE WF_GenerWorkerList WHERE (WorkID=" + this.WorkID + " OR FID=" + this.WorkID + ") AND FK_Node=" + nd.NodeID);

     

                    //¦?yy¡êÌ?¤??ºyY¡ê

                    DBAccess.RunSQL("DELETE WF_GenerWorkFlow WHERE WorkID NOT IN (SELECT WorkID FROM WF_GenerWorkerList )");

                    DBAccess.RunSQL("DELETE WF_GenerFH WHERE FID NOT IN (SELECT FID FROM WF_GenerWorkerList)");

     

                    

                    DeleteToNodesData(nd.HisToNodes);

                }

            }

     

     

     



    應用二:在分合流程過程中,流程結束時,要根據用戶的需要判斷并殺掉沒有完成的進程。

     

    /// <summary>

            /// ¨¢º?¢¡Â¨¬

            /// </summary>

            /// <returns></returns>

            publicstring DoFlowOver()

            {

                // ¡§¢¡é¢¡Â¨¬º?¤y¡ê

                GenerWorkFlow gwf = newGenerWorkFlow(this.WorkID);

                Node nd = newNode(gwf.FK_Node);

                string msg = this.BeforeFlowOver();

     

                //¨¨¨?¨¹Ì?Á¨®¢¡Â¨¬¨¢º?¡ê

                WorkerLists wls = newWorkerLists();

                wls.Retrieve(WorkerListAttr.FID, this.WorkID);

                foreach (WorkerList wl in wls)

                {

                    WorkFlow wf = newWorkFlow(wl.FK_Flow, wl.WorkID);

                    wf.DoFlowOver();

                }

        。。。。。。。。。。。。。。

       }

     

     

     

    應用三:根據當前節點的ID,向上追溯一個分流節點。

    /// <summary>

            /// ?¨?¨¹Ì?¦?°??Ì?¤?¢¡ÂÌ?

            /// </summary>

            privateNode _GetHisPriFLNode(Nodes nds)

            {

                foreach (Node mynd in nds)

                {

                    if (mynd.IsHL)

                        return mynd;

                    else

                        return _GetHisPriFLNode(mynd.HisFromNodes);

                }

                returnnull;

            }

            /// <summary>

            /// ¨¹Ì?¦?°??¤?¢¡Â¨²Ì?

            /// </summary>

            publicNode HisPriFLNode

            {

                get

                {

                    return _GetHisPriFLNode(this.HisFromNodes);

                }

            }

     

     

     


    類別:工作流開發 查看評論

    大量的多個行業的流程設計案例,都以操作錄像演示給您。
    馳騁工作流,好用看的見。
    http://ccflow.org   QQ:hiflow@qq.com
    posted on 2011-05-12 10:02 馳騁工作流,工作流程管理系統. 閱讀(277) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 最近最新的免费中文字幕| 天天影视色香欲综合免费| 国产91久久久久久久免费| 在线a免费观看最新网站| 亚洲成AV人片在线观看无码 | 国产又大又长又粗又硬的免费视频| 亚洲精品国产福利在线观看| 最近免费中文字幕大全免费| 久久精品亚洲一区二区三区浴池| 国产精品99久久免费观看| 国产亚洲成AV人片在线观黄桃| 国产一级片免费看| 午夜影视日本亚洲欧洲精品一区| 久久久久国产精品免费免费不卡| 免费理论片51人人看电影| 精品韩国亚洲av无码不卡区| 亚洲高清偷拍一区二区三区| 成人免费乱码大片A毛片 | 亚洲三级视频在线| 成年人免费网站在线观看| 亚洲另类无码专区丝袜| 免费一级毛片在线播放| 456亚洲人成在线播放网站| 成人午夜性A级毛片免费| 黄页视频在线观看免费| 国产亚洲婷婷香蕉久久精品| 最近中文字幕高清免费中文字幕mv| 亚洲一区中文字幕| 免费大片在线观看网站| 91在线免费观看| 亚洲人成免费电影| 亚洲国产黄在线观看| 久久精品免费观看国产| 久久精品国产亚洲AV忘忧草18| 免费v片在线观看无遮挡| 最近免费中文字幕MV在线视频3| 亚洲免费视频播放| 国产亚洲av片在线观看18女人| 久久青草精品38国产免费| 亚洲综合一区国产精品| 成人无码区免费视频观看|