Пример #1
0
        private static string GetSchemaList(string dtb, string user)
        {
            string sErr              = "";
            string result            = Properties.Resources.SCHEMALIST;
            CoreQD_SCHEMAControl ctr = new CoreQD_SCHEMAControl();
            DataTable            dt  = ctr.GetAll(dtb, ref sErr);

            if (user != "TVC")
            {
                sErr = BUS.CoreDAControl.SetDataAccessGroup("DAG", dt, user);
            }
            XmlDocument doc = new XmlDocument();

            doc.LoadXml(result);
            XmlElement docele = doc.DocumentElement;

            foreach (DataRow row in dt.Rows)
            {
                //<row table="AllMovement" Description="All Movement" module="AllMovement"/>
                if (row["SCHEMA_STATUS"].ToString().Trim() == "Y")
                {
                    XmlElement ele = doc.CreateElement("row");
                    ele.SetAttribute("table", row["SCHEMA_ID"].ToString());
                    ele.SetAttribute("Description", row["DESCRIPTN"].ToString());
                    ele.SetAttribute("module", row["SCHEMA_ID"].ToString());
                    ele.SetAttribute("lookup", row["LOOK_UP"].ToString());
                    docele.AppendChild(ele);
                }
            }
            result = doc.InnerXml;
            return(result);
        }
Пример #2
0
        private static string GetJoinSchema(string dtb)
        {
            string sErr                = "";
            string result              = System.Convert.ToString(Properties.Resources.ResourceManager.GetObject(JoinsDefinition));
            CoreQD_SCHEMAControl ctr   = new CoreQD_SCHEMAControl();
            DataTable            value = ctr.GetJoins(dtb, ref sErr);
            string tmp = "";

            if (value.Rows.Count > 0)
            {
                foreach (DataRow row in value.Rows)
                {
                    if (!row[0].ToString().Contains("schema"))
                    {
                        if (row[0].ToString()[0] == '<')
                        {
                            tmp += row[0].ToString();
                        }
                        else
                        {
                            tmp += Base64ToString(row[0].ToString());
                        }
                    }
                }
                //return result;
            }
            //tmp = Base64ToString(tmp);
            XmlDocument doc = new XmlDocument();

            doc.LoadXml(result);
            XmlElement docele = doc.DocumentElement;

            if (tmp != "")
            {
                docele.InnerXml = tmp;
                return(doc.InnerXml);
            }
            DataTable dt = ctr.GetAll(dtb, ref sErr);

            foreach (DataRow irow in dt.Rows)
            {
                //<row fromcode ="Movement" lookup="(SELECT * FROM TVC_MFMOVXXX WHERE Not Hold='Y')"/>
                string       schema = irow["FROM_TEXT"].ToString();
                DataSet      dset   = new DataSet("Schema");
                DataTable    dtfrom = new DataTable("fromcode");
                DataColumn[] col    = new DataColumn[] { new DataColumn("fromcode"), new DataColumn("lookup") };
                dtfrom.Columns.AddRange(col);
                dset.Tables.Add(dtfrom);
                StringReader strR = new StringReader(schema);
                dset.ReadXml(strR);
                strR.Close();
                string newValue = "";
                foreach (DataRow jrow in dtfrom.Rows)
                {
                    //newValue += string.Format("<row fromcode=\"{0}\" lookup=\"{1}\"/> ", jrow["fromcode"], jrow["lookup"]);
                    XmlElement ele = doc.CreateElement("row");
                    ele.SetAttribute("fromcode", jrow["fromcode"].ToString());
                    ele.SetAttribute("lookup", jrow["lookup"].ToString());
                    docele.AppendChild(ele);
                }
                //CoreQD_SCHEMAInfo info = new CoreQD_SCHEMAInfo(irow);
                //if (info.FIELD_TEXT != "")
                //{
                //    info.FROM_TEXT = newValue;
                //    ctr.Update(info);
                //}
            }
            result = doc.InnerXml;
            return(result);
        }