Exemple #1
0
        private void btDown0_Click(object sender, EventArgs e)
        {
            if (listViewDetail.SelectedItems.Count == 0)
            {
                MessageBox.Show("请选择一行!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            if (listViewDetail.SelectedItems[0].Index == listViewDetail.Items.Count - 1)
            {
                return;
            }

            int          idx  = listViewDetail.SelectedItems[0].Index;
            ListViewItem row  = listViewDetail.SelectedItems[0];
            ListViewItem row2 = listViewDetail.Items[idx + 1];

            listViewDetail.Items.Remove(row2);
            listViewDetail.Items.Insert(idx, row2);
            CViewDetail vd = (CViewDetail)row.Tag;

            vd.Idx++;
            CViewDetail vd2 = (CViewDetail)row2.Tag;

            vd2.Idx--;

            LoadDetailTable();
        }
    bool ValidatePage2()
    {
        bool bHas = false;

        for (int i = 0; i < listMasterColumn.Items.Count; i++)
        {
            if (listMasterColumn.Items[i].Selected)
            {
                bHas = true;
                break;
            }
        }
        if (!bHas)
        {
            RegisterStartupScript("starup", "<script>alert('请选择主表字段!');</script>");
            return(false);
        }
        List <CBaseObject> lstObj = m_View.ViewDetailMgr.GetList();

        foreach (CBaseObject obj in lstObj)
        {
            CViewDetail vd = (CViewDetail)obj;
            if (vd.ColumnInViewDetailMgr.GetList().Count == 0)
            {
                CTable table  = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(vd.FW_Table_id);
                string strMsg = string.Format("请选择从表 {0} 字段!", table.Name);
                RegisterStartupScript("starup", string.Format("<script>alert('{0}');</script>", strMsg));
                return(false);
            }
        }
        return(true);
    }
Exemple #3
0
    void LoadDetailColumn()
    {
        CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.GetFirstObj();

        if (ViewDetail == null)
        {
            return;
        }
        CTable table = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(ViewDetail.FW_Table_id);

        txtDetailTable.Text = table.Name;

        listDetailColumn.Items.Clear();
        List <CBaseObject> lstObj = table.ColumnMgr.GetList();

        foreach (CBaseObject obj in lstObj)
        {
            CColumn  column = (CColumn)obj;
            ListItem it     = new ListItem(column.Name, column.Id.ToString());
            listDetailColumn.Items.Add(it);
            if (ViewDetail.ColumnInViewDetailMgr.FindByColumn(column.Id) != null)
            {
                it.Selected = true;
            }
        }
    }
Exemple #4
0
        void LoadDetailColumn()
        {
            if (cbDetailTable2.SelectedIndex == -1)
            {
                return;
            }
            m_bIsLoadingData = true;//避免触发Item_Checked事件
            DataItem    item       = (DataItem)cbDetailTable2.SelectedItem;
            CTable      table      = (CTable)item.Data;
            CViewDetail ViewDetail = m_View.ViewDetailMgr.FindByTable(table.Id);

            listDetailColumn.Items.Clear();
            List <CBaseObject> lstObj = table.ColumnMgr.GetList();

            foreach (CBaseObject obj in lstObj)
            {
                CColumn      column = (CColumn)obj;
                ListViewItem it     = new ListViewItem();
                it.Text = column.Name;
                it.Tag  = column;
                listDetailColumn.Items.Add(it);
                if (ViewDetail.ColumnInViewDetailMgr.FindByColumn(column.Id) != null)
                {
                    it.Checked = true;
                }
            }
            m_bIsLoadingData = false;
        }
    void PostDetailData()
    {
        string GridData2 = Request["GridData2"];

        if (string.IsNullOrEmpty(GridData2))
        {
            Response.Write("从表字段不能空!");
            return;
        }
        string table_id = Request["table_id"];

        if (string.IsNullOrEmpty(table_id))
        {
            Response.Write("从表不能空!");
            return;
        }

        CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.FindByTable(new Guid(table_id));

        string[] arr1 = GridData2.Split(";".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
        for (int i = 0; i < arr1.Length; i++)
        {
            string[] arr2 = arr1[i].Split(":".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);

            CColumnInViewDetail civd = (CColumnInViewDetail)ViewDetail.ColumnInViewDetailMgr.Find(new Guid(arr2[0]));
            civd.Caption = arr2[1];
            civd.Idx     = i;
            ViewDetail.ColumnInViewDetailMgr.Update(civd);
        }
    }
Exemple #6
0
        void LoadDetailColumn()
        {
            if (cbDetailTable.SelectedIndex == -1)
            {
                return;
            }
            DataItem item = (DataItem)cbDetailTable.SelectedItem;
            CTable   tb   = (CTable)item.Data;

            txtDetailTable.Text = tb.Name;
            CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.GetFirstObj();

            listDetailColumn.Items.Clear();
            List <CBaseObject> lstObj = tb.ColumnMgr.GetList();

            foreach (CBaseObject obj in lstObj)
            {
                CColumn      column = (CColumn)obj;
                ListViewItem it     = new ListViewItem();
                it.Text = column.Name;
                it.Tag  = column;
                listDetailColumn.Items.Add(it);
                if (ViewDetail.ColumnInViewDetailMgr.FindByColumn(column.Id) != null)
                {
                    it.Checked = true;
                }
            }
        }
        void viewGrid_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (View == null)
            {
                return;
            }
            if (viewGrid.dataGridView.CurrentRow == null)
            {
                return;
            }
            CViewDetail vd = (CViewDetail)View.ViewDetailMgr.GetFirstObj();

            viewDetailGrid.ViewDetail = vd;
            CTable table = (CTable)Program.Ctx.TableMgr.Find(vd.FW_Table_id);

            if (table == null)
            {
                return;
            }
            CBaseObject    obj    = (CBaseObject)viewGrid.dataGridView.CurrentRow.Tag;
            CBaseObjectMgr objMgr = Program.Ctx.FindBaseObjectMgrCache(table.Code, obj.Id);

            if (objMgr == null)
            {
                objMgr = obj.GetSubObjectMgr(table.Code, typeof(CBaseObjectMgr));
            }
            if (objMgr == null)
            {
                CColumn colP = (CColumn)obj.Table.ColumnMgr.Find(vd.PrimaryKey);
                if (colP == null)
                {
                    return;
                }
                CColumn colF = (CColumn)table.ColumnMgr.Find(vd.ForeignKey);
                if (colF == null)
                {
                    return;
                }
                object objVal = obj.GetColValue(colP);
                string sVal   = objVal.ToString();
                bool   bIsStr = false;
                if (colP.ColType == ColumnType.string_type ||
                    colP.ColType == ColumnType.text_type ||
                    colP.ColType == ColumnType.ref_type ||
                    colP.ColType == ColumnType.guid_type ||
                    colP.ColType == ColumnType.datetime_type)
                {
                    sVal   = string.Format("'{0}'", sVal);
                    bIsStr = true;
                }

                objMgr          = new CBaseObjectMgr();
                objMgr.Ctx      = Program.Ctx;
                objMgr.TbCode   = table.Code;
                objMgr.m_Parent = obj;
                string sWhere = string.Format(" {0}={1}", colF.Code, bIsStr ? sVal : objVal);
                objMgr.Load(sWhere, false);
            }
            viewDetailGrid.BaseObjectMgr = objMgr;
        }
    void LoadData()
    {
        txtName.Text = m_View.Name;
        //默认表
        for (int i = 0; i < cbMasterTable.Items.Count; i++)
        {
            if (cbMasterTable.Items[i].Value == m_View.FW_Table_id.ToString())
            {
                cbMasterTable.SelectedIndex = i;
                cbMasterTable_SelectedIndexChanged(null, null);
                break;
            }
        }

        listViewDetail.Items.Clear();
        List <CBaseObject> lstObj = m_View.ViewDetailMgr.GetList();

        foreach (CBaseObject obj in lstObj)
        {
            CViewDetail ViewDetail = (CViewDetail)obj;
            CTable      table      = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(ViewDetail.FW_Table_id);
            if (table == null)
            {
                continue;
            }
            ListItem item = new ListItem(table.Name, ViewDetail.Id.ToString());
            listViewDetail.Items.Add(item);
        }
    }
    void LoadDetailColumn()
    {
        if (cbDetailTable.SelectedIndex == -1)
        {
            return;
        }
        CTable      table      = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(new Guid(cbDetailTable.SelectedItem.Value));
        CViewDetail ViewDetail = m_View.ViewDetailMgr.FindByTable(table.Id);

        m_bIsLoadingData = true;
        listDetailColumn.Items.Clear();
        List <CBaseObject> lstObj = table.ColumnMgr.GetList();

        foreach (CBaseObject obj in lstObj)
        {
            CColumn  column = (CColumn)obj;
            ListItem it     = new ListItem(column.Name, column.Id.ToString());
            listDetailColumn.Items.Add(it);
            if (ViewDetail.ColumnInViewDetailMgr.FindByColumn(column.Id) != null)
            {
                it.Selected = true;
            }
        }
        m_bIsLoadingData = false;
    }
    protected void cbForeignKey_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (listViewDetail.SelectedIndex == -1)
        {
            return;
        }
        CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.Find(new Guid(listViewDetail.SelectedItem.Value));

        if (cbPrimaryKey.SelectedIndex == -1)
        {
            ViewDetail.PrimaryKey = Guid.Empty;
        }
        else
        {
            ViewDetail.PrimaryKey = new Guid(cbPrimaryKey.SelectedItem.Value);
        }
        if (cbForeignKey.SelectedIndex == -1)
        {
            ViewDetail.ForeignKey = Guid.Empty;
        }
        else
        {
            ViewDetail.ForeignKey = new Guid(cbForeignKey.SelectedItem.Value);
        }
    }
    protected void listViewDetail_SelectedIndexChanged(object sender, EventArgs e)
    {
        LoadForeignKey();

        if (listViewDetail.SelectedIndex == -1)
        {
            return;
        }
        string      sVdId      = listViewDetail.SelectedItem.Value;
        CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.Find(new Guid(sVdId));

        for (int i = 0; i < cbPrimaryKey.Items.Count; i++)
        {
            if (cbPrimaryKey.Items[i].Value == ViewDetail.PrimaryKey.ToString())
            {
                cbPrimaryKey.SelectedIndex = i;
                break;
            }
        }
        for (int i = 0; i < cbForeignKey.Items.Count; i++)
        {
            if (cbForeignKey.Items[i].Value == ViewDetail.ForeignKey.ToString())
            {
                cbForeignKey.SelectedIndex = i;
                break;
            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["User"] == null)
        {
            Response.End();
        }
        m_User = (CUser)Session["User"];

        string vid = Request["vid"];

        if (string.IsNullOrEmpty(vid))
        {
            Response.End();
        }
        string vdid = Request["vdid"];

        if (string.IsNullOrEmpty(vdid))
        {
            Response.End();
        }
        m_View = (CView)Global.GetCtx(Session["TopCompany"].ToString()).ViewMgr.Find(new Guid(vid));
        if (m_View == null)
        {
            Response.End();
        }
        m_ViewDetail = (CViewDetail)m_View.ViewDetailMgr.Find(new Guid(vdid));
        if (m_ViewDetail == null)
        {
            Response.End();
        }
        m_Table = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(m_ViewDetail.FW_Table_id);

        //检查权限
        if (!CheckAccess())
        {
            Response.End();
        }

        if (Session["EditMultMasterDetailViewRecord"] == null)
        {
            Response.End();
        }

        SortedList <Guid, CBaseObject> arrP = (SortedList <Guid, CBaseObject>)Session["EditMultMasterDetailViewRecord"];
        CBaseObject objP = (CBaseObject)arrP.Values[0];

        m_BaseObjectMgr = objP.GetSubObjectMgr(m_Table.Code, typeof(CBaseObjectMgr));

        if (Request.Params["Action"] == "GetData")
        {
            GetData();
            Response.End();
        }
        else if (Request.Params["Action"] == "Delete")
        {
            Delete();
            Response.End();
        }
    }
Exemple #13
0
        void LoadData()
        {
            if (m_View == null) //新建
            {
                m_bIsNew       = true;
                m_View         = new CView();
                m_View.Ctx     = Program.Ctx;
                m_View.VType   = enumViewType.MultMasterDetail;
                m_View.Creator = Program.User.Id;
                return;
            }
            m_bIsLoadingData = true;

            txtName.Text = m_View.Name;
            //默认表
            for (int i = 0; i < cbMasterTable.Items.Count; i++)
            {
                DataItem item = (DataItem)cbMasterTable.Items[i];
                CTable   tb   = (CTable)item.Data;
                if (tb.Id == m_View.FW_Table_id)
                {
                    cbMasterTable.SelectedIndex = i;
                    cbMasterTable_SelectedIndexChanged(null, null);
                    break;
                }
            }

            List <CBaseObject> lstObj  = m_View.ViewDetailMgr.GetList();
            List <CViewDetail> sortObj = new List <CViewDetail>();

            foreach (CBaseObject obj in lstObj)
            {
                CViewDetail vd = (CViewDetail)obj;
                sortObj.Add(vd);
            }
            sortObj.Sort();

            listViewDetail.Items.Clear();
            foreach (CViewDetail ViewDetail in sortObj)
            {
                ListViewItem it = new ListViewItem();
                it.Text = ViewDetail.Name;
                it.Tag  = ViewDetail;
                listViewDetail.Items.Add(it);

                CTable   table = (CTable)Program.Ctx.TableMgr.Find(ViewDetail.FW_Table_id);
                DataItem itT   = new DataItem(table.Name, table);
                cbDetailTable2.Items.Add(itT);
                DataItem itT2 = new DataItem(table.Name, table);
                cbDetailTable3.Items.Add(itT2);
            }


            LoadGridView();
            LoadGridView4();

            m_bIsLoadingData = false;
        }
        void LoadGridView()
        {
            if (cbTable.SelectedIndex == -1)
            {
                return;
            }
            DataItem item  = (DataItem)cbTable.SelectedItem;
            CTable   table = (CTable)item.Data;

            m_SelTable = table;
            List <CBaseObject> lstObj = table.ColumnMgr.GetList();

            dataGridView.Rows.Clear();
            foreach (CBaseObject obj in lstObj)
            {
                CColumn col = (CColumn)obj;
                if (col.Code.Equals("id", StringComparison.OrdinalIgnoreCase) ||
                    col.Code.Equals("Creator", StringComparison.OrdinalIgnoreCase) ||
                    col.Code.Equals("Created", StringComparison.OrdinalIgnoreCase) ||
                    col.Code.Equals("Updator", StringComparison.OrdinalIgnoreCase) ||
                    col.Code.Equals("Updated", StringComparison.OrdinalIgnoreCase))
                {
                    continue;
                }
                if (table.Id == m_View.FW_Table_id) //主表
                {
                    CColumnDefaultValInView cdviv = m_View.ColumnDefaultValInViewMgr.FindByColumn(col.Id);

                    dataGridView.Rows.Add(1);
                    DataGridViewRow rowNew = dataGridView.Rows[dataGridView.Rows.Count - 1];
                    rowNew.Cells[0].Value    = col.Name;
                    rowNew.Cells[0].ReadOnly = true;
                    if (cdviv != null)
                    {
                        rowNew.Cells[1].Value = cdviv.DefaultVal;
                        rowNew.Cells[2].Value = cdviv.ReadOnly;
                    }
                    rowNew.Tag = col;
                }
                else //从表
                {
                    CViewDetail ViewDetail = m_View.ViewDetailMgr.FindByTable(table.Id);
                    CColumnDefaultValInViewDetail cdvivd = ViewDetail.ColumnDefaultValInViewDetailMgr.FindByColumn(col.Id);

                    dataGridView.Rows.Add(1);
                    DataGridViewRow rowNew = dataGridView.Rows[dataGridView.Rows.Count - 1];
                    rowNew.Cells[0].Value    = col.Name;
                    rowNew.Cells[0].ReadOnly = true;
                    if (cdvivd != null)
                    {
                        rowNew.Cells[1].Value = cdvivd.DefaultVal;
                        rowNew.Cells[2].Value = cdvivd.ReadOnly;
                    }
                    rowNew.Tag = col;
                }
            }
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["User"] == null)
        {
            Response.End();
        }
        m_User = (CUser)Session["User"];

        string vid = Request["vid"];

        if (string.IsNullOrEmpty(vid))
        {
            Response.End();
        }
        string vdid = Request["vdid"];

        if (string.IsNullOrEmpty(vdid))
        {
            Response.End();
        }
        m_View = (CView)Global.GetCtx(Session["TopCompany"].ToString()).ViewMgr.Find(new Guid(vid));
        if (m_View == null)
        {
            Response.End();
        }
        m_ViewDetail = (CViewDetail)m_View.ViewDetailMgr.Find(new Guid(vdid));
        if (m_ViewDetail == null)
        {
            Response.End();
        }
        m_Table = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(m_ViewDetail.FW_Table_id);

        //检查权限
        if (!CheckAccess())
        {
            Response.End();
        }

        string ParentId = Request["ParentId"];

        if (!string.IsNullOrEmpty(ParentId))
        {
            m_guidParentId = new Guid(ParentId);
        }

        if (Request.Params["Action"] == "GetData")
        {
            GetData();
            Response.End();
        }
        else if (Request.Params["Action"] == "Delete")
        {
            Delete();
            Response.End();
        }
    }
    void GetDetail()
    {
        string table_id = Request["table_id"];

        if (string.IsNullOrEmpty(table_id))
        {
            return;
        }

        CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.FindByTable(new Guid(table_id));

        if (ViewDetail == null)
        {
            return;
        }
        List <CBaseObject>         lstObj  = ViewDetail.ColumnInViewDetailMgr.GetList();
        List <CColumnInViewDetail> sortObj = new List <CColumnInViewDetail>();

        foreach (CBaseObject obj in lstObj)
        {
            CColumnInViewDetail civd = (CColumnInViewDetail)obj;
            sortObj.Add(civd);
        }
        sortObj.Sort();

        CTable table = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(ViewDetail.FW_Table_id);

        string sData = "";

        int iCount = 0;

        foreach (CColumnInViewDetail civd in sortObj)
        {
            CColumn col = (CColumn)table.ColumnMgr.Find(civd.FW_Column_id);
            if (col == null)
            {
                continue;
            }

            sData += string.Format("{{ \"id\": \"{0}\",\"ColName\":\"{1}\",\"Caption\":\"{2}\"}},"
                                   , civd.Id, col.Name, civd.Caption);

            iCount++;
        }
        sData = sData.TrimEnd(",".ToCharArray());
        sData = "[" + sData + "]";
        string sJson = string.Format("{{\"Rows\":{0},\"Total\":\"{1}\"}}"
                                     , sData, iCount);

        Response.Write(sJson);
    }
    void GetData()
    {
        string table_id = Request["table_id"];
        CTable table    = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(new Guid(table_id));

        string sData = "";

        List <CBaseObject> lstObj = table.ColumnMgr.GetList();

        int iCount = 0;

        foreach (CBaseObject obj in lstObj)
        {
            CColumn col = (CColumn)obj;
            if (col.Code.Equals("id", StringComparison.OrdinalIgnoreCase) ||
                col.Code.Equals("Creator", StringComparison.OrdinalIgnoreCase) ||
                col.Code.Equals("Created", StringComparison.OrdinalIgnoreCase) ||
                col.Code.Equals("Updator", StringComparison.OrdinalIgnoreCase) ||
                col.Code.Equals("Updated", StringComparison.OrdinalIgnoreCase))
            {
                continue;
            }
            if (table.Id == m_View.FW_Table_id) //主表
            {
                CColumnDefaultValInView cdviv = m_View.ColumnDefaultValInViewMgr.FindByColumn(col.Id);
                string DefaultVal             = cdviv != null ? cdviv.DefaultVal : "";
                string ReadOnly = (cdviv != null && cdviv.ReadOnly) ? "1" : "0";

                sData += string.Format("{{ \"id\": \"{0}\",\"ColName\":\"{1}\",\"DefaultVal\":\"{2}\",\"ReadOnly\":\"{3}\"}},"
                                       , col.Id, col.Name, DefaultVal, ReadOnly);
            }
            else //从表
            {
                CViewDetail ViewDetail = m_View.ViewDetailMgr.FindByTable(table.Id);
                CColumnDefaultValInViewDetail cdvivd = ViewDetail.ColumnDefaultValInViewDetailMgr.FindByColumn(col.Id);
                string DefaultVal = cdvivd != null ? cdvivd.DefaultVal : "";
                string ReadOnly   = (cdvivd != null && cdvivd.ReadOnly) ? "1" : "0";

                sData += string.Format("{{ \"id\": \"{0}\",\"ColName\":\"{1}\",\"DefaultVal\":\"{2}\",\"ReadOnly\":\"{3}\"}},"
                                       , col.Id, col.Name, DefaultVal, ReadOnly);
            }
            iCount++;
        }

        sData = sData.TrimEnd(",".ToCharArray());
        sData = "[" + sData + "]";
        string sJson = string.Format("{{\"Rows\":{0},\"Total\":\"{1}\"}}"
                                     , sData, iCount);

        Response.Write(sJson);
    }
Exemple #18
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["User"] == null)
        {
            Response.Redirect("../Login.aspx");
            Response.End();
        }
        string id = Request["id"];

        if (!string.IsNullOrEmpty(id))
        {
            m_View = (CView)Global.GetCtx(Session["TopCompany"].ToString()).ViewMgr.Find(new Guid(id));
        }
        else
        {
            m_bIsNew = true;
            if (Session["NewMasterDetailView"] == null)
            {
                m_View       = new CView();
                m_View.Ctx   = Global.GetCtx(Session["TopCompany"].ToString());
                m_View.VType = enumViewType.MasterDetail;
                CViewDetail ViewDetail = new CViewDetail();
                ViewDetail.Ctx        = m_View.Ctx;
                ViewDetail.UI_View_id = m_View.Id;
                m_View.ViewDetailMgr.AddNew(ViewDetail);

                SortedList <Guid, CView> sortObj = new SortedList <Guid, CView>();
                sortObj.Add(m_View.Id, m_View);
                Session["NewMasterDetailView"] = sortObj;
            }
            else
            {
                SortedList <Guid, CView> sortObj = (SortedList <Guid, CView>)Session["NewMasterDetailView"];
                m_View = sortObj.Values[0];
            }
        }
        string catalog_id = Request["catalog_id"];

        if (!string.IsNullOrEmpty(catalog_id))
        {
            m_Catalog_id = new Guid(catalog_id);
        }

        if (!IsPostBack)
        {
            LoadCatalog();
            LoadTable();
            LoadData();
        }
    }
Exemple #19
0
 private void cbDetailTable_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (!m_bIsLoadingData)
     {
         CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.GetFirstObj();
         if (ViewDetail != null)
         {
             ViewDetail.ColumnInViewDetailMgr.RemoveAll();
         }
     }
     LoadForeignKey();
     LoadDetailColumn();
     LoadGridView2();
 }
Exemple #20
0
    bool SavePage1()
    {
        string sName = txtName.Text.Trim();

        if (!sName.Equals(m_View.Name))
        {
            CView view2 = Global.GetCtx(Session["TopCompany"].ToString()).ViewMgr.FindByName(sName);
            if (view2 != null)
            {
                RegisterStartupScript("starup", "<script>alert('名称重复!');</script>");
                txtName.Focus();
                return(false);
            }
        }
        m_View.Name = sName;
        if (cbCatalog.SelectedIndex > 0)
        {
            string       catalog_id = cbCatalog.SelectedItem.Value;
            CViewCatalog catalog    = (CViewCatalog)Global.GetCtx(Session["TopCompany"].ToString()).ViewCatalogMgr.Find(new Guid(catalog_id));
            m_View.UI_ViewCatalog_id = catalog.Id;
        }
        else
        {
            m_View.UI_ViewCatalog_id = Guid.Empty;
        }
        //如果是修改,并修改了主表,则清空旧字段
        Guid guidMT = new Guid(cbMasterTable.SelectedItem.Value);

        if (!m_bIsNew && guidMT != m_View.FW_Table_id)
        {
            m_View.ColumnInViewMgr.RemoveAll();
        }
        m_View.FW_Table_id = guidMT;
        CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.GetFirstObj();
        //如果是修改,并修改了从表,则清空旧字段
        Guid guidDT = new Guid(cbDetailTable.SelectedItem.Value);

        if (!m_bIsNew && guidDT != ViewDetail.FW_Table_id)
        {
            ViewDetail.ColumnInViewDetailMgr.RemoveAll();
        }
        ViewDetail.FW_Table_id = guidDT;
        ViewDetail.PrimaryKey  = new Guid(cbPrimaryKey.SelectedItem.Value);
        ViewDetail.ForeignKey  = new Guid(cbForeignKey.SelectedItem.Value);

        m_View.ViewDetailMgr.Update(ViewDetail);

        return(true);
    }
Exemple #21
0
        bool SavePage1()
        {
            string sName = txtName.Text.Trim();

            if (!sName.Equals(m_View.Name))
            {
                CView view2 = Program.Ctx.ViewMgr.FindByName(sName);
                if (view2 != null)
                {
                    MessageBox.Show("名称重复!");
                    txtName.Focus();
                    return(false);
                }
            }
            m_View.Name = sName;
            if (cbCatalog.SelectedIndex > 0)
            {
                DataItem     item    = (DataItem)cbCatalog.SelectedItem;
                CViewCatalog catalog = (CViewCatalog)item.Data;
                m_View.UI_ViewCatalog_id = catalog.Id;
            }
            else
            {
                m_View.UI_ViewCatalog_id = Guid.Empty;
            }
            DataItem itemP  = (DataItem)cbMasterTable.SelectedItem;
            CTable   tableP = (CTable)itemP.Data;

            m_View.FW_Table_id = tableP.Id;
            DataItem    itemF      = (DataItem)cbDetailTable.SelectedItem;
            CTable      tableF     = (CTable)itemF.Data;
            CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.GetFirstObj();

            ViewDetail.FW_Table_id = tableF.Id;
            DataItem itemPK   = (DataItem)cbPrimaryKey.SelectedItem;
            CColumn  columnPK = (CColumn)itemPK.Data;

            ViewDetail.PrimaryKey = columnPK.Id;
            DataItem itemFK   = (DataItem)cbForeignKey.SelectedItem;
            CColumn  columnFK = (CColumn)itemFK.Data;

            ViewDetail.ForeignKey = columnFK.Id;

            m_View.ViewDetailMgr.Update(ViewDetail);

            return(true);
        }
        void LoadTable()
        {
            cbTable.Items.Clear();
            CTable   table = (CTable)Program.Ctx.TableMgr.Find(m_View.FW_Table_id);
            DataItem item  = new DataItem(table.Name, table);

            cbTable.Items.Add(item);
            List <CBaseObject> lstObj = m_View.ViewDetailMgr.GetList();

            foreach (CBaseObject obj in lstObj)
            {
                CViewDetail ViewDetail = (CViewDetail)obj;
                CTable      tableD     = (CTable)Program.Ctx.TableMgr.Find(ViewDetail.FW_Table_id);
                DataItem    item2      = new DataItem(tableD.Name, tableD);
                cbTable.Items.Add(item2);
            }
        }
Exemple #23
0
 private void cbMasterTable_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (!m_bIsLoadingData)
     {
         m_View.ColumnInViewMgr.RemoveAll();
         List <CBaseObject> lstObj = m_View.ViewDetailMgr.GetList();
         foreach (CBaseObject obj in lstObj)
         {
             CViewDetail vd = (CViewDetail)obj;
             vd.PrimaryKey = Guid.Empty;
         }
     }
     LoadPrimaryKey();
     LoadMasterColumn();
     LoadGridView();
     LoadGridView4();
 }
Exemple #24
0
        void viewGrid_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (View == null)
            {
                return;
            }
            if (viewGrid.dataGridView.CurrentRow == null)
            {
                return;
            }
            CViewDetail vd    = (CViewDetail)View.ViewDetailMgr.GetFirstObj();
            CTable      table = (CTable)Program.Ctx.TableMgr.Find(vd.FW_Table_id);
            CBaseObject obj   = (CBaseObject)viewGrid.dataGridView.CurrentRow.Tag;

            viewTab.View         = View;
            viewTab.ParentObject = obj;
        }
Exemple #25
0
        private void btAddDetailTable_Click(object sender, EventArgs e)
        {
            if (cbDetailTable.SelectedIndex == -1)
            {
                MessageBox.Show("请选择从表!");
                return;
            }
            DataItem item  = (DataItem)cbDetailTable.SelectedItem;
            CTable   table = (CTable)item.Data;

            for (int i = 0; i < listViewDetail.Items.Count; i++)
            {
                CViewDetail vd = (CViewDetail)listViewDetail.Items[i].Tag;
                if (vd.FW_Table_id == table.Id)
                {
                    MessageBox.Show("从表已经存在!");
                    return;
                }
            }
            if (cbMasterTable.SelectedIndex != -1)
            {
                DataItem itM = (DataItem)cbMasterTable.SelectedItem;
                CTable   tbM = (CTable)itM.Data;
                if (tbM.Id == table.Id)
                {
                    MessageBox.Show("从表不能与主表相同!");
                    return;
                }
            }
            CViewDetail ViewDetail = new CViewDetail();

            ViewDetail.Ctx         = Program.Ctx;
            ViewDetail.FW_Table_id = table.Id;
            ViewDetail.Name        = table.Name;
            ViewDetail.UI_View_id  = m_View.Id;
            ViewDetail.Idx         = listViewDetail.Items.Count;
            m_View.ViewDetailMgr.AddNew(ViewDetail);

            ListViewItem it = new ListViewItem();

            it.Text = ViewDetail.Name;
            it.Tag  = ViewDetail;
            listViewDetail.Items.Add(it);

            LoadDetailTable();
        }
Exemple #26
0
    void LoadData()
    {
        txtName.Text = m_View.Name;
        //默认表
        for (int i = 0; i < cbMasterTable.Items.Count; i++)
        {
            if (cbMasterTable.Items[i].Value == m_View.FW_Table_id.ToString())
            {
                cbMasterTable.SelectedIndex = i;
                cbMasterTable_SelectedIndexChanged(null, null);
                break;
            }
        }

        CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.GetFirstObj();

        if (ViewDetail != null)
        {
            for (int i = 0; i < cbDetailTable.Items.Count; i++)
            {
                if (cbDetailTable.Items[i].Value == ViewDetail.FW_Table_id.ToString())
                {
                    cbDetailTable.SelectedIndex = i;
                    cbDetailTable_SelectedIndexChanged(null, null);
                    break;
                }
            }
            for (int i = 0; i < cbPrimaryKey.Items.Count; i++)
            {
                if (cbPrimaryKey.Items[i].Value == ViewDetail.PrimaryKey.ToString())
                {
                    cbPrimaryKey.SelectedIndex = i;
                    break;
                }
            }
            for (int i = 0; i < cbForeignKey.Items.Count; i++)
            {
                if (cbForeignKey.Items[i].Value == ViewDetail.ForeignKey.ToString())
                {
                    cbForeignKey.SelectedIndex = i;
                    break;
                }
            }
        }
    }
Exemple #27
0
        void LoadGridView2()
        {
            if (cbDetailTable.SelectedIndex == -1)
            {
                return;
            }
            DataItem item = (DataItem)cbDetailTable.SelectedItem;
            CTable   tb   = (CTable)item.Data;

            txtDetailTable2.Text = tb.Name;
            CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.GetFirstObj();

            List <CBaseObject> lstObj = ViewDetail.ColumnInViewDetailMgr.GetList();


            dataGridView2.Rows.Clear();
            foreach (CBaseObject obj in lstObj)
            {
                CColumnInViewDetail civd = (CColumnInViewDetail)obj;
                if (!civd.IsVirtual)
                {
                    CColumn column = (CColumn)tb.ColumnMgr.Find(civd.FW_Column_id);
                    if (column == null)
                    {
                        continue;
                    }

                    dataGridView2.Rows.Add(1);
                    DataGridViewRow rowNew = dataGridView2.Rows[dataGridView2.Rows.Count - 1];
                    rowNew.Cells[0].Value    = column.Name;
                    rowNew.Cells[0].ReadOnly = true;
                    rowNew.Cells[1].Value    = civd.Caption;
                    rowNew.Tag = civd;
                }
                else
                {
                    dataGridView2.Rows.Add(1);
                    DataGridViewRow rowNew = dataGridView2.Rows[dataGridView2.Rows.Count - 1];
                    rowNew.Cells[0].Value    = civd.Caption;
                    rowNew.Cells[0].ReadOnly = true;
                    rowNew.Cells[1].Value    = civd.Caption;
                    rowNew.Tag = civd;
                }
            }
        }
    bool SavePage1()
    {
        string sName = txtName.Text.Trim();

        if (!sName.Equals(m_View.Name))
        {
            CView view2 = Global.GetCtx(Session["TopCompany"].ToString()).ViewMgr.FindByName(sName);
            if (view2 != null)
            {
                RegisterStartupScript("starup", "<script>alert('名称重复!');</script>");
                txtName.Focus();
                return(false);
            }
        }
        m_View.Name = sName;
        if (cbCatalog.SelectedIndex > 0)
        {
            string       catalog_id = cbCatalog.SelectedItem.Value;
            CViewCatalog catalog    = (CViewCatalog)Global.GetCtx(Session["TopCompany"].ToString()).ViewCatalogMgr.Find(new Guid(catalog_id));
            m_View.UI_ViewCatalog_id = catalog.Id;
        }
        else
        {
            m_View.UI_ViewCatalog_id = Guid.Empty;
        }
        //如果是修改,并修改了主表,则清空旧字段
        Guid guidMT = new Guid(cbMasterTable.SelectedItem.Value);

        if (!m_bIsNew && guidMT != m_View.FW_Table_id)
        {
            m_View.ColumnInViewMgr.RemoveAll();
        }
        m_View.FW_Table_id = guidMT;
        for (int i = 0; i < listViewDetail.Items.Count; i++)
        {
            CViewDetail vd = (CViewDetail)m_View.ViewDetailMgr.Find(new Guid(listViewDetail.Items[i].Value));
            vd.Idx = i;
            m_View.ViewDetailMgr.Update(vd);
        }


        return(true);
    }
    protected void btAdd_Click(object sender, EventArgs e)
    {
        if (cbMasterTable.SelectedIndex == -1)
        {
            RegisterStartupScript("starup", "<script>alert('请选择主表!');</script>");
            return;
        }
        if (cbDetailTable.SelectedIndex == -1)
        {
            RegisterStartupScript("starup", "<script>alert('请选择从表!');</script>");
            return;
        }
        CTable table = (CTable)Global.GetCtx(Session["TopCompany"].ToString()).TableMgr.Find(new Guid(cbDetailTable.SelectedItem.Value));

        for (int i = 0; i < listViewDetail.Items.Count; i++)
        {
            if (listViewDetail.Items[i].Value == table.Id.ToString())
            {
                RegisterStartupScript("starup", "<script>alert('从表已经存在!');</script>");
                return;
            }
        }
        if (cbMasterTable.SelectedIndex != -1)
        {
            if (cbMasterTable.SelectedItem.Value == table.Id.ToString())
            {
                RegisterStartupScript("starup", "<script>alert('从表不能与主表相同!');</script>");
                return;
            }
        }
        CViewDetail ViewDetail = new CViewDetail();

        ViewDetail.Ctx         = Global.GetCtx(Session["TopCompany"].ToString());
        ViewDetail.FW_Table_id = table.Id;
        ViewDetail.Name        = table.Name;
        ViewDetail.UI_View_id  = m_View.Id;
        ViewDetail.Idx         = listViewDetail.Items.Count;
        m_View.ViewDetailMgr.AddNew(ViewDetail);

        ListItem it = new ListItem(ViewDetail.Name, ViewDetail.Id.ToString());

        listViewDetail.Items.Add(it);
    }
    void GetDetail()
    {
        CViewDetail ViewDetail = (CViewDetail)m_View.ViewDetailMgr.GetFirstObj();

        if (ViewDetail == null)
        {
            return;
        }
        List <CBaseObject>         lstObj  = ViewDetail.ColumnInViewDetailMgr.GetList();
        List <CColumnInViewDetail> sortObj = new List <CColumnInViewDetail>();

        foreach (CBaseObject obj in lstObj)
        {
            CColumnInViewDetail civd = (CColumnInViewDetail)obj;
            sortObj.Add(civd);
        }
        sortObj.Sort();

        string sData = "";

        int iCount = 0;

        foreach (CColumnInViewDetail civd in sortObj)
        {
            CColumn col = (CColumn)m_DTable.ColumnMgr.Find(civd.FW_Column_id);
            if (col == null)
            {
                continue;
            }

            sData += string.Format("{{ \"id\": \"{0}\",\"ColName\":\"{1}\",\"Caption\":\"{2}\"}},"
                                   , civd.Id, col.Name, civd.Caption);

            iCount++;
        }
        sData = sData.TrimEnd(",".ToCharArray());
        sData = "[" + sData + "]";
        string sJson = string.Format("{{\"Rows\":{0},\"Total\":\"{1}\"}}"
                                     , sData, iCount);

        Response.Write(sJson);
    }