private DbDeleteStatement GetQuery_DeleteQuery(RecurringPurchaseLine _obj)
        {
            DbDeleteStatement clause = DbMgr.CreateDeleteClause();

            clause
            .DeleteFrom("RecurringPurchaseLines")
            .Criteria
            .IsEqual("RecurringPurchaseLines", "RecurringPurchaseLineID", _obj.RecurringPurchaseLineID);
            return(clause);
        }
        private DbUpdateStatement GetQuery_UpdateQuery(RecurringPurchaseLine _obj)
        {
            DbUpdateStatement clause = DbMgr.CreateUpdateClause();

            clause
            .UpdateColumns(GetFields(_obj))
            .From("RecurringPurchaseLines")
            .Criteria
            .IsEqual("RecurringPurchaseLines", "RecurringPurchaseLineID", _obj.RecurringPurchaseLineID);
            return(clause);
        }
        private DbInsertStatement GetQuery_InsertQuery(RecurringPurchaseLine _obj)
        {
            Dictionary <string, DbFieldEntry> fields = GetFields(_obj);

            DbInsertStatement clause = DbMgr.CreateInsertClause();

            clause
            .InsertColumns(fields)
            .Into("RecurringPurchaseLines");

            return(clause);
        }
        protected override OpResult _Delete(RecurringPurchaseLine _obj)
        {
            if (_obj == null)
            {
                return(OpResult.NotifyDeleteAction(OpResult.ResultStatus.ObjectIsNull, _obj, "RecurringPurchaseLine object cannot be deleted as it is null"));
            }

            if (Exists(_obj))
            {
                ExecuteNonQuery(GetQuery_DeleteQuery(_obj));
                return(OpResult.NotifyDeleteAction(OpResult.ResultStatus.ExistsAndDeleted, _obj));
            }

            return(OpResult.NotifyDeleteAction(OpResult.ResultStatus.NotExists, _obj, "RecurringPurchaseLine object cannot be deleted as it does not exist"));
        }
        protected override OpResult _Store(RecurringPurchaseLine _obj)
        {
            if (_obj == null)
            {
                return(OpResult.NotifyStoreAction(OpResult.ResultStatus.ObjectIsNull, _obj, "RecurringPurchaseLine object cannot be created as it is null"));
            }

            if (Exists(_obj))
            {
                ExecuteNonQuery(GetQuery_UpdateQuery(_obj));
                return(OpResult.NotifyStoreAction(OpResult.ResultStatus.Updated, _obj));
            }

            ExecuteNonQuery(GetQuery_InsertQuery(_obj));
            if (_obj.RecurringPurchaseLineID == null)
            {
                _obj.RecurringPurchaseLineID = DbMgr.GetLastInsertID();
            }
            _obj.FromDb = true;
            return(OpResult.NotifyStoreAction(OpResult.ResultStatus.Created, _obj));
        }