private void tinh_bang_luong_tat_ca_nhan_vien(DataTable ip_dt, BackgroundWorker ip_bgw)
{
for(int i = 0; i < ip_dt.Rows.Count; i++)
{
DataRow v_dr = ip_dt.Rows[i];
decimal v_id_nhan_vien = CIPConvert.ToDecimal(v_dr[RPT_LUONG.ID_NHAN_VIEN]);
DataRow v_dr_luong = get_luong_1_nhan_vien(v_id_nhan_vien, int.Parse(m_txt_thang.Text.Trim()), int.Parse(m_txt_nam.Text.Trim()));
var v_dr_luong_nv = m_ds_rpt_luong.Tables[0].NewRow();
DataRow v_dr_luong_1_nv = get_dr(v_dr_luong_nv, v_dr_luong, v_id_nhan_vien, i, int.Parse(m_txt_thang.Text.Trim()), int.Parse(m_txt_nam.Text.Trim()));
m_ds_rpt_luong.Tables[0].Rows.Add(v_dr_luong_1_nv);
insertLuongNV2RPT(v_dr_luong_1_nv);
ip_bgw.ReportProgress((i + 1) * 100 / ip_dt.Rows.Count);
}
}