コード例 #1
0
ファイル: ProcButtonItemCrud.cs プロジェクト: nampn/ODental
 ///<summary>Inserts one ProcButtonItem into the database.  Returns the new priKey.</summary>
 internal static long Insert(ProcButtonItem procButtonItem)
 {
     if(DataConnection.DBtype==DatabaseType.Oracle) {
         procButtonItem.ProcButtonItemNum=DbHelper.GetNextOracleKey("procbuttonitem","ProcButtonItemNum");
         int loopcount=0;
         while(loopcount<100){
             try {
                 return Insert(procButtonItem,true);
             }
             catch(Oracle.DataAccess.Client.OracleException ex){
                 if(ex.Number==1 && ex.Message.ToLower().Contains("unique constraint") && ex.Message.ToLower().Contains("violated")){
                     procButtonItem.ProcButtonItemNum++;
                     loopcount++;
                 }
                 else{
                     throw ex;
                 }
             }
         }
         throw new ApplicationException("Insert failed.  Could not generate primary key.");
     }
     else {
         return Insert(procButtonItem,false);
     }
 }
コード例 #2
0
        ///<summary>Inserts one ProcButtonItem into the database.  Provides option to use the existing priKey.</summary>
        public static long Insert(ProcButtonItem procButtonItem, bool useExistingPK)
        {
            if (!useExistingPK && PrefC.RandomKeys)
            {
                procButtonItem.ProcButtonItemNum = ReplicationServers.GetKey("procbuttonitem", "ProcButtonItemNum");
            }
            string command = "INSERT INTO procbuttonitem (";

            if (useExistingPK || PrefC.RandomKeys)
            {
                command += "ProcButtonItemNum,";
            }
            command += "ProcButtonNum,OldCode,AutoCodeNum,CodeNum,ItemOrder) VALUES(";
            if (useExistingPK || PrefC.RandomKeys)
            {
                command += POut.Long(procButtonItem.ProcButtonItemNum) + ",";
            }
            command +=
                POut.Long(procButtonItem.ProcButtonNum) + ","
                + "'" + POut.String(procButtonItem.OldCode) + "',"
                + POut.Long(procButtonItem.AutoCodeNum) + ","
                + POut.Long(procButtonItem.CodeNum) + ","
                + POut.Long(procButtonItem.ItemOrder) + ")";
            if (useExistingPK || PrefC.RandomKeys)
            {
                Db.NonQ(command);
            }
            else
            {
                procButtonItem.ProcButtonItemNum = Db.NonQ(command, true, "ProcButtonItemNum", "procButtonItem");
            }
            return(procButtonItem.ProcButtonItemNum);
        }
コード例 #3
0
 ///<summary>Inserts one ProcButtonItem into the database.  Returns the new priKey.</summary>
 public static long Insert(ProcButtonItem procButtonItem)
 {
     if (DataConnection.DBtype == DatabaseType.Oracle)
     {
         procButtonItem.ProcButtonItemNum = DbHelper.GetNextOracleKey("procbuttonitem", "ProcButtonItemNum");
         int loopcount = 0;
         while (loopcount < 100)
         {
             try {
                 return(Insert(procButtonItem, true));
             }
             catch (Oracle.DataAccess.Client.OracleException ex) {
                 if (ex.Number == 1 && ex.Message.ToLower().Contains("unique constraint") && ex.Message.ToLower().Contains("violated"))
                 {
                     procButtonItem.ProcButtonItemNum++;
                     loopcount++;
                 }
                 else
                 {
                     throw ex;
                 }
             }
         }
         throw new ApplicationException("Insert failed.  Could not generate primary key.");
     }
     else
     {
         return(Insert(procButtonItem, false));
     }
 }
コード例 #4
0
ファイル: ProcButtonItemCrud.cs プロジェクト: mnisl/OD
		///<summary>Inserts one ProcButtonItem into the database.  Provides option to use the existing priKey.</summary>
		public static long Insert(ProcButtonItem procButtonItem,bool useExistingPK){
			if(!useExistingPK && PrefC.RandomKeys) {
				procButtonItem.ProcButtonItemNum=ReplicationServers.GetKey("procbuttonitem","ProcButtonItemNum");
			}
			string command="INSERT INTO procbuttonitem (";
			if(useExistingPK || PrefC.RandomKeys) {
				command+="ProcButtonItemNum,";
			}
			command+="ProcButtonNum,OldCode,AutoCodeNum,CodeNum) VALUES(";
			if(useExistingPK || PrefC.RandomKeys) {
				command+=POut.Long(procButtonItem.ProcButtonItemNum)+",";
			}
			command+=
				     POut.Long  (procButtonItem.ProcButtonNum)+","
				+"'"+POut.String(procButtonItem.OldCode)+"',"
				+    POut.Long  (procButtonItem.AutoCodeNum)+","
				+    POut.Long  (procButtonItem.CodeNum)+")";
			if(useExistingPK || PrefC.RandomKeys) {
				Db.NonQ(command);
			}
			else {
				procButtonItem.ProcButtonItemNum=Db.NonQ(command,true);
			}
			return procButtonItem.ProcButtonItemNum;
		}
コード例 #5
0
        ///<summary>Inserts one ProcButtonItem into the database.  Provides option to use the existing priKey.  Doesn't use the cache.</summary>
        public static long InsertNoCache(ProcButtonItem procButtonItem, bool useExistingPK)
        {
            bool   isRandomKeys = Prefs.GetBoolNoCache(PrefName.RandomPrimaryKeys);
            string command      = "INSERT INTO procbuttonitem (";

            if (!useExistingPK && isRandomKeys)
            {
                procButtonItem.ProcButtonItemNum = ReplicationServers.GetKeyNoCache("procbuttonitem", "ProcButtonItemNum");
            }
            if (isRandomKeys || useExistingPK)
            {
                command += "ProcButtonItemNum,";
            }
            command += "ProcButtonNum,OldCode,AutoCodeNum,CodeNum,ItemOrder) VALUES(";
            if (isRandomKeys || useExistingPK)
            {
                command += POut.Long(procButtonItem.ProcButtonItemNum) + ",";
            }
            command +=
                POut.Long(procButtonItem.ProcButtonNum) + ","
                + "'" + POut.String(procButtonItem.OldCode) + "',"
                + POut.Long(procButtonItem.AutoCodeNum) + ","
                + POut.Long(procButtonItem.CodeNum) + ","
                + POut.Long(procButtonItem.ItemOrder) + ")";
            if (useExistingPK || isRandomKeys)
            {
                Db.NonQ(command);
            }
            else
            {
                procButtonItem.ProcButtonItemNum = Db.NonQ(command, true, "ProcButtonItemNum", "procButtonItem");
            }
            return(procButtonItem.ProcButtonItemNum);
        }
コード例 #6
0
        ///<summary>Must have already checked ADACode for nonduplicate.</summary>
        public static void Insert(ProcButtonItem item)
        {
            string command = "INSERT INTO procbuttonitem (procbuttonnum,adacode,autocodenum) VALUES("
                             + "'" + POut.PInt(item.ProcButtonNum) + "', "
                             + "'" + POut.PString(item.ADACode) + "', "
                             + "'" + POut.PInt(item.AutoCodeNum) + "')";

            General.NonQ(command);
        }
コード例 #7
0
        ///<summary></summary>
        public static void Update(ProcButtonItem item)
        {
            string command = "UPDATE procbuttonitem SET "
                             + "procbuttonnum='" + POut.PInt(item.ProcButtonNum) + "'"
                             + ",adacode='" + POut.PString(item.ADACode) + "'"
                             + ",autocodenum='" + POut.PInt(item.AutoCodeNum) + "'"
                             + " WHERE procbuttonitemnum = '" + POut.PInt(item.ProcButtonItemNum) + "'";

            General.NonQ(command);
        }
コード例 #8
0
        ///<summary></summary>
        public static void Update(ProcButtonItem item)
        {
            string command = "UPDATE procbuttonitem SET "
                             + "ProcButtonNum='" + POut.PInt(item.ProcButtonNum) + "'"
                             + ",OldCode='" + POut.PString(item.OldCode) + "'"
                             + ",AutoCodeNum='" + POut.PInt(item.AutoCodeNum) + "'"
                             + ",CodeNum='" + POut.PInt(item.CodeNum) + "'"
                             + " WHERE ProcButtonItemNum = '" + POut.PInt(item.ProcButtonItemNum) + "'";

            General.NonQ(command);
        }
コード例 #9
0
        ///<summary>Updates one ProcButtonItem in the database.</summary>
        public static void Update(ProcButtonItem procButtonItem)
        {
            string command = "UPDATE procbuttonitem SET "
                             + "ProcButtonNum    =  " + POut.Long(procButtonItem.ProcButtonNum) + ", "
                             + "OldCode          = '" + POut.String(procButtonItem.OldCode) + "', "
                             + "AutoCodeNum      =  " + POut.Long(procButtonItem.AutoCodeNum) + ", "
                             + "CodeNum          =  " + POut.Long(procButtonItem.CodeNum) + " "
                             + "WHERE ProcButtonItemNum = " + POut.Long(procButtonItem.ProcButtonItemNum);

            Db.NonQ(command);
        }
コード例 #10
0
        ///<summary>Updates one ProcButtonItem in the database.  Uses an old object to compare to, and only alters changed fields.  This prevents collisions and concurrency problems in heavily used tables.  Returns true if an update occurred.</summary>
        public static bool Update(ProcButtonItem procButtonItem, ProcButtonItem oldProcButtonItem)
        {
            string command = "";

            if (procButtonItem.ProcButtonNum != oldProcButtonItem.ProcButtonNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "ProcButtonNum = " + POut.Long(procButtonItem.ProcButtonNum) + "";
            }
            if (procButtonItem.OldCode != oldProcButtonItem.OldCode)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "OldCode = '" + POut.String(procButtonItem.OldCode) + "'";
            }
            if (procButtonItem.AutoCodeNum != oldProcButtonItem.AutoCodeNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "AutoCodeNum = " + POut.Long(procButtonItem.AutoCodeNum) + "";
            }
            if (procButtonItem.CodeNum != oldProcButtonItem.CodeNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "CodeNum = " + POut.Long(procButtonItem.CodeNum) + "";
            }
            if (procButtonItem.ItemOrder != oldProcButtonItem.ItemOrder)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "ItemOrder = " + POut.Long(procButtonItem.ItemOrder) + "";
            }
            if (command == "")
            {
                return(false);
            }
            command = "UPDATE procbuttonitem SET " + command
                      + " WHERE ProcButtonItemNum = " + POut.Long(procButtonItem.ProcButtonItemNum);
            Db.NonQ(command);
            return(true);
        }
コード例 #11
0
        private void butOK_Click(object sender, System.EventArgs e)
        {
            if (textDescript.Text == "")
            {
                MessageBox.Show(Lan.g(this, "You must type in a description."));
                return;
            }
            if (listADA.Items.Count == 0 && listAutoCodes.SelectedIndices.Count == 0)
            {
                MessageBox.Show(Lan.g(this, "You must pick at least one Auto Code or Procedure Code."));
                return;
            }
            ProcButtonCur.Description = textDescript.Text;
            if (ProcButtonCur.Category != _listProcButtonCatDefs[comboCategory.SelectedIndex].DefNum)
            {
                //This will put it at the end of the order in the new category
                ProcButtonCur.ItemOrder
                    = ProcButtons.GetForCat(_listProcButtonCatDefs[comboCategory.SelectedIndex].DefNum).Length;
            }
            ProcButtonCur.Category    = _listProcButtonCatDefs[comboCategory.SelectedIndex].DefNum;
            ProcButtonCur.ButtonImage = POut.Bitmap((Bitmap)pictureBox.Image, System.Drawing.Imaging.ImageFormat.Png);
            if (IsNew)
            {
                ProcButtonCur.ItemOrder = ProcButtons.GetCount();
                ProcButtons.Insert(ProcButtonCur);
            }
            else
            {
                ProcButtons.Update(ProcButtonCur);
            }
            ProcButtonItems.DeleteAllForButton(ProcButtonCur.ProcButtonNum);
            ProcButtonItem item;

            for (int i = 0; i < listADA.Items.Count; i++)
            {
                item = new ProcButtonItem();
                item.ProcButtonNum = ProcButtonCur.ProcButtonNum;
                item.CodeNum       = ProcedureCodes.GetCodeNum(listADA.Items[i].ToString());
                item.ItemOrder     = i + 1;        //not i++, that would mess up the itteration.
                ProcButtonItems.Insert(item);
            }
            for (int i = 0; i < listAutoCodes.SelectedIndices.Count; i++)
            {
                item = new ProcButtonItem();
                item.ProcButtonNum = ProcButtonCur.ProcButtonNum;
                item.AutoCodeNum   = _listShortDeep[listAutoCodes.SelectedIndices[i]].AutoCodeNum;
                item.ItemOrder     = i + 1;        //not i++, that would mess up the itteration.
                ProcButtonItems.Insert(item);
            }
            DialogResult = DialogResult.OK;
        }
コード例 #12
0
ファイル: ProcButtonItemCrud.cs プロジェクト: mnisl/OD
		///<summary>Converts a DataTable to a list of objects.</summary>
		public static List<ProcButtonItem> TableToList(DataTable table){
			List<ProcButtonItem> retVal=new List<ProcButtonItem>();
			ProcButtonItem procButtonItem;
			for(int i=0;i<table.Rows.Count;i++) {
				procButtonItem=new ProcButtonItem();
				procButtonItem.ProcButtonItemNum= PIn.Long  (table.Rows[i]["ProcButtonItemNum"].ToString());
				procButtonItem.ProcButtonNum    = PIn.Long  (table.Rows[i]["ProcButtonNum"].ToString());
				procButtonItem.OldCode          = PIn.String(table.Rows[i]["OldCode"].ToString());
				procButtonItem.AutoCodeNum      = PIn.Long  (table.Rows[i]["AutoCodeNum"].ToString());
				procButtonItem.CodeNum          = PIn.Long  (table.Rows[i]["CodeNum"].ToString());
				retVal.Add(procButtonItem);
			}
			return retVal;
		}
コード例 #13
0
        private void butOK_Click(object sender, System.EventArgs e)
        {
            if (textDescript.Text == "")
            {
                MessageBox.Show(Lan.g(this, "You must type in a description."));
                return;
            }
            if (listADA.Items.Count == 0 && listAutoCodes.SelectedIndices.Count == 0)
            {
                MessageBox.Show(Lan.g(this, "You must pick at least one Auto Code or ADA Code."));
                return;
            }
            ProcButtonCur.Description = textDescript.Text;
            if (ProcButtonCur.Category != DefB.Short[(int)DefCat.ProcButtonCats][comboCategory.SelectedIndex].DefNum)
            {
                //This will put it at the end of the order in the new category
                ProcButtonCur.ItemOrder
                    = ProcButtons.GetForCat(DefB.Short[(int)DefCat.ProcButtonCats][comboCategory.SelectedIndex].DefNum).Length;
            }
            ProcButtonCur.Category    = DefB.Short[(int)DefCat.ProcButtonCats][comboCategory.SelectedIndex].DefNum;
            ProcButtonCur.ButtonImage = (Bitmap)pictureBox.Image;
            if (IsNew)
            {
                ProcButtonCur.ItemOrder = ProcButtons.List.Length;
                ProcButtons.Insert(ProcButtonCur);
            }
            else
            {
                ProcButtons.Update(ProcButtonCur);
            }
            ProcButtonItems.DeleteAllForButton(ProcButtonCur.ProcButtonNum);
            ProcButtonItem item;

            for (int i = 0; i < listADA.Items.Count; i++)
            {
                item = new ProcButtonItem();
                item.ProcButtonNum = ProcButtonCur.ProcButtonNum;
                item.ADACode       = listADA.Items[i].ToString();
                ProcButtonItems.Insert(item);
            }
            for (int i = 0; i < listAutoCodes.SelectedIndices.Count; i++)
            {
                item = new ProcButtonItem();
                item.ProcButtonNum = ProcButtonCur.ProcButtonNum;
                item.AutoCodeNum   = AutoCodes.ListShort[listAutoCodes.SelectedIndices[i]].AutoCodeNum;
                ProcButtonItems.Insert(item);
            }
            DialogResult = DialogResult.OK;
        }
コード例 #14
0
        ///<summary>Fills List in preparation for later usage.</summary>
        public static void Refresh()
        {
            string    command = "SELECT * FROM procbuttonitem";
            DataTable table   = General.GetTable(command);

            List = new ProcButtonItem[table.Rows.Count];
            for (int i = 0; i < table.Rows.Count; i++)
            {
                List[i] = new ProcButtonItem();
                List[i].ProcButtonItemNum = PIn.PInt(table.Rows[i][0].ToString());
                List[i].ProcButtonNum     = PIn.PInt(table.Rows[i][1].ToString());
                List[i].ADACode           = PIn.PString(table.Rows[i][2].ToString());
                List[i].AutoCodeNum       = PIn.PInt(table.Rows[i][3].ToString());
            }
        }
コード例 #15
0
 ///<summary>Inserts one ProcButtonItem into the database.  Returns the new priKey.  Doesn't use the cache.</summary>
 public static long InsertNoCache(ProcButtonItem procButtonItem)
 {
     if (DataConnection.DBtype == DatabaseType.MySql)
     {
         return(InsertNoCache(procButtonItem, false));
     }
     else
     {
         if (DataConnection.DBtype == DatabaseType.Oracle)
         {
             procButtonItem.ProcButtonItemNum = DbHelper.GetNextOracleKey("procbuttonitem", "ProcButtonItemNum");                  //Cacheless method
         }
         return(InsertNoCache(procButtonItem, true));
     }
 }
コード例 #16
0
        ///<summary>Converts a DataTable to a list of objects.</summary>
        public static List <ProcButtonItem> TableToList(DataTable table)
        {
            List <ProcButtonItem> retVal = new List <ProcButtonItem>();
            ProcButtonItem        procButtonItem;

            for (int i = 0; i < table.Rows.Count; i++)
            {
                procButtonItem = new ProcButtonItem();
                procButtonItem.ProcButtonItemNum = PIn.Long(table.Rows[i]["ProcButtonItemNum"].ToString());
                procButtonItem.ProcButtonNum     = PIn.Long(table.Rows[i]["ProcButtonNum"].ToString());
                procButtonItem.OldCode           = PIn.String(table.Rows[i]["OldCode"].ToString());
                procButtonItem.AutoCodeNum       = PIn.Long(table.Rows[i]["AutoCodeNum"].ToString());
                procButtonItem.CodeNum           = PIn.Long(table.Rows[i]["CodeNum"].ToString());
                retVal.Add(procButtonItem);
            }
            return(retVal);
        }
コード例 #17
0
        ///<summary>Converts a DataTable to a list of objects.</summary>
        public static List <ProcButtonItem> TableToList(DataTable table)
        {
            List <ProcButtonItem> retVal = new List <ProcButtonItem>();
            ProcButtonItem        procButtonItem;

            foreach (DataRow row in table.Rows)
            {
                procButtonItem = new ProcButtonItem();
                procButtonItem.ProcButtonItemNum = PIn.Long(row["ProcButtonItemNum"].ToString());
                procButtonItem.ProcButtonNum     = PIn.Long(row["ProcButtonNum"].ToString());
                procButtonItem.OldCode           = PIn.String(row["OldCode"].ToString());
                procButtonItem.AutoCodeNum       = PIn.Long(row["AutoCodeNum"].ToString());
                procButtonItem.CodeNum           = PIn.Long(row["CodeNum"].ToString());
                procButtonItem.ItemOrder         = PIn.Long(row["ItemOrder"].ToString());
                retVal.Add(procButtonItem);
            }
            return(retVal);
        }
コード例 #18
0
        ///<summary>Updates one ProcButtonItem in the database.  Uses an old object to compare to, and only alters changed fields.  This prevents collisions and concurrency problems in heavily used tables.</summary>
        internal static void Update(ProcButtonItem procButtonItem, ProcButtonItem oldProcButtonItem)
        {
            string command = "";

            if (procButtonItem.ProcButtonNum != oldProcButtonItem.ProcButtonNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "ProcButtonNum = " + POut.Long(procButtonItem.ProcButtonNum) + "";
            }
            if (procButtonItem.OldCode != oldProcButtonItem.OldCode)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "OldCode = '" + POut.String(procButtonItem.OldCode) + "'";
            }
            if (procButtonItem.AutoCodeNum != oldProcButtonItem.AutoCodeNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "AutoCodeNum = " + POut.Long(procButtonItem.AutoCodeNum) + "";
            }
            if (procButtonItem.CodeNum != oldProcButtonItem.CodeNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "CodeNum = " + POut.Long(procButtonItem.CodeNum) + "";
            }
            if (command == "")
            {
                return;
            }
            command = "UPDATE procbuttonitem SET " + command
                      + " WHERE ProcButtonItemNum = " + POut.Long(procButtonItem.ProcButtonItemNum);
            Db.NonQ(command);
        }
コード例 #19
0
 ///<summary>Returns true if Update(ProcButtonItem,ProcButtonItem) would make changes to the database.
 ///Does not make any changes to the database and can be called before remoting role is checked.</summary>
 public static bool UpdateComparison(ProcButtonItem procButtonItem, ProcButtonItem oldProcButtonItem)
 {
     if (procButtonItem.ProcButtonNum != oldProcButtonItem.ProcButtonNum)
     {
         return(true);
     }
     if (procButtonItem.OldCode != oldProcButtonItem.OldCode)
     {
         return(true);
     }
     if (procButtonItem.AutoCodeNum != oldProcButtonItem.AutoCodeNum)
     {
         return(true);
     }
     if (procButtonItem.CodeNum != oldProcButtonItem.CodeNum)
     {
         return(true);
     }
     if (procButtonItem.ItemOrder != oldProcButtonItem.ItemOrder)
     {
         return(true);
     }
     return(false);
 }
コード例 #20
0
ファイル: ProcButtonItemCrud.cs プロジェクト: mnisl/OD
		///<summary>Updates one ProcButtonItem in the database.  Uses an old object to compare to, and only alters changed fields.  This prevents collisions and concurrency problems in heavily used tables.  Returns true if an update occurred.</summary>
		public static bool Update(ProcButtonItem procButtonItem,ProcButtonItem oldProcButtonItem){
			string command="";
			if(procButtonItem.ProcButtonNum != oldProcButtonItem.ProcButtonNum) {
				if(command!=""){ command+=",";}
				command+="ProcButtonNum = "+POut.Long(procButtonItem.ProcButtonNum)+"";
			}
			if(procButtonItem.OldCode != oldProcButtonItem.OldCode) {
				if(command!=""){ command+=",";}
				command+="OldCode = '"+POut.String(procButtonItem.OldCode)+"'";
			}
			if(procButtonItem.AutoCodeNum != oldProcButtonItem.AutoCodeNum) {
				if(command!=""){ command+=",";}
				command+="AutoCodeNum = "+POut.Long(procButtonItem.AutoCodeNum)+"";
			}
			if(procButtonItem.CodeNum != oldProcButtonItem.CodeNum) {
				if(command!=""){ command+=",";}
				command+="CodeNum = "+POut.Long(procButtonItem.CodeNum)+"";
			}
			if(command==""){
				return false;
			}
			command="UPDATE procbuttonitem SET "+command
				+" WHERE ProcButtonItemNum = "+POut.Long(procButtonItem.ProcButtonItemNum);
			Db.NonQ(command);
			return true;
		}
コード例 #21
0
ファイル: ProcButtonItemCrud.cs プロジェクト: mnisl/OD
		///<summary>Updates one ProcButtonItem in the database.</summary>
		public static void Update(ProcButtonItem procButtonItem){
			string command="UPDATE procbuttonitem SET "
				+"ProcButtonNum    =  "+POut.Long  (procButtonItem.ProcButtonNum)+", "
				+"OldCode          = '"+POut.String(procButtonItem.OldCode)+"', "
				+"AutoCodeNum      =  "+POut.Long  (procButtonItem.AutoCodeNum)+", "
				+"CodeNum          =  "+POut.Long  (procButtonItem.CodeNum)+" "
				+"WHERE ProcButtonItemNum = "+POut.Long(procButtonItem.ProcButtonItemNum);
			Db.NonQ(command);
		}
コード例 #22
0
 ///<summary>Inserts one ProcButtonItem into the database.  Returns the new priKey.  Doesn't use the cache.</summary>
 public static long InsertNoCache(ProcButtonItem procButtonItem)
 {
     return(InsertNoCache(procButtonItem, false));
 }
コード例 #23
0
        ///<summary></summary>
        public static void Delete(ProcButtonItem item)
        {
            string command = "DELETE from procbuttonitem WHERE procbuttonitemnum = '" + POut.PInt(item.ProcButtonItemNum) + "'";

            General.NonQ(command);
        }
コード例 #24
0
        private void butOK_Click(object sender, System.EventArgs e)
        {
            if (textDescript.Text == "")
            {
                MessageBox.Show(Lan.g(this, "You must type in a description."));
                return;
            }
            if (listADA.Items.Count == 0 && listAutoCodes.SelectedIndices.Count == 0)
            {
                MessageBox.Show(Lan.g(this, "You must pick at least one Auto Code or Procedure Code."));
                return;
            }
            foreach (int index in listAutoCodes.SelectedIndices)
            {
                AutoCode autoCode = _listShortDeep[index];
                if (AutoCodeItems.GetListForCode(autoCode.AutoCodeNum).Count == 0)
                {
                    //This AutoCode was saved with no AutoCodeItems attached, which is invalid.
                    MessageBox.Show(this, Lan.g(this, "The following AutoCode has no associated Procedure Codes: ") + "\r\n" + autoCode.Description + "\r\n"
                                    + Lan.g(this, "AutoCode must be setup correctly before it can be used with a Quick Proc Button."));
                    return;
                }
            }
            //Point of no return.
            ProcButtonCur.Description = textDescript.Text;
            if (ProcButtonCur.Category != _listProcButtonCatDefs[comboCategory.SelectedIndex].DefNum)
            {
                //This will put it at the end of the order in the new category
                ProcButtonCur.ItemOrder
                    = ProcButtons.GetForCat(_listProcButtonCatDefs[comboCategory.SelectedIndex].DefNum).Length;
            }
            ProcButtonCur.Category     = _listProcButtonCatDefs[comboCategory.SelectedIndex].DefNum;
            ProcButtonCur.ButtonImage  = POut.Bitmap((Bitmap)pictureBox.Image, System.Drawing.Imaging.ImageFormat.Png);
            ProcButtonCur.IsMultiVisit = checkMultiVisit.Checked;
            if (IsNew)
            {
                ProcButtonCur.ItemOrder = ProcButtons.GetCount();
                ProcButtons.Insert(ProcButtonCur);
            }
            else
            {
                ProcButtons.Update(ProcButtonCur);
            }
            ProcButtonItems.DeleteAllForButton(ProcButtonCur.ProcButtonNum);
            ProcButtonItem item;

            for (int i = 0; i < listADA.Items.Count; i++)
            {
                item = new ProcButtonItem();
                item.ProcButtonNum = ProcButtonCur.ProcButtonNum;
                item.CodeNum       = ProcedureCodes.GetCodeNum(listADA.Items[i].ToString());
                item.ItemOrder     = i + 1;        //not i++, that would mess up the itteration.
                ProcButtonItems.Insert(item);
            }
            for (int i = 0; i < listAutoCodes.SelectedIndices.Count; i++)
            {
                item = new ProcButtonItem();
                item.ProcButtonNum = ProcButtonCur.ProcButtonNum;
                item.AutoCodeNum   = _listShortDeep[listAutoCodes.SelectedIndices[i]].AutoCodeNum;
                item.ItemOrder     = i + 1;        //not i++, that would mess up the itteration.
                ProcButtonItems.Insert(item);
            }
            DialogResult = DialogResult.OK;
        }