Beispiel #1
0
 public QueryModelManager(MD_QueryModel _qm)
 {
     InitializeComponent();
     _queryModel = _qm;
     RefreshData();
     _initFinished = true;
 }
Beispiel #2
0
        private void ChangeView2ViewGroupID(MD_View2ViewGroup _group, MD_QueryModel _qv, SinoSZClientBase.MetaDataService.MetaDataServiceClient _mdc)
        {
            if (_group == null)
            {
                return;
            }
            _group.QueryModelID = _qv.QueryModelID;
            string _newid = GetNewID(_group.ID, "MD_VIEW2VIEWGROUP", "ID", _mdc);

            try
            {
                IDTable.Add(_group.ID, _newid);
            }
            catch (Exception e)
            {
                throw e;
            }
            _group.ID = _newid;
            if (_group.View2Views != null && _group.View2Views.Count > 0)
            {
                foreach (MD_View2View _v2v in _group.View2Views)
                {
                    ChangeView2ViewID(_v2v, _group, _mdc);
                }
            }
        }
Beispiel #3
0
        private void ChangeTableID(MD_ViewTable _table, MD_QueryModel _qv, MetaDataServiceClient _mdc)
        {
            if (_table == null)
            {
                return;
            }
            _table.NamespaceName = _qv.NamespaceName;
            string _newtid = IDTable[_table.TableID];

            _table.TableID      = _newtid;
            _table.DWDM         = _qv.DWDM;
            _table.QueryModelID = _qv.QueryModelID;
            string _newid = GetNewID(_table.ViewTableID, "MD_VIEWTABLE", "VTID", _mdc);

            try
            {
                IDTable.Add(_table.ViewTableID, _newtid);
            }
            catch (Exception e)
            {
                throw e;
            }
            _table.ViewTableID = _newid;
            if (_table.FatherTableID != "")
            {
                _table.FatherTableID = IDTable[_table.FatherTableID];
            }
            foreach (MD_ViewTableColumn _vtc in _table.Columns)
            {
                string _newVTCid = GetNewID(_vtc.ViewTableColumnID, "MD_VIEWTABLECOLUMN", "VTCID", _mdc);
                _vtc.ViewTableColumnID = _newVTCid;
                _vtc.ColumnID          = IDTable[_vtc.ColumnID];
                _vtc.DWDM = _qv.DWDM;
            }
        }
Beispiel #4
0
        public async Task <bool> SaveNewQueryModel(MD_QueryModel queryModel)
        {
            var ret = await this.mdService.SaveNewQueryModel(queryModel);

            MyDA_MetaDataQuery.QueryModelCache.Clear();
            return(ret);
        }
Beispiel #5
0
 public Dialog_AddMainTable(MD_QueryModel _qm)
 {
     InitializeComponent();
     _queryModel = _qm;
     using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
     {
         List <MD_Table> _tlist = _mdc.GetTablesAtNamespace(_qm.NamespaceName).ToList <MD_Table>();
         this.gridControl1.DataSource = _tlist;
     }
 }
 internal void InitData(MD_QueryModel _qv)
 {
     QueryModel = _qv;
     if (_qv != null)
     {
         this.TE_DES.EditValue     = _qv.Description;
         this.TE_DISPLAY.EditValue = _qv.DisplayTitle;
     }
     _initFinished = true;
     RaiseDataChanged();
 }
Beispiel #7
0
 public static MDModel_QueryModel GetQueryModelDefine(string QueryModelName)
 {
     if (!QueryModelLib.ContainsKey(QueryModelName))
     {
         using (MetaDataQueryServiceClient _sc = new MetaDataQueryServiceClient())
         {
             MD_QueryModel _qv = _sc.GetMDQueryModelDefine(QueryModelName);
             QueryModelLib.Add(QueryModelName, MC_QueryModel.CreateQuery_ModelDefine(_qv));
         }
     }
     return(QueryModelLib[QueryModelName]);
 }
Beispiel #8
0
 public bool SaveQueryModel(MD_QueryModel QueryModel)
 {
     try
     {
         OraMetaDataFactroy _of = new OraMetaDataFactroy();
         return(_of.SaveQueryModel(QueryModel));
     }
     catch (Exception ex)
     {
         throw new FaultException(ex.Message);
     }
 }
Beispiel #9
0
 public bool ImportQueryModelDefine(MD_QueryModel QueryModel)
 {
     try
     {
         OraMetaDataFactroy _of = new OraMetaDataFactroy();
         return(_of.ImportQueryModelDefine(QueryModel));
     }
     catch (Exception ex)
     {
         throw new FaultException(ex.Message);
     }
 }
Beispiel #10
0
 public MD_QueryModel GetMDQueryModelDefine(string QueryModelName)
 {
     if (!QueryModelCache.ContainsKey(QueryModelName))
     {
         OraMetaDataFactroy _OMDFactroy = new OraMetaDataFactroy();
         MD_QueryModel      _qv         = _OMDFactroy.GetQueryModelByName(QueryModelName);
         _qv.MainTable   = _OMDFactroy.GetMainTableOfQueryModel(_qv);
         _qv.ChildTables = _OMDFactroy.GetChildTableOfQueryModel(_qv);
         QueryModelCache.Add(QueryModelName, _qv);
     }
     return(QueryModelCache[QueryModelName]);
 }
        private void ShowQueryModelInfo(MD_QueryModel _qv)
        {
            SinoUC_QME_QueryModelInfo _uc = new SinoUC_QME_QueryModelInfo();

            _uc.DataChanged += new EventHandler <EventArgs>(_uc_DataChanged);
            _uc.MenuChanged += new EventHandler <EventArgs>(_uc_MenuChanged);
            _uc.InitData(_qv);
            _uc.Dock = DockStyle.Fill;
            this.panel1.Controls.Clear();
            this.panel1.Controls.Add(_uc);
            CurrentItem = _uc as IControlMenu;
        }
Beispiel #12
0
 private void InitViewExRight(TreeListNode _fnode, MD_QueryModel _qm)
 {
     using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
     {
         IList <MD_QueryModel_ExRight> _erList = _mdc.GetQueryModelExRights(_qm.QueryModelID, "0");
         foreach (MD_QueryModel_ExRight _right in _erList)
         {
             TreeListNode _node = treeList1.AppendNode(null, _fnode);
             _node.ImageIndex       = 1;
             _node.SelectImageIndex = 0;
             _node.SetValue(this.treeListColumn1, _right);
             _node.HasChildren = true;
         }
     }
 }
Beispiel #13
0
 private void InitView2Application(TreeListNode _fnode, MD_QueryModel _qm)
 {
     using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
     {
         List <MD_View2App> _vgList = _mdc.GetView2ApplicationList(_qm.QueryModelID).ToList <MD_View2App>();
         foreach (MD_View2App _gl in _vgList)
         {
             TreeListNode _node = treeList1.AppendNode(null, _fnode);
             _node.ImageIndex       = 2;
             _node.SelectImageIndex = 0;
             _node.SetValue(this.treeListColumn1, _gl);
             _node.HasChildren = false;
         }
     }
 }
Beispiel #14
0
        private void InitView2GuideLine(TreeListNode _fnode, MD_QueryModel _qm)
        {
            IList <MD_View_GuideLine> _vgList;

            using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
            {
                _vgList = _mdc.GetView2GuideLineList(_qm.QueryModelID);
            }
            foreach (MD_View_GuideLine _gl in _vgList)
            {
                TreeListNode _node = treeList1.AppendNode(null, _fnode);
                _node.ImageIndex       = 1;
                _node.SelectImageIndex = 0;
                _node.SetValue(this.treeListColumn1, _gl);
                _node.HasChildren = true;
            }
        }
 private void LoadMainTable(TreeListNode _fnode, MD_QueryModel _qv)
 {
     using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
     {
         MD_ViewTable _mainTable = _mdc.GetMainTableOfQueryModel(_qv.QueryModelID);
         if (_mainTable != null)
         {
             TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
             _newnode.SetValue(this.treeListColumn1, _mainTable);
             _newnode.ImageIndex       = 2;
             _newnode.SelectImageIndex = 0;
             _newnode.HasChildren      = true;
             _mainTable.QueryModelID   = _qv.QueryModelID;
             _qv.MainTable             = _mainTable;
         }
     }
 }
Beispiel #16
0
        private void ChangeView2GuideLineID(MD_View_GuideLine _v2g, MD_QueryModel _qv, MetaDataServiceClient _mdc)
        {
            if (_v2g == null)
            {
                return;
            }
            _v2g.ViewID = _qv.QueryModelID;
            string _newid = GetNewID(_v2g.ID, "MD_VIEW2GUIDELINE", "ID", _mdc);

            try
            {
                IDTable.Add(_v2g.ID, _newid);
            }
            catch (Exception e)
            {
                throw e;
            }
            _v2g.ID = _newid;
        }
Beispiel #17
0
        private void ChangeView2AppID(MD_View2App _v2a, MD_QueryModel _qv, MetaDataServiceClient _mdc)
        {
            if (_v2a == null)
            {
                return;
            }
            _v2a.ViewID = _qv.QueryModelID;
            string _newid = GetNewID(_v2a.ID, "MD_VIEW2APPLICATION", "ID", _mdc);

            try
            {
                IDTable.Add(_v2a.ID, _newid);
            }
            catch (Exception e)
            {
                throw e;
            }
            _v2a.ID = _newid;
        }
Beispiel #18
0
        /// <summary>
        /// 取选择的查询模型
        /// </summary>
        /// <returns></returns>
        private List <MD_QueryModel> GetSelectQueryModel()
        {
            List <MD_QueryModel> _ret = new List <MD_QueryModel>();

            foreach (TreeListNode _node in this.treeList1.Nodes)
            {
                object _stobj = _node.GetValue("State");
                if (_stobj != null)
                {
                    int _st = (int)_stobj;
                    if (_st == 1)
                    {
                        MD_QueryModel _qm = _node.GetValue("COLUMN1") as MD_QueryModel;
                        _ret.Add(_qm);
                    }
                }
            }
            return(_ret);
        }
Beispiel #19
0
        private List <MD_GuideLineDetailParameter> InitDetailParm(MD_GuideLineDetailDefine _detailDefine)
        {
            using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
            {
                List <MD_GuideLineDetailParameter> _ret = new List <MD_GuideLineDetailParameter>();
                switch (_detailDefine.QueryDetailType)
                {
                case "查询模型":
                    MD_QueryModel _model     = _mdc.GetQueryModelByName(_detailDefine.DetailMethodID);
                    MD_ViewTable  _viewTable = _mdc.GetMainTableOfQueryModel(_model.QueryModelID);
                    this.comboBoxEdit1.Properties.Items.Clear();
                    this.comboBoxEdit1.EditValue = null;
                    foreach (MD_ViewTableColumn _col in _viewTable.Columns)
                    {
                        SelectTableColumn _item = new SelectTableColumn(_col);

                        if (_col.TableColumn.ColumnName == _viewTable.Table.MainKey)
                        {
                            _item.Title += " [主键] ";
                        }
                        this.comboBoxEdit1.Properties.Items.Add(_item);
                    }
                    this.te_Type.EditValue  = "";
                    this.te_Title.EditValue = "";
                    this.te_Value.EditValue = "";

                    break;

                case "指标定义":

                    MD_GuideLine _gl = _mdc.GetGuideLineDefine(_detailDefine.DetailMethodID);
                    List <MD_GuideLineParameter> _gParam = MC_GuideLine.GetParametersFromMeta(_gl.GuideLineMeta);
                    foreach (MD_GuideLineParameter _p in _gParam)
                    {
                        _ret.Add(new MD_GuideLineDetailParameter(_p.ParameterName, _p.DisplayTitle, _p.ParameterType, ""));
                    }
                    break;
                }
                return(_ret);
            }
        }
Beispiel #20
0
 public MD_QueryModel SaveNew()
 {
     using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
     {
         _queryModel                 = new MD_QueryModel();
         _queryModel.Description     = (this.TE_DES.EditValue == null) ? "" : this.TE_DES.EditValue.ToString();
         _queryModel.DisplayTitle    = (this.TE_DISPLAY.EditValue == null) ? this.TE_MODELNAME.EditValue.ToString() : this.TE_DISPLAY.EditValue.ToString();
         _queryModel.DisplayOrder    = Convert.ToInt32((this.TE_DISPLAYORDER.EditValue == null) ? "0" : this.TE_DISPLAYORDER.EditValue.ToString());
         _queryModel.QueryModelName  = this.TE_MODELNAME.EditValue.ToString();
         _queryModel.IsFixQuery      = (this.TE_TYPE.Items[0].CheckState == CheckState.Checked);
         _queryModel.IsRelationQuery = (this.TE_TYPE.Items[1].CheckState == CheckState.Checked);
         _queryModel.IsDataAuditing  = (this.TE_TYPE.Items[2].CheckState == CheckState.Checked);
         _queryModel.QueryInterface  = (this.te_Ics.EditValue.ToString());
         _queryModel.NamespaceName   = (_nameSpace == null) ? "" : _nameSpace.NameSpace;
         _queryModel.DWDM            = _nameSpace.DWDM;
         _queryModel.EXTMeta         = (this.te_ExtMeta.EditValue == null) ? "" : this.te_ExtMeta.EditValue.ToString();
         _mdc.SaveNewQueryModel(_queryModel);
     }
     _haveChange = false;
     RaiseDataChanged();
     return(_queryModel);
 }
 public bool SaveQueryModel(MD_QueryModel _queryModel)
 {
     return(MetaDataFactroy.SaveQueryModel(_queryModel));
 }
Beispiel #22
0
        public async Task <bool> ImportQueryModelDefine(MD_QueryModel queryModel)
        {
            var ret = await this.mdService.ImportQueryModelDefine(queryModel);

            return(ret);
        }
Beispiel #23
0
        private void WriteModelDefine(string _oldNameSpace, MD_Namespace _ns, DataSet _ds)
        {
            using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
            {
                DataRow[] _qvDefineRows = _ds.Tables["MD_VIEW"].Select(string.Format("NAMESPACE='{0}'", _oldNameSpace));
                foreach (DataRow _dr in _qvDefineRows)
                {
                    string _oldid = _dr["VIEWID"].ToString();
                    string _newid = GetNewID(_oldid, "MD_VIEW", "VIEWID", _mdc);

                    this.IDTable.Add(_oldid, _newid);

                    MD_QueryModel _qv = new MD_QueryModel(
                        _newid,
                        _ns.NameSpace,
                        _dr.IsNull("VIEWNAME") ? "" : _dr["VIEWNAME"].ToString(),
                        _dr.IsNull("DESCRIPTION") ? "" : _dr["DESCRIPTION"].ToString(),
                        _dr.IsNull("DISPLAYNAME") ? "" : _dr["DISPLAYNAME"].ToString(),
                        _ns.DWDM,
                        _dr.IsNull("IS_GDCX") ? false : ((decimal)_dr["IS_GDCX"] > 0),
                        _dr.IsNull("IS_GLCX") ? false : ((decimal)_dr["IS_GLCX"] > 0),
                        _dr.IsNull("IS_SJSH") ? false : ((decimal)_dr["IS_SJSH"] > 0),
                        _dr.IsNull("DISPLAYORDER") ? 0 : Convert.ToInt32(_dr["DISPLAYORDER"]),
                        "ORA_JSIS"
                        );

                    _qv.ChildTables = new List <MD_ViewTable>();

                    DataRow[] _childTableRows = _ds.Tables["MD_VIEWTABLE"].Select(string.Format("VIEWID='{0}'", _oldid));
                    foreach (DataRow _ctRow in _childTableRows)
                    {
                        string _oldVTid = _ctRow["VTID"].ToString();
                        string _newVTid = GetNewID(_oldVTid, "MD_VIEWTABLE", "VTID", _mdc);

                        string _newTid = IDTable[_ctRow["TID"].ToString()];
                        this.IDTable.Add(_oldVTid, _newVTid);

                        int _displayType = 0;
                        if (_ds.Tables["MD_VIEWTABLE"].Columns.Contains("DISPLAYTYPE"))
                        {
                            _displayType = _ctRow.IsNull("DISPLAYTYPE") ? 0 : Convert.ToInt32(_ctRow["DISPLAYTYPE"]);
                        }
                        string _intApp = "";
                        if (_ds.Tables["MD_VIEWTABLE"].Columns.Contains("INTEGRATEDAPP"))
                        {
                            _intApp = _ctRow.IsNull("INTEGRATEDAPP") ? "" : _ctRow["INTEGRATEDAPP"].ToString();
                        }
                        MD_ViewTable _vt = new MD_ViewTable(
                            _newVTid,
                            _newid,
                            _newTid,
                            _ctRow["TABLETYPE"].ToString(),
                            _ctRow.IsNull("TABLERELATION") ? "" : _ctRow["TABLERELATION"].ToString(),
                            _ctRow.IsNull("CANCONDITION") ? "" : _ctRow["CANCONDITION"].ToString(),
                            _ctRow.IsNull("DISPLAYNAME") ? "" : _ctRow["DISPLAYNAME"].ToString(),
                            _ctRow.IsNull("DISPLAYORDER") ? 0 : Convert.ToInt32(_ctRow["DISPLAYORDER"]),
                            _ns.DWDM,
                            _ctRow.IsNull("FATHERID") ? "" : _ctRow["FATHERID"].ToString(),
                            0,
                            _displayType,
                            _intApp
                            );
                        _qv.ChildTables.Add(_vt);

                        _vt.Columns = new List <MD_ViewTableColumn>();

                        DataRow[] _vtRows = _ds.Tables["MD_VIEWTABLECOLUMN"].Select(string.Format("VTID='{0}'", _oldVTid));
                        foreach (DataRow _vtRow in _vtRows)
                        {
                            string             _oldVTCid = _vtRow["VTCID"].ToString();
                            string             _newVTCid = GetNewID(_oldVTCid, "MD_VIEWTABLECOLUMN", "VTCID", _mdc);
                            string             _newTCid  = IDTable[_vtRow["TCID"].ToString()];
                            MD_ViewTableColumn _vtc      = new MD_ViewTableColumn(
                                _newVTCid,
                                _newVTid,
                                _newTCid,
                                _vtRow.IsNull("CANCONDITIONSHOW") ? false : ((decimal)_vtRow["CANCONDITIONSHOW"] > 0),
                                _vtRow.IsNull("CANRESULTSHOW") ? false : ((decimal)_vtRow["CANRESULTSHOW"] > 0),
                                _vtRow.IsNull("DEFAULTSHOW") ? false : ((decimal)_vtRow["DEFAULTSHOW"] > 0),
                                _vtRow.IsNull("FIXQUERYITEM") ? false : ((decimal)_vtRow["FIXQUERYITEM"] > 0),
                                _vtRow.IsNull("CANMODIFY") ? false : ((decimal)_vtRow["CANMODIFY"] > 0),
                                _ns.DWDM,
                                0,
                                0
                                );

                            _vt.Columns.Add(_vtc);
                        }
                    }
                    _mdc.ImportQueryModelDefine(_qv);
                }
            }
        }
Beispiel #24
0
 public Dialog_AddView2GL(MD_QueryModel _qv)
 {
     InitializeComponent();
     QueryModel = _qv;
     this.uC_View2GLInfo1.V2GID = Guid.NewGuid().ToString();
 }
 public bool ImportQueryModelDefine(MD_QueryModel _qv)
 {
     return(MetaDataFactroy.ImportQueryModelDefine(_qv));
 }
 public IList <MD_ViewTable> GetChildTableOfQueryModel(MD_QueryModel _queryModel)
 {
     return(MetaDataFactroy.GetChildTableOfQueryModel(_queryModel));
 }
Beispiel #27
0
        private void LoadChildData(TreeListNode _fnode, object _value)
        {
            using (MetaDataServiceClient _mdc = new MetaDataServiceClient())
            {
                MD_Title     _mt;
                MD_Namespace _ns;
                if (_value is MD_Nodes)
                {
                    _fnode.Nodes.Clear();
                    MD_Nodes _node = _value as MD_Nodes;

                    IList <MD_Namespace> _namespaces = _mdc.GetNameSpaceAtNode(_node.DWDM);
                    if (_node.NameSpaces == null)
                    {
                        _node.NameSpaces = new List <MD_Namespace>();
                    }
                    foreach (MD_Namespace _space in _namespaces)
                    {
                        TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                        _newnode.SetValue(this.treeListColumn1, _space);
                        _newnode.ImageIndex       = 1;
                        _newnode.SelectImageIndex = 0;
                        _newnode.HasChildren      = true;
                        _node.NameSpaces.Add(_space);
                    }

                    _mt = new MD_Title("菜单定义", "MD_MENU", _node);
                    TreeListNode _newnode2 = treeList1.AppendNode(null, _fnode);
                    _newnode2.SetValue(this.treeListColumn1, _mt);
                    _newnode2.ImageIndex       = 1;
                    _newnode2.SelectImageIndex = 0;
                    _newnode2.HasChildren      = true;
                }

                if (_value is MD_Namespace)
                {
                    _fnode.Nodes.Clear();
                    _ns = _value as MD_Namespace;
                    _mt = new MD_Title("数据表", "MD_TABLE", _ns);
                    TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                    _newnode.SetValue(this.treeListColumn1, _mt);
                    _newnode.ImageIndex       = 1;
                    _newnode.SelectImageIndex = 0;
                    _newnode.HasChildren      = true;

                    _mt                       = new MD_Title("查询模型", "MD_QUERYMODEL", _ns);
                    _newnode                  = treeList1.AppendNode(null, _fnode);
                    _newnode.ImageIndex       = 1;
                    _newnode.SelectImageIndex = 0;
                    _newnode.SetValue(this.treeListColumn1, _mt);
                    _newnode.HasChildren = true;

                    _mt                       = new MD_Title("代码表", "MD_REFTABLE", _ns);
                    _newnode                  = treeList1.AppendNode(null, _fnode);
                    _newnode.ImageIndex       = 1;
                    _newnode.SelectImageIndex = 0;
                    _newnode.SetValue(this.treeListColumn1, _mt);
                    _newnode.HasChildren = true;
                }

                if (_value is MD_Title)
                {
                    _fnode.Nodes.Clear();
                    MD_Title _mdtitle = _value as MD_Title;

                    switch (_mdtitle.TitleType)
                    {
                    case "MD_TABLE":
                        _ns = (MD_Namespace)_mdtitle.FatherObj;
                        IList <MD_Table> _tables = _mdc.GetTablesAtNamespace(_ns.NameSpace);
                        if (_ns.TableList == null)
                        {
                            _ns.TableList = new List <MD_Table>();
                        }

                        foreach (MD_Table _tb in _tables)
                        {
                            TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                            _newnode.SetValue(this.treeListColumn1, _tb);
                            _newnode.HasChildren      = true;
                            _newnode.ImageIndex       = 2;
                            _newnode.SelectImageIndex = 0;
                            _ns.TableList.Add(_tb);
                            _tb.NamespaceName = _ns.NameSpace;
                        }
                        break;

                    case "MD_QUERYMODEL":
                        _ns = (MD_Namespace)_mdtitle.FatherObj;
                        IList <MD_QueryModel> _models = _mdc.GetQueryModelAtNamespace(_ns.NameSpace);
                        if (_ns.QueryModelList == null)
                        {
                            _ns.QueryModelList = new List <MD_QueryModel>();
                        }
                        foreach (MD_QueryModel _model in _models)
                        {
                            TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                            _newnode.SetValue(this.treeListColumn1, _model);
                            _newnode.ImageIndex       = 1;
                            _newnode.SelectImageIndex = 0;
                            _newnode.HasChildren      = true;
                            _ns.QueryModelList.Add(_model);
                            _model.Namespace = _ns;
                        }
                        break;

                    case "MD_REFTABLE":
                        _ns = (MD_Namespace)_mdtitle.FatherObj;
                        IList <MD_RefTable> _refTables = _mdc.GetRefTableAtNamespace(_ns.NameSpace);
                        if (_ns.RefTableList == null)
                        {
                            _ns.RefTableList = new List <MD_RefTable>();
                        }
                        foreach (MD_RefTable _rt in _refTables)
                        {
                            TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                            _newnode.SetValue(this.treeListColumn1, _rt);
                            _newnode.ImageIndex       = 2;
                            _newnode.SelectImageIndex = 0;
                            _newnode.HasChildren      = false;
                            _ns.RefTableList.Add(_rt);
                            _rt.Namespace = _ns;
                        }
                        break;

                    case "MD_MENU":
                        MD_Nodes        _node      = (MD_Nodes)_mdtitle.FatherObj;
                        IList <MD_Menu> _menuTable = _mdc.GetMenuDefineOfNode(_node.DWDM);
                        foreach (MD_Menu _menu in _menuTable)
                        {
                            TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                            _newnode.SetValue(this.treeListColumn1, _menu);

                            if (_menu.MenuType.Length > 3 && _menu.MenuType.Substring(0, 3) == "WEB")
                            {
                                _newnode.ImageIndex       = 4;
                                _newnode.SelectImageIndex = 0;
                            }
                            else if (_menu.MenuType.Length > 3 && _menu.MenuType.Substring(0, 3) == "SL_")
                            {
                                _newnode.ImageIndex       = 5;
                                _newnode.SelectImageIndex = 0;
                            }
                            else
                            {
                                _newnode.ImageIndex       = 2;
                                _newnode.SelectImageIndex = 0;
                            }
                            _newnode.HasChildren = true;
                            _menu.NodeID         = _node.ID;
                            _menu.MD_Nodes       = _node;
                        }
                        break;

                    case "MD_CONCEPTGROUP":
                        InitConceptGroup(_fnode);
                        break;

                    case "MD_VIEW_GUIDELINE":
                        InitView2GuideLine(_fnode, (MD_QueryModel)_mdtitle.FatherObj);
                        break;

                    case "MD_VIEW_APPLICATION":
                        InitView2Application(_fnode, (MD_QueryModel)_mdtitle.FatherObj);
                        break;

                    case "MD_VIEW_EXRIGHT":
                        InitViewExRight(_fnode, (MD_QueryModel)_mdtitle.FatherObj);
                        break;
                    }
                }

                if (_value is MD_QueryModel_ExRight)
                {
                    _fnode.Nodes.Clear();
                    MD_QueryModel_ExRight         _fright = _value as MD_QueryModel_ExRight;
                    IList <MD_QueryModel_ExRight> _erList = _mdc.GetQueryModelExRights(_fright.ModelID, _fright.ID);
                    foreach (MD_QueryModel_ExRight _right in _erList)
                    {
                        TreeListNode _node = treeList1.AppendNode(null, _fnode);
                        _node.ImageIndex       = 1;
                        _node.SelectImageIndex = 0;
                        _node.SetValue(this.treeListColumn1, _right);
                        _node.HasChildren = true;
                    }
                }

                if (_value is MD_QueryModel)
                {
                    _fnode.Nodes.Clear();
                    MD_QueryModel _qm        = _value as MD_QueryModel;
                    MD_ViewTable  _mainTable = _mdc.GetMainTableOfQueryModel(_qm.QueryModelID);
                    if (_mainTable != null)
                    {
                        TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                        _newnode.SetValue(this.treeListColumn1, _mainTable);
                        _newnode.ImageIndex       = 2;
                        _newnode.SelectImageIndex = 0;
                        _newnode.HasChildren      = true;
                        _mainTable.QueryModelID   = _qm.QueryModelID;
                        _qm.MainTable             = _mainTable;
                    }
                    List <MD_View2ViewGroup> _v2vGroup = _mdc.GetView2ViewGroupOfQueryModel(_qm.QueryModelID).ToList <MD_View2ViewGroup>();
                    if (_v2vGroup != null && _v2vGroup.Count > 0)
                    {
                        foreach (MD_View2ViewGroup _g in _v2vGroup)
                        {
                            TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                            _newnode.SetValue(this.treeListColumn1, _g);
                            _newnode.ImageIndex       = 3;
                            _newnode.SelectImageIndex = 0;
                            _newnode.HasChildren      = true;
                            _g.QueryModelID           = _qm.QueryModelID;
                        }
                    }
                    _mt = new MD_Title("关联数据指标", "MD_VIEW_GUIDELINE", _qm);
                    TreeListNode _newqxnode2 = treeList1.AppendNode(null, _fnode);
                    _newqxnode2.ImageIndex       = 8;
                    _newqxnode2.SelectImageIndex = 0;
                    _newqxnode2.SetValue(this.treeListColumn1, _mt);
                    _newqxnode2.HasChildren = true;

                    _mt = new MD_Title("集成应用展示", "MD_VIEW_APPLICATION", _qm);
                    TreeListNode _newAppnode = treeList1.AppendNode(null, _fnode);
                    _newAppnode.ImageIndex       = 8;
                    _newAppnode.SelectImageIndex = 0;
                    _newAppnode.SetValue(this.treeListColumn1, _mt);
                    _newAppnode.HasChildren = true;

                    _mt = new MD_Title("扩展权限定义", "MD_VIEW_EXRIGHT", _qm);
                    TreeListNode _newqxnode = treeList1.AppendNode(null, _fnode);
                    _newqxnode.ImageIndex       = 6;
                    _newqxnode.SelectImageIndex = 0;
                    _newqxnode.SetValue(this.treeListColumn1, _mt);
                    _newqxnode.HasChildren = true;
                }



                if (_value is MD_View2ViewGroup)
                {
                    _fnode.Nodes.Clear();
                    MD_View2ViewGroup   _v2vg = _value as MD_View2ViewGroup;
                    List <MD_View2View> _v2vs = _mdc.GetView2ViewList(_v2vg.ID, _v2vg.QueryModelID).ToList <MD_View2View>();
                    if (_v2vs != null)
                    {
                        foreach (MD_View2View _v in _v2vs)
                        {
                            TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                            _v.QueryModelID = _v2vg.QueryModelID;
                            _v.ViewGroupID  = _v2vg.ID;
                            _newnode.SetValue(this.treeListColumn1, _v);
                            _newnode.ImageIndex       = 2;
                            _newnode.SelectImageIndex = 0;
                            _newnode.HasChildren      = true;
                        }
                    }
                }



                if (_value is MD_Table)
                {
                    _fnode.Nodes.Clear();
                    MD_Table             _tb   = _value as MD_Table;
                    List <MD_Table2View> _t2vs = _mdc.GetTable2ViewList(_tb.TID).ToList <MD_Table2View>();
                    if (_t2vs != null)
                    {
                        foreach (MD_Table2View _t2v in _t2vs)
                        {
                            TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                            _newnode.SetValue(this.treeListColumn1, _t2v);
                            _newnode.ImageIndex       = 2;
                            _newnode.SelectImageIndex = 0;
                            _newnode.HasChildren      = true;
                        }
                    }
                }

                if (_value is MD_ViewTable)
                {
                    _fnode.Nodes.Clear();
                    MD_ViewTable _vt = _value as MD_ViewTable;
                    if (_vt.ViewTableType == MDType_ViewTable.MainTable)
                    {
                        MetaDataServiceClient _msc         = new MetaDataServiceClient();
                        IList <MD_ViewTable>  _childTables = _msc.GetChildTableOfQueryModel(_vt.QueryModelID);


                        foreach (MD_ViewTable _cvt in _childTables)
                        {
                            TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                            _newnode.SetValue(this.treeListColumn1, _cvt);
                            _newnode.ImageIndex       = 2;
                            _newnode.SelectImageIndex = 0;
                            _newnode.HasChildren      = true;
                            _cvt.QueryModelID         = _vt.QueryModelID;
                        }
                    }
                }

                if (_value is MD_Menu)
                {
                    MD_Menu         _fmenu     = _value as MD_Menu;
                    IList <MD_Menu> _menuTable = _mdc.GetSubMenuDefine(_fmenu.MenuID);
                    foreach (MD_Menu _menu in _menuTable)
                    {
                        TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                        _newnode.SetValue(this.treeListColumn1, _menu);
                        if (_menu.MenuType.Length > 3 && _menu.MenuType.Substring(0, 3) == "WEB")
                        {
                            _newnode.ImageIndex       = 4;
                            _newnode.SelectImageIndex = 0;
                        }
                        else if (_menu.MenuType.Length > 3 && _menu.MenuType.Substring(0, 3) == "SL_")
                        {
                            _newnode.ImageIndex       = 5;
                            _newnode.SelectImageIndex = 0;
                        }
                        else
                        {
                            _newnode.ImageIndex       = 2;
                            _newnode.SelectImageIndex = 0;
                        }
                        _newnode.HasChildren = true;
                        _menu.NodeID         = _fmenu.MD_Nodes.ID;
                        _menu.MD_Nodes       = _fmenu.MD_Nodes;
                    }
                }

                if (_value is MD_ConceptGroup)
                {
                    MD_ConceptGroup       _cGroup      = _value as MD_ConceptGroup;
                    List <MD_ConceptItem> _itemDefines = _mdc.GetSubConceptTagDefine(_cGroup.Name).ToList <MD_ConceptItem>();
                    _cGroup.Items = _itemDefines;
                    _fnode.Nodes.Clear();
                    foreach (MD_ConceptItem _item in _itemDefines)
                    {
                        TreeListNode _newnode = treeList1.AppendNode(null, _fnode);
                        _newnode.SetValue(this.treeListColumn1, _item);
                        _newnode.HasChildren = false;
                    }
                }
            }
        }
 public MD_ViewTable GetMainTableOfQueryModel(MD_QueryModel _qm)
 {
     return(MetaDataFactroy.GetMainTableOfQueryModel(_qm));
 }
Beispiel #29
0
        /// <summary>
        /// 建立查询模型
        /// </summary>
        /// <param name="_queryModel"></param>
        /// <returns></returns>
        public static MDModel_QueryModel CreateQuery_ModelDefine(MD_QueryModel _queryModel)
        {
            //通过查询模型的基础定义建立查询时模型定义
            MDModel_QueryModel _ret = new MDModel_QueryModel();

            _ret.NameSpaceName      = _queryModel.NamespaceName;
            _ret.QueryModelName     = _queryModel.QueryModelName;
            _ret.FullQueryModelName = _queryModel.FullName;
            _ret.QueryInterface     = _queryModel.QueryInterface;
            _ret.DisplayName        = _queryModel.DisplayTitle;
            MDModel_Table _mtable = new MDModel_Table(_queryModel.QueryModelName, _queryModel.QueryModelID, _queryModel.MainTable);

            _ret.MainTable      = _mtable;
            _ret.ChildTables    = new List <MDModel_Table>();
            _ret.ChildTableDict = new Dictionary <string, MDModel_Table>();
            foreach (MD_ViewTable _ctable in _queryModel.ChildTables)
            {
                MDModel_Table _ct = new MDModel_Table(_queryModel.QueryModelName, _queryModel.QueryModelID, _ctable);
                _ret.ChildTables.Add(_ct);
                _ret.ChildTableDict.Add(_ct.TableName, _ct);
            }

            //重建字段的别名
            int _aliasIndex = 0;

            _ret.MainTable.AliasDict = new Dictionary <string, MDModel_Table_Column>();
            foreach (MDModel_Table_Column _mtc in _ret.MainTable.Columns)
            {
                string _aliasName = "A" + _aliasIndex.ToString();
                _mtc.ColumnAlias = _aliasName;
                _aliasIndex++;
                _ret.MainTable.AliasDict.Add(_aliasName, _mtc);
            }

            foreach (MDModel_Table _ctable in _ret.ChildTableDict.Values)
            {
                int _childIndex = 0;
                int _cIndex     = _childIndex;

                if (_ctable.TableDefine.ViewTableRelationType == MDType_ViewTableRelation.SingleChildRecord)
                {
                    _cIndex = _aliasIndex;
                }
                else
                {
                    _cIndex = _childIndex;
                }
                _ctable.AliasDict = new Dictionary <string, MDModel_Table_Column>();
                foreach (MDModel_Table_Column _mtc in _ctable.Columns)
                {
                    string _aliasName = "A" + _cIndex.ToString();
                    _cIndex++;
                    _mtc.ColumnAlias = _aliasName;
                    _ctable.AliasDict.Add(_aliasName, _mtc);
                }
                if (_ctable.TableDefine.ViewTableRelationType == MDType_ViewTableRelation.SingleChildRecord)
                {
                    _aliasIndex = _cIndex;
                }
            }

            return(_ret);
        }
 public MD_QueryModel SaveData()
 {
     _model = this.queryModelManager1.SaveNew();
     return(_model);
 }