public void ViewCompensation() { //View all rated routes and the associated driver compensation try { //Read all rated routes for specified terminal and date range this.mCompensation.Clear(); this.mCompensation.Merge(FinanceGateway.ReadDriverRoutes(this.mAgentNumber, this.mBeginDate, this.mEndDate)); for (int i = 0; i < this.mCompensation.DriverRouteTable.Rows.Count; i++) { //Build driver compensation for each driver DriverCompDataset.DriverRouteTableRow driverRoute = (DriverCompDataset.DriverRouteTableRow) this.mCompensation.DriverRouteTable.Rows[i]; if (this.mCompensation.DriverCompTable.Select("Operator='" + driverRoute.Operator + "'").Length == 0) { //Create driver compensation for driverRoute.Operator and initialize DriverCompDataset.DriverCompTableRow driverComp = this.mCompensation.DriverCompTable.NewDriverCompTableRow(); #region Set members driverComp.Select = driverRoute.IsExportedNull(); driverComp.IsNew = driverComp.IsCombo = driverComp.IsAdjust = false; driverComp.AgentNumber = driverRoute.AgentNumber; driverComp.FinanceVendorID = driverRoute.FinanceVendorID; driverComp.FinanceVendor = driverRoute.Payee; driverComp.Operator = driverRoute.Operator; //driverComp.EquipmentTypeID = driverRoute.EquipmentTypeID; driverComp.Miles = driverComp.Trip = driverComp.Stops = driverComp.Cartons = driverComp.Pallets = driverComp.PickupCartons = 0; driverComp.MilesAmount = driverComp.DayAmount = driverComp.TripAmount = driverComp.StopsAmount = driverComp.CartonsAmount = driverComp.PalletsAmount = driverComp.PickupCartonsAmount = driverComp.Amount = 0.0M; driverComp.FSCMiles = 0; driverComp.FuelCost = driverComp.FSCGal = driverComp.FSCBaseRate = driverComp.FSC = 0.0M; driverComp.MinimunAmount = driverComp.AdminCharge = driverComp.AdjustmentAmount1 = driverComp.AdjustmentAmount2 = driverComp.TotalAmount = 0.0M; #endregion this.mCompensation.DriverCompTable.AddDriverCompTableRow(driverComp); //Calculate driver compensation for driverRoute.Operator for all rated routes CalculateCompensation(driverRoute.Operator, false); } } this.mCompensation.AcceptChanges(); } catch (ApplicationException ex) { throw ex; } catch (Exception ex) { throw new ApplicationException(ex.Message, ex); } finally { if (this.Changed != null) { this.Changed(this, EventArgs.Empty); } } }