private void ApplyHeader(BMUSheet.BulkMaterialUsageSheetService proxySheet, BMUSheet.OperationContext opSheet, BMUSheet.BulkMaterialUsageSheetDTO requestSheet, int currentRow, int currentHeader)
 {
     try
     {
         var replySheet = proxySheet.apply(opSheet, requestSheet);
         if (replySheet.errors.Length > 0)
         {
             foreach (var t in replySheet.errors)
             {
                 _cells.GetCell(ResultColumn, currentRow).Value += " - " + t.messageText;
             }
             _cells.GetRange(1, currentHeader, ResultColumn - 1, currentRow).Style = _cells.GetStyle(StyleConstants.Error);
             DeleteHeader(proxySheet, opSheet, requestSheet, currentHeader, currentRow);
         }
         else
         {
             _cells.GetRange(1, currentHeader, ResultColumn - 1, currentRow).Style = _cells.GetStyle(StyleConstants.Success);                    _cells.GetRange(1, currentHeader, 6, currentRow).Select();
         }
     }
     catch (Exception)
     {
         DeleteHeader(proxySheet, opSheet, requestSheet, currentHeader, currentRow);
     }
 }
        private void ItemListAdd(int currentRow, BMUSheet.BulkMaterialUsageSheetDTO requestSheet, List<BMUSheetItem.BulkMaterialUsageSheetItemDTO> requestItemList, List<BMUSheetItem.BulkMaterialUsageSheetItemDTO> allRequestItemList, Worksheet excelSheet)
        {
            _cells.GetCell(1, currentRow).Select();
            _cells.GetCell(1, currentRow).Value = requestSheet.bulkMaterialUsageSheetId;

            var requestItem = new BMUSheetItem.BulkMaterialUsageSheetItemDTO
            {
                bulkMaterialUsageSheetId = requestSheet.bulkMaterialUsageSheetId,
                equipmentReference = _cells.GetNullIfTrimmedEmpty(_cells.GetCell(8, currentRow).Value),
                componentCode = _cells.GetNullIfTrimmedEmpty(_cells.GetCell(9, currentRow).Value),
                modifier = _cells.GetNullIfTrimmedEmpty(_cells.GetCell(10, currentRow).Value),
                bulkMaterialTypeId = _cells.GetNullIfTrimmedEmpty(_cells.GetCell(11, currentRow).Value),
                conditionMonitoringAction = (_cells.GetEmptyIfNull(_cells.GetCell(12, currentRow).Value) == "Fuel/Diesel") || (_cells.GetNullIfTrimmedEmpty(_cells.GetCell(12, currentRow).Value) == null) ? null : _cells.GetCell(12, currentRow).Value.ToString().Substring(0, 1),
                quantity = decimal.Round(Convert.ToDecimal(_cells.GetCell(13, currentRow).Value)),
                quantitySpecified = (_cells.GetNullIfTrimmedEmpty(_cells.GetEmptyIfNull(_cells.GetCell(13, currentRow).Value)) != null),
                usageDate = _cells.GetNullIfTrimmedEmpty(_cells.GetCell(14, currentRow).Value),
                usageTime = _cells.GetNullIfTrimmedEmpty(_cells.GetCell(15, currentRow).Value),
                operationStatisticType = _cells.GetNullIfTrimmedEmpty(_cells.GetCell(16, currentRow).Value),
                meterReading = Convert.ToDecimal(_cells.GetCell(17, currentRow).Value),
                meterReadingSpecified = (_cells.GetNullIfTrimmedEmpty(_cells.GetEmptyIfNull(_cells.GetCell(17, currentRow).Value)) != null),
            };

            //consulta la base de datos y obtiene la capacidad maxima de combustible a cargar al equipo, si no tiene coloca 0.
            try
            {
                _cells.GetCell(8, currentRow).Select();

                allRequestItemList.Add(requestItem);

                var profile = GetFuelCapacity(requestItem.equipmentReference, requestItem.bulkMaterialTypeId);

                if (requestItem.bulkMaterialTypeId == profile.FuelType && requestItem.quantity > profile.capacity)
                {
                    _cells.GetCell(ResultColumn, currentRow).Value = "Este valor supera la capacidad del Equipo!";
                    _cells.GetRange(8, currentRow, 13, currentRow).Style = _cells.GetStyle(StyleConstants.Error);
                }
                else
                {
                    //agrega el item a la coleccion
                    requestItemList.Add(requestItem);
                    _cells.GetRange(8, currentRow, 13, currentRow).Style = _cells.GetStyle(StyleConstants.Success);
                }

            }
            catch (Exception error)
            {
                _cells.GetCell(ResultColumn, currentRow).Value = error.Message;
                _cells.GetCell(13, currentRow).Style = _cells.GetStyle(StyleConstants.Error);
                _cells.GetCell(13, currentRow).Select();
            }
        }
        private void DeleteHeader(BMUSheet.BulkMaterialUsageSheetService proxySheet, BMUSheet.OperationContext opSheet, BMUSheet.BulkMaterialUsageSheetDTO requestSheet, int currentHeader, int currentRow)
        {
            try
            {
                var replySheet = proxySheet.delete(opSheet, requestSheet);

                if (replySheet.errors.Length > 0)
                {
                    foreach (var t in replySheet.errors)
                    {
                        _cells.GetCell(ResultColumn, (currentHeader + t.fieldIndex)).Value += " - " + t.messageText;
                    }
                }
                else
                {
                    _cells.GetCell(ResultColumn, currentRow).Value += " - Hoja " + replySheet.bulkMaterialUsageSheetDTO.bulkMaterialUsageSheetId + " Borrada";
                    _cells.GetRange(1, currentHeader, ResultColumn - 1, currentRow).Style = _cells.GetStyle(StyleConstants.Error);
                }
            }
            catch (Exception err)
            {
                _cells.GetCell(ResultColumn, currentRow).Value += err.Message;
            }
        }