Пример #1
0
/*====================================================*/

        public void DBNavElement_Load(cSQLDBConn aDBConn, String aTableName, String aParentKey,
                                      int aModuleID, int aCompetitionID)
        {
            DataSet aDS = aDBConn.FillDataSetTable("Table1",
                                                   "select * from " + aTableName + " where parent_key = '" + aParentKey + "'" +
                                                   " and module_id = " + aModuleID +
                                                   " and competition_report_id = " + aCompetitionID +
                                                   " order by sort_order");

            foreach (DataRow aRow in aDS.Tables["Table1"].Rows)
            {
                cDBNavElement aNavElement = new cDBNavElement(aRow["page_key"].ToString(), aRow["page_title"].ToString());

                if (aRow["nav_title"].ToString() == "(")        //Separator
                {
                    aNavElement.NavTitle = " ";
                }
                else
                {
                    aNavElement.NavTitle = aRow["nav_title"].ToString();
                }

                aNavElement.EnabledAfterSubmit = Convert.ToBoolean(aRow["available_after_submit"]);
                aNavElement.SourceFile         = aRow["source_file"].ToString();
                aNavElement.HelpFile           = aRow["help_file"].ToString();

                if (aRow["Target"].ToString() != "")
                {
                    aNavElement.Target = aRow["target"].ToString();
                }

                Add_NavElement(aNavElement);
                aNavElement.DBNavElement_Load(aDBConn, aTableName, aRow["page_key"].ToString(), aModuleID, aCompetitionID);
            }
        }
Пример #2
0
/*-----------------------------------------------------*/

        public void DBNavElement_Load(String aConnStr, String aTableName,
                                      int aModuleID, int aCompetitionID)
        {
            cSQLDBConn aDBConn = new cSQLDBConn(aConnStr);

            DBNavElement_Load(aDBConn, aTableName, "", aModuleID, aCompetitionID);
            aDBConn.CloseDBConnection();
        }
Пример #3
0
        /*-----------------------------------------------------*/

        private cXMLDoc BuildDataDefinitionFromDB(HttpApplication aHttpApp, cXMLDoc aDoc)
        {
            String        aConnString = "", aChild;
            StringBuilder aXML          = new StringBuilder();
            XmlNodeList   aDataNodeList = aDoc.DocElement.SelectNodes("DataSources/DataSource");

            foreach (XmlNode aDataNode in aDataNodeList)
            {
                XmlNodeList aReleaseNodeList = aDataNode.SelectNodes("ReleaseBuild[@BuildKey='" + BuildKey + "']");

                if (aReleaseNodeList.Count > 0)
                {
                    XmlNode aArgNode = aDataNode.SelectSingleNode("Class/Arguments/Argument");
                    aConnString = cXMLDoc.AttributeToString(aArgNode, "Value");
                    break;
                }
            }
            IDataReader aReader, aPropertyRD, aRelatedRD;
            cSQLDBConn  aConn, aPropertyConn, aRelatedConn;

            aConn = new cSQLDBConn(aConnString);
            SqlCommand aCmd = new SqlCommand("select * from a_DATA_DEFINITION", (SqlConnection)aConn.DBConnection);

            aReader = aCmd.ExecuteReader();

            while (aReader.Read())
            {
                aXML.Append("<Definition Key='");
                aXML.Append(aReader.GetValue(1).ToString());
                aXML.Append("' DataSourceKey='");
                aXML.Append(aReader.GetValue(2).ToString());
                aXML.Append("' RowSource='");
                aXML.Append(aReader.GetValue(3).ToString());
                aXML.Append("'><Class Name='");
                aXML.Append(aReader.GetValue(4).ToString());
                aXML.Append("' Assembly='");
                aXML.Append(aReader.GetValue(5).ToString());
                aXML.Append("' FullName='");
                aXML.Append(aReader.GetValue(6).ToString());
                aXML.Append("'></Class><Properties>");

                aPropertyConn = new cSQLDBConn(aConnString);
                aCmd          = new SqlCommand("select * from a_DATA_PROPERTY where data_definition_id=" + aReader.GetValue(0).ToString(), (SqlConnection)aPropertyConn.DBConnection);
                aPropertyRD   = aCmd.ExecuteReader();

                while (aPropertyRD.Read())
                {
                    aXML.Append("<Property Key='");
                    aXML.Append(aPropertyRD.GetValue(2).ToString());
                    aXML.Append("' IsPrimaryKey='");
                    aXML.Append(aPropertyRD.GetValue(3).ToString());
                    aXML.Append("' IsIdentity='");
                    aXML.Append(aPropertyRD.GetValue(4).ToString());
                    aXML.Append("' DataType='");
                    aXML.Append(aPropertyRD.GetValue(5).ToString());
                    aXML.Append("' ColumnSource='");
                    aXML.Append(aPropertyRD.GetValue(6).ToString());
                    aXML.Append("'>");
                    aChild = aPropertyRD.GetValue(8).ToString();
                    if (aChild != "")
                    {
                        aXML.Append("<Relationship Type='");
                        aXML.Append(aPropertyRD.GetValue(7).ToString());
                        aXML.Append("' ChildDefinitionKey='");
                        aXML.Append(aChild);
                        aXML.Append("'><RelationshipProperties>");

                        aRelatedConn = new cSQLDBConn(aConnString);
                        aCmd         = new SqlCommand("select * from a_DATA_RELATED_PROPERTY where data_property_id=" + aPropertyRD.GetValue(0).ToString(), (SqlConnection)aRelatedConn.DBConnection);
                        aRelatedRD   = aCmd.ExecuteReader();

                        while (aRelatedRD.Read())
                        {
                            aXML.Append("<RelationshipProperty parentProperty='");
                            aXML.Append(aRelatedRD.GetValue(2).ToString());
                            aXML.Append("' childProperty='");
                            aXML.Append(aRelatedRD.GetValue(3).ToString());
                            aXML.Append("'/>");
                        }
                        aRelatedRD.Close();
                        aXML.Append("</RelationshipProperties></Relationship>");
                    }
                    aXML.Append("</Property>");
                }
                aPropertyRD.Close();
                aXML.Append("</Properties></Definition>");
            }
            aReader.Close();
            XmlElement aElem = aDoc.XMLDocument.CreateElement("DataObjectDefinitions");

            aElem.InnerXml = aXML.ToString();
            aDoc.DocElement.AppendChild(aElem);

            return(aDoc);
        }