public void ReloadControls(params String[] formNameList) { sqlCon.DoQuery("DELETE * FROM user_rol_access"); sqlCon.DoQuery("DELETE * FROM spr_user_controls"); DataTable dt = sqlCon.RefreshDataTable("spr_user_controls"); for (int i = 0; i < formNameList.Length; i++) { InsertControlsBySingle(formNameList[i]); } sqlCon.UpdateDataTable("spr_user_controls"); }
//Выравнивание справочников private Boolean AlignSpr(String sprName, out Dictionary <int, int> dictSpr, AlignMode mode) { dictSpr = null; GetDictSprForm getDictSprForm; DataTable dtSrcSpr = sqlConSrc.GetDataTable(sprName); DataTable dtDstSpr = sqlConDst.GetDataTable(sprName, "SELECT * FROM " + sprName); if (dtDstSpr == null) { return(false); } if (dtSrcSpr == null) { return(true); } GetDict(dtSrcSpr, dtDstSpr, out dictSpr); if (dtSrcSpr.Rows.Count == dictSpr.Count) { return(true); } switch (mode) { case AlignMode.add: DataTable dtSrcBuf = dtSrcSpr.Copy(); dtSrcBuf.AcceptChanges(); CompareTables(dtSrcBuf, dtDstSpr); FixRowState(dtSrcBuf); /* * if (sprName == "employee") * MessageBox.Show(dtSrcBuf.Rows.Count.ToString() + " dict:" + dictSpr.Count.ToString()); */ dtDstSpr.Merge(dtSrcBuf, false); sqlConDst.UpdateDataTable(sprName); dtDstSpr = sqlConDst.RefreshDataTable(sprName); GetDict(dtSrcSpr, dtDstSpr, out dictSpr); /* * if (sprName == "employee") * MessageBox.Show(dtSrcSpr.Rows.Count.ToString() + " dict:" + dictSpr.Count.ToString()); */ break; case AlignMode.dialog: getDictSprForm = new GetDictSprForm(dtSrcSpr, dtDstSpr, dictSpr); getDictSprForm.ShowDialog(); if (getDictSprForm.DialogResult == DialogResult.Cancel) { //MessageBox.Show(sprName); return(false); } break; default: break; } return(true); }