/// <summary> /// Upload the data for a specific day. /// </summary> /// <param name="date"></param> private void Upload(DateTime date) { AdminUploadProcessLogVo processLogVo = new AdminUploadProcessLogVo(); bool isSnapshotUpdated = false; bool isHistoryUpdated = false; bool isXmlCreated = false; processLogVo.CreatedBy = this.currentUserId; processLogVo.AssetClass = assetGroupType.ToString(); processLogVo.ProcessId = processId = productPriceUploadLogBo.CreateProcessLog(processLogVo); isXmlCreated = this.GetDataAndCreateXML(date); if (isXmlCreated) { processLogVo.IsXMLCreated = true; //productPriceUploadLogBo.UpdateProcessLog(processLogVo); FillXmlValuesToTempTable(); UpdateTempTableWithWERPCode(); rejectedRecordsCount = MoveInvalidRecords(); updatedSnapshotCount = UpdateSnapshotTable(); if (updatedSnapshotCount >= 0) { isSnapshotUpdated = true; processLogVo.IsInsertedToSnapshot = true; processLogVo.NoOfRecordsRejected = rejectedRecordsCount; processLogVo.NoOfSnapshotsUpdated = updatedSnapshotCount; //productPriceUploadLogBo.UpdateProcessLog(processLogVo); } if (isSnapshotUpdated) { isHistoryUpdated = false; updatedHistoryRowsCount = UpdateHistoryTable(); if (updatedHistoryRowsCount > 0) { isHistoryUpdated = true; processLogVo.IsInsertedToHistory = true; processLogVo.NoOfRecordsToHistory = updatedHistoryRowsCount; processLogVo.EndTime = DateTime.Now; } } } productPriceUploadLogBo.UpdateProcessLog(processLogVo); UpdateStatusMessage(date, isXmlCreated, isSnapshotUpdated, isHistoryUpdated); }
/// <summary> /// Creates a new entry in WerpAdminUploadProcessLog table /// </summary> /// <returns>returns process Id</returns> public int CreateProcessLog(AdminUploadProcessLogVo processLog) { Database db; DbCommand updateCmd; int processId = 0; try { db = DatabaseFactory.CreateDatabase("wealtherp"); updateCmd = db.GetStoredProcCommand("SP_InsertWerpAdminUploadProcessLog"); db.AddInParameter(updateCmd, "@WAUPL_AssetClass", DbType.String, processLog.AssetClass); db.AddInParameter(updateCmd, "@WAUPL_CreatedBy", DbType.Int32, processLog.CreatedBy); db.AddOutParameter(updateCmd, "@ProcessId", DbType.Int32, processLog.ProcessId); db.ExecuteNonQuery(updateCmd); processId = Convert.ToInt32(db.GetParameterValue(updateCmd, "@ProcessId")); } catch (BaseApplicationException Ex) { throw Ex; } catch (Exception Ex) { BaseApplicationException exBase = new BaseApplicationException(Ex.Message, Ex); NameValueCollection FunctionInfo = new NameValueCollection(); FunctionInfo.Add("CreateProcessLog()", "ProductPriceUploadLogDao.cs:CreateProcessLog()"); object[] objects = new object[3]; objects[0] = processLog.AssetClass; objects[1] = processLog.CreatedBy; objects[2] = processLog.ProcessId; FunctionInfo = exBase.AddObject(FunctionInfo, objects); exBase.AdditionalInformation = FunctionInfo; ExceptionManager.Publish(exBase); throw exBase; } return(processId); }
/// <summary> /// Update the status of a particular row in WerpAdminUploadProcessLog /// </summary> /// <returns>true/false to denote if the update was sucess</returns> public bool UpdateProcessLog(AdminUploadProcessLogVo processLog) { Database db; DbCommand updateCmd; int affectedRows = 0; try { db = DatabaseFactory.CreateDatabase("wealtherp"); updateCmd = db.GetStoredProcCommand("SP_UpdateWerpAdminUploadProcessLog"); db.AddInParameter(updateCmd, "@WAUPL_ProcessId", DbType.Int32, processLog.ProcessId); if (processLog.EndTime != DateTime.MinValue) { db.AddInParameter(updateCmd, "@WAUPL_EndTime", DbType.DateTime, processLog.EndTime); } if (processLog.IsXMLCreated) { db.AddInParameter(updateCmd, "@WAUPL_IsXmlCreated", DbType.Single, 1); } if (processLog.IsInsertedToSnapshot) { db.AddInParameter(updateCmd, "@WAUPL_IsSnapshotUpdated", DbType.Single, 1); } if (processLog.IsInsertedToHistory) { db.AddInParameter(updateCmd, "@WAUPL_IsHistoryUpdated", DbType.Single, 1); } db.AddInParameter(updateCmd, "@WAUPL_ModifiedBy", DbType.Int32, processLog.ModifiedBy); if (processLog.NoOfRecordsRejected > 0) { db.AddInParameter(updateCmd, "@WAUPL_NoOfRecordsRejected", DbType.Int32, processLog.NoOfRecordsRejected); } if (processLog.NoOfSnapshotsUpdated > 0) { db.AddInParameter(updateCmd, "@WAUPL_NoOfSnapshotsUpdated", DbType.Int32, processLog.NoOfSnapshotsUpdated); } if (processLog.NoOfRecordsToHistory > 0) { db.AddInParameter(updateCmd, "@WAUPL_NoOfRecordsToHistory", DbType.Int32, processLog.NoOfRecordsToHistory); } affectedRows = db.ExecuteNonQuery(updateCmd); } catch (BaseApplicationException Ex) { throw Ex; } catch (Exception Ex) { BaseApplicationException exBase = new BaseApplicationException(Ex.Message, Ex); NameValueCollection FunctionInfo = new NameValueCollection(); FunctionInfo.Add("UpdateProcessLog()", "ProcessPriceUploadLogDao.cs:UpdateProcessLog()"); object[] objects = new object[1]; //objects[0] = value; FunctionInfo = exBase.AddObject(FunctionInfo, objects); exBase.AdditionalInformation = FunctionInfo; ExceptionManager.Publish(exBase); throw exBase; } if (affectedRows > 0) { return(true); } else { return(false); } }
public bool UpdateProcessLog(AdminUploadProcessLogVo processLog) { ProductPriceUploadLogDao productPriceUploadLogDao = new ProductPriceUploadLogDao(); return(productPriceUploadLogDao.UpdateProcessLog(processLog)); }
public int CreateProcessLog(AdminUploadProcessLogVo processLog) { ProductPriceUploadLogDao productPriceUploadLogDao = new ProductPriceUploadLogDao(); return(productPriceUploadLogDao.CreateProcessLog(processLog)); }