IP Library Granted Patent US 7,818,305
Granted Patent B2
US 7,818,305 · App. 11/868,931 · Granted Oct 19, 2010

Hierarchical triggers for database

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,818,305
App. No.
11/868,931
Granted
Oct 19, 2010
Kind
B2
Abstract

The present invention introduces the concept of a super-trigger to allow for multi-level hierarchical triggers in a database application. The super-trigger may be created by identifying one or more triggers as sub-triggers, and defining a condition in the super-trigger, the result of the condition depending from a result of one or more of the sub-triggers. Upon execution, information may be retrieved regarding a result for each of the sub-triggers. The condition may then be evaluated using these results, and an action may be performed if the condition is met.

Claims (61)

1. A method for organizing triggers, the method comprising:

creating a super-trigger in a database application executing on a server computer, by storing metadata that (a) establishes activation of one or more triggers as one or more sub-triggers of said super-trigger, (b) specifies a condition, and (c) specifies an action;

when said super-trigger is activated, performing, on the server computer, the steps of:

determining an activation count that indicates how many times said one or more sub-triggers of said super-trigger have been activated;

based on said activation count exceeding a threshold values, determining whether said condition is satisfied; and

in response to determining that said condition is satisfied, performing said action on the server computer;

wherein said threshold value is defined using a key word defined in multidimensional expression syntax.

2. The method of claim 1 wherein said metadata establishes a plurality of triggers as sub-triggers of said super-trigger.

3. The method of claim 1 , wherein:

the super-trigger is a first super-trigger;

the method further comprises:

creating a second super-trigger by storing metadata that (a) establishes one or more triggers as one or more sub-triggers of said second super-trigger, (b) specifies a condition, and (c) specifies an action;

when said second super-trigger is activated, performing the steps of:

determining an activation count that indicates how many times said one or more sub-triggers of said second super-trigger have been activated;

based on said activation count, determining whether said condition is satisfied; and

in response to determining that said condition is satisfied, performing said action;

the second super-trigger is a sub-trigger of the first super-trigger.

4. The method of claim 1 , wherein:

said condition is one of a plurality of conditions specified for said super-trigger in said metadata; and

said plurality of conditions is defined using case-then-else constructs.

5. The method of claim 1 , wherein determining an activation count includes retrieving information from a log.

6. The method of claim 1 , wherein said determining whether said condition is satisfied includes evaluating a threshold value based on one or more of said one or more sub-triggers against a fixed value.

7. The method of claim 1 , wherein performing said action includes sending an email.

8. The method of claim 1 , wherein performing said action includes writing data corresponding to any activated sub-trigger to a file.

9. The method of claim 1 , wherein the activation count is based, at least in part, on how many times a particular sub-trigger of said super-trigger was activated.

10. The method of claim 1 , wherein:

the metadata for said super-trigger specifies:

a plurality of conditions, and

a plurality of actions that correspond to the plurality of conditions;

the step of determining whether said condition is satisfied, includes determining which condition of the plurality of conditions are satisfied; and performing said action includes performing the action that corresponds to the condition, of the plurality of conditions, that is satisfied.

11. A computer-readable storage medium storing instructions, the instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of:

creating a super-trigger by storing metadata that (a) establishes activation of one or more triggers as one or more sub-triggers of said super-trigger, (b) specifies a condition, and (c) specifies an action;

when said super-trigger is activated, performing the steps of:

determining an activation count that indicates how many times said one or more sub-triggers of said super-trigger have been activated;

based on said activation count exceeding a threshold value, determining whether said condition is satisfied; and

in response to determining that said condition is satisfied, performing said action;

wherein said threshold value is defined using a key word defined in multidimensional expression syntax.

12. The computer-readable storage medium of claim 11 wherein said metadata establishes a plurality of triggers as sub-triggers of said super-trigger.

13. The computer-readable storage medium of claim 11 , wherein:

the super-trigger is a first super-trigger;

the computer-readable storage medium further comprising instructions for:

creating a second super-trigger by storing metadata that (a) establishes one or more triggers as one or more sub-triggers of said second super-trigger, (b) specifies a condition, and (c) specifies an action;

when said second super-trigger is activated, performing the steps of;

determining an activation count that indicates how many times said one or more sub-triggers of said second super-trigger have been activated;

based on said activation count, determining whether said condition is satisfied; and

in response to determining that said condition is satisfied, performing said action;

the second super-trigger is a sub-trigger of the first super-trigger.

14. The computer-readable storage medium of claim 11 , wherein:

said condition is one of a plurality of conditions specified for said super-trigger in said metadata; and

said plurality of conditions is defined using case-then-else constructs.

15. The computer-readable storage medium of claim 11 , wherein determining an activation count includes retrieving information from a log.

16. The computer-readable storage medium of claim 11 , wherein determining whether said condition is satisfied includes evaluating a threshold value based on one or more of said one or more sub-triggers against a fixed value.

17. The computer-readable storage medium of claim 11 , wherein performing said action includes sending an email.

18. The computer-readable storage medium of claim 11 , wherein performing said action includes writing data corresponding to any activated sub-trigger to a file.

19. The computer-readable storage medium of claim 11 , wherein the activation count is based, at least in part, on how many times a particular sub-trigger of said super-trigger was activated.

20. The computer-readable storage medium of claim 11 , wherein:

the metadata for said super-trigger specifies:

a plurality of conditions, and

a plurality of actions that correspond to the plurality of conditions;

the step of determining whether said condition is satisfied, includes determining which condition of the plurality of conditions are satisfied; and

performing said action includes performing the action that corresponds to the condition, of the plurality of conditions, that is satisfied.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2011
From: HYPERION SOLUTIONS CORPORATION
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 025986/0490 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2011
From: BEA SYSTEMS, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 025747/0775 →