Пример #1
0
        /// <summary>
        /// 初始化查询模板信息
        /// </summary>
        /// <param name="p_trnQueryMode">查询模板的树节点。如果节点不是查询模板节点,不做任何操作</param>
        private void m_mthInitQueryModeInfo(TreeNode p_trnQueryMode)
        {
            m_mthClearQueryInfo();

            if (!m_blnIsQueryModeTreeNode(p_trnQueryMode))
            {
                return;
            }

            clsStatisticQueryModeValue  objQueryMode  = (clsStatisticQueryModeValue)p_trnQueryMode.Tag;
            clsStatisticDefinitionValue objDefinition = (clsStatisticDefinitionValue)p_trnQueryMode.Parent.Tag;

            m_mthInitQueryDisplayField(objDefinition, objQueryMode);
            m_mthInitQueryDetail(objDefinition, objQueryMode);
        }
Пример #2
0
		public long m_lngAddNewStatisticMode(clsStatisticQueryModeValue p_objStatisticQueryModeValue, out string p_strQueryID)
		{
            clsStatisticsService m_objService =
                (clsStatisticsService)com.digitalwave.iCare.common.clsObjectGenerator.objCreatorObjectByType(typeof(clsStatisticsService));

            long lngRes = 0;
            try
            {
                lngRes =(m_objService.m_lngAddNewStatisticMode (p_objStatisticQueryModeValue, out p_strQueryID));
            }
            finally
            {
                ////m_objService.Dispose();
            }
            return lngRes;
		}
Пример #3
0
        /// <summary>
        /// 查询
        /// </summary>
        private void m_mthSearch()
        {
            m_lsvQueryResult.Items.Clear();

            TreeNode trnCurrentQueryMode = trvSearchType.SelectedNode;

            //判断是否查询模板的节点
            if (!m_blnIsQueryModeTreeNode(trnCurrentQueryMode))
            {
                return;
            }

            clsStatisticQueryModeValue  objQueryMode  = (clsStatisticQueryModeValue)trnCurrentQueryMode.Tag;
            clsStatisticDefinitionValue objDefinition = (clsStatisticDefinitionValue)trnCurrentQueryMode.Parent.Tag;

            m_mthMakeXmlContentValue();

            string [,] strQueryReslutDArr = m_strGetResultArr(objDefinition, objQueryMode);

            m_mthDisplayResult(objDefinition, strQueryReslutDArr);
        }
Пример #4
0
        /// <summary>
        /// 把Xml中用户定义值放置在DataGrid
        /// </summary>
        /// <param name="p_objDefinition">查询类型</param>
        /// <param name="p_objQueryMode">查询模板</param>
        private void m_mthLoadXmlToDataGrid(clsStatisticDefinitionValue p_objDefinition, clsStatisticQueryModeValue p_objQueryMode)
        {
            if (p_objDefinition == null || p_objQueryMode == null || m_blnIsEmptyString(p_objQueryMode.m_strXMLContent))
            {
                return;
            }

            XmlDocument objXmlDoc = new XmlDocument();

            try
            {
                objXmlDoc.LoadXml(p_objQueryMode.m_strXMLContent);
            }
            catch
            {
                return;
            }

            XmlNodeList xnlUserCondition = objXmlDoc.GetElementsByTagName(c_strUserCondiction);

            if (xnlUserCondition.Count <= 0)
            {
                return;
            }

            clsStatisticCondictionOptionValue [] objCondictionOptionArr = (clsStatisticCondictionOptionValue [])m_hasConditionField[p_objDefinition.m_strStatistic_ID];

            if (objCondictionOptionArr == null)
            {
                long lngRes = m_objDomain.m_lngGetStatisticCondictionOptionValue(p_objDefinition.m_strStatistic_ID, out objCondictionOptionArr);

                if (lngRes <= 0 || objCondictionOptionArr == null)
                {
                    return;
                }

                m_hasConditionField[p_objDefinition.m_strStatistic_ID] = objCondictionOptionArr;
            }

            foreach (XmlNode xndCondition in xnlUserCondition)
            {
                XmlNode xndParentCondition = xndCondition;

                m_mthAddUserConditionToDataGrid(xndCondition, objCondictionOptionArr);
            }

            dataGrid1.Tag = objXmlDoc;
        }
Пример #5
0
        /// <summary>
        /// 获取查询结果
        /// </summary>
        /// <param name="p_objDefinition">查询类型</param>
        /// <param name="p_objQueryMode">查询模板</param>
        /// <returns></returns>
        private string [,] m_strGetResultArr(clsStatisticDefinitionValue p_objDefinition, clsStatisticQueryModeValue p_objQueryMode)
        {
            if (p_objDefinition == null || m_blnIsEmptyString(p_objDefinition.m_strStatisticSQLContent) || m_blnIsEmptyString(p_objDefinition.m_strOpenClassParameters))
            {
                return(null);
            }

            if (p_objQueryMode == null || m_blnIsEmptyString(p_objQueryMode.m_strSelectedFieldIndexes))
            {
                return(null);
            }

            string [,] strQueryReslutDArr = null;
            long lngRes = m_objDomain.m_lngPerformSqlQuery(p_objDefinition.m_strStatisticSQLContent, p_objDefinition.m_strOpenClassParameters, p_objQueryMode.m_strSelectedFieldIndexes.Replace(c_strSplitSelectedFieldSymbol, ","),
                                                           (XmlDocument)dataGrid1.Tag, out strQueryReslutDArr);

            if (lngRes <= 0 || strQueryReslutDArr == null)
            {
                return(null);
            }
            else
            {
                return(strQueryReslutDArr);
            }
        }
Пример #6
0
        /// <summary>
        /// 初始化查询模板细节信息
        /// </summary>
        /// <param name="p_objDefinition">查询类型</param>
        /// <param name="p_objQueryMode">查询模板</param>
        private void m_mthInitQueryDetail(clsStatisticDefinitionValue p_objDefinition, clsStatisticQueryModeValue p_objQueryMode)
        {
            if (p_objDefinition == null || m_blnIsEmptyString(p_objDefinition.m_strStatistic_ID) || p_objQueryMode == null || m_blnIsEmptyString(p_objQueryMode.m_strModeDesc))
            {
                return;
            }

            m_lblSearchDesc.Text = "查询说明:" + p_objQueryMode.m_strModeDesc;

            m_mthLoadXmlToDataGrid(p_objDefinition, p_objQueryMode);
        }
Пример #7
0
        /// <summary>
        /// 初始化查询结果字段
        /// </summary>
        /// <param name="p_objDefinition">查询类型</param>
        /// <param name="p_objQueryMode">查询模板</param>
        private void m_mthInitQueryDisplayField(clsStatisticDefinitionValue p_objDefinition, clsStatisticQueryModeValue p_objQueryMode)
        {
            if (p_objDefinition == null || m_blnIsEmptyString(p_objDefinition.m_strStatistic_ID) || p_objQueryMode == null || m_blnIsEmptyString(p_objQueryMode.m_strSelectedFieldIndexes))
            {
                return;
            }

            clsStatisticSelectedFieldValue [] objSelectedFieldArr = (clsStatisticSelectedFieldValue [])m_hasSelectedField[p_objDefinition.m_strStatistic_ID];

            if (objSelectedFieldArr == null)
            {
                long lngRes = m_objDomain.m_lngGetAllStatisticSelectedField(p_objDefinition.m_strStatistic_ID, out objSelectedFieldArr);

                if (lngRes <= 0 || objSelectedFieldArr == null || objSelectedFieldArr.Length == 0)
                {
                    return;
                }

                m_hasSelectedField[p_objDefinition.m_strStatistic_ID] = objSelectedFieldArr;
            }

            string[] strSelectedFieldsArr = null;
            if (p_objQueryMode.m_strSelectedFieldIndexes.IndexOf(c_strSplitSelectedFieldSymbol) < 0)
            {
                strSelectedFieldsArr    = new string[1];
                strSelectedFieldsArr[0] = p_objQueryMode.m_strSelectedFieldIndexes.Trim();
            }
            else
            {
                strSelectedFieldsArr = p_objQueryMode.m_strSelectedFieldIndexes.Split(c_strSplitSelectedFieldSymbol.ToCharArray());
            }

            for (int i = 0; i < strSelectedFieldsArr.Length; i++)
            {
                for (int j2 = 0; j2 < objSelectedFieldArr.Length; j2++)
                {
                    if (objSelectedFieldArr[j2].m_strFieldName == strSelectedFieldsArr[i])
                    {
                        m_lsvQueryResult.Columns.Add(objSelectedFieldArr[j2].m_strFieldDesc, 120, HorizontalAlignment.Left);
                        break;
                    }
                }
            }
        }