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

            if (!useExistingPK && isRandomKeys)
            {
                gradingScaleItem.GradingScaleItemNum = ReplicationServers.GetKeyNoCache("gradingscaleitem", "GradingScaleItemNum");
            }
            if (isRandomKeys || useExistingPK)
            {
                command += "GradingScaleItemNum,";
            }
            command += "GradingScaleNum,GradeShowing,GradeNumber,Description) VALUES(";
            if (isRandomKeys || useExistingPK)
            {
                command += POut.Long(gradingScaleItem.GradingScaleItemNum) + ",";
            }
            command +=
                POut.Long(gradingScaleItem.GradingScaleNum) + ","
                + "'" + POut.String(gradingScaleItem.GradeShowing) + "',"
                + POut.Float(gradingScaleItem.GradeNumber) + ","
                + "'" + POut.String(gradingScaleItem.Description) + "')";
            if (useExistingPK || isRandomKeys)
            {
                Db.NonQ(command);
            }
            else
            {
                gradingScaleItem.GradingScaleItemNum = Db.NonQ(command, true, "GradingScaleItemNum", "gradingScaleItem");
            }
            return(gradingScaleItem.GradingScaleItemNum);
        }
コード例 #4
0
        ///<summary>Inserts one GradingScaleItem into the database.  Provides option to use the existing priKey.</summary>
        public static long Insert(GradingScaleItem gradingScaleItem, bool useExistingPK)
        {
            if (!useExistingPK && PrefC.RandomKeys)
            {
                gradingScaleItem.GradingScaleItemNum = ReplicationServers.GetKey("gradingscaleitem", "GradingScaleItemNum");
            }
            string command = "INSERT INTO gradingscaleitem (";

            if (useExistingPK || PrefC.RandomKeys)
            {
                command += "GradingScaleItemNum,";
            }
            command += "GradingScaleNum,GradeShowing,GradeNumber,Description) VALUES(";
            if (useExistingPK || PrefC.RandomKeys)
            {
                command += POut.Long(gradingScaleItem.GradingScaleItemNum) + ",";
            }
            command +=
                POut.Long(gradingScaleItem.GradingScaleNum) + ","
                + "'" + POut.String(gradingScaleItem.GradeShowing) + "',"
                + POut.Float(gradingScaleItem.GradeNumber) + ","
                + "'" + POut.String(gradingScaleItem.Description) + "')";
            if (useExistingPK || PrefC.RandomKeys)
            {
                Db.NonQ(command);
            }
            else
            {
                gradingScaleItem.GradingScaleItemNum = Db.NonQ(command, true, "GradingScaleItemNum", "gradingScaleItem");
            }
            return(gradingScaleItem.GradingScaleItemNum);
        }
コード例 #5
0
        ///<summary>Updates one GradingScaleItem in the database.</summary>
        public static void Update(GradingScaleItem gradingScaleItem)
        {
            string command = "UPDATE gradingscaleitem SET "
                             + "GradingScaleNum    =  " + POut.Long(gradingScaleItem.GradingScaleNum) + ", "
                             + "GradeShowing       = '" + POut.String(gradingScaleItem.GradeShowing) + "', "
                             + "GradeNumber        =  " + POut.Float(gradingScaleItem.GradeNumber) + ", "
                             + "Description        = '" + POut.String(gradingScaleItem.Description) + "' "
                             + "WHERE GradingScaleItemNum = " + POut.Long(gradingScaleItem.GradingScaleItemNum);

            Db.NonQ(command);
        }
コード例 #6
0
        private void butAdd_Click(object sender, EventArgs e)
        {
            GradingScaleItem gradingScaleItemNew = new GradingScaleItem();

            gradingScaleItemNew.GradingScaleNum = _gradingScaleCur.GradingScaleNum;          //Must be set prior to edit window being open if a new item.
            gradingScaleItemNew.IsNew           = true;
            FormGradingScaleItemEdit FormGSIE = new FormGradingScaleItemEdit(gradingScaleItemNew);

            FormGSIE.ShowDialog();
            FillGrid();
        }
コード例 #7
0
ファイル: GradingScaleItemCrud.cs プロジェクト: mnisl/OD
		///<summary>Converts a DataTable to a list of objects.</summary>
		public static List<GradingScaleItem> TableToList(DataTable table){
			List<GradingScaleItem> retVal=new List<GradingScaleItem>();
			GradingScaleItem gradingScaleItem;
			for(int i=0;i<table.Rows.Count;i++) {
				gradingScaleItem=new GradingScaleItem();
				gradingScaleItem.GradingScaleItemNum= PIn.Long  (table.Rows[i]["GradingScaleItemNum"].ToString());
				gradingScaleItem.GradingScaleNum    = PIn.Long  (table.Rows[i]["GradingScaleNum"].ToString());
				gradingScaleItem.GradeShowing       = PIn.String(table.Rows[i]["GradeShowing"].ToString());
				gradingScaleItem.GradeNumber        = PIn.Float (table.Rows[i]["GradeNumber"].ToString());
				gradingScaleItem.Description        = PIn.String(table.Rows[i]["Description"].ToString());
				retVal.Add(gradingScaleItem);
			}
			return retVal;
		}
コード例 #8
0
 ///<summary>Inserts one GradingScaleItem into the database.  Returns the new priKey.  Doesn't use the cache.</summary>
 public static long InsertNoCache(GradingScaleItem gradingScaleItem)
 {
     if (DataConnection.DBtype == DatabaseType.MySql)
     {
         return(InsertNoCache(gradingScaleItem, false));
     }
     else
     {
         if (DataConnection.DBtype == DatabaseType.Oracle)
         {
             gradingScaleItem.GradingScaleItemNum = DbHelper.GetNextOracleKey("gradingscaleitem", "GradingScaleItemNum");                  //Cacheless method
         }
         return(InsertNoCache(gradingScaleItem, true));
     }
 }
コード例 #9
0
        ///<summary>Converts a DataTable to a list of objects.</summary>
        public static List <GradingScaleItem> TableToList(DataTable table)
        {
            List <GradingScaleItem> retVal = new List <GradingScaleItem>();
            GradingScaleItem        gradingScaleItem;

            foreach (DataRow row in table.Rows)
            {
                gradingScaleItem = new GradingScaleItem();
                gradingScaleItem.GradingScaleItemNum = PIn.Long(row["GradingScaleItemNum"].ToString());
                gradingScaleItem.GradingScaleNum     = PIn.Long(row["GradingScaleNum"].ToString());
                gradingScaleItem.GradeShowing        = PIn.String(row["GradeShowing"].ToString());
                gradingScaleItem.GradeNumber         = PIn.Float(row["GradeNumber"].ToString());
                gradingScaleItem.Description         = PIn.String(row["Description"].ToString());
                retVal.Add(gradingScaleItem);
            }
            return(retVal);
        }
コード例 #10
0
        ///<summary>Updates one GradingScaleItem 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(GradingScaleItem gradingScaleItem, GradingScaleItem oldGradingScaleItem)
        {
            string command = "";

            if (gradingScaleItem.GradingScaleNum != oldGradingScaleItem.GradingScaleNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "GradingScaleNum = " + POut.Long(gradingScaleItem.GradingScaleNum) + "";
            }
            if (gradingScaleItem.GradeShowing != oldGradingScaleItem.GradeShowing)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "GradeShowing = '" + POut.String(gradingScaleItem.GradeShowing) + "'";
            }
            if (gradingScaleItem.GradeNumber != oldGradingScaleItem.GradeNumber)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "GradeNumber = " + POut.Float(gradingScaleItem.GradeNumber) + "";
            }
            if (gradingScaleItem.Description != oldGradingScaleItem.Description)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "Description = '" + POut.String(gradingScaleItem.Description) + "'";
            }
            if (command == "")
            {
                return(false);
            }
            command = "UPDATE gradingscaleitem SET " + command
                      + " WHERE GradingScaleItemNum = " + POut.Long(gradingScaleItem.GradingScaleItemNum);
            Db.NonQ(command);
            return(true);
        }
コード例 #11
0
 ///<summary>Returns true if Update(GradingScaleItem,GradingScaleItem) 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(GradingScaleItem gradingScaleItem, GradingScaleItem oldGradingScaleItem)
 {
     if (gradingScaleItem.GradingScaleNum != oldGradingScaleItem.GradingScaleNum)
     {
         return(true);
     }
     if (gradingScaleItem.GradeShowing != oldGradingScaleItem.GradeShowing)
     {
         return(true);
     }
     if (gradingScaleItem.GradeNumber != oldGradingScaleItem.GradeNumber)
     {
         return(true);
     }
     if (gradingScaleItem.Description != oldGradingScaleItem.Description)
     {
         return(true);
     }
     return(false);
 }
コード例 #12
0
ファイル: GradingScaleItemCrud.cs プロジェクト: mnisl/OD
		///<summary>Inserts one GradingScaleItem into the database.  Returns the new priKey.</summary>
		public static long Insert(GradingScaleItem gradingScaleItem){
			if(DataConnection.DBtype==DatabaseType.Oracle) {
				gradingScaleItem.GradingScaleItemNum=DbHelper.GetNextOracleKey("gradingscaleitem","GradingScaleItemNum");
				int loopcount=0;
				while(loopcount<100){
					try {
						return Insert(gradingScaleItem,true);
					}
					catch(Oracle.DataAccess.Client.OracleException ex){
						if(ex.Number==1 && ex.Message.ToLower().Contains("unique constraint") && ex.Message.ToLower().Contains("violated")){
							gradingScaleItem.GradingScaleItemNum++;
							loopcount++;
						}
						else{
							throw ex;
						}
					}
				}
				throw new ApplicationException("Insert failed.  Could not generate primary key.");
			}
			else {
				return Insert(gradingScaleItem,false);
			}
		}
コード例 #13
0
ファイル: GradingScaleItemCrud.cs プロジェクト: mnisl/OD
		///<summary>Updates one GradingScaleItem 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(GradingScaleItem gradingScaleItem,GradingScaleItem oldGradingScaleItem){
			string command="";
			if(gradingScaleItem.GradingScaleNum != oldGradingScaleItem.GradingScaleNum) {
				if(command!=""){ command+=",";}
				command+="GradingScaleNum = "+POut.Long(gradingScaleItem.GradingScaleNum)+"";
			}
			if(gradingScaleItem.GradeShowing != oldGradingScaleItem.GradeShowing) {
				if(command!=""){ command+=",";}
				command+="GradeShowing = '"+POut.String(gradingScaleItem.GradeShowing)+"'";
			}
			if(gradingScaleItem.GradeNumber != oldGradingScaleItem.GradeNumber) {
				if(command!=""){ command+=",";}
				command+="GradeNumber = "+POut.Float(gradingScaleItem.GradeNumber)+"";
			}
			if(gradingScaleItem.Description != oldGradingScaleItem.Description) {
				if(command!=""){ command+=",";}
				command+="Description = '"+POut.String(gradingScaleItem.Description)+"'";
			}
			if(command==""){
				return false;
			}
			command="UPDATE gradingscaleitem SET "+command
				+" WHERE GradingScaleItemNum = "+POut.Long(gradingScaleItem.GradingScaleItemNum);
			Db.NonQ(command);
			return true;
		}
コード例 #14
0
ファイル: GradingScaleItemCrud.cs プロジェクト: mnisl/OD
		///<summary>Updates one GradingScaleItem in the database.</summary>
		public static void Update(GradingScaleItem gradingScaleItem){
			string command="UPDATE gradingscaleitem SET "
				+"GradingScaleNum    =  "+POut.Long  (gradingScaleItem.GradingScaleNum)+", "
				+"GradeShowing       = '"+POut.String(gradingScaleItem.GradeShowing)+"', "
				+"GradeNumber        =  "+POut.Float (gradingScaleItem.GradeNumber)+", "
				+"Description        = '"+POut.String(gradingScaleItem.Description)+"' "
				+"WHERE GradingScaleItemNum = "+POut.Long(gradingScaleItem.GradingScaleItemNum);
			Db.NonQ(command);
		}
コード例 #15
0
 public FormGradingScaleItemEdit(GradingScaleItem gradingScaleItemCur)
 {
     InitializeComponent();
     Lan.F(this);
     _gradingScaleItemCur = gradingScaleItemCur;
 }
コード例 #16
0
 ///<summary>Inserts one GradingScaleItem into the database.  Returns the new priKey.</summary>
 public static long Insert(GradingScaleItem gradingScaleItem)
 {
     return(Insert(gradingScaleItem, false));
 }