public void UpdateBusinessObject(Session session, int objectType, Guid refId, DateTime issuedDate) { try { if (!Util.IsExistXpoObject <BusinessObject>(session, "RefId", refId)) { CreateBusinessObject(session, objectType, refId, issuedDate); } else { CriteriaOperator criteria_0 = new BinaryOperator("RefId", refId, BinaryOperatorType.Equal); CriteriaOperator criteria_1 = new BinaryOperator("RowStatus", 0, BinaryOperatorType.Greater); CriteriaOperator criteria = new GroupOperator(GroupOperatorType.And, criteria_0, criteria_1); BusinessObject businessObject = session.FindObject <BusinessObject>(criteria); if (businessObject.IssuedDateTimeStamp != issuedDate) { UpdateBusinessObjectIssuedDate(session, businessObject.BusinessObjectId, issuedDate); } else { ObjectEntryLogBO objectEntryLogBO = new ObjectEntryLogBO(); objectEntryLogBO.CreateObjectEntryLog(session, businessObject.BusinessObjectId); } } } catch (Exception) { throw new Exception("Can't Update"); } }
public void CreateBusinessObject(Session session, int objectType, Guid refId, DateTime issuedDate) { try { if (!Util.IsExistXpoObject <BusinessObject>(session, "RefId", refId)) { BusinessObject businessObject = new BusinessObject(session); businessObject.IssuedDateTimeStamp = DateTime.Now; businessObject.ObjectIssueDate = issuedDate; businessObject.ObjectType = objectType; businessObject.RefId = refId; businessObject.RowStatus = Constant.ROWSTATUS_ACTIVE; ObjectEntryLogBO objectEntryLogBO = new ObjectEntryLogBO(); bool check = objectEntryLogBO.CreateObjectEntryLog(session, businessObject); if (!check) { return; } businessObject.Save(); } } catch (Exception) { throw; } }
public bool NeedToBeProcessed(Session session, Int64 ObjectId, Guid jobId) { bool result = false; BusinessObject businessObject = session.GetObjectByKey <BusinessObject>(ObjectId); if (businessObject == null) { return(false); } ETLJob etlJob = session.GetObjectByKey <ETLJob>(jobId); if (etlJob == null) { return(false); } CriteriaOperator criteria_0 = new BinaryOperator("ETLJobId", etlJob, BinaryOperatorType.Equal); CriteriaOperator criteria_1 = new BinaryOperator("BusinessObjectId", businessObject, BinaryOperatorType.Equal); CriteriaOperator criteria_2 = new BinaryOperator("RowStatus", 0, BinaryOperatorType.Greater); CriteriaOperator criteria = GroupOperator.Combine(GroupOperatorType.And, criteria_0, criteria_1, criteria_2); ETLBusinessObject etlBusinessObject = session.FindObject <ETLBusinessObject>(criteria); if (etlBusinessObject == null) { return(true); } ObjectEntryLogBO objectEntryLogBO = new ObjectEntryLogBO(); ObjectEntryLog objectEntryLog = objectEntryLogBO.GetNewestObjectEntryLog(session, businessObject.BusinessObjectId); if (objectEntryLog == null) { objectEntryLogBO.CreateObjectEntryLog(session, businessObject); objectEntryLog = objectEntryLogBO.GetNewestObjectEntryLog(session, businessObject.BusinessObjectId); } if (!IsExistETLEntryObjectHistory(session, jobId, objectEntryLog.ObjectEntryLogId)) { return(true); } return(result); }
//public void DeleteBusinessObject(Session session, int objectType, Guid refId) //{ // CriteriaOperator criteria_RowStatus = new BinaryOperator("RowStatus",Constant.ROWSTATUS_ACTIVE,BinaryOperatorType.GreaterOrEqual); // CriteriaOperator criteria_ObjectType = new BinaryOperator("ObjectType",objectType,BinaryOperatorType.Equal); // CriteriaOperator criteria_RefId = new BinaryOperator("RefId",refId,BinaryOperatorType.Equal); // CriteriaOperator criteria = CriteriaOperator.And(criteria_RowStatus,criteria_ObjectType, criteria_RefId); // BusinessObject currentBusinessObject = session.FindObject<BusinessObject>(criteria); // if(currentBusinessObject == null) return; // BusinessObject previousObject = GetPreviousBusinessObject(session, currentBusinessObject.BusinessObjectId); // BusinessObject nextBusinessObject = GetNextBusinessObject(session, currentBusinessObject.BusinessObjectId); // currentBusinessObject.RowStatus = Constant.ROWSTATUS_DELETED; // currentBusinessObject.Save(); // if (previousObject != null) // { // UpdateBusinessObject(session, objectType, previousObject.RefId, previousObject.ObjectIssueDate); // } // if (nextBusinessObject != null) // { // UpdateBusinessObject(session, objectType, nextBusinessObject.RefId, nextBusinessObject.ObjectIssueDate); // } //} public void UpdateBusinessObjectIssuedDate(Session session, Int64 businessObjectId, DateTime issuedDate) { try { BusinessObject businessObject = session.GetObjectByKey <BusinessObject>(businessObjectId); if (businessObject == null) { return; } businessObject.IssuedDateTimeStamp = DateTime.Now; businessObject.ObjectIssueDate = issuedDate; businessObject.Save(); ObjectEntryLogBO objectEntryLogBO = new ObjectEntryLogBO(); objectEntryLogBO.CreateObjectEntryLog(session, businessObject.BusinessObjectId); } catch (Exception) { } }