public override bool DocumentCloseDocument() { _DataSetOrderDetails = null; _DataSetClientMedicationScriptHistory = null; objectClientMedications = null; _DataSetClientSummary = null; Session["DataViewClientMedicationScriptHistory"] = null; GridViewMedicationInstructions.Dispose(); DataGridScriptHistory.Dispose(); return(true); }
/// Author Sonia /// <summary> /// This Function is used to get the Details of Medication i.e its Name,Instructions,Prescriber etc /// and then Bind the Controls to display the details at GUI /// </summary> private void GetMedicationOrderDetails() { try { objectClientMedications = new Streamline.UserBusinessServices.ClientMedication(); _DataSetOrderDetails.Clear(); _DataSetOrderDetails.EnforceConstraints = false; //Changes made by sonia as during testing found that OrderDetails were not being fetched properly //In case ScriptId is set pass ScriptId. //Otherwise get the Order Details as per latest records in ClientMedicationScriptDrugs if (Convert.ToInt32(((Streamline.BaseLayer.StreamlinePrinciple)Context.User).Client.ClientOrderDetailsMedicationScriptId.ToString()) <= 0) { _DataSetOrderDetails.Merge(objectClientMedications.GetMedicationOrderDetails(_clientMedicationId, -1)); } else { _DataSetOrderDetails.Merge(objectClientMedications.GetMedicationOrderDetails(_clientMedicationId, Convert.ToInt32(((Streamline.BaseLayer.StreamlinePrinciple)Context.User).Client.ClientOrderDetailsMedicationScriptId.ToString()))); } if (_DataSetOrderDetails.Tables.Count > 0) { if ((_DataSetOrderDetails.Tables.Contains("DrugCategory")) && (_DataSetOrderDetails.Tables["DrugCategory"].Rows.Count > 0)) { string _strDrugCategory = _DataSetOrderDetails.Tables["DrugCategory"].Rows[0]["Category"].ToString(); if (_strDrugCategory == "0") { HiddenFieldScriptOrderingMethod.Value = "Faxed"; } else { HiddenFieldScriptOrderingMethod.Value = "Printed"; } Session["DrugCategory"] = _strDrugCategory; Session["DataSetOrderDetails"] = _DataSetOrderDetails; } if (_DataSetOrderDetails.Tables.Contains("ClientMedications")) { if (_DataSetOrderDetails.Tables["ClientMedications"].Rows.Count > 0) { // customMedicationOrderDetails.MedicationNameId = Convert.ToInt32(_dataSetOrderDetails.Tables[0].Rows[0]["MedicationNameId"].ToString()); LabelPrescriber.Text = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["PrescriberName"].ToString(); LabelDxPurpose.Text = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["DrugPurpose"].ToString(); TextBoxDiscontinue.Text = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["DiscontinuedReason"].ToString(); LabelEnteredBy.Text = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["CreatedBy"].ToString(); //Changed by Loveena on 06-Dec-2009 to set Date Format as MM/dd/yyyy" //LabelDateCreated.Text = Convert.ToDateTime(_DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["CreatedDate"].ToString()).ToShortDateString(); LabelDateCreated.Text = Convert.ToDateTime(_DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["CreatedDate"].ToString()).ToString("MM/dd/yyyy"); LabelMedicationName.Text = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["MedicationName"].ToString(); if (_DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["Discontinued"].ToString() == "Y") { CheckBoxDiscontinued.Checked = true; CheckBoxDiscontinued.Enabled = false; ButtonUpdate.Disabled = true; TextBoxDiscontinue.ReadOnly = true; //Code added by Loveena on 27-April-2009 in ref to Task#2486 to display Discontinue Reason Code //if medication gets discontinued. if (_DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["DiscontinuedReasonCode"].ToString() != string.Empty) { DropDownDiscontinueReason.SelectedValue = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["DiscontinuedReasonCode"].ToString(); } } else { CheckBoxDiscontinued.Checked = false; ////Code Adde by Pramod on 10 Apr 2008 as checkbox should be enable or disable according to permission //if (((Streamline.BaseLayer.StreamlinePrinciple)Context.User).HasPermission(Permissions.NewOrder)) //CheckBoxDiscontinued.Enabled = true; //TextBoxDiscontinue.ReadOnly = false; } //Added by Loveena in ref to Task#2433 to display new fields offLabel,Comments,Desired Outcome // on 11-April-2009 MM-1.9. TextBoxComments.Text = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["Comments"] == DBNull.Value ? "" : _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["Comments"].ToString(); TextBoxDesiredOutcome.Text = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["DesiredOutcomes"] == DBNull.Value ? "" : _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["DesiredOutcomes"].ToString(); if (_DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["OffLabel"].ToString() == "Y") { CheckBoxOffLabel.Checked = true; } else { CheckBoxOffLabel.Checked = false; } if (_DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["DAW"].ToString() == "Y") { CheckBoxDAW.Checked = true; } else { CheckBoxDAW.Checked = false; } if (_DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["VerbalOrderReadBack"].ToString() == "Y") { CheckBoxVORB.Checked = true; } else { CheckBoxVORB.Checked = false; } //Code Added by Loveena ends over here. //Code added by Loveena in ref to Task#32 if (_DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["IncludeCommentOnPrescription"].ToString() == "Y") { CheckBoxIncudeOnProescription.Checked = true; } else { CheckBoxIncudeOnProescription.Checked = false; } //Code ends over here. } //---Start Code Added By Pradeep as per task#31 string permmitChanges = string.Empty; permmitChanges = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["PermitChangesByOtherUsers"] == DBNull.Value ? "" : _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["PermitChangesByOtherUsers"].ToString(); if (permmitChanges.ToUpper() == "N") { this.CheckBoxPermitChanges.Attributes.Add("style", "display:none"); } else { this.CheckBoxPermitChanges.Attributes.Add("style", "display:block"); } //--End Code Added by Pradeep as per task#31 if (_DataSetOrderDetails.Tables.Contains("ClientMedicationInstructions")) { if (_DataSetOrderDetails.Tables["ClientMedicationInstructions"].Rows.Count > 0) { GridViewMedicationInstructions.DataSource = _DataSetOrderDetails.Tables["ClientMedicationInstructions"].DefaultView; //GridViewMedicationInstructions.DataBind(); //Ref Task #67 1.6.1 - Special Instructions Changes //In case of Ordered Medications and Non ordered Medications having Instructions Special Instructions should be displayed from ClientMedicationInstructions as being returned by SP from ClientMedicationScriptDrugs Table //TextBoxSpecialInstructions.Text = _DataSetOrderDetails.Tables["ClientMedicationInstructions"].Rows[0]["SpecialInstructions"].ToString(); if (_DataSetOrderDetails.Tables["ClientMedicationInstructions"].Select("Stock > 0 or Sample > 0 ").Length > 0) { ShowHidePillImage = "display:block"; } } GridViewMedicationInstructions.DataBind(); TextBoxSpecialInstructions.Text = _DataSetOrderDetails.Tables["ClientMedications"].Rows[0]["SpecialInstructions"].ToString(); } } //HiddenFieldScriptId added by Sonia as OrderDetails should be get both according to ClientMedicationId as well as ScriptId //ScriptId should be set only in case there are more than one row in Instructions table //As in Non ordered Medications Instructions can be blank. if (_DataSetOrderDetails.Tables.Contains("ClientMedicationInstructions") && _DataSetOrderDetails.Tables["ClientMedicationInstructions"].Rows.Count > 0) { HiddenFieldScriptId.Value = _DataSetOrderDetails.Tables["ClientMedicationInstructions"].Rows[0]["ClientMedicationScriptId"].ToString(); } } } catch (Exception ex) { throw (ex); } }