using System.Data; using BP.DA; using BP.En; namespace BP.WF.DTS { /// /// 升级ccflow6 要执行的调度 /// public class GenerSubInc : Method { /// /// 不带有参数的方法 /// public GenerSubInc() { this.Title = "为子公司生成表单树,流程树目录."; this.Help = "实施初始化."; } /// /// 设置执行变量 /// /// public override void Init() { } /// /// 当前的操纵员是否可以执行这个方法 /// public override bool IsCanDo { get { if (BP.Web.WebUser.No.Equals("admin")==true) return true; else return false; } } /// /// 执行 /// /// 返回执行结果 public override object Do() { //找到根目录. string sql = "SELECT No FROM WF_FlowSort where ParentNo='0'"; string rootNo = DBAccess.RunSQLReturnString(sql, null); if (rootNo == null) return "没有找到根目录节点" + sql; //求出分公司集合(组织结构集合) sql = "SELECT No,Name FROM Port_Body where dtype!=3"; DataTable dtInc = DBAccess.RunSQLReturnTable(sql); //把该模版发布到子公司里面去. foreach (DataRow dr in dtInc.Rows) { string incNo = dr["No"].ToString(); string incName = dr["Name"].ToString(); //检查该公司是否创建了树节点, 如果没有就插入一个. BP.WF.Template.FlowSort fs = new BP.WF.Template.FlowSort(); fs.No = incNo; if (fs.RetrieveFromDBSources() == 0) { fs.Name = incName; fs.OrgNo = incNo; fs.ParentNo = rootNo; fs.OrgNo = incNo; fs.Insert(); } } return "执行成功"; } } }