Example #1
0
 ///<summary>Inserts one FormularyMed into the database.  Returns the new priKey.</summary>
 internal static long Insert(FormularyMed formularyMed)
 {
     if (DataConnection.DBtype == DatabaseType.Oracle)
     {
         formularyMed.FormularyMedNum = DbHelper.GetNextOracleKey("formularymed", "FormularyMedNum");
         int loopcount = 0;
         while (loopcount < 100)
         {
             try {
                 return(Insert(formularyMed, true));
             }
             catch (Oracle.DataAccess.Client.OracleException ex) {
                 if (ex.Number == 1 && ex.Message.ToLower().Contains("unique constraint") && ex.Message.ToLower().Contains("violated"))
                 {
                     formularyMed.FormularyMedNum++;
                     loopcount++;
                 }
                 else
                 {
                     throw ex;
                 }
             }
         }
         throw new ApplicationException("Insert failed.  Could not generate primary key.");
     }
     else
     {
         return(Insert(formularyMed, false));
     }
 }
Example #2
0
        ///<summary>Updates one FormularyMed 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(FormularyMed formularyMed, FormularyMed oldFormularyMed)
        {
            string command = "";

            if (formularyMed.FormularyNum != oldFormularyMed.FormularyNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "FormularyNum = " + POut.Long(formularyMed.FormularyNum) + "";
            }
            if (formularyMed.MedicationNum != oldFormularyMed.MedicationNum)
            {
                if (command != "")
                {
                    command += ",";
                }
                command += "MedicationNum = " + POut.Long(formularyMed.MedicationNum) + "";
            }
            if (command == "")
            {
                return;
            }
            command = "UPDATE formularymed SET " + command
                      + " WHERE FormularyMedNum = " + POut.Long(formularyMed.FormularyMedNum);
            Db.NonQ(command);
        }
Example #3
0
        ///<summary>Inserts one FormularyMed into the database.  Provides option to use the existing priKey.</summary>
        internal static long Insert(FormularyMed formularyMed, bool useExistingPK)
        {
            if (!useExistingPK && PrefC.RandomKeys)
            {
                formularyMed.FormularyMedNum = ReplicationServers.GetKey("formularymed", "FormularyMedNum");
            }
            string command = "INSERT INTO formularymed (";

            if (useExistingPK || PrefC.RandomKeys)
            {
                command += "FormularyMedNum,";
            }
            command += "FormularyNum,MedicationNum) VALUES(";
            if (useExistingPK || PrefC.RandomKeys)
            {
                command += POut.Long(formularyMed.FormularyMedNum) + ",";
            }
            command +=
                POut.Long(formularyMed.FormularyNum) + ","
                + POut.Long(formularyMed.MedicationNum) + ")";
            if (useExistingPK || PrefC.RandomKeys)
            {
                Db.NonQ(command);
            }
            else
            {
                formularyMed.FormularyMedNum = Db.NonQ(command, true);
            }
            return(formularyMed.FormularyMedNum);
        }
Example #4
0
 ///<summary>Inserts one FormularyMed into the database.  Returns the new priKey.</summary>
 internal static long Insert(FormularyMed formularyMed)
 {
     if(DataConnection.DBtype==DatabaseType.Oracle) {
         formularyMed.FormularyMedNum=DbHelper.GetNextOracleKey("formularymed","FormularyMedNum");
         int loopcount=0;
         while(loopcount<100){
             try {
                 return Insert(formularyMed,true);
             }
             catch(Oracle.DataAccess.Client.OracleException ex){
                 if(ex.Number==1 && ex.Message.ToLower().Contains("unique constraint") && ex.Message.ToLower().Contains("violated")){
                     formularyMed.FormularyMedNum++;
                     loopcount++;
                 }
                 else{
                     throw ex;
                 }
             }
         }
         throw new ApplicationException("Insert failed.  Could not generate primary key.");
     }
     else {
         return Insert(formularyMed,false);
     }
 }
Example #5
0
        ///<summary>Updates one FormularyMed in the database.</summary>
        internal static void Update(FormularyMed formularyMed)
        {
            string command = "UPDATE formularymed SET "
                             + "FormularyNum   =  " + POut.Long(formularyMed.FormularyNum) + ", "
                             + "MedicationNum  =  " + POut.Long(formularyMed.MedicationNum) + " "
                             + "WHERE FormularyMedNum = " + POut.Long(formularyMed.FormularyMedNum);

            Db.NonQ(command);
        }
Example #6
0
        ///<summary>Converts a DataTable to a list of objects.</summary>
        internal static List <FormularyMed> TableToList(DataTable table)
        {
            List <FormularyMed> retVal = new List <FormularyMed>();
            FormularyMed        formularyMed;

            for (int i = 0; i < table.Rows.Count; i++)
            {
                formularyMed = new FormularyMed();
                formularyMed.FormularyMedNum = PIn.Long(table.Rows[i]["FormularyMedNum"].ToString());
                formularyMed.FormularyNum    = PIn.Long(table.Rows[i]["FormularyNum"].ToString());
                formularyMed.MedicationNum   = PIn.Long(table.Rows[i]["MedicationNum"].ToString());
                retVal.Add(formularyMed);
            }
            return(retVal);
        }
Example #7
0
 ///<summary>Inserts one FormularyMed into the database.  Provides option to use the existing priKey.</summary>
 internal static long Insert(FormularyMed formularyMed,bool useExistingPK)
 {
     if(!useExistingPK && PrefC.RandomKeys) {
         formularyMed.FormularyMedNum=ReplicationServers.GetKey("formularymed","FormularyMedNum");
     }
     string command="INSERT INTO formularymed (";
     if(useExistingPK || PrefC.RandomKeys) {
         command+="FormularyMedNum,";
     }
     command+="FormularyNum,MedicationNum) VALUES(";
     if(useExistingPK || PrefC.RandomKeys) {
         command+=POut.Long(formularyMed.FormularyMedNum)+",";
     }
     command+=
              POut.Long  (formularyMed.FormularyNum)+","
         +    POut.Long  (formularyMed.MedicationNum)+")";
     if(useExistingPK || PrefC.RandomKeys) {
         Db.NonQ(command);
     }
     else {
         formularyMed.FormularyMedNum=Db.NonQ(command,true);
     }
     return formularyMed.FormularyMedNum;
 }
Example #8
0
 ///<summary>Updates one FormularyMed 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(FormularyMed formularyMed,FormularyMed oldFormularyMed)
 {
     string command="";
     if(formularyMed.FormularyNum != oldFormularyMed.FormularyNum) {
         if(command!=""){ command+=",";}
         command+="FormularyNum = "+POut.Long(formularyMed.FormularyNum)+"";
     }
     if(formularyMed.MedicationNum != oldFormularyMed.MedicationNum) {
         if(command!=""){ command+=",";}
         command+="MedicationNum = "+POut.Long(formularyMed.MedicationNum)+"";
     }
     if(command==""){
         return;
     }
     command="UPDATE formularymed SET "+command
         +" WHERE FormularyMedNum = "+POut.Long(formularyMed.FormularyMedNum);
     Db.NonQ(command);
 }
Example #9
0
 ///<summary>Updates one FormularyMed in the database.</summary>
 internal static void Update(FormularyMed formularyMed)
 {
     string command="UPDATE formularymed SET "
         +"FormularyNum   =  "+POut.Long  (formularyMed.FormularyNum)+", "
         +"MedicationNum  =  "+POut.Long  (formularyMed.MedicationNum)+" "
         +"WHERE FormularyMedNum = "+POut.Long(formularyMed.FormularyMedNum);
     Db.NonQ(command);
 }
Example #10
0
 ///<summary>Converts a DataTable to a list of objects.</summary>
 internal static List<FormularyMed> TableToList(DataTable table)
 {
     List<FormularyMed> retVal=new List<FormularyMed>();
     FormularyMed formularyMed;
     for(int i=0;i<table.Rows.Count;i++) {
         formularyMed=new FormularyMed();
         formularyMed.FormularyMedNum= PIn.Long  (table.Rows[i]["FormularyMedNum"].ToString());
         formularyMed.FormularyNum   = PIn.Long  (table.Rows[i]["FormularyNum"].ToString());
         formularyMed.MedicationNum  = PIn.Long  (table.Rows[i]["MedicationNum"].ToString());
         retVal.Add(formularyMed);
     }
     return retVal;
 }