protected void dgExpenseLiquidationDetail_ItemCommand(object source, DataGridCommandEventArgs e)
        {
            if (e.CommandName == "AddNew")
            {
                decimal totalActExp = 0;
                try
                {
                    ExpenseLiquidationRequestDetail elrd = new ExpenseLiquidationRequestDetail();
                    elrd.ExpenseLiquidationRequest = _presenter.CurrentTravelAdvanceRequest.ExpenseLiquidationRequest;
                    DropDownList ddlFAccountDescription = e.Item.FindControl("ddlFAccountDescription") as DropDownList;
                    elrd.ItemAccount = _presenter.GetItemAccount(Convert.ToInt32(ddlFAccountDescription.SelectedValue));
                    DropDownList ddlExpenseType = e.Item.FindControl("ddlExpenseType") as DropDownList;
                    elrd.ExpenseType = _presenter.GetExpenseType(Convert.ToInt32(ddlExpenseType.SelectedValue));
                    DropDownList ddlFProject = e.Item.FindControl("ddlFProject") as DropDownList;
                    elrd.Project = _presenter.GetProject(Convert.ToInt32(ddlFProject.SelectedValue));
                    DropDownList ddlFGrant = e.Item.FindControl("ddlFGrant") as DropDownList;
                    elrd.Grant = _presenter.GetGrant(Convert.ToInt32(ddlFGrant.SelectedValue));
                    TextBox txtFAmount = e.Item.FindControl("txtFAmount") as TextBox;
                    elrd.AmountAdvanced = Convert.ToDecimal(txtFAmount.Text);
                    TextBox txtFActualExpenditure = e.Item.FindControl("txtFActualExpenditure") as TextBox;
                    elrd.ActualExpenditure = Convert.ToDecimal(txtFActualExpenditure.Text);
                    TextBox txtFVariance = e.Item.FindControl("txtFVariance") as TextBox;
                    txtFVariance.Text = (elrd.AmountAdvanced - elrd.ActualExpenditure).ToString();
                    elrd.Variance     = Convert.ToDecimal(txtFVariance.Text);

                    //Add Checklists for attachments if available
                    foreach (ItemAccountChecklist checklist in elrd.ItemAccount.ItemAccountChecklists)
                    {
                        ELRAttachment attachment = new ELRAttachment();
                        attachment.ExpenseLiquidationRequestDetail = elrd;
                        attachment.ItemAccountChecklists.Add(checklist);
                        elrd.ELRAttachments.Add(attachment);
                    }
                    _presenter.CurrentTravelAdvanceRequest.ExpenseLiquidationRequest.ExpenseLiquidationRequestDetails.Add(elrd);

                    foreach (ExpenseLiquidationRequestDetail eld in _presenter.CurrentTravelAdvanceRequest.ExpenseLiquidationRequest.ExpenseLiquidationRequestDetails)
                    {
                        totalActExp += eld.ActualExpenditure;
                    }

                    _presenter.CurrentTravelAdvanceRequest.ExpenseLiquidationRequest.TotalActualExpenditure = totalActExp;
                    txtTotActual.Text = (_presenter.CurrentTravelAdvanceRequest.ExpenseLiquidationRequest.TotalActualExpenditure).ToString();

                    BindAttachments();

                    dgExpenseLiquidationDetail.EditItemIndex = -1;
                    BindExpenseLiquidationDetailGrid();

                    Master.ShowMessage(new AppMessage("Expense Liquidation Detail Successfully Added!", RMessageType.Info));
                }
                catch (Exception ex)
                {
                    Master.ShowMessage(new AppMessage("Error: Unable to Add Expense Liquidation Detail " + ex.Message, RMessageType.Error));
                    ExceptionUtility.LogException(ex, ex.Source);
                    ExceptionUtility.NotifySystemOps(ex, _presenter.CurrentUser().FullName);
                }
            }
        }
 private void PopulateLiquidation()
 {
     foreach (TravelAdvanceRequestDetail TAD in _presenter.CurrentTravelAdvanceRequest.TravelAdvanceRequestDetails)
     {
         foreach (TravelAdvanceCost TAC in TAD.TravelAdvanceCosts)
         {
             ExpenseLiquidationRequestDetail ELD = new ExpenseLiquidationRequestDetail();
             ELD.AmountAdvanced = TAC.Total;
             ELD.ExpenseType    = TAC.ExpenseType;
             //ELD.ItemAccount = TAC.ItemAccount;
             ELD.Project = TAC.TravelAdvanceRequestDetail.TravelAdvanceRequest.Project;
             ELD.Grant   = TAC.TravelAdvanceRequestDetail.TravelAdvanceRequest.Grant;
             _presenter.CurrentTravelAdvanceRequest.ExpenseLiquidationRequest.ExpenseLiquidationRequestDetails.Add(ELD);
         }
     }
 }
 protected void dgExpenseLiquidationDetail_ItemCommand(object source, DataGridCommandEventArgs e)
 {
     if (e.CommandName == "AddNew")
     {
         try
         {
             ExpenseLiquidationRequestDetail elrd1 = new ExpenseLiquidationRequestDetail();
             TextBox txtFRefNo = e.Item.FindControl("txtFRefNo") as TextBox;
             elrd1.RefNo = txtFRefNo.Text;
             elrd1.ExpenseLiquidationRequest = _presenter.CurrentTravelAdvanceRequest.ExpenseLiquidationRequest;
             DropDownList ddlFAccountDescription1 = e.Item.FindControl("ddlFAccountDescription") as DropDownList;
             elrd1.ItemAccount = _presenter.GetItemAccount(Convert.ToInt32(ddlFAccountDescription1.SelectedValue));
             DropDownList ddlExpenseType = e.Item.FindControl("ddlExpenseType") as DropDownList;
             elrd1.ExpenseType = _presenter.GetExpenseType(Convert.ToInt32(ddlExpenseType.SelectedValue));
             DropDownList ddlFProject1 = e.Item.FindControl("ddlFProject") as DropDownList;
             elrd1.Project = _presenter.GetProject(Convert.ToInt32(ddlFProject1.SelectedValue));
             DropDownList ddlFGrant = e.Item.FindControl("ddlFGrant") as DropDownList;
             elrd1.Grant = _presenter.GetGrant(Convert.ToInt32(ddlFGrant.SelectedValue));
             TextBox txtFAmount1 = e.Item.FindControl("txtFAmount") as TextBox;
             elrd1.AmountAdvanced = Convert.ToDecimal(txtFAmount1.Text);
             TextBox txtFActualExpenditure1 = e.Item.FindControl("txtFActualExpenditure") as TextBox;
             elrd1.ActualExpenditure = Convert.ToDecimal(txtFActualExpenditure1.Text);
             TextBox txtFVariance1 = e.Item.FindControl("txtFVariance") as TextBox;
             elrd1.Variance = Convert.ToDecimal(txtFVariance1.Text);
             _presenter.CurrentTravelAdvanceRequest.ExpenseLiquidationRequest.ExpenseLiquidationRequestDetails.Add(elrd1);
             SetLiquidationDetails();
             dgExpenseLiquidationDetail.EditItemIndex = -1;
             BindExpenseLiquidationDetails();
             Master.ShowMessage(new AppMessage("Expense Liquidation Detail Successfully Added!", Chai.WorkflowManagment.Enums.RMessageType.Info));
         }
         catch (Exception ex)
         {
             Master.ShowMessage(new AppMessage("Error: Unable to Add Expense Liquidation Detail " + ex.Message, Chai.WorkflowManagment.Enums.RMessageType.Error));
         }
     }
 }
 public void DeleteExpenseLiquidationRequestDetail(ExpenseLiquidationRequestDetail expenseLiquidationRequestDetail)
 {
     _controller.DeleteEntity(expenseLiquidationRequestDetail);
 }