예제 #1
0
        public RepRowPayList MakeReport(KlonsADataSet.PAYLISTSRow dr_list, KlonsADataSet.PAYLISTS_RRow[] drs_rows)
        {
            var rrList = new RepRowPayList();

            rrList.Year      = dr_list.YR;
            rrList.Month     = dr_list.MT;
            rrList.Nr        = dr_list.SNR;
            rrList.PayDate   = dr_list.DT;
            rrList.PayDateS  = LatText.FullDateStr(rrList.PayDate);
            rrList.WriteDate = DateTime.Today;
            rrList.Period    = string.Format("{0}. gada {1}",
                                             rrList.Year, LatText.MonthNames[rrList.Month - 1]);
            for (int i = 0; i < drs_rows.Length; i++)
            {
                var rrRow  = new RepRowPayListRow();
                var dr_row = drs_rows[i];
                rrRow.Nr   = i + 1;
                rrRow.idp  = dr_row.IDP;
                rrRow.idam = dr_row.IDAM;
                var ss_nm = DataTasks.GetPersonNameAndPK(rrRow.idp);
                rrRow.Name          = ss_nm[0] + " " + ss_nm[1];
                rrRow.PK            = ss_nm[2];
                rrRow.PositionTitle = DataTasks.GetPositionTitle(rrRow.idam);
                rrRow.NameAndPos    = rrRow.Name + ", " + rrRow.PositionTitle.Nz();
                rrRow.TPay          = dr_row.TPAY;
                rrRow.Pay           = dr_row.PAY;
                rrRow.Advance       = dr_row.ADVANCE;
                rrRow.Withhold      = dr_row.WITHHOLDINGS;

                rrList.Rows.Add(rrRow);
                rrList.TotalPay += rrRow.TPay;
            }
            rrList.TotalPayS = LatText.CikEiro(rrList.TotalPay);
            return(rrList);
        }
예제 #2
0
        public void AddToReport(KlonsADataSet.PAYLISTSRow dr_list, KlonsADataSet.PAYLISTS_RRow[] drs_rows)
        {
            var rr = MakeReport(dr_list, drs_rows);

            rr.key = RepPayLists.Count;
            RepPayLists.Add(rr);
        }
예제 #3
0
        private void CheckListTotal(KlonsADataSet.PAYLISTSRow listrow)
        {
            if (listrow == null || listrow.RowState == DataRowState.Deleted ||
                listrow.RowState == DataRowState.Detached)
            {
                return;
            }
            var total = SumTotal(listrow);

            if (listrow.TOTAL_PAY != total)
            {
                listrow.TOTAL_PAY = total;
            }
        }
예제 #4
0
        private decimal SumTotal(KlonsADataSet.PAYLISTSRow listrow)
        {
            if (listrow == null || listrow.RowState == DataRowState.Deleted ||
                listrow.RowState == DataRowState.Detached)
            {
                return(0.0M);
            }
            decimal ret  = 0.0M;
            var     rows = listrow.GetPAYLISTS_RRows();

            foreach (var row in rows)
            {
                ret += row.TPAY;
            }
            return(ret);
        }
예제 #5
0
        private void PAYLISTS_R_PAYLISTS_RRowChanged(object sender, KlonsADataSet.PAYLISTS_RRowChangeEvent e)
        {
            KlonsADataSet.PAYLISTSRow dr = null;

            if (e.Row.HasVersion(DataRowVersion.Original))
            {
                int listid = (int)e.Row["IDS", DataRowVersion.Original];
                dr = MyData.DataSetKlons.PAYLISTS.FindByID(listid);
            }
            else
            {
                dr = last_list_RowDeleting_parent;
            }
            if (dr == null)
            {
                return;
            }
            CheckListTotal(dr);
        }
예제 #6
0
 private void PAYLISTS_R_PAYLISTS_RRowDeleting(object sender, KlonsADataSet.PAYLISTS_RRowChangeEvent e)
 {
     last_list_RowDeleting_parent = e.Row.PAYLISTSRow;
 }