Beispiel #1
0
 //查询窗口添加数据调用
 public void LoadDataByVin(DataView vins)
 {
     try
     {
         if (vins != null && vins.Table.Rows.Count > 0)
         {
             System.Data.DataTable dt = (System.Data.DataTable)gridControl1.DataSource;
             if (dt != null)
             {
                 dt.Merge(vins.Table);
                 string[] strComuns = { "VIN", "CLXH", "TYMC", "RLLX", "CT_ZHGKRLXHL", "ZCZBZL", "CT_BSQXS", "ZWPS", "UPDATEFIELD", "FIELDOLD", "FIELDNEW", "APPLYTYPE" };
                 dt = dt.AsDataView().ToTable(true, strComuns);
                 gridControl1.DataSource = dt;
             }
             else
             {
                 gridControl1.DataSource = vins.ToTable();
             }
             System.Data.DataView dv = ((System.Data.DataTable)gridControl1.DataSource).AsDataView();
             var insert_o            = dv.ToTable(true, "VIN", "APPLYTYPE").Select("APPLYTYPE='补传'");
             var update = dv.ToTable(true, "VIN", "APPLYTYPE").Select("APPLYTYPE='修改'");
             var delete = dv.ToTable(true, "VIN", "APPLYTYPE").Select("APPLYTYPE='撤销'");
             INSERT_O_SL.Text = insert_o.Length.ToString();
             UPDATE_SL.Text   = update.Length.ToString();
             DELETE_SL.Text   = delete.Length.ToString();
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Beispiel #2
0
        private void load_Items()
        {

            try
            {
                String query = "select [ekepis],[eponimia],[praxi],[ypoergo],[kod_programmatos], [titlos_programmatos], [proipologismos], [periferia], [nomos], [dimos], [theoritiki_start_date], [theoritiki_end_date], [praktiki_start_date], [arithmos_katartizomenon], [plithos_elegxon], [synolo_poinon] from Current_data";
                Table_Input_Items = db.GetDataTable(query);
                for (int i = 0; i < Table_Input_Items.Columns.Count; i++)
                {
                    Table_Input_Items.Columns[i].ColumnName = CurrentProject.mf[i].Label;
                }
                DG_Items.ItemsSource = Table_Input_Items.AsDataView();
                CurrentProject.InputItems.Clear();
                CurrentProject.InputItems.Load(Table_Input_Items, CurrentProject.mf);
                CurrentProject.Get_All_Regions();
                LB_total_items.Content = CurrentProject.NumOfItems.ToString();

                ResetSettings();
            }
            catch (Exception fail)
            {
                String error = "The following error has occurred:\n\n";
                error += fail.Message.ToString() + "\n\n";
                MessageBox.Show(error);
                this.Close();
            }
            ApplyRules();
            BT_FileImport_Checks.IsEnabled = true;

        }
 public static DataView GeneratePivotTable(DataTable sourceTable, DateTime startDate)
 {
     var pivotTable = new DataTable();
     GeneratePivotColumns(pivotTable, startDate);
     GeneratePivotRows(sourceTable, pivotTable);
     return pivotTable.AsDataView();
 }
Beispiel #4
0
        //发送申请单
        public bool sendChangeDoc(Dictionary <string, string> data, string sigName)
        {
            string fileName          = String.Format("{0}_{1}", Utils.userId, DateTime.Now.ToFileTime());
            string fileNameExtension = String.Format("{0}_{1}.docx", Utils.userId, DateTime.Now.ToFileTime());
            string filePath          = String.Format(@"{0}\{1}", defaultDirectory.ChangeDoc, fileName);
            string filePathExtension = String.Format(@"{0}\{1}.docx", defaultDirectory.ChangeDoc, fileName);

            try
            {
                System.Data.DataTable dt = (System.Data.DataTable) this.gridControl1.DataSource;
                InitRead(Change, data, filePath, dt.AsDataView());
                FileStream   fs    = new FileStream(filePathExtension, FileMode.Open, FileAccess.Read);
                BinaryReader br    = new BinaryReader(fs);
                byte[]       bytes = br.ReadBytes((int)fs.Length);
                fs.Flush();
                fs.Close();
                int flg = service.UpLoadChangeDoc(bytes, Utils.userId, Utils.password, Utils.qymc, fileNameExtension, fileNameExtension, DateTime.Now, DateTime.Now, 0);
                if (flg > 0)
                {
                    return(true);
                }
                return(false);
            }
            catch
            {
                return(false);
            }
        }
        public CreateWIP1(BatchTreeViewItem sender)
        {
            Sender = sender;
            // WorkItem happens after you click

            InitializeComponent();

            // Do Not Run Until Time
            Time timeUntilTime = new Time(false);
            dataTableUntil = timeUntilTime.TimeDataTable;
            timeUntil.ItemsSource = dataTableUntil.AsDataView();

            // Do Not Run After Time
            Time timeAfterTime = new Time(false); // heh
            dataTableAfter = timeAfterTime.TimeDataTable;
            timeAfter.ItemsSource = dataTableAfter.AsDataView();

            // Recurrence Interval
            Time recurrenceIntervalTime = new Time(true);
            dataTableInterval = recurrenceIntervalTime.TimeDataTable;
            dataGridInterval.ItemsSource = dataTableInterval.AsDataView();

            // Start Window
            Time startWindowTime = new Time(true);
            dataTableWindow = startWindowTime.TimeDataTable;
            dataGridWindow.ItemsSource = dataTableWindow.AsDataView();

            Loaded += OnLoaded;

            MainWindow.Resize(MainGrid);
        }
Beispiel #6
0
        public void simpleButton2_Click(object sender, EventArgs e)
        {
            var data = InitDatas();

            if (data != null)
            {
                SaveFileDialog sfd = new SaveFileDialog()
                {
                    Title = "生成Word", Filter = "Word文件(*.doc)|*.doc", FileName = "变更申请单"
                };
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    sfd.AddExtension     = true;
                    sfd.RestoreDirectory = true;
                    SplashScreenManager.ShowForm(typeof(DevWaitForm));
                    System.Data.DataTable dt = (System.Data.DataTable) this.gridControl1.DataSource;
                    if (!dt.Columns.Contains("DID"))
                    {
                        dt.Columns.Add("DID");
                        dt.Columns["DID"].SetOrdinal(0);
                    }
                    InitRead(Change, data, sfd.FileName, dt.AsDataView());
                    SplashScreenManager.CloseForm();
                    MessageBox.Show("操作成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            else
            {
                MessageBox.Show("请您确认是否已保存", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #7
0
        private void BindGrid()
        {
            DateTime     today = DateTime.Now.Date;
            OleDbCommand cmd   = new OleDbCommand();

            if (con.State != ConnectionState.Open)
            {
                con.Open();
            }
            cmd.Connection  = con;
            cmd.CommandText = "select ID,firstName,lastName,company,arrivalTime,departureTime from guestTable";

            OleDbDataAdapter da = new OleDbDataAdapter(cmd);

            dt = new System.Data.DataTable();
            da.Fill(dt);
            gvData.ItemsSource      = dt.AsDataView();
            gvData.Columns[0].Width = 50;
            gvData.Columns[1].Width = 100;
            gvData.Columns[2].Width = 100;
            gvData.Columns[3].Width = 120;
            gvData.Columns[4].Width = 150;
            gvData.Columns[5].Width = 150;

            gvData.Columns[0].Header = "ID";
            gvData.Columns[1].Header = "Nom";
            gvData.Columns[2].Header = "Prénom";
            gvData.Columns[3].Header = "Societé";
            gvData.Columns[4].Header = "Date d'entrée";
            gvData.Columns[5].Header = "Date de sortie";
        }
Beispiel #8
0
        private void DatePicker_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
        {
            DateTime selectedDate = dpick.SelectedDate.Value;

            OleDbCommand cmd = new OleDbCommand();

            if (con.State != ConnectionState.Open)
            {
                con.Open();
            }
            cmd.Connection  = con;
            cmd.CommandText = "select ID,firstName,lastName,company,arrivalTime, departureTime from guestTable where creationDate = #" + selectedDate.ToString("yyyy/MM/dd", CultureInfo.InvariantCulture) + "#";

            OleDbDataAdapter da = new OleDbDataAdapter(cmd);

            dt = new System.Data.DataTable();
            da.Fill(dt);
            gvData.ItemsSource      = dt.AsDataView();
            gvData.Columns[0].Width = 50;
            gvData.Columns[1].Width = 100;
            gvData.Columns[2].Width = 100;
            gvData.Columns[3].Width = 143;
            gvData.Columns[4].Width = 200;
            gvData.Columns[5].Width = 200;

            gvData.Columns[0].Header = "ID";
            gvData.Columns[1].Header = "Nom";
            gvData.Columns[2].Header = "Prénom";
            gvData.Columns[3].Header = "Societé";
            gvData.Columns[4].Header = "Date d'entrée";
            gvData.Columns[5].Header = "Date de sortie";
        }
        /// <summary>
        /// 排序
        /// </summary>
        /// <param name="list"></param>
        /// <param name="orderByTypes"></param>
        /// <param name="orderByUnqueField"></param>
        /// <returns></returns>
        public static List <DataRow> OrderByDataRow(this IEnumerable <DataRow> list, List <OrderByDictionary> orderByTypes, OrderByDictionary orderByUnqueField)
        {
            orderByTypes.Add(orderByUnqueField);
            var dt          = list.AsEnumerable().CopyToDataTable();
            var guidType    = typeof(Guid);
            var sqlGuidType = typeof(SqlGuid);

            System.Data.DataTable dtByConvertGuidToSqlGuid = new System.Data.DataTable();
            foreach (DataColumn it in dt.Columns)
            {
                var isGuid = it.DataType == guidType;
                if (isGuid)
                {
                    dtByConvertGuidToSqlGuid.Columns.Add(it.ColumnName, sqlGuidType);
                }
                else
                {
                    dtByConvertGuidToSqlGuid.Columns.Add(it.ColumnName, it.DataType);
                }
            }
            //将dataTable中guid换转成sqlguid,这样排序才会和SQL一致
            dtByConvertGuidToSqlGuid.Load(dt.CreateDataReader(), System.Data.LoadOption.OverwriteChanges);
            var view = dtByConvertGuidToSqlGuid.AsDataView();

            view.Sort = string.Join(",", orderByTypes.Select(it => string.Format(" {0} {1} ", it.OrderByField, it.IsAsc ? "ASC" : "DESC")));
            var reval = view.ToTable().AsEnumerable().ToList();

            orderByTypes.Remove(orderByUnqueField);
            return(reval);
        }
        public Einstellungen()
        {
            InitializeComponent();
            string appPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Simple Radio");
            csv = new CSVManager(appPath, "radiolist.csv");
            table = new DataTable("Inhalt");
            table = csv.GetTableFromFile(); //aus radiolist.csv

            dataGrid1.ItemsSource = table.AsDataView();
        }
Beispiel #11
0
 private void PopulateOrders()
 {
     //UpdateGrid(dtgOrders, "SELECT * FROM OrderLine");
     var dt = new DataTable();
     using (var da = new SqlDataAdapter("SELECT * FROM OrderLine", con))
     {
         da.Fill(dt);
     }
     dtgOrders.DataSource = dt.AsDataView();
     con.Close();
  }
        public ResizePool(PoolViewModel pool)
        {
            InitializeComponent();

            Pool = pool;

            // Resize Timeout
            Time resizeTime = new Time(true);
            dataTableResize = resizeTime.TimeDataTable;
            datagridResize.ItemsSource = dataTableResize.AsDataView();
        }
        private void InitTable()
        {
            string[] lines           = WorkingSection.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
            System.Data.DataTable DT = new System.Data.DataTable();
            int  iStart     = 0;
            int  iEnd       = 0;
            bool StartFound = false;

            for (int i = 0; i < lines.Length; i++)
            {
                if (lines[i].Trim().StartsWith(StartKeyWord) && !StartFound)
                {
                    iStart     = i + 1;
                    StartFound = true;
                }
                if (lines[i].Trim().StartsWith(EndKeyWord) && StartFound)
                {
                    iEnd = i;
                    break;
                }
            }

            string[] Cols = null;
            // First row is columns headers

            if (lines.Length > iStart)
            {
                Cols = lines[iStart].Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries);
            }
            else
            {
                return;
            }

            foreach (string col in Cols)
            {
                if (!string.IsNullOrWhiteSpace(col))
                {
                    DT.Columns.Add(col.Trim());
                }
            }

            for (int i = iStart + 1; i < iEnd; i++)
            {
                System.Data.DataRow DR;
                object[]            o = GetColsData(lines[i]);
                if (DT.Columns.Count == o.Length)
                {
                    DR = DT.Rows.Add(o);
                }
            }
            TableDataGrid.ItemsSource = DT.AsDataView();
        }
        void FillData()
        {
            SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=C:\\IDDBShared\\IDDatabase.sqlite;Version=3;");
            m_dbConnection.Open();

            using (SQLiteDataAdapter myAdapter = new SQLiteDataAdapter("select * from ShopStock", m_dbConnection))
            {
                DataTable myData = new DataTable();
                myAdapter.Fill(myData);
                Stock.ItemsSource = myData.AsDataView();
            }
        }
 public Price_Undefined_Window(string sTitle,DataTable xdt_price_Item_view,CodeTables.DBTableControl xdbTables)
 {
     InitializeComponent();
     this.Title = sTitle;
     this.btn_Edit.Content = lngRPM.s_EditPriceList.s;
     this.btn_Cancel.Content = lngRPM.s_Cancel.s;
     dt_price_Item_view = xdt_price_Item_view;
     dbTables = xdbTables;
     this.dgvx_PriceUndefinedItem.ItemsSource = dt_price_Item_view.AsDataView();
     tbl = new SQLTable(dbTables.GetTable(typeof(Atom_cAddress_Org)));
     tbl.CreateTableTree(dbTables.items);
     this.dgvx_PriceUndefinedItem.AutoGeneratedColumns +=dgvx_PriceUndefinedItem_AutoGeneratedColumns;
     //this.dgvx_PriceUndefinedItem.Columns[0].Header =
 }
        void FillData()
        {
            SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=C:\\IDDBShared\\IDDatabase.sqlite;Version=3;");
            m_dbConnection.Open();

            string finder = "select * from StockAdditions WHERE SKUNumber = " + SKUNumber.Content;

            using (SQLiteDataAdapter myAdapter = new SQLiteDataAdapter(finder, m_dbConnection))
            {
                DataTable myData = new DataTable();
                myAdapter.Fill(myData);
                StockAdditions.ItemsSource = myData.AsDataView();
            }
        }
Beispiel #17
0
        void FillData()
        {
            SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=C:\\IDDBShared\\IDDatabase.sqlite;Version=3;");
            m_dbConnection.Open();

            string finder = "select * from Balances WHERE userIDNumber = " + userID.Content;

            using (SQLiteDataAdapter myAdapter = new SQLiteDataAdapter(finder, m_dbConnection))
            {
                DataTable myData = new DataTable();
                myAdapter.Fill(myData);
                YouthTransactions.ItemsSource = myData.AsDataView();
            }
        }
        public CreateWIP2(BatchTreeViewItem sender, WorkItem wi)
        {
            InitializeComponent();
            this.Sender = sender;
            workitem = wi;

            // Wall Clock Time
            Time wallClockTime = new Time(true);
            dataTableWallClock = wallClockTime.TimeDataTable;
            dataGridWallClock.ItemsSource = dataTableWallClock.AsDataView();

            Loaded += OnLoaded;

            MainWindow.Resize(MainGrid);
        }
Beispiel #19
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Title = "任务查看";
            //首次绑定
            if (!IsPostBack)
            {
                ValidatePermission(Request.Url.LocalPath);
                //string rawUrl = Request.Url.LocalPath.TrimStart('/');
                //UserProfile user = UserProfile.GetInstance();
                //bool flag = false;
                //for (int i = 0; i < user.Menu.Count; i++)
                //{
                //    if (user.Menu[i].Path.Contains(rawUrl))
                //    {
                //        flag = true;
                //        break;
                //    }
                //}
                //if (!flag)
                //{
                //    Response.Redirect("Tip.html", true);
                //    Response.End();
                //}

                RepeaterDataBind(false);
                DropDownListDataBind();
            }
            //doPostBack触发的页面回传,以此进行排序
            else
            {
                //EventTarget为Sort时才进行排序
                if (Request.Form["__EVENTTARGET"] == "Sort")
                {
                    string   orderField     = Request.Form["__EVENTARGUMENT"];
                    string   orderDirection = sortOrder.Value;
                    DataView dv             = new DataView();
                    //排序字段为空或者Session["dtTaskListExport"]为空,均无排序必要
                    if (!string.IsNullOrEmpty(orderField) && Session["dtTaskListExport"] != null)
                    {
                        System.Data.DataTable dtTemp = (System.Data.DataTable)Session["dtTaskListExport"];
                        dv                 = dtTemp.AsDataView();
                        dv.Sort            = string.Format("{0} {1}", orderField, orderDirection);
                        rptData.DataSource = dv.ToTable();
                        rptData.DataBind();
                    }
                }
            }
        }
        public CreatePoolP1(BatchTreeViewItem sender, object obj)
        {
            this.Sender = sender;
            InitializeComponent();

            pool = null;
            workitem = null;

            DataTable dataTable2 = new DataTable();
            dataView = dataTable2.AsDataView();
            envGrid.ItemsSource = dataView;
            dataTable2.Columns.Add("Name", typeof(string));
            dataTable2.Columns.Add("Value", typeof(string));
            //envGrid.ColumnWidth = new DataGridLength(1, DataGridLengthUnitType.Star);
            DataRow row2 = dataTable2.NewRow();
            dataTable2.Rows.Add(row2);

            // Resize Timeout
            Time resizeTime = new Time(true);
            dataTableResize = resizeTime.TimeDataTable;
            datagridResize.ItemsSource = dataTableResize.AsDataView();

            if (obj is Pool)
            {
                this.pool = obj as Pool;
            }
            else if (obj is WorkItem)
            {
                lblTitle.Content = "WorkItem Autopool Specifications";
                txtName.IsEnabled = false;
                lblName.IsEnabled = false;
                lblNameStar.Width = 0;
                this.workitem = obj as WorkItem;
            }
            else
            {
                System.Windows.MessageBox.Show("CreatePoolP1.xaml.cs: Improper object passed in");
            }

            btnNext.Content = "Done";

            Loaded += OnLoaded;

            MainWindow.Resize(MainGrid);
        }
        public CreateTaskP1(BatchTreeViewItem sender)
        {
            Sender = sender;
            InitializeComponent();

            // Wall Clock Time
            Time wallClockTime = new Time(true);
            dataTableWallClock = wallClockTime.TimeDataTable;
            dataGridWallClock.ItemsSource = dataTableWallClock.AsDataView();

            // Retention Time
            Time retentionTime = new Time(true);
            dataTableRetention = retentionTime.TimeDataTable;
            dataGridRetention.ItemsSource = dataTableRetention.AsDataView();

            Loaded += OnLoaded;

            MainWindow.Resize(MainGrid);
        }
Beispiel #22
0
        private void btnGetClients_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                DataTable table = new DataTable("Customers");
                using (SqlConnection connection = new SqlConnection(Properties.Settings.Default.Database))
                {
                    string query = "SELECT firstname, lastname, address, city FROM vCustomers";
                    SqlDataAdapter adapter = new SqlDataAdapter(query, connection);
                    adapter.Fill(table);
                    connection.Close();
                }
                lbClients.ItemsSource = table.AsDataView();
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        public CreateWIP3(BatchTreeViewItem sender, WorkItem parent)
        {
            this.workitem = parent;
            this.Sender = sender;
            InitializeComponent();

            // Wall Clock Time
            Time wallClockTime = new Time(true);
            dataTableWallClock = wallClockTime.TimeDataTable;
            dataGridWallClock.ItemsSource = dataTableWallClock.AsDataView();

            // Retention Time
            Time retentionTime = new Time(true);
            dataTableRetention = retentionTime.TimeDataTable;
            dataGridRetention.ItemsSource = dataTableRetention.AsDataView();

            Loaded += OnLoaded;

            MainWindow.Resize(MainGrid);
        }
Beispiel #24
0
        void FillData()
        {
            SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=C:\\IDDBShared\\IDDatabase.sqlite;Version=3;");
            m_dbConnection.Open();

            using (SQLiteDataAdapter myAdapter = new SQLiteDataAdapter("select * from Users", m_dbConnection))
            {
                DataTable myData = new DataTable();
                myAdapter.Fill(myData);
                UserID.ItemsSource = myData.AsDataView();
            }

            //            string sql = "select * from Users";
            //            SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
            //            SQLiteDataReader reader = command.ExecuteReader();

            //            while (reader.Read())
            //            {
            //
            //            }
        }
Beispiel #25
0
        public void simpleButton2_Click(object sender, EventArgs e)
        {
            var data = InitDatas();

            if (data != null)
            {
                try
                {
                    SplashScreenManager.ShowForm(typeof(DevWaitForm));
                    if (this.saveFileDialog.ShowDialog() == DialogResult.OK)
                    {
                        saveFileDialog.AddExtension     = true;
                        saveFileDialog.RestoreDirectory = true;
                        System.Data.DataTable dt = (System.Data.DataTable) this.gcChangeData.DataSource;
                        if (!dt.Columns.Contains("DID"))
                        {
                            dt.Columns.Add("DID");
                            dt.Columns["DID"].SetOrdinal(0);
                        }
                        InitRead(Change, data, saveFileDialog.FileName, dt.AsDataView());
                        if (MessageBox.Show("保存成功,是否打开文件?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
                        {
                            System.Diagnostics.Process.Start(saveFileDialog.FileName);
                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("操作出现错误:" + ex.Message, "异常", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                finally
                {
                    SplashScreenManager.CloseForm();
                }
            }
            else
            {
                MessageBox.Show("请您确认是否已保存", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
        private void MontaTabela()
        {
            List<double[]> lstTabela = BL.MontaTabela.Tabela;

            DataTable dt = new DataTable();

            int nrColunas = lstTabela.Count > 0 ? lstTabela[0].Length : 15;

            DataColumn dcT = new DataColumn();
            dcT.DataType = Type.GetType("System.String");
            dcT.ColumnName = "T";
            dt.Columns.Add(dcT);

            //Cria as colunas
            for (int i = 1; i <= nrColunas; i++)
            {
                DataColumn dc = new DataColumn();
                dc.DataType = Type.GetType("System.String");
                dc.ColumnName = i.ToString();
                dt.Columns.Add(dc);
            }

            //Cria as linhas e celulas
            for (int i = 0; i < lstTabela.Count; i++)
            {
                DataRow dr = dt.NewRow();
                dr[0] = (i + 1).ToString();

                //Atualiza colunas
                for (int j = 1; j <= nrColunas; j++)
                    dr[j] = lstTabela[i][j - 1];

                dt.Rows.Add(dr);
            }

            //Atualiza grid
            dgEstatistica.ItemsSource = dt.AsDataView();
        }
Beispiel #27
0
        private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
        {
            OleDbCommand cmd = new OleDbCommand();

            if (con.State != ConnectionState.Open)
            {
                con.Open();
            }
            cmd.Connection  = con;
            cmd.CommandText = "select  ID,firstName,lastName,company,arrivalTime, departureTime from guestTable where lastName like '%" + txtSearch.Text + "%'";
            OleDbDataAdapter da = new OleDbDataAdapter(cmd);

            dt = new System.Data.DataTable();
            da.Fill(dt);
            gvData.ItemsSource      = dt.AsDataView();
            gvData.Columns[0].Width = 100;
            gvData.Columns[1].Width = 200;
            gvData.Columns[2].Width = 200;
            gvData.Columns[3].Width = 300;
            gvData.Columns[4].Width = 300;

            gvData.Columns[5].Width = 300;
        }
Beispiel #28
0
 public void LoadDataByVin(DataView vins)
 {
     //string sql = "select * from DATA_CHANGE where vin in ("+vins+")";
     //DataSet ds = AccessHelper.ExecuteDataSet(AccessHelper.conn, sql, null);
     try
     {
         if (vins != null && vins.Table.Rows.Count > 0)
         {
             System.Data.DataTable dt = (System.Data.DataTable)gridControl1.DataSource;
             if (dt != null)
             {
                 dt.Merge(vins.Table);
                 string[] strComuns = { "VIN", "CLXH", "TYMC", "RLLX", "CT_ZHGKRLXHL", "ZCZBZL", "CT_BSQXS", "ZWPS", "UPDATEFIELD", "FIELDOLD", "FIELDNEW", "APPLYTYPE" };
                 dt = dt.AsDataView().ToTable(true, strComuns);
                 gridControl1.DataSource = dt;
             }
             else
             {
                 string[] strComuns           = { "VIN", "CLXH", "TYMC", "RLLX", "CT_ZHGKRLXHL", "ZCZBZL", "CT_BSQXS", "ZWPS", "UPDATEFIELD", "FIELDOLD", "FIELDNEW", "APPLYTYPE" };
                 System.Data.DataTable dtVins = vins.ToTable(true, strComuns);
                 gridControl1.DataSource = dtVins;
             }
             System.Data.DataView dv = ((System.Data.DataTable)gridControl1.DataSource).AsDataView();
             var insert_o            = dv.ToTable(true, "VIN", "APPLYTYPE").Select("APPLYTYPE='补传'");
             var update = dv.ToTable(true, "VIN", "APPLYTYPE").Select("APPLYTYPE='修改'");
             var delete = dv.ToTable(true, "VIN", "APPLYTYPE").Select("APPLYTYPE='撤销'");
             INSERT_O_SL.Text = insert_o.Length.ToString();
             UPDATE_SL.Text   = update.Length.ToString();
             DELETE_SL.Text   = delete.Length.ToString();
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        /// <summary>
        /// grdAssessmentAdmin fires the NeedDataSource event each time it needs to be bound to a data source
        /// </summary>
        /// <param name="source">The object that fired this event - grdAssessmentAdmin</param>
        /// <param name="e">GridNeedDataSourceEventArgs passed to the handler</param>
        protected void grdAssessmentAdmin_NeedDataSource(object source, GridNeedDataSourceEventArgs e)
        {
            hideUnhideColumn();
            String gridSortString = grdAssessmentAdmin.MasterTableView.SortExpressions.GetSortString();
            _dtAssessmentResults = (DataTable)ViewState["_dtAssessmentResults"];

            if (_dtAssessmentResults != null)
            {
                DataView view = _dtAssessmentResults.AsDataView();
                view.Sort = gridSortString;
                grdAssessmentAdmin.DataSource = _dtAssessmentResults;
            }
        }
Beispiel #30
0
        //make predictions based on imported ob and iv datatables
        public void btnMakePredictions_Click(object sender, EventArgs e)
        {
            if (ipyInterface == null) RequestIronPythonInterface();
            if (ipyModel == null) RequestModel();

            dtVariables = (DataTable)dgvVariables.DataSource;
            if (dtVariables == null)
                return;

            if (dtVariables.Rows.Count < 1)
                return;
            //end edits and accept changes on ob and iv tables
            dgvVariables.EndEdit();
            dtVariables.AcceptChanges();

            dgvObs.EndEdit();
            dtObs = (DataTable)dgvObs.DataSource;
            if (dtObs != null)
                dtObs.AcceptChanges();
            //create table used for prediction
            DataTable tblForPrediction = dtVariables.AsDataView().ToTable();
            tblForPrediction.Columns.Remove("ID");

            //formatting
            string[] strArrExpressions = strModelExpression.Split('+');
            foreach(string var in strArrExpressions)
            {
                int intIndx;
                string strVariable = var.Trim();
                if((intIndx = strVariable.IndexOf('(')) != -1)
                    if((intIndx = strVariable.IndexOf(')', intIndx)) != -1)
                        intIndx=0;
            }

            //This pattern should match any variable transformation
            string pattern = @"(MAX|MEAN|PROD|SUM|MIN)\(([^\+]*)\)";
            Regex r = new Regex(pattern, RegexOptions.IgnoreCase);
            Match m = r.Match(strModelExpression);

            if(m.Success)
            {
                //Create a list that will hold any matched transformations.
                while(m.Success)
                {
                    //Reconstruct the expression from the matched string. Default operation is summation.
                    Globals.Operations op = Globals.Operations.SUM;
                    switch(m.Groups[1].Value)
                    {
                        case "MAX":
                             op = Globals.Operations.MAX;
                            break;
                        case "MEAN":
                            op = Globals.Operations.MEAN;
                            break;
                        case "PROD":
                            op = Globals.Operations.PROD;
                            break;
                        case "SUM":
                            op = Globals.Operations.SUM;
                            break;
                        case "MIN":
                            op = Globals.Operations.MIN;
                            break;
                    }

                    //Create the Expression object.
                    string[] strArrVars = m.Groups[2].Value.Split(',');

                    //Add this expression to the list and continue on.
                    m = m.NextMatch();
                }
            }
            //make prediction
            dynamic dynPredictions = ipyInterface.Predict(ipyModel, tblForPrediction);
            List<double> lstPredictions = ((IList<object>)dynPredictions).Cast<double>().ToList();
            //create prediction table to show prediction
            DataTable dtPredictions = new DataTable();

            dtPredictions.Columns.Add("ID", typeof(string));
            dtPredictions.Columns.Add("CalcValue", typeof(double));

            for (int i = 0; i < lstPredictions.Count; i++)
            {
                DataRow dr = dtPredictions.NewRow();
                dr["ID"] = dtVariables.Rows[i]["ID"].ToString();
                dr["CalcValue"] = lstPredictions[i];
                dtPredictions.Rows.Add(dr);
            }

            dtStats = GeneratePredStats(dtPredictions, dtObs, tblForPrediction);
             if (dtStats == null)
                 return;

            dgvStats.DataSource = dtStats;
            foreach (DataGridViewColumn dvgCol in dgvStats.Columns)
                dvgCol.SortMode = DataGridViewColumnSortMode.NotSortable;

            setViewOnGrid(dgvStats);
        }
 private void view_Click(object sender, RoutedEventArgs e)
 {
     DBWorker dbConnection = new DBWorker();
     DataTable res = new DataTable();
         if (dbConnection.isConnected)
         {
             if (radioLoadReg.IsChecked == true) res = dbConnection.ViewAvaliableModels(DbSelect.SelectReg);
             if (radioLoadDes.IsChecked == true) res = dbConnection.ViewAvaliableModels(DbSelect.SelectDes);
             if (radioLoadOpt.IsChecked == true) res = dbConnection.ViewAvaliableModels(DbSelect.SelectTech);
         }
         Window viewer = new Window();
         viewer.MaxHeight = 600;
         viewer.MaxWidth = 900;
         DataGrid dg = new DataGrid();
         dg.ItemsSource = res.AsDataView();
         viewer.SizeToContent = System.Windows.SizeToContent.WidthAndHeight;
         viewer.Content = dg;
         viewer.Show();
 }
        private void wgraj_Click(object sender, RoutedEventArgs e)
        {
            listaKolumn = new List<List<object>>();
            daneTab = new DataTable();
            naglowki = null;
            try
            {
                OpenFileDialog dlg = new OpenFileDialog();
                dlg.DefaultExt = ".txt";
                dlg.Filter = "Text documents (.txt)|*.txt";
                Nullable<bool> result = dlg.ShowDialog();

                if (result == true)
                {
                    Aktywuj();
                    string filename = dlg.FileName;

                    // Wpisanie do naszej listy || Lista list obiektów = mamy na każdą kolumnę jako
                    // listę typu Object i te kolumny siedzą w liscie listaKolumn,
                    // jak chcesz się dostać do wiersza 10, w 5 kolumnie to dajesz listaKolumn[5][10]
                    foreach (string k in File.ReadAllLines(filename))
                    {
                        if (k.StartsWith("#"))
                            continue;
                        if (k == "")
                            continue;
                        if (k.StartsWith("!"))
                        {
                            naglowki = k.TrimStart('!');
                            continue;
                        }

                        int j = 0;
                        // foreach dla każdego stringa wydzielonego z jednej przeczytaniej linii, stringa dzieli spacja, tabulator lub przecinek
                        foreach (string l in k.Split(new char[] { ' ', '\t' , ';'}))
                        {
                            // dodanie list reprezentujących kolumny, jednorazowo przy pierwszej iteracji
                            if(listaKolumn.Count < k.Split(new char[] { ' ', '\t', ';' }).Length)
                            {
                                listaKolumn.Add(new List<object>());
                            }
                            double temp;
                            // jeżeli da się rzutować jedno pole z pliku tekstowego na liczbę to wpisz liczbę jak nie to stringa
                            if (Double.TryParse(l.Replace('.', ','), out temp))
                                listaKolumn[j].Add(temp);
                            else
                                listaKolumn[j].Add(l);
                            j++;
                        }
                    }

                    //DataTable dane = new DataTable();

                    if (naglowki != null)
                    {
                        int i = 0;
                        foreach (string l in naglowki.Split(new char[] { ' ', '\t', ';' }))
                        {
                            double temp;
                            // Rzutowanie jak przy tworzeniu list, jak liczba to typu double jak nie to String
                            if (Double.TryParse(listaKolumn[i][0].ToString(), out temp))
                                daneTab.Columns.Add(l, typeof(Double));
                            else
                                daneTab.Columns.Add(l, typeof(String));
                            i++;
                        }
                    }
                    else
                        for (int i = 0; i < listaKolumn.Count; i++)
                        {
                            double temp;
                            // Rzutowanie jak przy tworzeniu list, jak liczba to typu double jak nie to String
                            if (Double.TryParse(listaKolumn[i][0].ToString(), out temp))
                                daneTab.Columns.Add("Kolumna" + (i + 1), typeof(Double));
                            else
                                daneTab.Columns.Add("Kolumna" + (i + 1), typeof(String));
                        }

                    // Stworzenie kolumn w DataTable

                    // Wpisanie danych do DataTable pierwszy for po wierszach, wewnętrzny po kolumnach
                    for (int i = 0; i < listaKolumn[0].Count; i++)
                    {
                        DataRow row = daneTab.Rows.Add();
                        for (int j = 0; j < listaKolumn.Count; j++)
                            row[j] = listaKolumn[j][i];
                    }

                    // Zbindowanie danych z DataTable do GridView
                    blok.ItemsSource = daneTab.AsDataView();

                    // Wpisanie kolumn do listy rozwijanej

                    wybor.Items.Clear();
                    wybor_chart1.Items.Clear();
                    wybor_chart2.Items.Clear();
                    wybor_chart_klasa.Items.Clear();

                    int z = 0;
                    foreach (var x in daneTab.Columns)
                    {
                        wybor.Items.Add(new ItemObject(x.ToString(), z));
                        wybor_chart1.Items.Add(new ItemObject(x.ToString(), z));
                        wybor_chart2.Items.Add(new ItemObject(x.ToString(), z));
                        wybor_chart_klasa.Items.Add(new ItemObject(x.ToString(), z));
                        z++;
                    }

                    wybor.SelectedIndex = 0;
                    wybor_chart1.SelectedIndex = 0;
                    wybor_chart2.SelectedIndex = 0;
                    wybor_chart_klasa.SelectedIndex = 0;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Niepoprawny plik");
                throw;
            }
        }
        public DataTable GetIndexes(CrmDbConnection crmDbConnection, string[] restrictions)
        {
            string catalog = GetRestrictionOrNull(0, restrictions);
            string schema = GetRestrictionOrNull(1, restrictions);
            string table = GetRestrictionOrNull(2, restrictions);
            string constraintName = GetRestrictionOrNull(3, restrictions);

            bool hasEntityFilter = !string.IsNullOrEmpty(table);
            bool hasConstraintNameFilter = !string.IsNullOrEmpty(constraintName);

            string commandText = "SELECT LogicalName, PrimaryIdAttribute FROM entitymetadata ";

            if (hasEntityFilter || hasConstraintNameFilter)
            {
                commandText += "WHERE ";
                if (hasEntityFilter)
                {
                    commandText += " (LogicalName = '" + table + "')";
                }
                //if (hasEntityFilter && hasConstraintNameFilter)
                //{
                //    commandText += " AND ";
                //}
                //if (hasConstraintNameFilter)
                //{
                //    commandText += " (PrimaryIdAttribute = '" + constraintName + "')";
                //}
            }

            var command = new CrmDbCommand(crmDbConnection);
            command.CommandText = commandText;
            var adapter = new CrmDataAdapter(command);
            var dataTable = new DataTable();
            dataTable.Locale = CultureInfo.InvariantCulture;
            adapter.Fill(dataTable);

            //          <Indexes>
            //  <constraint_catalog>PortalDarrellDev</constraint_catalog>
            //  <constraint_schema>dbo</constraint_schema>
            //  <constraint_name>PK__tmp_ms_x__3214EC0737311087</constraint_name>
            //  <table_catalog>PortalDarrellDev</table_catalog>
            //  <table_schema>dbo</table_schema>
            //  <table_name>Table</table_name>
            //  <index_name>PK__tmp_ms_x__3214EC0737311087</index_name>
            //  <type_desc>CLUSTERED</type_desc>
            //</Indexes>

            dataTable.Columns.Add("constraint_catalog", typeof(string), string.Format("'{0}'", crmDbConnection.ConnectionInfo.OrganisationName)).SetOrdinal(0);
            dataTable.Columns.Add("constraint_schema", typeof(string), string.Format("'{0}'", DefaultSchema)).SetOrdinal(1);
            dataTable.Columns.Add("constraint_name", typeof(string), "'PK__' + [LogicalName] + '_' + [PrimaryIdAttribute]").SetOrdinal(2);

            dataTable.Columns.Add("table_catalog", typeof(string), string.Format("'{0}'", crmDbConnection.ConnectionInfo.OrganisationName)).SetOrdinal(3);
            dataTable.Columns.Add("table_schema", typeof(string), string.Format("'{0}'", DefaultSchema)).SetOrdinal(4);
            dataTable.Columns.Add("table_name", typeof(string), "[LogicalName]").SetOrdinal(5);

            //dataTable.Columns["LogicalName"].ColumnName = "table_name";
            // dataTable.Columns["table_name"].SetOrdinal(5);

            dataTable.Columns.Add("index_name", typeof(string), "constraint_name").SetOrdinal(6);
            dataTable.Columns.Add("type_desc", typeof(string), "'CLUSTERED'").SetOrdinal(7);

            if (hasConstraintNameFilter)
            {
                var filteredView = dataTable.AsDataView();
                filteredView.RowFilter = "constraint_name = '" + constraintName + "'";
                dataTable = filteredView.ToTable(true);
            }

            return dataTable;
        }
        public DataTable GetUniqueKeys(CrmDbConnection crmDbConnection, string[] restrictions)
        {
            // throw new NotImplementedException();

            string entityName = GetRestrictionOrNull(0, restrictions);
            bool hasEntityFilter = !string.IsNullOrEmpty(entityName);

            string constraintName = GetRestrictionOrNull(1, restrictions);
            bool hasConstraintNameFilter = !string.IsNullOrEmpty(constraintName);

            string commandText = "SELECT * FROM entitymetadata";

            if (hasEntityFilter || hasConstraintNameFilter)
            {
                commandText += " WHERE";
                if (hasEntityFilter)
                {
                    commandText += " (LogicalName = '" + entityName + "')";
                }
                //if (hasEntityFilter && hasConstraintNameFilter)
                //{
                //    commandText += " AND ";
                //}
                //if (hasConstraintNameFilter)
                //{
                //    commandText += " (SchemaName = '" + constraintName + "')";
                //}
            }

            var command = new CrmDbCommand(crmDbConnection);
            command.CommandText = commandText;
            var adapter = new CrmDataAdapter(command);
            var dataTable = new DataTable();
            dataTable.Locale = CultureInfo.InvariantCulture;
            adapter.Fill(dataTable);

            //  dataTable.AsDataView().RowFilter = "ReferencingEntity = '" + entityName +

            dataTable.Columns.Add("CONSTRAINT_CATALOG", typeof(string), string.Format("'{0}'", crmDbConnection.ConnectionInfo.OrganisationName)).SetOrdinal(0);
            dataTable.Columns.Add("CONSTRAINT_SCHEMA", typeof(string), string.Format("'{0}'", DefaultSchema)).SetOrdinal(1);

            dataTable.Columns.Add("CONSTRAINT_NAME", typeof(string), "'PK__' + LogicalName + '_' + IsNull(PrimaryIdAttribute, LogicalName + 'id')").SetOrdinal(2);

            // dataTable.Columns["SchemaName"].ColumnName = "CONSTRAINT_NAME";
            // dataTable.Columns["CONSTRAINT_NAME"].SetOrdinal(2);

            //   dataTable.Columns.Add("CONSTRAINT_NAME", typeof(string), "''");

            dataTable.Columns.Add("TABLE_CATALOG", typeof(string), string.Format("'{0}'", crmDbConnection.ConnectionInfo.OrganisationName)).SetOrdinal(3);
            dataTable.Columns.Add("TABLE_SCHEMA", typeof(string), string.Format("'{0}'", DefaultSchema)).SetOrdinal(4);
            dataTable.Columns.Add("TABLE_NAME", typeof(string), "LogicalName").SetOrdinal(5);

            //    dataTable.Columns["LogicalName"].ColumnName = "TABLE_NAME";
            //      dataTable.Columns["TABLE_NAME"].SetOrdinal(5);

            dataTable.Columns.Add("CONSTRAINT_TYPE", typeof(string), "'PRIMARY KEY'").SetOrdinal(6);

            dataTable.Columns.Add("IS_DEFERRABLE", typeof(string), "'NO'").SetOrdinal(7);
            dataTable.Columns.Add("INITIALLY_DEFERRED", typeof(string), "'NO'").SetOrdinal(8);

            if (hasConstraintNameFilter)
            {
                var filteredView = dataTable.AsDataView();
                filteredView.RowFilter = "CONSTRAINT_NAME = '" + constraintName + "'";
                dataTable = filteredView.ToTable(true);
            }

            return dataTable;

            //else
            //{
            //    dataTable = filteredView.ToTable(true);
            //}
        }
        public void LoadConfiguration(DataTable dt)
        {
            LoadGeneratedEventItems(dt);

            string address = "/GeneratedData/SnapShotData/";

            string filter = "address LIKE '" + address + "*'";
            DataView dv = dt.AsDataView();
            dv.RowFilter = filter;
            DataTable temp_dt = dv.ToTable();
            temp_dt.PrimaryKey = new DataColumn[] { temp_dt.Columns["address"] };

            SnapshotItems.Clear();

            foreach (DataRow row in temp_dt.Rows)
            {
                var snapshot = new Snapshot();
                snapshot.Name = DataTable_Functions.TrakHound.GetRowAttribute("name", row);

                string type = DataTable_Functions.TrakHound.GetLastNode(row);
                if (type != null)
                {
                    switch (type.ToLower())
                    {
                        case "collected": snapshot.Type = SnapshotType.Collected; break;
                        case "generated": snapshot.Type = SnapshotType.Generated; break;
                        case "variable": snapshot.Type = SnapshotType.Variable; break;
                    }
                }

                snapshot.Link = DataTable_Functions.TrakHound.GetRowAttribute("link", row);

                var item = new Controls.SnapshotItem(this, snapshot);
                item.SettingChanged += Snapshot_SettingChanged;
                item.RemoveClicked += Snapshot_RemoveClicked;
                SnapshotItems.Add(item);
            }

            if (!Loaded) LoadCollectedItems(probeData);
        }
        /// <summary>
        /// lấy dữ liệu fill vào báo cáo
        /// </summary>
        /// <param name="fr"></param>
        /// <param name="NamLamViec"></param>
        /// <param name="ThangLamViec"></param>
        /// <param name="iID_MaDonVi"></param>
        private void LoadData_TH(FlexCelReport fr, String DoiTuong, String LoaiIn, String Cap, String Nam)
        {
            DataTable data = PhanTichDuToanNS_52(DoiTuong, LoaiIn, Cap, Nam);

            //lay du lieu tong hop

            DataTable dtTongHop = new DataTable();
            //Add Column
            dtTongHop.Columns.Add("iTt", typeof (Int32));
            dtTongHop.Columns.Add("sMaDonVi", typeof(String));
            dtTongHop.Columns.Add("sTenDonVi", typeof(String));
            dtTongHop.Columns.Add("iNam", typeof(Int32));
            dtTongHop.Columns.Add("iNu", typeof(Int32));
            dtTongHop.Columns.Add("iSqCapUy", typeof(Int32));
            dtTongHop.Columns.Add("iSqCapTa", typeof(Int32));
            dtTongHop.Columns.Add("iSqCapTuong", typeof(Int32));
            dtTongHop.Columns.Add("iQncnCapUy", typeof(Int32));
            dtTongHop.Columns.Add("iQncnCapTa", typeof(Int32));
            dtTongHop.Columns.Add("iCnvqpBienChe", typeof(Int32));
            dtTongHop.Columns.Add("iCnvqpHopDong", typeof(Int32));
            dtTongHop.Columns.Add("iHsqcs", typeof(Int32));
            dtTongHop.Columns.Add("iCvLdCapCuc", typeof(Int32));
            dtTongHop.Columns.Add("iCvLdCapPhong", typeof(Int32));
            dtTongHop.Columns.Add("iCvLdCapTBPTKTT", typeof(Int32));
            dtTongHop.Columns.Add("iCvTroLy", typeof(Int32));
            dtTongHop.Columns.Add("iCvNhanVien", typeof(Int32));
            dtTongHop.Columns.Add("iTdTrenDaiHoc", typeof(Int32));
            dtTongHop.Columns.Add("iTdDaiHoc", typeof(Int32));
            dtTongHop.Columns.Add("iTdTrungCap", typeof(Int32));
            dtTongHop.Columns.Add("iTdSoCap", typeof(Int32));
            dtTongHop.Columns.Add("iTdChuaHoc", typeof(Int32));
            dtTongHop.Columns.Add("sMaGroup", typeof(String));
            dtTongHop.Columns.Add("sTenGroup", typeof(String));

            DataTable dtGroup;
            if (LoaiIn.Equals("00000000-0000-0000-0000-000000000000"))
            {
                //Toan lục luong
                dtGroup = HamChung.SelectDistinct("NS", data, "iID_MaDonVi,sTenDonVi", "iID_MaDonVi,sTenDonVi,iID_MaDonViCha,sTenDonViCha");
            }
            else if (LoaiIn.Equals("00000000-0000-0000-0000-000000000001"))
            {
                //Theo don vi
                dtGroup = HamChung.SelectDistinct("NS", data, "iID_MaDonVi,sTenDonVi", "iID_MaDonVi,sTenDonVi,iID_MaDonViCha,sTenDonViCha");
            }
            else
            {
                //Loai don vi: khoi du an va khoi doanh nghiep
                dtGroup = HamChung.SelectDistinct("NS", data, "iID_MaLoaiDonVi,sTenLoaiDonVi", "iID_MaDonVi,sTenDonVi,iID_MaDonViCha,sTenDonViCha");
            }

            //Add du lieu Th\
            if(dtGroup != null)
            {
                DataView dvTemp = dtGroup.AsDataView();
                dvTemp.Sort = "iID_MaDonViCha asc";
                dtGroup = dvTemp.ToTable();
                int i = 0;
                foreach (DataRow row in dtGroup.Rows)
                {
                    //dem du lieu

                    DataRow drTemp = dtTongHop.NewRow();
                    drTemp["iTt"] = i +1;
                    drTemp["sMaDonVi"] = Convert.ToString(row["iID_MaDonVi"]);
                    drTemp["sTenDonVi"] = Convert.ToString(row["sTenDonVi"]);
                    drTemp["sMaGroup"] = Convert.ToString(row["iID_MaDonViCha"]);
                    drTemp["sTenGroup"] = Convert.ToString(row["sTenDonViCha"]);
                    string sss = Convert.ToString(row["iID_MaDonVi"]);
                    DataRow[] drSelect = data.Select(" iID_MaDonVi= '" + Convert.ToString(row["iID_MaDonVi"]) + "' and iNuQuanNhan='0'");
                    drTemp["iNam"] = drSelect.Length== -1? 0 : drSelect.Length;
                    drTemp["iNu"] = data.Select(" iID_MaDonVi= '" + Convert.ToString(row["iID_MaDonVi"]) + "' and iNuQuanNhan<>'0'").Length;
                    drTemp["iSqCapUy"] = data.Select(" iID_MaDonVi= '" + Convert.ToString(row["iID_MaDonVi"]) + "' and iID_MaNgachLuong=1 and iID_MaBacLuong in ('11','12','13','14')").Length;
                    drTemp["iSqCapTa"] = data.Select(" iID_MaDonVi= '" + Convert.ToString(row["iID_MaDonVi"]) + "' and iID_MaNgachLuong=1 and iID_MaBacLuong in ('21','22','23','24')").Length;
                    drTemp["iSqCapTuong"] = data.Select(" iID_MaDonVi= '" + Convert.ToString(row["iID_MaDonVi"]) + "' and iID_MaNgachLuong=1 and iID_MaBacLuong in ('31','32','33','34')").Length;
                    drTemp["iQncnCapUy"] = data.Select(" iID_MaDonVi= '" + Convert.ToString(row["iID_MaDonVi"]) + "' and iID_MaNgachLuong=2 and iID_MaBacLuong in ('11','12','13','14')").Length;
                    drTemp["iQncnCapTa"] = data.Select(" iID_MaDonVi= '" + Convert.ToString(row["iID_MaDonVi"]) + "' and iID_MaNgachLuong=2 and iID_MaBacLuong in ('21','22','23','24')").Length;

                    string sFind = "";
                    int ivalue = 0;
                    //lay danh sach ma theo bien che
                    DataTable dtTemp = HamChung.GetDataTable("L_DanhMucBacLuong", "iID_MaBacLuong", "sQuanHam",
                                                             "rCNVQPCT", true, "");
                    if(dtTemp != null)
                    {
                        foreach (DataRow dr in dtTemp.Rows)
                        {
                            if (sFind == "")
                                sFind = "'" + dr[0].ToString() + "'";
                            else
                                sFind += ",'" + dr[0].ToString() + "'";
                        }
                        sFind = " iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and iID_MaNgachLuong=3 and iID_MaBacLuong in (" + sFind + ")";
                        ivalue = data.Select(sFind).Length;
                    }
                    drTemp["iCnvqpBienChe"] = ivalue;
                    //lay danh sach ma theo hop dong
                    sFind = "";
                    ivalue = 0;
                    dtTemp = HamChung.GetDataTable("L_DanhMucBacLuong", "iID_MaBacLuong", "sQuanHam",
                                                             "rQNVQPHD", true, "");
                    if (dtTemp != null)
                    {
                        foreach (DataRow dr in dtTemp.Rows)
                        {
                            if (sFind == "")
                                sFind = "'" + dr[0].ToString() + "'";
                            else
                                sFind += ",'" + dr[0].ToString() + "'";
                        }
                        sFind = " iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and iID_MaNgachLuong=3 and iID_MaBacLuong in (" + sFind + ")";
                        ivalue = data.Select(sFind).Length;
                    }
                    drTemp["iCnvqpHopDong"] = ivalue;
                    //lay danh sach ma theo ha si quan
                     sFind = "";
                    ivalue = 0;
                    dtTemp = HamChung.GetDataTable("L_DanhMucBacLuong", "iID_MaBacLuong", "sQuanHam",
                                                             "rHaSi", true, "");
                    if (dtTemp != null)
                    {
                        foreach (DataRow dr in dtTemp.Rows)
                        {
                            if (sFind == "")
                                sFind = "'" + dr[0].ToString() + "'";
                            else
                                sFind += ",'" + dr[0].ToString() + "'";
                        }
                        sFind = " iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and iID_MaNgachLuong=3 and iID_MaBacLuong in (" + sFind + ")";
                        ivalue = data.Select(sFind).Length;
                    }
                    drTemp["iHsqcs"] = ivalue;

                    drTemp["iCvLdCapCuc"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and iID_ChucVuHienTai in ('05')").Length;
                    drTemp["iCvLdCapPhong"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and iID_ChucVuHienTai in ('04')").Length;
                    drTemp["iCvLdCapTBPTKTT"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and iID_ChucVuHienTai in ('03')").Length;
                    drTemp["iCvTroLy"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and iID_ChucVuHienTai in ('02')").Length;
                    drTemp["iCvNhanVien"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and iID_ChucVuHienTai in ('01')").Length;
                    drTemp["iTdTrenDaiHoc"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and MaTrinhDo in ('01','02','03')").Length;//tien si, thac si, tren dh
                    drTemp["iTdDaiHoc"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and MaTrinhDo in ('04')").Length;
                    drTemp["iTdTrungCap"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and MaTrinhDo in ('05')").Length;
                    drTemp["iTdSoCap"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and MaTrinhDo in ('06')").Length;
                    drTemp["iTdChuaHoc"] = data.Select(" iID_MaDonVi= '" + row["iID_MaDonVi"].ToString() + "' and MaTrinhDo in ('07')").Length;
                    dtTongHop.Rows.Add(drTemp);
                    i++;
                }
            }
            if (dtTongHop != null)
            {
                DataView dvTemp = dtTongHop.AsDataView();
                dvTemp.Sort = "sMaGroup,sMaDonVi asc";
                dtTongHop = dvTemp.ToTable();
            }
            fr.AddTable("NS", dtTongHop);

            DataTable dtG;
            if (LoaiIn.Equals("00000000-0000-0000-0000-000000000000"))
            {
                //Toan lục luong
                dtG = HamChung.SelectDistinct("GROUP", dtTongHop, "sMaGroup,sTenGroup", "sMaGroup,sTenGroup");
            }
            else if (LoaiIn.Equals("00000000-0000-0000-0000-000000000001"))
            {
                //Theo don vi
                dtG = HamChung.SelectDistinct("GROUP", dtTongHop, "sMaGroup,sTenGroup", "sMaGroup,sTenGroup");
            }
            else
            {
                //Loai don vi: khoi du an va khoi doanh nghiep
                dtG = HamChung.SelectDistinct("GROUP", dtTongHop, "sMaGroup,sTenGroup", "sMaGroup,sTenGroup");
            }
            if (dtG != null)
            {
                DataView dvTemp = dtG.AsDataView();
                dvTemp.Sort = "sMaGroup asc";
                dtG = dvTemp.ToTable();
            }
            fr.AddTable("GROUP", dtG);
            data.Dispose();
            dtGroup.Dispose();
            dtG.Dispose();
            dtTongHop.Dispose();
        }
        public User(UserOperation operation, TVMViewModel vm)
        {
            InitializeComponent();

            Operation = operation;
            TVM_VM = vm;
            //System.Windows.Forms.TextBox txtPassword = new TextBox();
            //txtPassword.PasswordChar = '*';
            //MainGrid.Children.Add(txtPassword as UIElement);
            txtPassword.PasswordChar = '*';
            

            // Expiration Time DataGrid
            Time expiryTime = new Time(false);
            dataTableExpire = expiryTime.TimeDataTable;
            timeExpiry.ItemsSource = dataTableExpire.AsDataView();

            if (Operation == UserOperation.ADD)
            {
                lblName.IsEnabled = true;
                lblPassword.IsEnabled = true;
                lblExpirtyTime.IsEnabled = true;
                txtName.IsEnabled = true;
                txtPassword.IsEnabled = true;
                lblIsAdmin.IsEnabled = true;
                rbtnIsAdminT.IsEnabled = true;
                rbtnIsAdminF.IsEnabled = true;
                dateExpirty.IsEnabled = true;
                timeExpiry.IsEnabled = true;
            }
            else if (Operation == UserOperation.EDIT)
            {
                lblName.IsEnabled = true;
                lblPassword.IsEnabled = true;
                lblExpirtyTime.IsEnabled = true;
                txtName.IsEnabled = true;
                txtPassword.IsEnabled = true;
                dateExpirty.IsEnabled = true;
                timeExpiry.IsEnabled = true;
                lblIsAdmin.IsEnabled = false;
                rbtnIsAdminT.IsEnabled = false;
                rbtnIsAdminF.IsEnabled = false;
                lblIsAdmin.Visibility = System.Windows.Visibility.Hidden;
                rbtnIsAdminT.Visibility = System.Windows.Visibility.Hidden;
                rbtnIsAdminF.Visibility = System.Windows.Visibility.Hidden;
            }
            else if (Operation == UserOperation.REMOVE)
            {
                lblName.IsEnabled = true;
                lblPassword.IsEnabled = false;
                lblExpirtyTime.IsEnabled = false;
                txtName.IsEnabled = true;
                txtPassword.IsEnabled = false;
                dateExpirty.IsEnabled = false;
                timeExpiry.IsEnabled = false;
                lblIsAdmin.IsEnabled = false;
                rbtnIsAdminT.IsEnabled = false;
                rbtnIsAdminF.IsEnabled = false;

                lblPassword.Visibility = System.Windows.Visibility.Hidden;
                txtPassword.Visibility = System.Windows.Visibility.Hidden;
                dateExpirty.Visibility = System.Windows.Visibility.Hidden;
                timeExpiry.Visibility = System.Windows.Visibility.Hidden;
                lblExpirtyTime.Visibility = System.Windows.Visibility.Hidden;
                s1.Visibility = System.Windows.Visibility.Hidden;
                s2.Visibility = System.Windows.Visibility.Hidden;
                lblIsAdmin.Visibility = System.Windows.Visibility.Hidden;
                rbtnIsAdminT.Visibility = System.Windows.Visibility.Hidden;
                rbtnIsAdminF.Visibility = System.Windows.Visibility.Hidden;

                Grid.SetRow(btnGo, 2);
                Height = 200;
            }
            else
            {
                System.Windows.MessageBox.Show("Invalid user operation - this should NEVER happen");
            }
        }
        public DataTable GetForeignKeys(CrmDbConnection crmDbConnection, string[] restrictions)
        {
            // throw new NotImplementedException();

            string catalog = GetRestrictionOrNull(0, restrictions);
            string schema = GetRestrictionOrNull(1, restrictions);
            string constraintTable = GetRestrictionOrNull(2, restrictions);
            string constraintName = GetRestrictionOrNull(3, restrictions);

            //  string entityName = GetRestrictionOrNull(0, restrictions);
            // string constraintName = GetRestrictionOrNull(1, restrictions);
            bool hasConstraintTableFilter = !string.IsNullOrEmpty(constraintTable);
            bool hasConstraintNameFilter = !string.IsNullOrEmpty(constraintName);

            string commandText = "SELECT o.* FROM entitymetadata e INNER JOIN onetomanyrelationshipmetadata o ON e.MetadataId = o.MetadataId ";

            if (hasConstraintTableFilter || hasConstraintNameFilter)
            {
                commandText += "WHERE ";
                if (hasConstraintTableFilter)
                {
                    commandText += " (e.LogicalName = '" + constraintTable + "') AND (o.referencingentity = '" + constraintTable + "')";
                }
                if (hasConstraintTableFilter && hasConstraintNameFilter)
                {
                    commandText += " AND ";
                }
                if (hasConstraintNameFilter)
                {
                    commandText += " (o.SchemaName = '" + constraintName + "')";
                }
            }

            var command = new CrmDbCommand(crmDbConnection);
            command.CommandText = commandText;
            var adapter = new CrmDataAdapter(command);
            var dataTable = new DataTable();
            dataTable.Locale = CultureInfo.InvariantCulture;
            adapter.Fill(dataTable);

            //  dataTable.AsDataView().RowFilter = "ReferencingEntity = '" + entityName +

            dataTable.Columns.Add("CONSTRAINT_CATALOG", typeof(string), string.Format("'{0}'", crmDbConnection.ConnectionInfo.OrganisationName)).SetOrdinal(0);
            dataTable.Columns.Add("CONSTRAINT_SCHEMA", typeof(string), string.Format("'{0}'", DefaultSchema)).SetOrdinal(1);

            dataTable.Columns.Add("CONSTRAINT_NAME", typeof(string), "o.schemaname").SetOrdinal(2);

            //dataTable.Columns["o.schemaname"].ColumnName = "CONSTRAINT_NAME";
            //dataTable.Columns["CONSTRAINT_NAME"].SetOrdinal(2);

            //   dataTable.Columns.Add("CONSTRAINT_NAME", typeof(string), "''");

            dataTable.Columns.Add("TABLE_CATALOG", typeof(string), string.Format("'{0}'", crmDbConnection.ConnectionInfo.OrganisationName)).SetOrdinal(3);
            dataTable.Columns.Add("TABLE_SCHEMA", typeof(string), string.Format("'{0}'", DefaultSchema)).SetOrdinal(4);

            dataTable.Columns["o.referencingentity"].ColumnName = "TABLE_NAME";
            dataTable.Columns["TABLE_NAME"].SetOrdinal(5);

            dataTable.Columns.Add("CONSTRAINT_TYPE", typeof(string), "'FOREIGN KEY'").SetOrdinal(6);

            dataTable.Columns.Add("IS_DEFERRABLE", typeof(string), "'NO'").SetOrdinal(7);
            dataTable.Columns.Add("INITIALLY_DEFERRED", typeof(string), "'NO'").SetOrdinal(8);

            //if (hasEntityFilter)
            //{
            //    filteredView.RowFilter = "TABLE_NAME = '" + entityName + "'";
            //}
            //dataTable = filteredView.ToTable(true);

            if (hasConstraintNameFilter)
            {
                var filteredView = dataTable.AsDataView();
                filteredView.RowFilter = "CONSTRAINT_NAME = '" + constraintName + "'";
                dataTable = filteredView.ToTable(true);
            }

            //else
            //{
            //    dataTable = filteredView.ToTable(true);
            //}

            return dataTable;
        }
		protected void grdScans_NeedDataSource(object source, GridNeedDataSourceEventArgs e)
		{
			String gridSortString = grdScans.MasterTableView.SortExpressions.GetSortString();
			_dtScans = (DataTable)ViewState["_dtScans"];

			if (_dtScans != null)
			{
				DataView view = _dtScans.AsDataView();
				view.Sort = gridSortString;
				grdScans.DataSource = _dtScans;
			}
		}
        public DataTable GetUniqueKeyColumns(CrmDbConnection crmDbConnection, string[] restrictions)
        {
            string catalog = GetRestrictionOrNull(0, restrictions);
            string schema = GetRestrictionOrNull(1, restrictions);
            string table = GetRestrictionOrNull(2, restrictions);
            string constraintname = GetRestrictionOrNull(3, restrictions);
            string columnname = GetRestrictionOrNull(4, restrictions);

            bool hasEntityFilter = !string.IsNullOrEmpty(table);
            bool hasColumnFilter = !string.IsNullOrEmpty(columnname);
            bool hasConstraintNameFilter = !string.IsNullOrEmpty(constraintname);

            string commandText = "SELECT entitymetadata.PrimaryIdAttribute, entitymetadata.LogicalName, a.LogicalName, a.ColumnNumber FROM entitymetadata JOIN attributemetadata a on entitymetadata.MetadataId = a.MetadataId WHERE (a.isprimaryid = @isPrimaryId)";

            if (hasEntityFilter || hasColumnFilter)
            {
                commandText += "AND ";
                if (hasEntityFilter)
                {
                    commandText += " (entitymetadata.LogicalName = '" + table + "')";
                }
                if (hasEntityFilter && hasColumnFilter)
                {
                    commandText += " AND ";
                }
                if (hasColumnFilter)
                {
                    commandText += " (a.LogicalName = '" + columnname + "')";
                }
            }

            var command = new CrmDbCommand(crmDbConnection);
            var param = command.CreateParameter();
            param.DbType = DbType.Boolean;
            param.Direction = ParameterDirection.Input;
            param.ParameterName = "@isPrimaryId";
            param.Value = true;
            command.Parameters.Add(param);
            command.CommandText = commandText;
            var adapter = new CrmDataAdapter(command);
            var dataTable = new DataTable();
            dataTable.Locale = CultureInfo.InvariantCulture;
            adapter.Fill(dataTable);

            dataTable.Columns.Add("constraint_catalog", typeof(string), string.Format("'{0}'", crmDbConnection.ConnectionInfo.OrganisationName)).SetOrdinal(0);
            dataTable.Columns.Add("constraint_schema", typeof(string), string.Format("'{0}'", DefaultSchema)).SetOrdinal(1);

            dataTable.Columns["LogicalName"].ColumnName = "table_name";
            dataTable.Columns.Add("column_name", typeof(string), "IsNull([a.LogicalName], [PrimaryIdAttribute])");
            dataTable.Columns.Add("constraint_name", typeof(string), "'PK__' + IsNull(table_name, '') + '_' + IsNull(column_name, PrimaryIdAttribute)").SetOrdinal(2);
            dataTable.Columns.Add("table_catalog", typeof(string), string.Format("'{0}'", crmDbConnection.ConnectionInfo.OrganisationName)).SetOrdinal(3);
            dataTable.Columns.Add("table_schema", typeof(string), string.Format("'{0}'", DefaultSchema)).SetOrdinal(4);
            dataTable.Columns["table_name"].SetOrdinal(5);
            dataTable.Columns["column_name"].SetOrdinal(6);
            dataTable.Columns["a.columnnumber"].ColumnName = "ordinal_position";
            dataTable.Columns["ordinal_position"].SetOrdinal(7);

            dataTable.Columns.Add("constraint_type", typeof(string), "'PRIMARY KEY'").SetOrdinal(8);

            //   dataTable.Columns.Add("KeyType", typeof(Byte), "36").SetOrdinal(8); // 36 = uniqueidentitifer datatype - all pk indexes in crm are uniqueidentifiers.
            dataTable.Columns.Add("index_name", typeof(string), "constraint_name").SetOrdinal(9);
            //  dataTable.Columns.Add("type_desc", typeof(string), "'CLUSTERED'");

            var filteredView = dataTable.AsDataView();
            filteredView.RowFilter = "column_name = PrimaryIdAttribute";  // necessary due to #68
            dataTable = filteredView.ToTable(true);

            if (hasConstraintNameFilter)
            {
                filteredView = dataTable.AsDataView();
                filteredView.RowFilter = "constraint_name = '" + constraintname + "'";
                dataTable = filteredView.ToTable(true);
            }

            return dataTable;
        }
 public static void DeleteRows(string like, string likeColumn, DataTable dt)
 {
     if (dt.Columns.Contains(likeColumn))
     {
         string filter = likeColumn + " LIKE '" + like + "'";
         DataView dv = dt.AsDataView();
         dv.RowFilter = filter;
         DataTable temp_dt = dv.ToTable();
         if (temp_dt.Rows.Count > 0)
         {
             foreach (DataRow row in temp_dt.Rows)
             {
                 DataRow dbRow = dt.Rows.Find(row[likeColumn]);
                 if (dbRow != null) dt.Rows.Remove(dbRow);
             }
         }
     }
 }