Ejemplo n.º 1
0
        public DataTable ListTimesheetWithLateness(int nEmployeeID, Month aMonth, int aYear)
        {
            DateTime startDate, endDate;

            ACMSLogic.Staff.Ultis.DatesRange(out startDate, out endDate, aMonth, aYear);
            DataTable myRosterTable = ListTimesheet(nEmployeeID, startDate, endDate);

//			if (!myRosterTable.Columns.Contains("nRosterID"))
//				throw new Exception("Missing 'nRosterID' at Sv_Staff_Timesheet view.");

            //myRosterTable.PrimaryKey = new DataColumn[] {myRosterTable.Columns["nRosterID"]};
            myRosterTable.DefaultView.Sort = "dtDate";

            Lateness myLateness = new Lateness();

            myLateness.GetLateness(nEmployeeID, aMonth, aYear);
            DataTable myLatenessTable = myLateness.LatenessTable;

            foreach (DataRow rLateness in myLatenessTable.Rows)
            {
                if (Convert.ToDateTime(rLateness["dtDate"]) >= DateTime.Now)
                {
                    continue;
                }
                ////DataRow rRoster = myRosterTable.Rows.Find(rLateness["nRosterID"]);
                //DataRow[] rRoster = myRosterTable.Select("dtDate = '" +rLateness["dtDate"] +"'");
                DataRow[] rRoster = myRosterTable.Select("nRosterID = '" + rLateness["nRosterID"] + "'");
                //if (rRoster != null && rRoster.Length >= 1)
                foreach (DataRow r in rRoster)
                {
                    r.BeginEdit();
                    r["fLateness"]  = true;
                    r["nLateness"]  = ACMS.Convert.ToInt32(r["nLateness"]) + ACMS.Convert.ToInt32(rLateness["nLateness"]);
                    r["dtLateness"] = DateTime.Today.AddMinutes(ACMS.Convert.ToInt32(r["nLateness"]));
                    r.EndEdit();
                }
            }
            return(myRosterTable);
        }
Ejemplo n.º 2
0
        private void gen_FirstRun(int nPayrollID)
        {
            //init Function
            string strSQL;
            DataSet _ds;
            int output;

                try
             {
             //Checking status of second run payroll

             output = 0;

             SqlHelper.ExecuteNonQuery(connection,"UP_tblPayroll",
                 new SqlParameter("@RET_VAL",output),
                 new SqlParameter("@CMD","I"),
                 new SqlParameter("@nPayrollID",nPayrollID),
                 new SqlParameter("@nMonth",Convert.ToInt32(comboBoxEditMTH.Text)),
                 new SqlParameter("@nYear",Convert.ToInt32(comboBoxEditYR.Text)),
                 new SqlParameter("@dtFirstRunDate",DateTime.Now.ToShortDateString()),
                 new SqlParameter("@nFirstRunStaff",employee.Id.ToString()),
                 new SqlParameter("@dtSecondRunDate",null),
                 new SqlParameter("@nSecondRunStaff",null)
                 );

             if (cbJob.SelectedIndex != 0)
             {
                 strSQL = "select nEmployeeID,fPartTime,strBranchCode from tblEmployee where nStatusID=1 and strJobPositionCode='" + cbJob.EditValue.ToString() + "'";
             }
             else
             {
                 strSQL = "select nEmployeeID,fPartTime,strBranchCode from tblEmployee where nStatusID=1 ";

             }
             _ds = new DataSet();
             SqlHelper.FillDataset(connection,CommandType.StoredProcedure,"UP_GETDATA",_ds,new string[] {"table"}, new SqlParameter("@strSQL", strSQL) );

             progressBarControl1.Properties.Minimum = 0;
             progressBarControl1.Properties.Maximum = _ds.Tables["table"].Rows.Count;
             progressBarControl1.Properties.Step = 1;
             progressBarControl1.Visible = true;

             foreach( DataRow dr in _ds.Tables["table"].Rows )
             {
                 Lateness myLateness = new Lateness();
                 myLateness.GetLateness(Convert.ToInt32(dr[0]), (Month)comboBoxEditMTH.SelectedIndex,
                     Convert.ToInt32(comboBoxEditYR.EditValue));
                 decimal totalLateness = 0;
                 foreach (DataRow row in myLateness.LatenessTable.Rows)
                 {
                     totalLateness += Convert.ToDecimal(row["nLateness"]);
                 }

                 SqlHelper.ExecuteNonQuery(connection,"UP_CALC_PAYROLL",
                     new SqlParameter("@RET_VAL",output),
                     new SqlParameter("@nPayrollID",nPayrollID),
                     new SqlParameter("@nEmployeeID",dr[0]),
                     new SqlParameter("@fparttime",dr[1]),
                     new SqlParameter("@nYear",Convert.ToInt32(comboBoxEditYR.Text)),
                     new SqlParameter("@nMonth",Convert.ToInt32(comboBoxEditMTH.Text)),
                     new SqlParameter("@TotalLateness", totalLateness)

                     );
                 progressBarControl1.PerformStep();
                 progressBarControl1.Update();

             }
             progressBarControl1.Visible = false;
             InitPayroll(1);

             }
             catch (Exception ex)
             {
             MessageBox.Show(ex.Message);
             }
        }
Ejemplo n.º 3
0
        public DataTable ListTimesheetWithLateness(int nEmployeeID, Month aMonth, int aYear)
        {
            DateTime startDate, endDate;
            ACMSLogic.Staff.Ultis.DatesRange(out startDate, out endDate, aMonth, aYear);
            DataTable myRosterTable = ListTimesheet(nEmployeeID, startDate, endDate);
            //			if (!myRosterTable.Columns.Contains("nRosterID"))
            //				throw new Exception("Missing 'nRosterID' at Sv_Staff_Timesheet view.");

            //myRosterTable.PrimaryKey = new DataColumn[] {myRosterTable.Columns["nRosterID"]};
            myRosterTable.DefaultView.Sort = "dtDate";

            Lateness myLateness = new Lateness();
            myLateness.GetLateness(nEmployeeID, aMonth, aYear);
            DataTable myLatenessTable = myLateness.LatenessTable;

            foreach (DataRow rLateness in myLatenessTable.Rows)
            {
                if (Convert.ToDateTime(rLateness["dtDate"]) >= DateTime.Now)
                    continue;
                ////DataRow rRoster = myRosterTable.Rows.Find(rLateness["nRosterID"]);
                //DataRow[] rRoster = myRosterTable.Select("dtDate = '" +rLateness["dtDate"] +"'");
                DataRow[] rRoster = myRosterTable.Select("nRosterID = '" + rLateness["nRosterID"] + "'");
                //if (rRoster != null && rRoster.Length >= 1)
                foreach (DataRow r in rRoster)
                {
                    r.BeginEdit();
                    r["fLateness"] = true;
                    r["nLateness"] = ACMS.Convert.ToInt32(r["nLateness"]) + ACMS.Convert.ToInt32(rLateness["nLateness"]);
                    r["dtLateness"] = DateTime.Today.AddMinutes(ACMS.Convert.ToInt32(r["nLateness"]));
                    r.EndEdit();
                }
            }
            return myRosterTable;
        }