private void butOK_Click(object sender, EventArgs e) { if (textDateStart.errorProvider1.GetError(textDateStart) != "") { MsgBox.Show(this, "Please fix data entry errors first."); return; } if (textDateStart.Text == "") { MsgBox.Show(this, "Please enter a start date."); return; } if (textDateEnd.errorProvider1.GetError(textDateEnd) != "") { MsgBox.Show(this, "Please fix data entry errors first."); return; } if (textDateEnd.Text == "") { MsgBox.Show(this, "Please enter an end date."); return; } if (gridCourses.SelectedIndices.Length < 1) { MsgBox.Show(this, "At least one course must be selected to run a report. Please select a row from the course grid."); return; } if (gridInstructors.SelectedIndices.Length < 1) { MsgBox.Show(this, "At least one instructor must be selected to run a report. Please select a row from the instructor grid."); return; } if (gridStudents.SelectedIndices.Length < 1) { MsgBox.Show(this, "At least one student must be selected to run a report. Please select a row from the student grid."); return; } DateTime dateStart = PIn.Date(textDateStart.Text); DateTime dateEnd = PIn.Date(textDateEnd.Text); string whereCourses = ""; if (!checkAllCourses.Checked) { for (int i = 0; i < gridCourses.SelectedIndices.Length; i++) { if (i == 0) { whereCourses += " AND evaluation.SchoolCourseNum IN("; } whereCourses += gridCourses.Rows[gridCourses.SelectedIndices[i]].Tag; if (i != gridCourses.SelectedIndices.Length - 1) { whereCourses += ","; } } whereCourses += ")"; } string whereInstructors = ""; if (!checkAllInstructors.Checked) { for (int i = 0; i < gridInstructors.SelectedIndices.Length; i++) { if (i == 0) { whereInstructors += " AND evaluation.InstructNum IN("; } whereInstructors += gridInstructors.Rows[gridInstructors.SelectedIndices[i]].Tag; if (i != gridInstructors.SelectedIndices.Length - 1) { whereInstructors += ","; } } whereInstructors += ")"; } //No checkbox for students string whereStudents = " AND evaluation.StudentNum IN("; for (int i = 0; i < gridStudents.SelectedIndices.Length; i++) { whereStudents += gridStudents.Rows[gridStudents.SelectedIndices[i]].Tag; if (i != gridStudents.SelectedIndices.Length - 1) { whereStudents += ","; } } whereStudents += ")"; ReportSimpleGrid report = new ReportSimpleGrid(); //Evaluations------------------------------------------------------------------------------ report.Query = "SELECT " + DbHelper.Concat("students.LName", "', '", "students.FName") + " StudentName,evaluation.DateEval," + "courses.CourseID," + DbHelper.Concat("instructors.LName", "', '", "instructors.FName") + " InstructorName," + "evaluation.EvalTitle,gradeScales.ScaleType,evaluation.OverallGradeShowing,evaluation.OverallGradeNumber"; report.Query += " FROM evaluation" + " INNER JOIN provider students ON evaluation.StudentNum=students.ProvNum" + " INNER JOIN provider instructors ON evaluation.InstructNum=instructors.ProvNum" + " INNER JOIN gradingscale gradeScales ON evaluation.GradingScaleNum=gradeScales.GradingScaleNum" + " INNER JOIN schoolcourse courses ON evaluation.SchoolCourseNum=courses.SchoolCourseNum" + " WHERE evaluation.DateEval BETWEEN " + POut.Date(dateStart) + " AND " + POut.Date(dateEnd) + whereCourses + whereInstructors + whereStudents + " ORDER BY StudentName,evaluation.DateEval"; FormQuery2 = new FormQuery(report); FormQuery2.IsReport = true; DataTable table = report.GetTempTable(); report.TableQ = new DataTable(); int colI = 10; for (int i = 0; i < colI; i++) //add columns { report.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } report.InitializeColumns(); DataRow row; for (int i = 0; i < table.Rows.Count; i++) { row = report.TableQ.NewRow(); //create new row called 'row' based on structure of TableQ row[0] = table.Rows[i]["StudentName"].ToString(); row[1] = PIn.Date(table.Rows[i]["DateEval"].ToString()).ToShortDateString(); row[2] = table.Rows[i]["CourseID"].ToString(); row[3] = table.Rows[i]["InstructorName"].ToString(); row[4] = table.Rows[i]["EvalTitle"].ToString(); switch ((EnumScaleType)PIn.Int(table.Rows[i]["ScaleType"].ToString())) { case EnumScaleType.PickList: row[5] = Enum.GetName(typeof(EnumScaleType), (int)EnumScaleType.PickList); break; case EnumScaleType.Percentage: row[5] = Enum.GetName(typeof(EnumScaleType), (int)EnumScaleType.Percentage); break; case EnumScaleType.Weighted: row[5] = Enum.GetName(typeof(EnumScaleType), (int)EnumScaleType.Weighted); break; } row[6] = table.Rows[i]["OverallGradeShowing"].ToString(); row[7] = table.Rows[i]["OverallGradeNumber"].ToString(); report.TableQ.Rows.Add(row); } FormQuery2.ResetGrid(); report.Title = Lan.g(this, "Course Average"); report.SubTitle.Add(dateStart.ToShortDateString() + " - " + dateEnd.ToShortDateString()); if (checkAllInstructors.Checked) { report.SubTitle.Add(Lan.g(this, "All Instructors")); } if (checkAllCourses.Checked) { report.SubTitle.Add(Lan.g(this, "All Courses")); } report.SetColumn(this, 0, "Student", 120); report.SetColumn(this, 1, "Date", 80); report.SetColumn(this, 2, "Course", 100); report.SetColumn(this, 3, "Instructor", 120); report.SetColumn(this, 4, "Evaluation", 90); report.SetColumn(this, 5, "Scale Type", 90); report.SetColumn(this, 6, "Grade Showing", 100); report.SetColumn(this, 7, "Grade Number", 100); FormQuery2.ShowDialog(); }
private void butOK_Click(object sender, System.EventArgs e) { ReportSimpleGrid report = new ReportSimpleGrid(); report.Query = "SELECT claim.dateservice,claim.claimnum,claim.claimtype,claim.claimstatus," + "CONCAT(CONCAT(CONCAT(CONCAT(patient.LName,', '),patient.FName),' '),patient.MiddleI),carrier.CarrierName,claim.claimfee " + "FROM patient,claim,insplan,carrier " + "WHERE patient.patnum=claim.patnum AND insplan.plannum=claim.plannum " + "AND insplan.CarrierNum=carrier.CarrierNum " + "AND (claim.claimstatus = 'U' OR claim.claimstatus = 'H' OR claim.claimstatus = 'W')"; if (radioRange.Checked == true) { report.Query += " AND claim.dateservice >= '" + date1.SelectionStart.ToString("yyyy-MM-dd") + "' " + "AND claim.dateservice <= '" + date2.SelectionStart.ToString("yyyy-MM-dd") + "'"; } else { report.Query += " AND claim.dateservice = '" + date1.SelectionStart.ToString("yyyy-MM-dd") + "'"; } FormQuery2 = new FormQuery(report); FormQuery2.IsReport = true; DataTable tempT = report.GetTempTable(); report.TableQ = new DataTable(null); //new table no name for (int i = 0; i < 6; i++) //add columns { report.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } report.InitializeColumns(); for (int i = 0; i < tempT.Rows.Count; i++) //loop through data rows { DataRow row = report.TableQ.NewRow(); //create new row called 'row' based on structure of TableQ row[0] = (PIn.Date(tempT.Rows[i][0].ToString())).ToShortDateString(); //claim dateservice if (PIn.String(tempT.Rows[i][2].ToString()) == "P") { row[1] = "Primary"; } if (PIn.String(tempT.Rows[i][2].ToString()) == "S") { row[1] = "Secondary"; } if (PIn.String(tempT.Rows[i][2].ToString()) == "PreAuth") { row[1] = "PreAuth"; } if (PIn.String(tempT.Rows[i][2].ToString()) == "Other") { row[1] = "Other"; } if (tempT.Rows[i][3].ToString().Equals("H")) { row[2] = "Holding"; //Claim Status } else if (tempT.Rows[i][3].ToString().Equals("W")) { row[2] = "WaitQ"; //Claim Status, added SPK 7/15/04 } else { row[2] = "Unsent"; //Claim Status } row[3] = tempT.Rows[i][4]; //Patient name row[4] = tempT.Rows[i][5]; //Ins Carrier row[5] = PIn.Double(tempT.Rows[i][6].ToString()).ToString("F"); //claim fee report.ColTotal[5] += PIn.Decimal(tempT.Rows[i][6].ToString()); report.TableQ.Rows.Add(row); } FormQuery2.ResetGrid(); //this is a method in FormQuery2; report.Title = "Claims Not Sent"; report.SubTitle.Add(PrefC.GetString(PrefName.PracticeTitle)); if (radioRange.Checked == true) { report.SubTitle.Add(date1.SelectionStart.ToString("d") + " - " + date2.SelectionStart.ToString("d")); } else { report.SubTitle.Add(date1.SelectionStart.ToString("d")); } report.ColPos[0] = 20; report.ColPos[1] = 145; report.ColPos[2] = 270; report.ColPos[3] = 395; report.ColPos[4] = 520; report.ColPos[5] = 645; report.ColPos[6] = 770; report.ColCaption[0] = "Date"; report.ColCaption[1] = "Type"; report.ColCaption[2] = "Claim Status"; report.ColCaption[3] = "Patient Name"; report.ColCaption[4] = "Insurance Carrier"; report.ColCaption[5] = "Amount"; report.ColAlign[5] = HorizontalAlignment.Right; FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; }
private void butOK_Click(object sender, System.EventArgs e) { long feeSched = FeeSchedC.ListShort[listFeeSched.SelectedIndex].FeeSchedNum; string catName = ""; //string to hold current category name Fees fee = new Fees(); ReportSimpleGrid report = new ReportSimpleGrid(); report.Query = "SELECT procedurecode.ProcCode,fee.Amount,' ',procedurecode.Descript," + "procedurecode.AbbrDesc FROM procedurecode,fee " + "WHERE procedurecode.CodeNum=fee.CodeNum AND fee.FeeSched='" + feeSched.ToString() + "' ORDER BY procedurecode.ProcCode"; FormQuery2 = new FormQuery(report); FormQuery2.IsReport = true; if (radioCode.Checked == true) { FormQuery2.SubmitReportQuery(); report.Title = "Procedure Codes"; report.SubTitle.Add(PrefC.GetString(PrefName.PracticeTitle)); report.SubTitle.Add(FeeScheds.GetDescription(feeSched)); report.SetColumn(this, 0, "Code", 70); report.SetColumn(this, 1, "Fee Amount", 70, HorizontalAlignment.Right); report.SetColumn(this, 2, " ", 80); //otherwise, the amount gets bunched up next to the description. report.SetColumn(this, 3, "Description", 200); report.SetColumn(this, 4, "Abbr Description", 200); FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; } else //categories //report.SubmitTemp();//create TableTemp which is not actually used { ProcedureCode[] ProcList = ProcedureCodes.GetProcList(); report.TableQ = new DataTable(null); for (int i = 0; i < 5; i++) //add columns { report.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } report.InitializeColumns(); DataRow row = report.TableQ.NewRow();//add first row by hand to get value for temp row[0] = DefC.GetName(DefCat.ProcCodeCats, ProcList[0].ProcCat); catName = row[0].ToString(); row[1] = ProcList[0].ProcCode; row[2] = ProcList[0].Descript; row[3] = ProcList[0].AbbrDesc; row[4] = ((double)Fees.GetAmount0(ProcList[0].CodeNum, feeSched)).ToString("F"); report.ColTotal[4] += PIn.Decimal(row[4].ToString()); report.TableQ.Rows.Add(row); for (int i = 1; i < ProcList.Length; i++) //loop through data rows { row = report.TableQ.NewRow(); //create new row called 'row' based on structure of TableQ row[0] = DefC.GetName(DefCat.ProcCodeCats, ProcList[i].ProcCat); if (catName == row[0].ToString()) { row[0] = ""; } else { catName = row[0].ToString(); } row[1] = ProcList[i].ProcCode.ToString(); row[2] = ProcList[i].Descript; row[3] = ProcList[i].AbbrDesc.ToString(); row[4] = ((double)Fees.GetAmount0(ProcList[i].CodeNum, feeSched)).ToString("F"); //report.ColTotal[4]+=PIn.PDouble(row[4].ToString()); report.TableQ.Rows.Add(row); } FormQuery2.ResetGrid(); //this is a method in FormQuery2; report.Title = "Procedure Codes"; report.SubTitle.Add(PrefC.GetString(PrefName.PracticeTitle)); report.SubTitle.Add(FeeScheds.GetDescription(feeSched)); report.ColPos[0] = 20; report.ColPos[1] = 120; report.ColPos[2] = 270; report.ColPos[3] = 470; report.ColPos[4] = 620; report.ColPos[5] = 770; report.ColCaption[0] = "Category"; report.ColCaption[1] = "Code"; report.ColCaption[2] = "Description"; report.ColCaption[3] = "Abbr Description"; report.ColCaption[4] = "Fee Amount"; report.ColAlign[4] = HorizontalAlignment.Right; FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; } }
private void CreateIndividual(ReportSimpleGrid report) { //added Procnum to retrieve all codes report.Query = "SELECT procedurelog.ProcDate," + DbHelper.Concat("patient.LName", "', '", "patient.FName", "' '", "patient.MiddleI") + " " + "AS plfname, procedurecode.ProcCode," + "procedurelog.ToothNum,procedurecode.Descript,provider.Abbr," + "procedurelog.ClinicNum," + "procedurelog.ProcFee-IFNULL(SUM(claimproc.WriteOff),0) "; //\"$fee\" " //if no writeoff, then subtract 0 if (DataConnection.DBtype == DatabaseType.MySql) { report.Query += "$fee "; } else //Oracle needs quotes. { report.Query += "\"$fee\" "; } report.Query += "FROM patient,procedurecode,provider,procedurelog " + "LEFT JOIN claimproc ON procedurelog.ProcNum=claimproc.ProcNum " + "AND claimproc.Status='7' " //only CapComplete writeoffs are subtracted here. + "WHERE procedurelog.ProcStatus = '2' " + "AND patient.PatNum=procedurelog.PatNum " + "AND procedurelog.CodeNum=procedurecode.CodeNum " + "AND provider.ProvNum=procedurelog.ProvNum " + whereProv + whereClin + "AND procedurecode.ProcCode LIKE '%" + POut.String(textCode.Text) + "%' " + "AND " + DbHelper.DateColumn("procedurelog.ProcDate") + " >= " + POut.Date(date1.SelectionStart) + " " + "AND " + DbHelper.DateColumn("procedurelog.ProcDate") + " <= " + POut.Date(date2.SelectionStart) + " " + "GROUP BY procedurelog.ProcNum " + "ORDER BY " + DbHelper.DateColumn("procedurelog.ProcDate") + ",plfname,procedurecode.ProcCode,ToothNum"; FormQuery2 = new FormQuery(report); FormQuery2.IsReport = true; DataTable table = report.GetTempTable(); report.TableQ = new DataTable(null); int colI = 7; if (!PrefC.GetBool(PrefName.EasyNoClinics)) { colI = 8; } for (int i = 0; i < colI; i++) //add columns { report.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } report.InitializeColumns(); DataRow row; double dbl = 0; for (int i = 0; i < table.Rows.Count; i++) { row = report.TableQ.NewRow(); //create new row called 'row' based on structure of TableQ row[0] = PIn.Date(table.Rows[i][0].ToString()).ToShortDateString(); row[1] = table.Rows[i][1].ToString(); //name row[2] = table.Rows[i][2].ToString(); //adacode row[3] = Tooth.ToInternat(table.Rows[i][3].ToString()); //tooth row[4] = table.Rows[i][4].ToString(); //descript row[5] = table.Rows[i][5].ToString(); //prov if (!PrefC.GetBool(PrefName.EasyNoClinics)) { row[6] = Clinics.GetDesc(PIn.Long(table.Rows[i][6].ToString())); //clinic dbl = PIn.Double(table.Rows[i][7].ToString()); //fee row[7] = dbl.ToString("n"); report.ColTotal[7] += dbl; } else { dbl = PIn.Double(table.Rows[i][7].ToString()); //fee row[6] = dbl.ToString("n"); report.ColTotal[6] += dbl; } report.TableQ.Rows.Add(row); } FormQuery2.ResetGrid(); report.Title = "Daily Procedures"; report.SubTitle.Add(PrefC.GetString(PrefName.PracticeTitle)); report.SubTitle.Add(date1.SelectionStart.ToString("d") + " - " + date2.SelectionStart.ToString("d")); if (checkAllProv.Checked) { report.SubTitle.Add(Lan.g(this, "All Providers")); } else { string provNames = ""; for (int i = 0; i < listProv.SelectedIndices.Count; i++) { if (i > 0) { provNames += ", "; } provNames += ProviderC.ListShort[listProv.SelectedIndices[i]].Abbr; } report.SubTitle.Add(provNames); } if (!PrefC.GetBool(PrefName.EasyNoClinics)) { if (checkAllClin.Checked) { report.SubTitle.Add(Lan.g(this, "All Clinics")); } else { string clinNames = ""; for (int i = 0; i < listClin.SelectedIndices.Count; i++) { if (i > 0) { clinNames += ", "; } if (listClin.SelectedIndices[i] == 0) { clinNames += Lan.g(this, "Unassigned"); } else { clinNames += Clinics.List[listClin.SelectedIndices[i] - 1].Description; } } report.SubTitle.Add(clinNames); } } report.SetColumn(this, 0, "Date", 80); report.SetColumn(this, 1, "Patient Name", 130); report.SetColumn(this, 2, "ADA Code", 75); report.SetColumn(this, 3, "Tooth", 45); report.SetColumn(this, 4, "Description", 200); report.SetColumn(this, 5, "Provider", 50); if (!PrefC.GetBool(PrefName.EasyNoClinics)) { report.SetColumn(this, 6, "Clinic", 70); report.SetColumn(this, 7, "Fee", 90, HorizontalAlignment.Right); } else { report.SetColumn(this, 6, "Fee", 90, HorizontalAlignment.Right); } FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; }
private void butOK_Click(object sender, System.EventArgs e) { if (textDaysOld.errorProvider1.GetError(textDaysOld) != "") { MessageBox.Show(Lan.g("All", "Please correct data entry errors first.")); return; } int daysOld = PIn.PInt(textDaysOld.Text); //FormQuery2.ResetGrid();//this is a method in FormQuery2; Queries.CurReport = new ReportOld(); DateTime startQDate = DateTime.Today.AddDays(-daysOld); Queries.CurReport.Query = "SELECT carrier.CarrierName,claim.ClaimNum" + ",claim.ClaimType,claim.DateService," + "CONCAT(CONCAT(CONCAT(CONCAT(patient.LName,', '),patient.FName),' '),patient.MiddleI), claim.DateSent" + ",claim.ClaimFee,carrier.Phone " + "FROM claim,insplan,patient,carrier " + "WHERE claim.PlanNum = insplan.PlanNum " + "AND claim.PatNum = patient.PatNum " + "AND carrier.CarrierNum = insplan.CarrierNum " + "AND claim.ClaimStatus='S' && claim.DateSent < " + POut.PDate(startQDate) + " " + "ORDER BY carrier.Phone,insplan.PlanNum"; FormQuery2 = new FormQuery(); FormQuery2.IsReport = true; Queries.SubmitTemp(); //create TableTemp Queries.TableQ = new DataTable(null); //new table no name for (int i = 0; i < 6; i++) //add columns { Queries.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } Queries.CurReport.ColTotal = new double[Queries.TableQ.Columns.Count]; for (int i = 0; i < Queries.TableTemp.Rows.Count; i++) //loop through data rows { DataRow row = Queries.TableQ.NewRow(); //create new row called 'row' based on structure of TableQ //start filling 'row'. First column is carrier: row[0] = Queries.TableTemp.Rows[i][0]; row[1] = Queries.TableTemp.Rows[i][7]; if (PIn.PString(Queries.TableTemp.Rows[i][2].ToString()) == "P") { row[2] = "Primary"; } if (PIn.PString(Queries.TableTemp.Rows[i][2].ToString()) == "S") { row[2] = "Secondary"; } if (PIn.PString(Queries.TableTemp.Rows[i][2].ToString()) == "PreAuth") { row[2] = "PreAuth"; } if (PIn.PString(Queries.TableTemp.Rows[i][2].ToString()) == "Other") { row[2] = "Other"; } row[3] = Queries.TableTemp.Rows[i][4]; row[4] = (PIn.PDate(Queries.TableTemp.Rows[i][3].ToString())).ToString("d"); row[5] = PIn.PDouble(Queries.TableTemp.Rows[i][6].ToString()).ToString("F"); //TimeSpan d = DateTime.Today.Subtract((PIn.PDate(Queries.TableTemp.Rows[i][5].ToString()))); //if(d.Days>5000) // row[4]=""; //else // row[4]=d.Days.ToString(); Queries.CurReport.ColTotal[5] += PIn.PDouble(Queries.TableTemp.Rows[i][6].ToString()); Queries.TableQ.Rows.Add(row); } Queries.CurReport.ColWidth = new int[Queries.TableQ.Columns.Count]; Queries.CurReport.ColPos = new int[Queries.TableQ.Columns.Count + 1]; Queries.CurReport.ColPos[0] = 0; Queries.CurReport.ColCaption = new string[Queries.TableQ.Columns.Count]; Queries.CurReport.ColAlign = new HorizontalAlignment[Queries.TableQ.Columns.Count]; FormQuery2.ResetGrid(); //this is a method in FormQuery2; Queries.CurReport.Title = "OUTSTANDING INSURANCE CLAIMS"; Queries.CurReport.SubTitle = new string[3]; Queries.CurReport.SubTitle[0] = ((Pref)PrefB.HList["PracticeTitle"]).ValueString; Queries.CurReport.SubTitle[1] = "Days Outstanding: " + daysOld; Queries.CurReport.ColPos[0] = 20; Queries.CurReport.ColPos[1] = 210; Queries.CurReport.ColPos[2] = 330; Queries.CurReport.ColPos[3] = 430; Queries.CurReport.ColPos[4] = 600; Queries.CurReport.ColPos[5] = 690; Queries.CurReport.ColPos[6] = 770; Queries.CurReport.ColCaption[0] = Lan.g(this, "Carrier"); Queries.CurReport.ColCaption[1] = Lan.g(this, "Phone"); Queries.CurReport.ColCaption[2] = Lan.g(this, "Type"); Queries.CurReport.ColCaption[3] = Lan.g(this, "Patient Name"); Queries.CurReport.ColCaption[4] = Lan.g(this, "Date of Service"); Queries.CurReport.ColCaption[5] = Lan.g(this, "Amount"); Queries.CurReport.ColAlign[5] = HorizontalAlignment.Right; Queries.CurReport.Summary = new string[3]; FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; }
private void butOK_Click(object sender, System.EventArgs e) { Queries.CurReport = new ReportOld(); // replaced insplan.carrier by carrier.carrierName, SPK 7/15/04 Queries.CurReport.Query = "SELECT claim.dateservice,claim.claimnum,claim.claimtype,claim.claimstatus," + "CONCAT(CONCAT(CONCAT(CONCAT(patient.LName,', '),patient.FName),' '),patient.MiddleI),carrier.CarrierName,claim.claimfee " + "FROM patient,claim,insplan,carrier " + "WHERE patient.patnum=claim.patnum AND insplan.plannum=claim.plannum " + "AND insplan.CarrierNum=carrier.CarrierNum " // added SPK + "AND (claim.claimstatus = 'U' OR claim.claimstatus = 'H' OR claim.claimstatus = 'W')"; if (radioRange.Checked == true) // added 'W', SPK 7/15/04 { Queries.CurReport.Query += " AND claim.dateservice >= '" + date1.SelectionStart.ToString("yyyy-MM-dd") + "' " + "AND claim.dateservice <= '" + date2.SelectionStart.ToString("yyyy-MM-dd") + "'"; } else { Queries.CurReport.Query += " AND claim.dateservice = '" + date1.SelectionStart.ToString("yyyy-MM-dd") + "'"; } FormQuery2 = new FormQuery(); FormQuery2.IsReport = true; Queries.SubmitTemp(); //create TableTemp Queries.TableQ = new DataTable(null); //new table no name for (int i = 0; i < 6; i++) //add columns { Queries.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } Queries.CurReport.ColTotal = new double[Queries.TableQ.Columns.Count]; for (int i = 0; i < Queries.TableTemp.Rows.Count; i++) //loop through data rows { DataRow row = Queries.TableQ.NewRow(); //create new row called 'row' based on structure of TableQ row[0] = (PIn.PDate(Queries.TableTemp.Rows[i][0].ToString())).ToShortDateString(); //claim dateservice if (PIn.PString(Queries.TableTemp.Rows[i][2].ToString()) == "P") { row[1] = "Primary"; } if (PIn.PString(Queries.TableTemp.Rows[i][2].ToString()) == "S") { row[1] = "Secondary"; } if (PIn.PString(Queries.TableTemp.Rows[i][2].ToString()) == "PreAuth") { row[1] = "PreAuth"; } if (PIn.PString(Queries.TableTemp.Rows[i][2].ToString()) == "Other") { row[1] = "Other"; } if (Queries.TableTemp.Rows[i][3].ToString().Equals("H")) { row[2] = "Holding"; //Claim Status } else if (Queries.TableTemp.Rows[i][3].ToString().Equals("W")) { row[2] = "WaitQ"; //Claim Status, added SPK 7/15/04 } else { row[2] = "Unsent"; //Claim Status } row[3] = Queries.TableTemp.Rows[i][4]; //Patient name row[4] = Queries.TableTemp.Rows[i][5]; //Ins Carrier row[5] = PIn.PDouble(Queries.TableTemp.Rows[i][6].ToString()).ToString("F"); //claim fee Queries.CurReport.ColTotal[5] += PIn.PDouble(Queries.TableTemp.Rows[i][6].ToString()); Queries.TableQ.Rows.Add(row); } Queries.CurReport.ColWidth = new int[Queries.TableQ.Columns.Count]; Queries.CurReport.ColPos = new int[Queries.TableQ.Columns.Count + 1]; Queries.CurReport.ColPos[0] = 0; Queries.CurReport.ColCaption = new string[Queries.TableQ.Columns.Count]; Queries.CurReport.ColAlign = new HorizontalAlignment[Queries.TableQ.Columns.Count]; FormQuery2.ResetGrid(); //this is a method in FormQuery2; Queries.CurReport.Title = "Claims Not Sent"; Queries.CurReport.SubTitle = new string[3]; Queries.CurReport.SubTitle[0] = ((Pref)PrefB.HList["PracticeTitle"]).ValueString; if (radioRange.Checked == true) { Queries.CurReport.SubTitle[1] = date1.SelectionStart.ToString("d") + " - " + date2.SelectionStart.ToString("d"); } else { Queries.CurReport.SubTitle[1] = date1.SelectionStart.ToString("d"); } Queries.CurReport.ColPos[0] = 20; Queries.CurReport.ColPos[1] = 145; Queries.CurReport.ColPos[2] = 270; Queries.CurReport.ColPos[3] = 395; Queries.CurReport.ColPos[4] = 520; Queries.CurReport.ColPos[5] = 645; Queries.CurReport.ColPos[6] = 770; Queries.CurReport.ColCaption[0] = "Date"; Queries.CurReport.ColCaption[1] = "Type"; Queries.CurReport.ColCaption[2] = "Claim Status"; Queries.CurReport.ColCaption[3] = "Patient Name"; Queries.CurReport.ColCaption[4] = "Insurance Carrier"; Queries.CurReport.ColCaption[5] = "Amount"; Queries.CurReport.ColAlign[5] = HorizontalAlignment.Right; Queries.CurReport.Summary = new string[3]; FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; }
private void butOK_Click(object sender, System.EventArgs e) { if (!checkAllProv.Checked && listProv.SelectedIndices.Count == 0) { MsgBox.Show(this, "At least one provider must be selected."); return; } if (!PrefC.GetBool(PrefName.EasyNoClinics)) { if (!checkAllClin.Checked && listClin.SelectedIndices.Count == 0) { MsgBox.Show(this, "At least one clinic must be selected."); return; } } if (listType.SelectedIndices.Count == 0) { MsgBox.Show(this, "At least one type must be selected."); return; } string whereProv = ""; if (!checkAllProv.Checked) { for (int i = 0; i < listProv.SelectedIndices.Count; i++) { if (i == 0) { whereProv += " AND ("; } else { whereProv += "OR "; } whereProv += "adjustment.ProvNum = " + POut.Long(ProviderC.ListShort[listProv.SelectedIndices[i]].ProvNum) + " "; } whereProv += ") "; } string whereClin = ""; if (!checkAllClin.Checked) { for (int i = 0; i < listClin.SelectedIndices.Count; i++) { if (i == 0) { whereClin += " AND ("; } else { whereClin += "OR "; } if (listClin.SelectedIndices[i] == 0) { whereClin += "adjustment.ClinicNum = 0 "; } else { whereClin += "adjustment.ClinicNum = " + POut.Long(Clinics.List[listClin.SelectedIndices[i] - 1].ClinicNum) + " "; } } whereClin += ") "; } string whereType = "("; for (int i = 0; i < listType.SelectedIndices.Count; i++) { if (i > 0) { whereType += "OR "; } whereType += "adjustment.AdjType = '" + POut.Long(DefC.Short[(int)DefCat.AdjTypes][listType.SelectedIndices[i]].DefNum) + "' "; } whereType += ")"; ReportSimpleGrid report = new ReportSimpleGrid(); report.Query = "SELECT adjustment.AdjDate," + DbHelper.Concat("patient.LName", "', '", "patient.FName", "', '", "patient.MiddleI") + "," + "adjustment.ProvNum,adjustment.ClinicNum," + "definition.ItemName,adjustment.AdjNote,adjustment.AdjAmt FROM " + "adjustment,patient,definition WHERE adjustment.AdjType=definition.DefNum " + "AND patient.PatNum=adjustment.PatNum " + whereProv + whereClin + "AND " + whereType + " " + "AND adjustment.AdjDate >= " + POut.Date(date1.SelectionStart) + " " + "AND adjustment.AdjDate <= " + POut.Date(date2.SelectionStart); report.Query += " ORDER BY adjustment.AdjDate"; FormQuery2 = new FormQuery(report); FormQuery2.IsReport = true; DataTable table = report.GetTempTable(); report.TableQ = new DataTable(null); int colI = 6; if (!PrefC.GetBool(PrefName.EasyNoClinics)) { colI = 7; } for (int i = 0; i < colI; i++) //add columns { report.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } report.InitializeColumns(); DataRow row; double dbl; for (int i = 0; i < table.Rows.Count; i++) { row = report.TableQ.NewRow(); //create new row called 'row' based on structure of TableQ row[0] = PIn.Date(table.Rows[i][0].ToString()).ToShortDateString(); row[1] = table.Rows[i][1].ToString(); //name row[2] = Providers.GetAbbr(PIn.Long(table.Rows[i][2].ToString())); //prov colI = 3; if (!PrefC.GetBool(PrefName.EasyNoClinics)) { row[colI] = Clinics.GetDesc(PIn.Long(table.Rows[i][3].ToString())); //clinic colI++; } row[colI] = table.Rows[i][4].ToString(); //Type colI++; row[colI] = table.Rows[i][5].ToString(); //Note colI++; dbl = PIn.Double(table.Rows[i][6].ToString()); //Amount row[colI] = dbl.ToString("n"); report.ColTotal[colI] += dbl; report.TableQ.Rows.Add(row); } FormQuery2.ResetGrid(); report.Title = "Daily Adjustments"; report.SubTitle.Add(PrefC.GetString(PrefName.PracticeTitle)); report.SubTitle.Add(date1.SelectionStart.ToString("d") + " - " + date2.SelectionStart.ToString("d")); if (checkAllProv.Checked) { report.SubTitle.Add(Lan.g(this, "All Providers")); } else { string provNames = ""; for (int i = 0; i < listProv.SelectedIndices.Count; i++) { if (i > 0) { provNames += ", "; } provNames += ProviderC.ListShort[listProv.SelectedIndices[i]].Abbr; } report.SubTitle.Add(provNames); } if (!PrefC.GetBool(PrefName.EasyNoClinics)) { if (checkAllClin.Checked) { report.SubTitle.Add(Lan.g(this, "All Clinics")); } else { string clinNames = ""; for (int i = 0; i < listClin.SelectedIndices.Count; i++) { if (i > 0) { clinNames += ", "; } if (listClin.SelectedIndices[i] == 0) { clinNames += Lan.g(this, "Unassigned"); } else { clinNames += Clinics.List[listClin.SelectedIndices[i] - 1].Description; } } report.SubTitle.Add(clinNames); } } report.SetColumn(this, 0, "Date", 90); report.SetColumn(this, 1, "Patient Name", 130); report.SetColumn(this, 2, "Prov", 60); if (!PrefC.GetBool(PrefName.EasyNoClinics)) { report.SetColumn(this, 3, "Clinic", 70); report.SetColumn(this, 4, "Adjustment Type", 150); report.SetColumn(this, 5, "Note", 150); report.SetColumn(this, 6, "Amount", 75, HorizontalAlignment.Right); } else { report.SetColumn(this, 3, "Adjustment Type", 150); report.SetColumn(this, 4, "Note", 150); report.SetColumn(this, 5, "Amount", 75, HorizontalAlignment.Right); } FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; }
private void butOK_Click(object sender, System.EventArgs e) { int feeSched = DefB.Short[(int)DefCat.FeeSchedNames][listFeeSched.SelectedIndex].DefNum; string catName = ""; //string to hold current category name Fees fee = new Fees(); Queries.CurReport = new ReportOld(); Queries.CurReport.Query = "SELECT procedurecode.adacode,fee.amount,' ',procedurecode.descript," + "procedurecode.abbrdesc FROM procedurecode,fee " + "WHERE procedurecode.adacode=fee.adacode AND fee.feesched='" + feeSched.ToString() + "' ORDER BY procedurecode.adacode"; FormQuery2 = new FormQuery(); FormQuery2.IsReport = true; if (radioADA.Checked == true) { FormQuery2.SubmitReportQuery(); Queries.CurReport.Title = "Procedure Codes"; Queries.CurReport.SubTitle = new string[2]; Queries.CurReport.SubTitle[0] = ((Pref)PrefB.HList["PracticeTitle"]).ValueString; Queries.CurReport.SubTitle[1] = DefB.GetName(DefCat.FeeSchedNames, feeSched); Queries.CurReport.ColPos = new int[6]; Queries.CurReport.ColCaption = new string[5]; Queries.CurReport.ColAlign = new HorizontalAlignment[5]; Queries.CurReport.ColPos[0] = 60; Queries.CurReport.ColPos[1] = 130; Queries.CurReport.ColPos[2] = 200; Queries.CurReport.ColPos[3] = 220; Queries.CurReport.ColPos[4] = 420; Queries.CurReport.ColPos[5] = 620; Queries.CurReport.ColCaption[0] = "ADA Code"; Queries.CurReport.ColCaption[1] = "Fee Amount"; Queries.CurReport.ColCaption[2] = " "; //otherwise, the amount gets bunched up next to the description. Queries.CurReport.ColCaption[3] = "Description"; Queries.CurReport.ColCaption[4] = "Abbr Description"; //Queries.CurReport.ColCaption[3]="Fee Amount"; Queries.CurReport.ColAlign[1] = HorizontalAlignment.Right; Queries.CurReport.Summary = new string[0]; FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; } else { Queries.SubmitTemp(); //create TableTemp which is not actually used ProcedureCode[] ProcList = ProcedureCodes.GetProcList(); Queries.TableQ = new DataTable(null); for (int i = 0; i < 5; i++) //add columns { Queries.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } Queries.CurReport.ColTotal = new double[Queries.TableQ.Columns.Count]; DataRow row = Queries.TableQ.NewRow();//add first row by hand to get value for temp row[0] = DefB.GetName(DefCat.ProcCodeCats, ProcList[0].ProcCat); catName = row[0].ToString(); row[1] = ProcList[0].ADACode; row[2] = ProcList[0].Descript; row[3] = ProcList[0].AbbrDesc; row[4] = ((double)Fees.GetAmount0(ProcList[0].ADACode, feeSched)).ToString("F"); Queries.CurReport.ColTotal[4] += PIn.PDouble(row[4].ToString()); Queries.TableQ.Rows.Add(row); for (int i = 1; i < ProcList.Length; i++) //loop through data rows { row = Queries.TableQ.NewRow(); //create new row called 'row' based on structure of TableQ row[0] = DefB.GetName(DefCat.ProcCodeCats, ProcList[i].ProcCat); if (catName == row[0].ToString()) { row[0] = ""; } else { catName = row[0].ToString(); } row[1] = ProcList[i].ADACode.ToString(); row[2] = ProcList[i].Descript; row[3] = ProcList[i].AbbrDesc.ToString(); row[4] = ((double)Fees.GetAmount0(ProcList[i].ADACode, feeSched)).ToString("F"); //Queries.CurReport.ColTotal[4]+=PIn.PDouble(row[4].ToString()); Queries.TableQ.Rows.Add(row); } Queries.CurReport.ColWidth = new int[Queries.TableQ.Columns.Count]; Queries.CurReport.ColPos = new int[Queries.TableQ.Columns.Count + 1]; Queries.CurReport.ColPos[0] = 0; Queries.CurReport.ColCaption = new string[Queries.TableQ.Columns.Count]; Queries.CurReport.ColAlign = new HorizontalAlignment[Queries.TableQ.Columns.Count]; FormQuery2.ResetGrid(); //this is a method in FormQuery2; Queries.CurReport.Title = "Procedure Codes"; Queries.CurReport.SubTitle = new string[5]; Queries.CurReport.SubTitle[0] = ((Pref)PrefB.HList["PracticeTitle"]).ValueString; Queries.CurReport.SubTitle[1] = DefB.GetName(DefCat.FeeSchedNames, feeSched); Queries.CurReport.ColPos[0] = 20; Queries.CurReport.ColPos[1] = 120; Queries.CurReport.ColPos[2] = 270; Queries.CurReport.ColPos[3] = 470; Queries.CurReport.ColPos[4] = 620; Queries.CurReport.ColPos[5] = 770; Queries.CurReport.ColCaption[0] = "Category"; Queries.CurReport.ColCaption[1] = "ADA Code"; Queries.CurReport.ColCaption[2] = "Description"; Queries.CurReport.ColCaption[3] = "Abbr Description"; Queries.CurReport.ColCaption[4] = "Fee Amount"; Queries.CurReport.ColAlign[4] = HorizontalAlignment.Right; Queries.CurReport.Summary = new string[5]; FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; } }
private void butPrint_Click(object sender, System.EventArgs e) { if (textDate.errorProvider1.GetError(textDate) != "") { MsgBox.Show(this, "Please fix data entry errors first."); return; } if (IsNew) { if (!SaveToDB()) { return; } } else //not new //Only allowed to change date and bank account info, NOT attached checks. //We enforce security here based on date displayed, not date entered. //If user is trying to change date without permission: { DateTime date = PIn.PDate(textDate.Text); if (Security.IsAuthorized(Permissions.DepositSlips, date, true)) { if (!SaveToDB()) { return; } } //if security.NotAuthorized, then it simply skips the save process before printing } //refresh the lists because some items may not be highlighted PatPayList = Payments.GetForDeposit(DepositCur.DepositNum); ClaimPayList = ClaimPayments.GetForDeposit(DepositCur.DepositNum); Queries.TableQ = new DataTable(); for (int i = 0; i < 5; i++) //add 5 columns { Queries.TableQ.Columns.Add(new System.Data.DataColumn()); //blank columns } Queries.CurReport = new ReportOld(); Queries.CurReport.ColTotal = new double[Queries.TableQ.Columns.Count]; DataRow row; ArrayList patNumAL = new ArrayList(); for (int i = 0; i < PatPayList.Length; i++) { patNumAL.Add(PatPayList[i].PatNum); } int[] patNums = new int[patNumAL.Count]; patNumAL.CopyTo(patNums); Patient[] pats = Patients.GetMultPats(patNums); for (int i = 0; i < PatPayList.Length; i++) { row = Queries.TableQ.NewRow(); row[0] = PatPayList[i].PayDate.ToShortDateString(); row[1] = Patients.GetOnePat(pats, PatPayList[i].PatNum).GetNameLF(); row[2] = PatPayList[i].CheckNum; row[3] = PatPayList[i].BankBranch; row[4] = PatPayList[i].PayAmt.ToString("F"); Queries.TableQ.Rows.Add(row); Queries.CurReport.ColTotal[4] += PatPayList[i].PayAmt; } for (int i = 0; i < ClaimPayList.Length; i++) { row = Queries.TableQ.NewRow(); row[0] = ClaimPayList[i].CheckDate.ToShortDateString(); row[1] = ClaimPayList[i].CarrierName; row[2] = ClaimPayList[i].CheckNum; row[3] = ClaimPayList[i].BankBranch; row[4] = ClaimPayList[i].CheckAmt.ToString("F"); Queries.TableQ.Rows.Add(row); Queries.CurReport.ColTotal[4] += ClaimPayList[i].CheckAmt; } //done filling now set up table Queries.CurReport.ColWidth = new int[Queries.TableQ.Columns.Count]; Queries.CurReport.ColPos = new int[Queries.TableQ.Columns.Count + 1]; Queries.CurReport.ColPos[0] = 0; Queries.CurReport.ColCaption = new string[Queries.TableQ.Columns.Count]; Queries.CurReport.ColAlign = new HorizontalAlignment[Queries.TableQ.Columns.Count]; FormQuery FormQuery2 = new FormQuery(); FormQuery2.IsReport = true; FormQuery2.ResetGrid(); //necessary won't work without Queries.CurReport.Title = "Deposit Slip"; Queries.CurReport.SubTitle = new string[2]; Queries.CurReport.SubTitle[0] = ((Pref)PrefB.HList["PracticeTitle"]).ValueString; Queries.CurReport.SubTitle[1] = DepositCur.DateDeposit.ToShortDateString(); Queries.CurReport.Summary = new string[1]; Queries.CurReport.Summary[0] = DepositCur.BankAccountInfo; Queries.CurReport.ColPos[0] = 20; Queries.CurReport.ColPos[1] = 110; Queries.CurReport.ColPos[2] = 260; Queries.CurReport.ColPos[3] = 350; Queries.CurReport.ColPos[4] = 440; Queries.CurReport.ColPos[5] = 530; Queries.CurReport.ColCaption[0] = "Date"; Queries.CurReport.ColCaption[1] = "Name"; Queries.CurReport.ColCaption[2] = "Check Number"; Queries.CurReport.ColCaption[3] = "Bank-Branch"; Queries.CurReport.ColCaption[4] = "Amount"; Queries.CurReport.ColAlign[4] = HorizontalAlignment.Right; FormQuery2.ShowDialog(); DialogResult = DialogResult.OK; //this is imporant, since we don't want to insert the deposit slip twice. }