Beispiel #1
0
 private void txtTable_Validated(object sender, EventArgs e)
 {
     BUS.LIST_QD_SCHEMAControl schctr = new LIST_QD_SCHEMAControl();
     DTO.LIST_QD_SCHEMAInfo    schInf = schctr.Get(_sqlBuilder.Database, _sqlBuilder.Table, ref _sErr);
     _sqlBuilder.ConnID = schInf.DEFAULT_CONN;
     GetDescSource();
 }
Beispiel #2
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            string sErr = "";

            BUS.LIST_QD_SCHEMAControl ctr = new BUS.LIST_QD_SCHEMAControl();
            DTO.LIST_QD_SCHEMAInfo    inf = new DTO.LIST_QD_SCHEMAInfo();

            if (_processStatus == "C")
            {
                if (!ctr.IsExist(_db, txtCode.Text))
                {
                    ctr.Add(GetDataFromForm(inf), ref sErr);
                }
                else
                {
                    sErr = txtCode.Text.Trim() + " is exist!";
                }
            }
            else if (_processStatus == "A")
            {
                sErr = ctr.InsertUpdate(GetDataFromForm(inf));
            }
            if (sErr == "")
            {
                _processStatus = "V";
                EnableForm(false);
            }
            else
            {
                MessageBox.Show(sErr);
            }
        }
Beispiel #3
0
        private void btnView_Click(object sender, EventArgs e)
        {
            string sErr = "";

            _processStatus = "V";
            frmQDADDView frm = new frmQDADDView(_db, _user);

            //frm.Connect = _db;
            if (frm.ShowDialog() == DialogResult.OK)
            {
                if (frm.ReturnCode != "")
                {
                    BUS.LIST_QD_SCHEMAControl ctr = new BUS.LIST_QD_SCHEMAControl();
                    DTO.LIST_QD_SCHEMAInfo    inf = ctr.Get(_db, frm.ReturnCode, ref sErr);
                    SetDataToForm(inf);
                }
            }
            if (sErr == "")
            {
                EnableForm(false);
                _processStatus = "V";
            }
            dgvFrom.AutoSizeColumns();
            dgvField.AutoSizeColumns();
        }
Beispiel #4
0
        private DataSet ReadScheme(DTO.LIST_QD_SCHEMAInfo inf)
        {
            DataSet ds = _data.Clone();

            if (inf.FIELD_TEXT == "")
            {
                StringReader strR = new StringReader(inf.FROM_TEXT);
                try
                {
                    ds.ReadXml(strR);
                }
                catch (Exception ex)
                {
                    if (MessageBox.Show("Schema structure is erro!\n Do you want to delete it?", "Message", MessageBoxButtons.OKCancel) == DialogResult.OK)
                    {
                        btnDelete_Click(null, null);
                    }
                }
                strR.Close();
                return(ds);
            }
            else
            {
                XmlDocument xml     = new XmlDocument();
                string      content = inf.FROM_TEXT;
                if (content.Length > 0 && content[0] != '<')
                {
                    content = Form_QD.Base64ToString(content);
                }
                string strxml = string.Format("<?xml version=\"1.0\" encoding=\"utf-8\" ?><SUN_SCHEMA>{0}</SUN_SCHEMA>", content);
                xml.LoadXml(strxml);
                XmlElement doc    = xml.DocumentElement;
                DataTable  dtfrom = ds.Tables["fromcode"];
                foreach (XmlElement ele in doc.ChildNodes)
                {
                    DataRow newRow = dtfrom.NewRow();
                    newRow["fromcode"] = ele.GetAttribute("fromcode");
                    newRow["lookup"]   = ele.GetAttribute("lookup");

                    dtfrom.Rows.Add(newRow);
                }
                xml.LoadXml(inf.FIELD_TEXT);
                doc = xml.DocumentElement;
                DataTable dtfield = ds.Tables["_TableName"];
                foreach (XmlElement ele in doc.ChildNodes)
                {
                    DataRow newRow = dtfield.NewRow();
                    newRow["node"]     = ele.GetAttribute("node");
                    newRow["name"]     = ele.GetAttribute("name");
                    newRow["table"]    = ele.GetAttribute("table");
                    newRow["nodeDesc"] = ele.GetAttribute("nodeDesc");
                    newRow["type"]     = ele.GetAttribute("type");
                    dtfield.Rows.Add(newRow);
                }

                return(ds);
            }
        }
Beispiel #5
0
 private void FrmTransferOut_Load(object sender, EventArgs e)
 {
     if (_type == "QD")
     {
         BUS.LIST_QDControl control = new BUS.LIST_QDControl();
         dt = control.GetTransferOut_LIST_QD(_db, QD_CODE, ref sErr);
     }
     else if (_type == "QDADD")
     {
         BUS.LIST_QD_SCHEMAControl control = new BUS.LIST_QD_SCHEMAControl();
         if (QD_CODE != "")
         {
             DTO.LIST_QD_SCHEMAInfo inf = control.Get(_db, QD_CODE, ref sErr);
             dt = inf.ToDataTable();
             dt.Rows.Add(inf.ToDataRow(dt));
             dt.TableName = "Table";
         }
         else
         {
             dt = control.GetAll(_db, ref sErr);
         }
     }
     else if (_type == "TASK")
     {
         BUS.LIST_TASKControl control = new BUS.LIST_TASKControl();
         if (QD_CODE != "")
         {
             DTO.LIST_TASKInfo inf = control.Get(_db, QD_CODE, ref sErr);
             dt = DTO.LIST_TASKInfo.ToDataTable();
             dt.Rows.Add(inf.ToDataRow(dt));
             dt.TableName = "Table";
         }
         else
         {
             dt = control.GetAll(_db, ref sErr);
         }
     }
     else if (_type == "POD")
     {
         BUS.PODControl control = new BUS.PODControl();
         if (QD_CODE != "")
         {
             DTO.PODInfo inf = control.Get(QD_CODE, ref sErr);
             dt = DTO.PODInfo.ToDataTable();
             dt.Rows.Add(inf.ToDataRow(dt));
             dt.TableName = "Table";
         }
         else
         {
             dt = control.GetAll(ref sErr);
         }
     }
     dtEnd = dt.Copy();
     radGridView1.DataSource = dtEnd;
     radGridView1.RetrieveStructure();
 }
Beispiel #6
0
        private void GetConnectString()
        {
            BUS.LIST_QD_SCHEMAControl schCtr = new LIST_QD_SCHEMAControl();

            DTO.LIST_QD_SCHEMAInfo schInf = schCtr.Get(_sqlBuilder.Database, _sqlBuilder.Table, ref sErr);
            string keyconn       = schInf.DEFAULT_CONN;
            string connectstring = _config.GetConnection(ref keyconn, "AP");

            _sqlBuilder.ConnID        = keyconn;
            _sqlBuilder.StrConnectDes = connectstring;
            //_ = connectstring;
        }
Beispiel #7
0
        private void SetDataToForm()
        {
            txtDB.Text = _sqlBuilder.Database;
            //lbDBDesc.Text = _sqlBuilder.Database;
            txtLedger.Text = _sqlBuilder.Ledger;
            //lbLedgerDesc.Text = _sqlBuilder.Ledger;
            txtTable.Text = _sqlBuilder.Table;

            BUS.LIST_QD_SCHEMAControl schctr = new LIST_QD_SCHEMAControl();
            DTO.LIST_QD_SCHEMAInfo    schInf = schctr.Get(_sqlBuilder.Database, _sqlBuilder.Table, ref _sErr);
            _sqlBuilder.ConnID = schInf.DEFAULT_CONN;
            GetDescSource();

            lbTableDesc_TextChanged(null, null);
            //dgvFilter.DataSource = _sqlBuilder.Filters;
            //dgvSelectNodes.DataSource = _sqlBuilder.SelectedNodes;
        }
Beispiel #8
0
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            string sErr = "";

            BUS.LIST_QD_SCHEMAControl ctr = new BUS.LIST_QD_SCHEMAControl();
            DataTable dt = ctr.GetAll(_db, ref sErr);

            foreach (DataRow row in dt.Rows)
            {
                DTO.LIST_QD_SCHEMAInfo inf = new DTO.LIST_QD_SCHEMAInfo(row);
                try
                {
                    if (inf.FROM_TEXT[0] == '<')
                    {
                    }
                    _data.Tables["_TableName"].Rows.Clear();
                    _data.Tables["fromcode"].Rows.Clear();
                    _data = ReadScheme(inf);
                    DataTable dtfield = _data.Tables["_TableName"];
                    string    field   = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><SUN_SCHEMA>{0}</SUN_SCHEMA>";
                    string    tmp     = "";
                    string    from    = "";
                    foreach (DataRow jrow in dtfield.Rows)
                    {
                        tmp += string.Format("<row table=\"{0}\" node=\"{1}\" name=\"{2}\" nodeDesc=\"{3}\" type=\"{4}\" conn_id=\"{5}\"/>", jrow["table"], jrow["node"], jrow["name"], jrow["nodeDesc"], jrow["type"], inf.DEFAULT_CONN);
                    }
                    DataTable dtfrom = _data.Tables["fromcode"];
                    field = string.Format(field, tmp);
                    tmp   = "";
                    foreach (DataRow jrow in dtfrom.Rows)
                    {
                        tmp += string.Format("<row fromcode=\"{0}\" lookup=\"{1}\"/> ", jrow["fromcode"], frmQDADD.XmlEncode(jrow["lookup"].ToString()));
                    }
                    from = tmp;

                    //result = doc.InnerXml;
                    inf.FIELD_TEXT = field;
                    inf.FROM_TEXT  = Form_QD.StringToBase64(from);
                    ctr.Update(inf);
                }
                catch (Exception ex)
                { }
            }
        }
Beispiel #9
0
        private void SetDataToForm(DTO.LIST_QD_SCHEMAInfo inf)
        {
            RefreshForm("");
            Group.Text          = inf.DAG;
            ddlQD.Text          = inf.DEFAULT_CONN;
            txtDescription.Text = inf.DESCRIPTN;
            txtLookup.Text      = inf.LOOK_UP;
            txtCode.Text        = inf.SCHEMA_ID;
            _code          = txtCode.Text.Trim();
            ckbUse.Checked = inf.SCHEMA_STATUS.Trim() == "Y" ? true : false;

            _data = ReadScheme(inf);
            bsFROMCODE.DataSource = _data.Tables["fromcode"];
            bsField.DataSource    = _data.Tables["_TableName"];


            //strR = new StringReader(inf.FROM_TEXT);
            //_data.Tables["fromcode"].ReadXml(strR);
            //strR.Close();
        }
Beispiel #10
0
        private DTO.LIST_QD_SCHEMAInfo GetDataFromForm(DTO.LIST_QD_SCHEMAInfo inf)
        {
            inf.CONN_ID      = _db;
            inf.DEFAULT_CONN = ddlQD.Text;
            inf.DESCRIPTN    = txtDescription.Text;
            inf.LOOK_UP      = txtLookup.Text;
            inf.UPDATED      = DateTime.Today.Year * 10000 + DateTime.Today.Month * 100 + DateTime.Today.Day;
            //if (inf.FIELD_TEXT != "")
            //{
            DataTable dtfield = _data.Tables["_TableName"];
            string    field   = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><SUN_SCHEMA>{0}</SUN_SCHEMA>";
            string    tmp     = "";
            string    from    = "";

            foreach (DataRow jrow in dtfield.Rows)
            {
                tmp += string.Format("<row table=\"{0}\" node=\"{1}\" name=\"{2}\" nodeDesc=\"{3}\" type=\"{4}\" conn_id=\"{5}\"/>", jrow["table"], jrow["node"], jrow["name"], jrow["nodeDesc"], jrow["type"], inf.DEFAULT_CONN);
            }
            DataTable dtfrom = _data.Tables["fromcode"];

            field = string.Format(field, tmp);
            tmp   = "";
            foreach (DataRow jrow in dtfrom.Rows)
            {
                tmp += string.Format("<row fromcode=\"{0}\" lookup=\"{1}\" /> ", jrow["fromcode"], XmlEncode(jrow["lookup"].ToString()));
            }
            from = tmp;

            inf.FIELD_TEXT = field;
            inf.FROM_TEXT  = Form_QD.StringToBase64(from);

            inf.SCHEMA_ID     = txtCode.Text;
            inf.SCHEMA_STATUS = ckbUse.Checked ? "Y" : "N";
            inf.DAG           = Group.Text;
            return(inf);
        }
Beispiel #11
0
        private void btnRelation_Click(object sender, EventArgs e)
        {
            string       sErr    = "";
            frmQDADDView frmview = new frmQDADDView(_db, _user);

            frmview.Conn_ID = ddlQD.Text;

            if (frmview.ShowDialog() == DialogResult.OK && frmview.ReturnCode != "")
            {
                frmRelation frm = new frmRelation();
                frm.DTOriginal = _data.Tables["_TableName"];
                BUS.LIST_QD_SCHEMAControl ctr = new BUS.LIST_QD_SCHEMAControl();
                DTO.LIST_QD_SCHEMAInfo    inf = ctr.Get(_db, frmview.ReturnCode, ref sErr);
                if (inf.SCHEMA_ID != "")
                {
                    try
                    {
                        ////string result = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><SUN_SCHEMA></SUN_SCHEMA>";
                        //XmlDocument doc = new XmlDocument();
                        //doc.LoadXml(inf.FIELD_TEXT);
                        //XmlElement docele = doc.DocumentElement;

                        ////<row table="M5" node="Lookup" name="Lookup" type=""/>
                        //string schema = inf.FROM_TEXT;
                        DataSet dset = ReadScheme(inf);
                        //dset = ReadScheme(inf);
                        //DataTable dtfrom = new DataTable("fromcode");
                        //DataColumn[] colfrom = new DataColumn[] { new DataColumn("fromcode"), new DataColumn("lookup") };
                        //dtfrom.Columns.AddRange(colfrom);

                        //    DataTable dtfield = new DataTable("_TableName");
                        //    DataColumn[] colfield = new DataColumn[] { new DataColumn("node")
                        //, new DataColumn("table")
                        //, new DataColumn("name")
                        //, new DataColumn("nodeDesc")
                        //, new DataColumn("type")};
                        //    dtfield.Columns.AddRange(colfield);

                        //    //dset.Tables.Add(dtfrom);
                        //    dset.Tables.Add(dtfield);
                        //    //DataRelation relation = new DataRelation("R_field", dtfrom.Columns["fromcode"], dtfield.Columns["table"], true);
                        //    //dset.Relations.Add(relation);
                        //    StringReader strR = new StringReader(schema);
                        //    dset.ReadXml(strR);
                        frm.DTLooup = dset.Tables["_TableName"];
                        if (frm.ShowDialog() == DialogResult.OK)
                        {
                            DataTable dtR      = frm.Relation;
                            DataRow   fromRow  = _data.Tables["fromcode"].NewRow();
                            DataRow   fieldRow = _data.Tables["_TableName"].NewRow();
                            fieldRow["node"]    = frmview.ReturnCode;
                            fieldRow["name"]    = frmview.ReturnCode + "Record";
                            fieldRow["type"]    = "S";
                            fieldRow["table"]   = txtCode.Text.Trim();
                            fromRow["fromcode"] = String.Format("{0}\\{1}", txtCode.Text.Trim(), frmview.ReturnCode);
                            string lookup = "";
                            foreach (DataRow row in dtR.Rows)
                            {
                                if (row["Original"].ToString().Contains(" "))
                                {
                                    row["Original"] = String.Format("[{0}]", row["Original"]);
                                }
                                if (row["lookup"].ToString().Contains(" "))
                                {
                                    row["lookup"] = String.Format("[{0}]", row["lookup"]);
                                }
                                lookup += String.Format(" and {0}.{1} = {2}.{3}", txtCode.Text.Trim(), row["Original"], frmview.ReturnCode, row["lookup"]);
                            }
                            fromRow["lookup"] = lookup.Substring(5);
                            _data.Tables["fromcode"].Rows.Add(fromRow);
                            if (dgvField.CurrentRow != null && dgvField.CurrentRow.RowIndex >= 0)
                            {
                                _data.Tables["_TableName"].Rows.InsertAt(fieldRow, dgvField.CurrentRow.RowIndex);
                            }
                            else
                            {
                                _data.Tables["_TableName"].Rows.Add(fieldRow);
                            }
                        }
                    }
                    catch (Exception ex) { lbErr.Text = ex.Message; }
                }
            }
        }