using System; using System.Configuration; using System.Data; using System.Windows.Forms; using System.Data.SqlClient; using System.Runtime.Versioning; namespace Louis__Pharmacy_CNSA212_FP { public class PharmacyDataTier { static String connString = ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString; static SqlConnection myConn = new SqlConnection(connString); static System.Data.SqlClient.SqlCommand cmdString = new System.Data.SqlClient.SqlCommand(); public static DataSet PatientInfoSearch(string id, string lname, string fname) { try { // open connection myConn.Open(); //clear any parameters cmdString.Parameters.Clear(); // command cmdString.Connection = myConn; cmdString.CommandType = CommandType.StoredProcedure; cmdString.CommandTimeout = 1500; cmdString.CommandText = "PatientInfoSearch"; // Define input parameter cmdString.Parameters.Add("@patientID", SqlDbType.VarChar, 6).Value = id; cmdString.Parameters.Add("@lname", SqlDbType.VarChar, 30).Value = lname; cmdString.Parameters.Add("@fname", SqlDbType.VarChar, 30).Value = fname; // adapter and dataset SqlDataAdapter aAdapter = new SqlDataAdapter(); aAdapter.SelectCommand = cmdString; DataSet aDataSet = new DataSet(); // fill adapter aAdapter.Fill(aDataSet); // return dataSet return aDataSet; } catch (Exception ex) { throw new ArgumentException(ex.Message); } finally { myConn.Close(); } } public static DataSet PatientInfoSearch(string id) { try { // open connection myConn.Open(); //clear any parameters cmdString.Parameters.Clear(); // command cmdString.Connection = myConn; cmdString.CommandType = CommandType.StoredProcedure; cmdString.CommandTimeout = 1500; cmdString.CommandText = "PatientInfoSearch"; // Define input parameter cmdString.Parameters.Add("@patientID", SqlDbType.VarChar, 6).Value = id; // adapter and dataset SqlDataAdapter aAdapter = new SqlDataAdapter(); aAdapter.SelectCommand = cmdString; DataSet aDataSet = new DataSet(); // fill adapter aAdapter.Fill(aDataSet); // return dataSet return aDataSet; } catch (Exception ex) { throw new ArgumentException(ex.Message); } finally { myConn.Close(); } } public static DataSet PrescriptionInfoSearch(string rxID, string patientID) { try { // open connection myConn.Open(); //clear any parameters cmdString.Parameters.Clear(); // command cmdString.Connection = myConn; cmdString.CommandType = CommandType.StoredProcedure; cmdString.CommandTimeout = 1500; cmdString.CommandText = "PerscriptionInfoSearch"; // Define input parameter cmdString.Parameters.Add("@rxID", SqlDbType.VarChar, 11).Value = rxID; cmdString.Parameters.Add("@patientID", SqlDbType.VarChar, 8).Value = patientID; // adapter and dataset SqlDataAdapter aAdapter = new SqlDataAdapter(); aAdapter.SelectCommand = cmdString; DataSet aDataSet = new DataSet(); // fill adapter aAdapter.Fill(aDataSet); // return dataSet return aDataSet; } catch (Exception ex) { throw new ArgumentException(ex.Message); } finally { myConn.Close(); } } public static DataSet PhysicianInfoSearch(string fname,string lname, string phyID) { try { // open connection myConn.Open(); //clear any parameters cmdString.Parameters.Clear(); // command cmdString.Connection = myConn; cmdString.CommandType = CommandType.StoredProcedure; cmdString.CommandTimeout = 1500; cmdString.CommandText = "PhysicianInfoSearch"; // Define input parameter cmdString.Parameters.Add("@fname", SqlDbType.VarChar, 11).Value = fname; cmdString.Parameters.Add("@lname", SqlDbType.VarChar, 8).Value = lname; cmdString.Parameters.Add("@phyID", SqlDbType.VarChar, 8).Value = phyID; // adapter and dataset SqlDataAdapter aAdapter = new SqlDataAdapter(); aAdapter.SelectCommand = cmdString; DataSet aDataSet = new DataSet(); // fill adapter aAdapter.Fill(aDataSet); // return dataSet return aDataSet; } catch (Exception ex) { throw new ArgumentException(ex.Message); } finally { myConn.Close(); } } public static double GetNextPatientID() { try { // open connection myConn.Open(); //clear any parameters cmdString.Parameters.Clear(); // command cmdString.Connection = myConn; cmdString.CommandType = CommandType.StoredProcedure; cmdString.CommandTimeout = 1500; cmdString.CommandText = "GetNextPatientID"; // Define input parameter cmdString.Parameters.Add("@TableName", SqlDbType.NVarChar, 128).Value = "PATIENT"; object result = cmdString.ExecuteScalar(); double value = 0; try { value = Convert.ToDouble(result); } catch(Exception e) { MessageBox.Show("Error Getting next Patient ID","ERROR",MessageBoxButtons.OK); } // return dataSet return value; } catch (Exception ex) { throw new ArgumentException(ex.Message); } finally { myConn.Close(); } } } }