protected override bool beforeUpdateInsertAction() { FrmAttachment workCheckAth = new FrmAttachment(); bool isHave = workCheckAth.RetrieveByAttr(FrmAttachmentAttr.MyPK, this.NodeID + "_FrmWorkCheck"); //不包含审核组件 if (isHave == false) { workCheckAth = new FrmAttachment(); /*如果没有查询到它,就有可能是没有创建.*/ workCheckAth.MyPK = this.NodeID + "_FrmWorkCheck"; workCheckAth.FK_MapData = this.NodeID.ToString(); workCheckAth.NoOfObj = this.NodeID + "_FrmWorkCheck"; workCheckAth.Exts = "*.*"; //存储路径. workCheckAth.SaveTo = "/DataUser/UploadFile/"; workCheckAth.IsNote = false; //不显示note字段. workCheckAth.IsVisable = false; // 让其在form 上不可见. //位置. workCheckAth.X = (float)94.09; workCheckAth.Y = (float)333.18; workCheckAth.W = (float)626.36; workCheckAth.H = (float)150; //多附件. workCheckAth.UploadType = AttachmentUploadType.Multi; workCheckAth.Name = "审核组件"; workCheckAth.SetValByKey("AtPara", "@IsWoEnablePageset=1@IsWoEnablePrint=1@IsWoEnableViewModel=1@IsWoEnableReadonly=0@IsWoEnableSave=1@IsWoEnableWF=1@IsWoEnableProperty=1@IsWoEnableRevise=1@IsWoEnableIntoKeepMarkModel=1@FastKeyIsEnable=0@IsWoEnableViewKeepMark=1@FastKeyGenerRole=@IsWoEnableTemplete=1"); workCheckAth.Insert(); } return(base.beforeUpdateInsertAction()); }
void btn_Click(object sender, EventArgs e) { FrmAttachment ath = new FrmAttachment(); Button btn = sender as Button; if (btn.ID == "Btn_Delete") { ath.MyPK = this.FK_MapData + "_" + this.Ath; ath.Delete(); this.WinClose("删除成功."); return; } ath.MyPK = this.FK_MapData + "_" + this.Ath; if (this.Ath != null) { ath.RetrieveFromDBSources(); } ath = this.Pub1.Copy(ath) as FrmAttachment; ath.FK_MapData = this.FK_MapData; ath.MyPK = this.FK_MapData + "_" + this.Ath; GroupFields gfs1 = new GroupFields(this.FK_MapData); if (gfs1.Count == 1) { GroupField gf = (GroupField)gfs1[0]; ath.GroupID = gf.OID; } else { ath.GroupID = this.Pub1.GetDDLByID("DDL_GroupField").SelectedItemIntVal; } if (this.Ath == null) { ath.UploadType = (AttachmentUploadType)int.Parse(this.UploadType); ath.MyPK = this.FK_MapData + "_" + this.Ath; if (ath.IsExits == true) { this.Alert("附件编号(" + ath.NoOfObj + ")已经存在。"); return; } ath.Insert(); } else { ath.NoOfObj = this.Ath; ath.Update(); } this.WinCloseWithMsg("保存成功"); }
void btn_MapAth_Click(object sender, EventArgs e) { FrmAttachment ath = new FrmAttachment(); ath.MyPK = this.FK_MapDtl + "_AthM"; if (ath.RetrieveFromDBSources() == 0) { ath.FK_MapData = this.FK_MapDtl; ath.NoOfObj = "AthM"; ath.Name = "我的从表附件"; ath.UploadType = AttachmentUploadType.Multi; ath.Insert(); } this.Response.Redirect("Attachment.aspx?DoType=Edit&FK_MapData=" + this.FK_MapDtl + "&UploadType=1&Ath=AthM", true); }
protected void Page_Load(object sender, EventArgs e) { MapData md = new MapData(this.FK_MapData); FrmAttachment athDesc = new FrmAttachment(); int i = athDesc.Retrieve(FrmAttachmentAttr.FK_MapData, this.FK_MapData, FrmAttachmentAttr.NoOfObj, "DocMainAth"); if (i == 0) { /*如果没有数据.*/ /*如果没有查询到它,就有可能是公文多附件被删除了.*/ athDesc.NoOfObj = "DocMainAth"; athDesc.Exts = "doc,docx,xls,xlsx"; athDesc.MyPK = athDesc.FK_MapData + "_" + athDesc.NoOfObj; athDesc.FK_MapData = this.FK_MapData; //存储路径. string path = Server.MapPath("/DataUser/UploadFile/"); path += "\\F" + this.FK_Flow + "MainAth"; athDesc.SaveTo = path; //位置. athDesc.X = (float)94.09; athDesc.Y = (float)140.18; athDesc.W = (float)626.36; athDesc.H = (float)150; //多附件. athDesc.UploadType = AttachmentUploadType.Single; athDesc.Name = "公文正文(系统自动增加)"; athDesc.SetValByKey("AtPara", "@IsWoEnablePageset=1@IsWoEnablePrint=1@IsWoEnableViewModel=1@IsWoEnableReadonly=0@IsWoEnableSave=1@IsWoEnableWF=1@IsWoEnableProperty=1@IsWoEnableRevise=1@IsWoEnableIntoKeepMarkModel=1@FastKeyIsEnable=0@IsWoEnableViewKeepMark=1@FastKeyGenerRole=@IsWoEnableTemplete=1"); athDesc.Insert(); //有可能在其其它的节点上没有这个附件,所以也要循环增加上它. BP.WF.Nodes nds = new Nodes(this.FK_Flow); foreach (Node nd in nds) { athDesc.FK_MapData = "ND" + nd.NodeID; athDesc.MyPK = athDesc.FK_MapData + "_" + athDesc.NoOfObj; if (athDesc.IsExits == true) { continue; } athDesc.Insert(); } //重新查询一次,把默认值加上. athDesc.RetrieveFromDBSources(); } FrmAttachmentDBs athDBs = null; athDBs = new FrmAttachmentDBs(this.FK_MapData, this.WorkID.ToString()); FrmAttachmentDB athDB = null; if (athDBs.Count == 0 && this.IsCC == "1") { /*如果是抄送过来的, 有可能是抄送到的节点不是发送到的节点,导致附件数据没有copy。 * 也就是说,发给b节点,但是抄送到c节点上去了,导致c节点上的人看不到附件数据。*/ CCList cc = new CCList(); int nnn = cc.Retrieve(CCListAttr.FK_Node, this.FK_Node, CCListAttr.WorkID, this.WorkID, CCListAttr.CCTo, WebUser.No); this._fk_node = cc.NDFrom; if (cc.NDFrom != 0) { athDBs.Retrieve(FrmAttachmentDBAttr.FK_MapData, "ND" + cc.NDFrom, FrmAttachmentDBAttr.RefPKVal, this.WorkID.ToString()); string ndFromMapdata = athDesc.MyPK.Replace(athDesc.FK_MapData, "ND" + cc.NDFrom); athDB = athDBs.GetEntityByKey(FrmAttachmentDBAttr.FK_FrmAttachment, ndFromMapdata) as FrmAttachmentDB; //重新设置文件描述。 athDesc.Retrieve(FrmAttachmentAttr.FK_MapData, this.FK_MapData, FrmAttachmentAttr.NoOfObj, "DocMainAth"); } } else { /* 单个文件 */ athDB = athDBs.GetEntityByKey(FrmAttachmentDBAttr.FK_FrmAttachment, athDesc.MyPK) as FrmAttachmentDB; } Label lab = new Label(); lab.ID = "Lab" + athDesc.MyPK; this.Pub1.Add(lab); if (athDB != null) { if (athDB.FileExts == "ceb") { athDB.FileExts = "pdf"; } if (athDesc.IsWoEnableWF) { lab.Text = "<a href=\"javascript:OpenOfiice('" + athDB.FK_FrmAttachment + "','" + this.WorkID + "','" + athDB.MyPK + "','" + this.FK_MapData + "','" + athDesc.NoOfObj + "','" + this.FK_Node + "')\"><img src='" + BP.WF.Glo.CCFlowAppPath + "WF/Img/FileType/" + athDB.FileExts + ".gif' border=0/>" + athDB.FileName + "</a>"; } else { lab.Text = "<img src='" + BP.WF.Glo.CCFlowAppPath + "WF/Img/FileType/" + athDB.FileExts + ".gif' border=0/>" + athDB.FileName; } } #region 处理权限问题. // 处理权限问题, 有可能当前节点是可以上传或者删除,但是当前节点上不能让此人执行工作。 bool isDel = athDesc.IsDeleteInt == 0 ? false : true; bool isUpdate = athDesc.IsUpload; if (isDel == true || isUpdate == true) { if (this.WorkID != 0 && string.IsNullOrEmpty(this.FK_Flow) == false) { isDel = BP.WF.Dev2Interface.Flow_IsCanDoCurrentWork(this.FK_Flow, this.FK_Node, this.WorkID, WebUser.No); if (isDel == false) { isUpdate = false; } } } #endregion 处理权限问题. Button mybtn = new Button(); mybtn.CssClass = "Btn"; if (athDesc.IsUpload && isUpdate == true) { FileUpload fu = new FileUpload(); fu.ID = athDesc.MyPK; Btn_Upload.ID = "Btn_Upload_" + athDesc.MyPK + "_" + this.WorkID; fu.Attributes["Width"] = athDesc.W.ToString(); fu.Attributes["onchange"] = "UploadChange('" + mybtn.ID + "');"; this.Pub1.Add(fu); } if (athDesc.IsDownload) { mybtn = new Button(); mybtn.Text = "下载"; mybtn.CssClass = "Btn"; mybtn.ID = "Btn_Download_" + athDesc.MyPK + "_" + this.WorkID; mybtn.Click += new EventHandler(btnUpload_Click); mybtn.CssClass = "bg"; if (athDB == null) { mybtn.Visible = false; } else { mybtn.Visible = true; } this.Pub1.Add(mybtn); } if (this.IsReadonly == false) { if (athDesc.IsDeleteInt != 0 && isDel == true) { bool isDeleteBtn = true; if (athDesc.IsDeleteInt == 2) { if (!athDB.Rec.Equals(WebUser.No)) { isDeleteBtn = false; } } if (isDeleteBtn) { mybtn = new Button(); mybtn.CssClass = "Btn"; mybtn.Text = "删除"; mybtn.Attributes["onclick"] = " return confirm('您确定要执行删除吗?');"; mybtn.ID = "Btn_Delete_" + athDesc.MyPK + "_" + this.WorkID; mybtn.Click += new EventHandler(btnUpload_Click); mybtn.CssClass = "bg"; if (athDB == null) { mybtn.Visible = false; } else { mybtn.Visible = true; } this.Pub1.Add(mybtn); } } if (athDesc.IsWoEnableWF) { mybtn = new Button(); mybtn.CssClass = "Btn"; mybtn.Text = "打开"; mybtn.ID = "Btn_Open_" + athDesc.MyPK + "_" + this.WorkID; mybtn.Click += new EventHandler(btnUpload_Click); mybtn.CssClass = "bg"; if (athDB == null) { mybtn.Visible = false; } else { mybtn.Visible = true; } this.Pub1.Add(mybtn); } } }
void btn_Click(object sender, EventArgs e) { FrmAttachment ath = new FrmAttachment(); if (this.FK_Node == 0) { ath.MyPK = this.FK_MapData + "_" + this.Ath; } else { ath.MyPK = this.FK_MapData + "_" + this.Ath + "_" + this.FK_Node; } ath.RetrieveFromDBSources(); Button btn = sender as Button; if (btn.ID == "Btn_Delete") { //ath.MyPK = this.FK_MapData + "_" + this.Ath; ath.Delete(); this.WinClose("删除成功."); return; } ath.MyPK = this.FK_MapData + "_" + this.Ath; if (this.Ath != null) { ath.RetrieveFromDBSources(); } ath = this.Pub1.Copy(ath) as FrmAttachment; ath.FK_MapData = this.FK_MapData; ath.FK_Node = this.FK_Node; if (string.IsNullOrEmpty(this.Ath) == false) { ath.NoOfObj = this.Ath; } if (this.FK_Node == 0) { ath.MyPK = this.FK_MapData + "_" + ath.NoOfObj; } else { ath.MyPK = this.FK_MapData + "_" + ath.NoOfObj + "_" + this.FK_Node; } GroupFields gfs1 = new GroupFields(this.FK_MapData); if (gfs1.Count == 1) { GroupField gf = (GroupField)gfs1[0]; ath.GroupID = gf.OID; } else { ath.GroupID = this.Pub1.GetDDLByID("DDL_GroupField").SelectedItemIntVal; } //对流程的特殊判断. 20160513 加载页面时添加了判断,此处没有添加,导致保存报错。 zqp if (ath.IsNodeSheet == true) { ath.HisCtrlWay = (AthCtrlWay)this.Pub1.GetDDLByID("DDL_CtrlWay").SelectedItemIntVal; ath.AthUploadWay = (AthUploadWay)this.Pub1.GetDDLByID("DDL_AthUploadWay").SelectedItemIntVal; ath.FileShowWay = (FileShowWay)this.Pub1.GetDDLByID("DDL_FileShowWay").SelectedItemIntVal; //文件展现方式. ath.UploadCtrl = this.Pub1.GetDDLByID("DDL_UploadCtrl").SelectedItemIntVal; //使用的附件上传工具. ath.SaveWay = this.Pub1.GetDDLByID("DDL_" + FrmAttachmentAttr.SaveWay).SelectedItemIntVal; //保存方式. ath.IsHeLiuHuiZong = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsHeLiuHuiZong).Checked; //是否是合流节点汇总. ath.IsToHeLiuHZ = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsToHeLiuHZ).Checked; //是否汇总到合流节点.. } //word附件相关. ath.IsWoEnableWF = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableWF).Checked; ath.IsWoEnableSave = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableSave).Checked; ath.IsWoEnableReadonly = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableReadonly).Checked; ath.IsWoEnableRevise = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableRevise).Checked; ath.IsWoEnableViewKeepMark = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableViewKeepMark).Checked; ath.IsWoEnablePrint = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnablePrint).Checked; ath.IsWoEnableSeal = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableSeal).Checked; ath.IsWoEnableOver = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableOver).Checked; ath.IsWoEnableTemplete = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableTemplete).Checked; ath.IsWoEnableCheck = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableCheck).Checked; ath.IsWoEnableInsertFengXian = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableInsertFengXian).Checked; ath.IsWoEnableInsertFlow = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableInsertFlow).Checked; ath.IsWoEnableMarks = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableMarks).Checked; ath.IsWoEnableDown = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsWoEnableDown).Checked; ath.IsVisable = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsVisable).Checked; //是否可见. ath.FastKeyIsEnable = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.FastKeyIsEnable).Checked; ath.FastKeyGenerRole = this.Pub1.GetTBByID("TB_" + FrmAttachmentAttr.FastKeyGenerRole).Text; ath.IsOrder = this.Pub1.GetCBByID("CB_" + FrmAttachmentAttr.IsOrder).Checked; if (ath.FastKeyIsEnable == true) { if (ath.FastKeyGenerRole.Contains("*OID") == false) { throw new Exception("@快捷键生成规则必须包含*OID,否则会导致文件名重复."); } } if (this.Ath == null) { ath.UploadType = (AttachmentUploadType)int.Parse(this.UploadType); if (this.FK_Node == 0) { ath.MyPK = this.FK_MapData + "_" + ath.NoOfObj; } else { ath.MyPK = this.FK_MapData + "_" + ath.NoOfObj + "_" + this.FK_Node; } if (ath.IsExits == true) { this.Alert("附件编号(" + ath.NoOfObj + ")已经存在。"); return; } ath.Insert(); } else { ath.NoOfObj = this.Ath; if (this.FK_Node == 0) { ath.MyPK = this.FK_MapData + "_" + this.Ath; } else { ath.MyPK = this.FK_MapData + "_" + this.Ath + "_" + this.FK_Node; } ath.Update(); } this.WinCloseWithMsg("保存成功"); }
void btn_Click(object sender, EventArgs e) { Button btn = sender as Button; try { switch (this.DoType) { case "New": default: MapDtl dtlN = new MapDtl(); dtlN = (MapDtl)this.Pub1.Copy(dtlN); try { dtlN.GroupField = this.Pub1.GetDDLByID("DDL_GroupField").SelectedItemStringVal; } catch { } if (this.DoType == "New") { if (dtlN.IsExits) { this.Alert("已存在编号:" + dtlN.No); return; } } dtlN.FK_MapData = this.FK_MapData; dtlN.GroupID = 0; dtlN.RowIdx = 0; // 参数属性. dtlN.DtlSaveModel = (DtlSaveModel)this.Pub1.GetDDLByID("DDL_" + MapDtlAttr.DtlSaveModel).SelectedItemIntVal; dtlN.DtlAddRecModel = (DtlAddRecModel)this.Pub1.GetDDLByID("DDL_" + MapDtlAttr.DtlAddRecModel).SelectedItemIntVal; GroupFields gfs1 = new GroupFields(this.FK_MapData); if (gfs1.Count == 1) { GroupField gf = (GroupField)gfs1[0]; dtlN.GroupID = gf.OID; } else { dtlN.GroupID = this.Pub1.GetDDLByID("DDL_GroupID").SelectedItemIntVal; } dtlN.Insert(); if (btn.ID.Contains("AndClose")) { this.WinClose(); return; } this.Response.Redirect("MapDtl.aspx?DoType=Edit&FK_MapDtl=" + dtlN.No + "&FK_MapData=" + this.FK_MapData, true); break; case "Edit": MapDtl dtl = new MapDtl(this.FK_MapDtl); dtl = (MapDtl)this.Pub1.Copy(dtl); //参数保存. dtl.IsEnableLink = this.Pub1.GetCBByID("CB_" + MapDtlAttr.IsEnableLink).Checked; //手动保存,added by liuxc,2016-4-7 dtl.DtlSaveModel = (DtlSaveModel)this.Pub1.GetDDLByID("DDL_" + MapDtlAttr.DtlSaveModel).SelectedItemIntVal; dtl.DtlAddRecModel = (DtlAddRecModel)this.Pub1.GetDDLByID("DDL_" + MapDtlAttr.DtlAddRecModel).SelectedItemIntVal; if (this.FK_Node != 0) { //是否是分流. add 2015-06-30. dtl.IsFLDtl = this.Pub1.GetCBByID("CB_" + MapDtlAttr.IsFLDtl).Checked; //子线程处理字段. if (this.Pub1.GetDDLByID("DDL_" + MapDtlAttr.SubThreadGroupMark).Items.Count > 0) { dtl.SubThreadGroupMark = this.Pub1.GetDDLByID("DDL_" + MapDtlAttr.SubThreadGroupMark).SelectedItemStringVal; } if (this.Pub1.GetDDLByID("DDL_" + MapDtlAttr.SubThreadWorker).Items.Count > 0) { dtl.SubThreadWorker = this.Pub1.GetDDLByID("DDL_" + MapDtlAttr.SubThreadWorker).SelectedItemStringVal; } } dtl.LinkLabel = this.Pub1.GetTBByID("TB_" + MapDtlAttr.LinkLabel).Text; dtl.LinkTarget = this.Pub1.GetTBByID("TB_" + MapDtlAttr.LinkTarget).Text; dtl.LinkUrl = this.Pub1.GetTBByID("TB_" + MapDtlAttr.LinkUrl).Text; //锁定. dtl.IsRowLock = this.Pub1.GetCBByID("CB_" + MapDtlAttr.IsRowLock).Checked; //分组字段。 try { dtl.GroupField = this.Pub1.GetDDLByID("DDL_GroupField").SelectedItemStringVal; } catch { } if (this.DoType == "New") { if (dtl.IsExits) { this.Alert("已存在编号:" + dtl.No); return; } } dtl.FK_MapData = this.FK_MapData; GroupFields gfs = new GroupFields(dtl.FK_MapData); if (gfs.Count > 1) { dtl.GroupID = this.Pub1.GetDDLByID("DDL_GroupID").SelectedItemIntVal; } if (dtl.IsEnableAthM) { /*如果启用了多附件.*/ FrmAttachment ath = new FrmAttachment(); ath.MyPK = dtl.No + "_AthMDtl"; ath.FK_MapData = dtl.No; ath.NoOfObj = "AthMDtl"; ath.Name = "从表行记录附件"; if (ath.RetrieveFromDBSources() == 0) { ath.Insert(); } } if (this.DoType == "New") { dtl.Insert(); } else { dtl.Update(); } if (btn.ID.Contains("AndC")) { this.WinClose(); return; } this.Response.Redirect("MapDtl.aspx?DoType=Edit&FK_MapDtl=" + dtl.No + "&FK_MapData=" + this.FK_MapData, true); break; } } catch (Exception ex) { this.Alert(ex.Message); } }
public string DoType(string dotype, string v1, string v2, string v3, string v4, string v5) { string sql = ""; try { switch (dotype) { case "CreateCheckGroup": string gKey = v1; string gName = v2; string enName1 = v3; MapAttr attrN = new MapAttr(); int i = attrN.Retrieve(MapAttrAttr.FK_MapData, enName1, MapAttrAttr.KeyOfEn, gKey + "_Note"); i += attrN.Retrieve(MapAttrAttr.FK_MapData, enName1, MapAttrAttr.KeyOfEn, gKey + "_Checker"); i += attrN.Retrieve(MapAttrAttr.FK_MapData, enName1, MapAttrAttr.KeyOfEn, gKey + "_RDT"); if (i > 0) { return("前缀已经使用:" + gKey + " , 请确认您是否增加了这个审核分组或者,请您更换其他的前缀。"); } GroupField gf = new GroupField(); gf.Lab = gName; gf.EnName = enName1; gf.Insert(); attrN = new MapAttr(); attrN.FK_MapData = enName1; attrN.KeyOfEn = gKey + "_Note"; attrN.Name = "审核意见"; attrN.MyDataType = DataType.AppString; attrN.UIContralType = UIContralType.TB; attrN.UIIsEnable = true; attrN.UIIsLine = true; attrN.MaxLen = 4000; attrN.GroupID = gf.OID; attrN.UIHeight = 23 * 3; attrN.IDX = 1; attrN.Insert(); attrN = new MapAttr(); attrN.FK_MapData = enName1; attrN.KeyOfEn = gKey + "_Checker"; attrN.Name = "审核人";// "审核人"; attrN.MyDataType = DataType.AppString; attrN.UIContralType = UIContralType.TB; attrN.MaxLen = 50; attrN.MinLen = 0; attrN.UIIsEnable = true; attrN.UIIsLine = false; attrN.DefVal = "@WebUser.Name"; attrN.UIIsEnable = false; attrN.GroupID = gf.OID; attrN.IsSigan = true; attrN.IDX = 2; attrN.Insert(); attrN = new MapAttr(); attrN.FK_MapData = enName1; attrN.KeyOfEn = gKey + "_RDT"; attrN.Name = "审核日期"; // "审核日期"; attrN.MyDataType = DataType.AppDateTime; attrN.UIContralType = UIContralType.TB; attrN.UIIsEnable = true; attrN.UIIsLine = false; attrN.DefVal = "@RDT"; attrN.UIIsEnable = false; attrN.GroupID = gf.OID; attrN.IDX = 3; attrN.Insert(); return(null); case "NewDtl": MapDtl dtlN = new MapDtl(); dtlN.No = v1; if (dtlN.RetrieveFromDBSources() != 0) { return("从表已存在"); } dtlN.Name = v1; dtlN.FK_MapData = v2; dtlN.PTable = v1; dtlN.Insert(); dtlN.IntMapAttrs(); return(null); case "DelM2M": MapM2M m2mDel = new MapM2M(); m2mDel.MyPK = v1; m2mDel.Delete(); //M2M m2mData = new M2M(); //m2mData.Delete(M2MAttr.FK_MapData, v1); return(null); case "NewAthM": // 新建 NewAthM. string fk_mapdataAth = v1; string athName = v2; BP.Sys.FrmAttachment athM = new FrmAttachment(); athM.MyPK = athName; if (athM.IsExits) { return("多选名称:" + athName + ",已经存在。"); } athM.X = float.Parse(v3); athM.Y = float.Parse(v4); athM.Name = "多文件上传"; athM.FK_MapData = fk_mapdataAth; athM.Insert(); return(null); case "NewM2M": string fk_mapdataM2M = v1; string m2mName = v2; MapM2M m2m = new MapM2M(); m2m.FK_MapData = v1; m2m.NoOfObj = v2; if (v3 == "0") { m2m.HisM2MType = M2MType.M2M; m2m.Name = "新建一对多"; } else { m2m.HisM2MType = M2MType.M2MM; m2m.Name = "新建一对多多"; } m2m.X = float.Parse(v4); m2m.Y = float.Parse(v5); m2m.MyPK = m2m.FK_MapData + "_" + m2m.NoOfObj; if (m2m.IsExits) { return("多选名称:" + m2mName + ",已经存在。"); } m2m.Insert(); return(null); case "DelEnum": // 检查这个物理表是否被使用。 sql = "SELECT * FROM Sys_MapAttr WHERE UIBindKey='" + v1 + "'"; DataTable dtEnum = DBAccess.RunSQLReturnTable(sql); string msgDelEnum = ""; foreach (DataRow dr in dtEnum.Rows) { msgDelEnum += "\n 表单编号:" + dr["FK_MapData"] + " , 字段:" + dr["KeyOfEn"] + ", 名称:" + dr["Name"]; } if (msgDelEnum != "") { return("该枚举已经被如下字段所引用,您不能删除它。" + msgDelEnum); } sql = "DELETE FROM Sys_EnumMain WHERE No='" + v1 + "'"; sql += "@DELETE FROM Sys_Enum WHERE EnumKey='" + v1 + "' "; DBAccess.RunSQLs(sql); return(null); case "DelSFTable": /* 删除自定义的物理表. */ // 检查这个物理表是否被使用。 sql = "SELECT * FROM Sys_MapAttr WHERE UIBindKey='" + v1 + "'"; DataTable dt = DBAccess.RunSQLReturnTable(sql); string msgDel = ""; foreach (DataRow dr in dt.Rows) { msgDel += "\n 表单编号:" + dr["FK_MapData"] + " , 字段:" + dr["KeyOfEn"] + ", 名称:" + dr["Name"]; } if (msgDel != "") { return("该数据表已经被如下字段所引用,您不能删除它。" + msgDel); } SFTable sfDel = new SFTable(); sfDel.No = v1; sfDel.DirectDelete(); return(null); case "SaveSFTable": string enName = v2; string chName = v1; if (string.IsNullOrEmpty(v1) || string.IsNullOrEmpty(v2)) { return("视图中的中英文名称不能为空。"); } SFTable sf = new SFTable(); sf.No = enName; sf.Name = chName; sf.No = enName; sf.Name = chName; sf.FK_Val = enName; sf.Save(); if (DBAccess.IsExitsObject(enName) == true) { /*已经存在此对象,检查一下是否有No,Name列。*/ sql = "SELECT No,Name FROM " + enName; try { DBAccess.RunSQLReturnTable(sql); } catch (Exception ex) { return("您指定的表或视图(" + enName + "),不包含No,Name两列,不符合ccflow约定的规则。技术信息:" + ex.Message); } return(null); } else { /*创建这个表,并且插入基础数据。*/ try { // 如果没有该表或者视图,就要创建它。 sql = "CREATE TABLE " + enName + "(No varchar(30) NOT NULL,Name varchar(50) NULL)"; DBAccess.RunSQL(sql); DBAccess.RunSQL("INSERT INTO " + enName + " (No,Name) VALUES('001','Item1')"); DBAccess.RunSQL("INSERT INTO " + enName + " (No,Name) VALUES('002','Item2')"); DBAccess.RunSQL("INSERT INTO " + enName + " (No,Name) VALUES('003','Item3')"); } catch (Exception ex) { sf.DirectDelete(); return("创建物理表期间出现错误,可能是非法的物理表名.技术信息:" + ex.Message); } } return(null); /*创建成功后返回空值*/ case "FrmTempleteExp": //导出表单. MapData mdfrmtem = new MapData(); mdfrmtem.No = v1; if (mdfrmtem.RetrieveFromDBSources() == 0) { if (v1.Contains("ND")) { int nodeId = int.Parse(v1.Replace("ND", "")); Node nd = new Node(nodeId); mdfrmtem.Name = nd.Name; mdfrmtem.PTable = v1; mdfrmtem.EnPK = "OID"; mdfrmtem.Insert(); } } DataSet ds = mdfrmtem.GenerHisDataSet(); string file = System.Web.HttpContext.Current.Request.PhysicalApplicationPath + "\\Temp\\" + v1 + ".xml"; if (System.IO.File.Exists(file)) { System.IO.File.Delete(file); } ds.WriteXml(file); // BP.PubClass.DownloadFile(file, mdfrmtem.Name + ".xml"); //this.DownLoadFile(System.Web.HttpContext.Current, file, mdfrmtem.Name); return(null); case "FrmTempleteImp": //导入表单. DataSet dsImp = new DataSet(); string fileImp = System.Web.HttpContext.Current.Request.PhysicalApplicationPath + "\\Temp\\" + v1 + ".xml"; dsImp.ReadXml(fileImp); //读取文件. MapData.ImpMapData(v1, dsImp, true); return(null); case "NewHidF": string fk_mapdataHid = v1; string key = v2; string name = v3; int dataType = int.Parse(v4); MapAttr mdHid = new MapAttr(); mdHid.MyPK = fk_mapdataHid + "_" + key; mdHid.FK_MapData = fk_mapdataHid; mdHid.KeyOfEn = key; mdHid.Name = name; mdHid.MyDataType = dataType; mdHid.HisEditType = EditType.Edit; mdHid.MaxLen = 100; mdHid.MinLen = 0; mdHid.LGType = FieldTypeS.Normal; mdHid.UIVisible = false; mdHid.UIIsEnable = false; mdHid.Insert(); return(null); case "DelDtl": MapDtl dtl = new MapDtl(v1); dtl.Delete(); return(null); case "DeleteFrm": string delFK_Frm = v1; MapData mdDel = new MapData(delFK_Frm); mdDel.Delete(); sql = "@DELETE FROM Sys_MapData WHERE No='" + delFK_Frm + "'"; sql = "@DELETE FROM WF_FrmNode WHERE FK_Frm='" + delFK_Frm + "'"; DBAccess.RunSQLs(sql); return(null); case "FrmUp": case "FrmDown": FrmNode myfn = new FrmNode(); myfn.Retrieve(FrmNodeAttr.FK_Node, v1, FrmNodeAttr.FK_Frm, v2); if (dotype == "FrmUp") { myfn.DoUp(); } else { myfn.DoDown(); } return(null); case "SaveFlowFrm": // 转化参数意义. string vals = v1; string fk_Node = v2; string fk_flow = v3; bool isPrint = false; if (v5 == "1") { isPrint = true; } bool isReadonly = false; if (v4 == "1") { isReadonly = true; } string msg = this.SaveEn(vals); if (msg.Contains("Error")) { return(msg); } string fk_frm = msg; Frm fm = new Frm(); fm.No = fk_frm; fm.Retrieve(); FrmNode fn = new FrmNode(); if (fn.Retrieve(FrmNodeAttr.FK_Frm, fk_frm, FrmNodeAttr.FK_Node, fk_Node) == 1) { fn.IsEdit = !isReadonly; fn.IsPrint = isPrint; fn.FK_Flow = fk_flow; fn.Update(); BP.DA.DBAccess.RunSQL("UPDATE Sys_MapData SET FK_FrmSort='01',AppType=1 WHERE No='" + fk_frm + "'"); return(fk_frm); } fn.FK_Frm = fk_frm; fn.FK_Flow = fk_flow; fn.FK_Node = int.Parse(fk_Node); fn.IsEdit = !isReadonly; fn.IsPrint = isPrint; fn.Idx = 100; fn.FK_Flow = fk_flow; fn.Insert(); MapData md = new MapData(); md.No = fm.No; if (md.RetrieveFromDBSources() == 0) { md.Name = fm.Name; md.EnPK = "OID"; md.Insert(); } MapAttr attr = new MapAttr(); attr.FK_MapData = md.No; attr.KeyOfEn = "OID"; attr.Name = "WorkID"; attr.MyDataType = BP.DA.DataType.AppInt; attr.UIContralType = UIContralType.TB; attr.LGType = FieldTypeS.Normal; attr.UIVisible = false; attr.UIIsEnable = false; attr.DefVal = "0"; attr.HisEditType = BP.En.EditType.Readonly; attr.Insert(); attr = new MapAttr(); attr.FK_MapData = md.No; attr.KeyOfEn = "FID"; attr.Name = "FID"; attr.MyDataType = BP.DA.DataType.AppInt; attr.UIContralType = UIContralType.TB; attr.LGType = FieldTypeS.Normal; attr.UIVisible = false; attr.UIIsEnable = false; attr.DefVal = "0"; attr.HisEditType = BP.En.EditType.Readonly; attr.Insert(); attr = new MapAttr(); attr.FK_MapData = md.No; attr.KeyOfEn = "RDT"; attr.Name = "记录日期"; attr.MyDataType = BP.DA.DataType.AppDateTime; attr.UIContralType = UIContralType.TB; attr.LGType = FieldTypeS.Normal; attr.UIVisible = false; attr.UIIsEnable = false; attr.DefVal = "@RDT"; attr.HisEditType = BP.En.EditType.Readonly; attr.Insert(); return(fk_frm); default: return("Error:" + dotype + " , 未设置此标记."); } } catch (Exception ex) { return("Error:" + ex.Message); } }