Пример #1
0
        /// <summary>
        /// 保存它
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void btn_SavePageLoadFull_Click(object sender, EventArgs e)
        {
            MapExt me = new MapExt();

            me.MyPK       = this.FK_MapData + "_" + MapExtXmlList.PageLoadFull;
            me.FK_MapData = this.FK_MapData;
            me.ExtType    = MapExtXmlList.PageLoadFull;
            me.RetrieveFromDBSources();

            me.Tag = this.Pub1.GetTextBoxByID("TB_" + MapExtAttr.Tag).Text;
            string  sql  = "";
            MapDtls dtls = new MapDtls(this.FK_MapData);

            foreach (MapDtl dtl in dtls)
            {
                sql += "*" + dtl.No + "=" + this.Pub1.GetTextBoxByID("TB_" + dtl.No).Text;
            }
            me.Tag1 = sql;

            me.MyPK = this.FK_MapData + "_" + MapExtXmlList.PageLoadFull;

            string info = me.Tag1 + me.Tag;

            if (string.IsNullOrEmpty(info))
            {
                me.Delete();
            }
            else
            {
                me.Save();
            }
        }
Пример #2
0
        void btn_SaveAutoFull_Click(object sender, EventArgs e)
        {
            MapExt me = new MapExt();

            //删除指定的数据,避免插入重复.
            me.Delete(MapExtAttr.FK_MapData, this.FK_MapData, MapExtAttr.ExtType, this.ExtType, MapExtAttr.AttrOfOper, this.RefNo);

            me.MyPK = this.MyPK;
            if (me.MyPK.Length > 2)
            {
                me.RetrieveFromDBSources();
            }

            me            = (MapExt)this.Pub1.Copy(me);
            me.ExtType    = this.ExtType;
            me.Doc        = this.Pub1.GetTextBoxByID("TB_Doc").Text;
            me.AttrOfOper = this.RefNo;
            me.FK_MapData = this.FK_MapData;
            me.MyPK       = this.FK_MapData + "_" + me.ExtType + "_" + me.AttrOfOper;
            try
            {
                //DataTable dt = BP.DA.DBAccess.RunSQLReturnTable(me.Doc);
                //if (string.IsNullOrEmpty(me.Tag) == false)
                //{
                //    dt = BP.DA.DBAccess.RunSQLReturnTable(me.Tag);
                //    if (dt.Columns.Contains("Name") == false || dt.Columns.Contains("No") == false)
                //        throw new Exception("在您的sql表达式里,必须有No,Name 还两个列。");
                //}

                //if (this.ExtType == MapExtXmlList.TBFullCtrl)
                //{
                //    if (dt.Columns.Contains("Name") == false || dt.Columns.Contains("No") == false)
                //        throw new Exception("在您的sql表达式里,必须有No,Name 还两个列。");
                //}

                //MapAttrs attrs = new MapAttrs(this.FK_MapData);
                //foreach (DataColumn dc in dt.Columns)
                //{
                //    if (dc.ColumnName.ToLower() == "no" || dc.ColumnName.ToLower() == "name")
                //        continue;

                //    if (attrs.Contains(MapAttrAttr.KeyOfEn, dc.ColumnName) == false)
                //        throw new Exception("@系统没有找到您要匹配的列(" + dc.ColumnName + "),注意:您要指定的列名区分大小写。");
                //}
                me.Save();
            }
            catch (Exception ex)
            {
                this.Pub1.AlertMsg_Warning("SQL错误", ex.Message);
                return;
            }
            this.Response.Redirect("TBFullCtrl.aspx?FK_MapData=" + this.FK_MapData + "&RefNo=" + this.RefNo + "&MyPK=" + this.MyPK + "", true);
        }
Пример #3
0
        void btn_SaveJiLian_Click(object sender, EventArgs e)
        {
            MapExt me = new MapExt();

            me.MyPK = this.MyPK;
            if (me.MyPK.Length > 2)
            {
                me.RetrieveFromDBSources();
            }
            me               = (MapExt)this.Pub1.Copy(me);
            me.ExtType       = this.ExtType;
            me.Doc           = this.Pub1.GetTextBoxByID("TB_Doc").Text;
            me.AttrOfOper    = this.RefNo;
            me.AttrsOfActive = this.Pub1.GetDDLByID("DDL_Attr").SelectedItemStringVal;
            if (me.AttrsOfActive == me.AttrOfOper)
            {
                this.Alert("两个项目不能相同.");
                return;
            }
            try
            {
                if (this.Pub1.GetRadioButtonByID("RB_1").Checked)
                {
                    me.DoWay = 1;
                }
                else
                {
                    me.DoWay = 0;
                }
            }
            catch
            {
                me.DoWay = 0;
            }

            me.FK_MapData = this.FK_MapData;
            try
            {
                me.MyPK = this.FK_MapData + "_" + me.ExtType + "_" + me.AttrOfOper + "_" + me.AttrsOfActive;
                if (me.Doc.Contains("No") == false || me.Doc.Contains("Name") == false)
                {
                    throw new Exception("在您的SQL表达式里,必须有No,Name 还两个列,分别标识编码与名称。");
                }
                me.Save();
            }
            catch (Exception ex)
            {
                this.Alert(ex.Message);
                return;
            }
            this.Response.Redirect("ActiveDDL.aspx?FK_MapData=" + this.FK_MapData + "&ExtType=" + this.ExtType + "&RefNo=" + this.RefNo + "&MyPK=" + me.MyPK, true);
        }
Пример #4
0
        protected void Btn_Save_Click(object sender, EventArgs e)
        {
            MapExt me = new MapExt();

            me.MyPK = this.FK_MapData + "_" + me.ExtType + "_" + me.AttrOfOper;
            me.RetrieveFromDBSources();
            me.ExtType    = this.ExtType;
            me.Doc        = this.TB_SQL.Text;
            me.AttrOfOper = this.RefNo;
            me.FK_MapData = this.FK_MapData;
            me.FK_DBSrc   = this.DDL_DBSrc.SelectedValue;
            me.Save();
        }
Пример #5
0
        protected void Btn_Save_Click(object sender, EventArgs e)
        {
            MapAttr mattrNew = new MapAttr(this.RefNo);

            MapExt me = new MapExt();

            me.MyPK = this.RefNo + "_AutoFull";
            me.RetrieveFromDBSources();
            me.FK_MapData = this.FK_MapData;
            me.AttrOfOper = mattrNew.KeyOfEn;
            me.ExtType    = MapExtXmlList.AutoFull;
            if (this.RB_0.Checked)
            {
                me.Tag           = "0";
                this.TB_Exp.Text = "";
                me.Doc           = "";
            }

            if (this.RB_1.Checked)
            {
                me.Tag = "1";
                me.Doc = this.TB_Exp.Text;

                /*检查字段是否填写正确.*/
                MapAttrs attrsofCheck = new MapAttrs(this.FK_MapData);
                string   docC         = me.Doc;
                foreach (MapAttr attrC in attrsofCheck)
                {
                    if (attrC.IsNum == false)
                    {
                        continue;
                    }
                    docC = docC.Replace("@" + attrC.KeyOfEn, "");
                    docC = docC.Replace("@" + attrC.Name, "");
                }

                if (docC.Contains("@"))
                {
                    this.Alert("您填写的表达公式不正确,导致一些数值类型的字段没有被正确的替换。" + docC);
                    return;
                }
            }
            me.Save();
        }
Пример #6
0
        protected void Btn_Save_Click(object sender, EventArgs e)
        {
            MapExt me = new MapExt();

            me.Retrieve(MapExtAttr.FK_MapData, this.FK_MapData, MapExtAttr.ExtType, this.ExtType, MapExtAttr.AttrOfOper, this.RefNo);
            me.ExtType    = this.ExtType;
            me.Doc        = this.TB_SQL.Text;
            me.AttrOfOper = this.RefNo;
            me.FK_MapData = this.FK_MapData;
            me.MyPK       = this.FK_MapData + "_" + me.ExtType + "_" + me.AttrOfOper;

            switch (this.DDL_DBSrc.Text)
            {
            case "应用系统主数据库(默认)":
                me.FK_DBSrc = "0";
                break;

            case "SQLServer数据库":
                me.FK_DBSrc = "1";
                break;

            case "WebService数据源":
                me.FK_DBSrc = "100";
                break;

            case "Oracle数据库":
                me.FK_DBSrc = "2";
                break;

            case "MySQL数据库":
                me.FK_DBSrc = "3";
                break;

            case "Informix数据库":
                me.FK_DBSrc = "4";
                break;

            default:
                break;
            }

            me.Save();
        }
Пример #7
0
        private void RegularExpression_Save_Tag(string tagID)
        {
            string val = this.GetValFromFrmByKey("TB_Doc_" + tagID);

            if (DataType.IsNullOrEmpty(val))
            {
                return;
            }

            MapExt me = new MapExt();

            me.MyPK       = MapExtXmlList.TBFullCtrl + "_" + this.FK_MapData + "_" + this.KeyOfEn + "_" + tagID;
            me.FK_MapData = this.FK_MapData;
            me.AttrOfOper = this.KeyOfEn;
            me.ExtType    = "RegularExpression";
            me.Tag        = tagID;
            me.Doc        = val;
            me.Tag1       = this.GetValFromFrmByKey("TB_Tag1_" + tagID);
            me.Save();
        }
Пример #8
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <returns></returns>
        public string ActiveDDL_Save()
        {
            MapExt me = new MapExt();

            me.Delete(MapExtAttr.ExtType, MapExtXmlList.ActiveDDL,
                      MapExtAttr.FK_MapData, this.FK_MapData,
                      MapExtAttr.AttrOfOper, this.KeyOfEn);

            me.FK_MapData    = this.FK_MapData;
            me.AttrOfOper    = this.KeyOfEn;
            me.AttrsOfActive = this.GetValFromFrmByKey("DDL_AttrsOfActive");
            me.FK_DBSrc      = this.GetValFromFrmByKey("FK_DBSrc");
            me.Doc           = this.GetValFromFrmByKey("TB_Doc"); //要执行的SQL.
            me.ExtType       = MapExtXmlList.ActiveDDL;

            //执行保存.
            me.MyPK = MapExtXmlList.ActiveDDL + "_" + me.FK_MapData + "_" + me.AttrOfOper + "_" + me.AttrOfOper;
            me.Save();

            return("保存成功.");
        }
Пример #9
0
        /// <summary>
        /// 保存设置.
        /// </summary>
        /// <returns></returns>
        public string PopVal_Save()
        {
            try
            {
                MapExt me = new MapExt();
                me.MyPK       = this.FK_MapExt;
                me.FK_MapData = this.FK_MapData;
                me.ExtType    = "PopVal";
                me.AttrOfOper = this.KeyOfEn;
                me.RetrieveFromDBSources();

                string valWorkModel = this.GetValFromFrmByKey("Model");

                switch (valWorkModel)
                {
                case "None":
                    me.PopValWorkModel = PopValWorkModel.None;
                    break;

                case "SelfUrl":     //URL模式.
                    me.PopValWorkModel = PopValWorkModel.SelfUrl;
                    me.PopValUrl       = this.GetValFromFrmByKey("TB_Url");
                    break;

                case "TableOnly":     //表格模式.
                    me.PopValWorkModel = PopValWorkModel.TableOnly;
                    me.PopValEntitySQL = this.GetValFromFrmByKey("TB_Table_SQL");
                    break;

                case "TablePage":     //分页模式.
                    me.PopValWorkModel         = PopValWorkModel.TablePage;
                    me.PopValTablePageSQL      = this.GetValFromFrmByKey("TB_TablePage_SQL");
                    me.PopValTablePageSQLCount = this.GetValFromFrmByKey("TB_TablePage_SQLCount");
                    break;

                case "Group":     //分组模式.
                    me.PopValWorkModel = PopValWorkModel.Group;

                    me.PopValGroupSQL  = this.GetValFromFrmByKey("TB_GroupModel_Group");
                    me.PopValEntitySQL = this.GetValFromFrmByKey("TB_GroupModel_Entity");

                    //me.PopValUrl = this.GetValFromFrmByKey("TB_Url");
                    break;

                case "Tree":     //单实体树.
                    me.PopValWorkModel    = PopValWorkModel.Tree;
                    me.PopValTreeSQL      = this.GetValFromFrmByKey("TB_TreeSQL");
                    me.PopValTreeParentNo = this.GetValFromFrmByKey("TB_TreeParentNo");
                    break;

                case "TreeDouble":                                                       //双实体树.
                    me.PopValWorkModel    = PopValWorkModel.TreeDouble;
                    me.PopValTreeSQL      = this.GetValFromFrmByKey("TB_DoubleTreeSQL"); // 树SQL
                    me.PopValTreeParentNo = this.GetValFromFrmByKey("TB_DoubleTreeParentNo");

                    me.PopValDoubleTreeEntitySQL = this.GetValFromFrmByKey("TB_DoubleTreeEntitySQL");     //实体SQL
                    break;

                default:
                    break;
                }

                //高级属性.
                me.W = int.Parse(this.GetValFromFrmByKey("TB_Width"));
                me.H = int.Parse(this.GetValFromFrmByKey("TB_Height"));
                me.PopValColNames   = this.GetValFromFrmByKey("TB_ColNames");         //中文列名的对应.
                me.PopValTitle      = this.GetValFromFrmByKey("TB_Title");            //标题.
                me.PopValSearchTip  = this.GetValFromFrmByKey("TB_PopValSearchTip");  //关键字提示.
                me.PopValSearchCond = this.GetValFromFrmByKey("TB_PopValSearchCond"); //查询条件.


                //数据返回格式.
                string popValFormat = this.GetValFromFrmByKey("PopValFormat");
                switch (popValFormat)
                {
                case "OnlyNo":
                    me.PopValFormat = PopValFormat.OnlyNo;
                    break;

                case "OnlyName":
                    me.PopValFormat = PopValFormat.OnlyName;
                    break;

                case "NoName":
                    me.PopValFormat = PopValFormat.NoName;
                    break;

                default:
                    break;
                }

                //选择模式.
                string seleModel = this.GetValFromFrmByKey("PopValSelectModel");
                if (seleModel == "One")
                {
                    me.PopValSelectModel = PopValSelectModel.One;
                }
                else
                {
                    me.PopValSelectModel = PopValSelectModel.More;
                }

                me.Save();
                return("保存成功.");
            }
            catch (Exception ex)
            {
                return("@保存失败:" + ex.Message);
            }
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void btn_Click(object sender, EventArgs e)
        {
            MapAttr mattrNew = new MapAttr(this.RefNo);

            MapExt me = new MapExt();

            me.MyPK = this.RefNo + "_AutoFull";
            me.RetrieveFromDBSources();
            me.FK_MapData = this.FK_MapData;
            me.AttrOfOper = mattrNew.KeyOfEn;
            me.ExtType    = MapExtXmlList.AutoFull;
            if (this.Pub1.GetRadioButtonByID("RB_Way_0").Checked)
            {
                me.Tag = "0";
            }

            // JS 方式。
            if (this.Pub1.GetRadioButtonByID("RB_Way_1").Checked)
            {
                me.Tag = "1";
                me.Doc = this.Pub1.GetTextBoxByID("TB_JS").Text;

                /*检查字段是否填写正确.*/
                MapAttrs attrsofCheck = new MapAttrs(this.FK_MapData);
                string   docC         = me.Doc;
                foreach (MapAttr attrC in attrsofCheck)
                {
                    if (attrC.IsNum == false)
                    {
                        continue;
                    }
                    docC = docC.Replace("@" + attrC.KeyOfEn, "");
                    docC = docC.Replace("@" + attrC.Name, "");
                }

                if (docC.Contains("@"))
                {
                    this.Alert("您填写的表达公式不正确,导致一些数值类型的字段没有被正确的替换。" + docC);
                    return;
                }
            }

            // 外键方式。
            if (this.Pub1.GetRadioButtonByID("RB_Way_2").Checked)
            {
                me.Tag = "2";
                me.Doc = this.Pub1.GetTextBoxByID("TB_SQL").Text;

                //mattr.HisAutoFull = AutoFullWay.Way2_SQL;
                //mattr.AutoFullDoc = this.Pub1.GetTextBoxByID("TB_SQL").Text;
            }

            // 本表单中外键列。
            string doc = "";

            if (this.Pub1.GetRadioButtonByID("RB_Way_3").Checked)
            {
                me.Tag = "3";

                // mattr.HisAutoFull = AutoFullWay.Way3_FK;
                MapData md    = new MapData(this.FK_MapData);
                Attrs   attrs = md.GenerHisMap().HisFKAttrs;
                foreach (Attr attr in attrs)
                {
                    if (attr.IsRefAttr)
                    {
                        continue;
                    }

                    if (this.Pub1.GetRadioButtonByID("RB_FK_" + attr.Key).Checked == false)
                    {
                        continue;
                    }
                    // doc = " SELECT " + this.Pub1.GetDDLByID("DDL_" + attr.Key).SelectedValue + " FROM " + attr.HisFKEn.EnMap.PhysicsTable + " WHERE NO=@" + attr.Key;
                    doc = "@AttrKey=" + attr.Key + "@Field=" + this.Pub1.GetDDLByID("DDL_" + attr.Key).SelectedValue + "@Table=" + attr.HisFKEn.EnMap.PhysicsTable;
                }
                me.Doc = doc;
            }

            // 本表单中从表列。
            if (this.Pub1.GetRadioButtonByID("RB_Way_4").Checked)
            {
                me.Tag = "4";

                MapDtls dtls = new MapDtls(this.FK_MapData);
                //   mattr.HisAutoFull = AutoFullWay.Way4_Dtl;
                foreach (MapDtl dtl in dtls)
                {
                    try
                    {
                        if (this.Pub1.GetRadioButtonByID("RB_" + dtl.No).Checked == false)
                        {
                            continue;
                        }
                    }
                    catch
                    {
                        continue;
                    }
                    //  doc = "SELECT " + this.Pub1.GetDDLByID( "DDL_"+dtl.No + "_Way").SelectedValue + "(" + this.Pub1.GetDDLByID("DDL_"+dtl.No+"_F").SelectedValue + ") FROM " + dtl.No + " WHERE REFOID=@OID";
                    doc = "@Table=" + dtl.No + "@Field=" + this.Pub1.GetDDLByID("DDL_" + dtl.No + "_F").SelectedValue + "@Way=" + this.Pub1.GetDDLByID("DDL_" + dtl.No + "_Way").SelectedValue;
                }
                me.Doc = doc;
            }

            try
            {
                me.Save();
            }
            catch (Exception ex)
            {
                this.ResponseWriteRedMsg(ex);
                return;
            }

            this.Alert("保存成功");
            this.Pub1.Clear();
            //Button btn = sender as Button;
            var btn = sender as LinkBtn;

            if (btn.ID.Contains("Close"))
            {
                this.WinClose();
                return;
            }
            else
            {
                this.Response.Redirect(this.Request.RawUrl, true);
            }
        }