Global Change
A global change allows you to make changes to specific records within your database via criteria that you specify. For example, trustees for your organization are rotated annually, so every year you have to remove the “Trustee” constituency from all previous year trustees. Using a selection of your previous year trustees, you can use the “Delete user-defined constituency” definition included in Global changes and remove the “Trustee” constituency from all expired trustees’ records. Another example is the "Add constituent attribute" global change which adds an attribute to a constituent record. Attributes add flexibility to your record keeping by giving you the ability to define and store special information about a wide variety of record types. If after entering an attribute value in a number of records in your system you find you need to change the value, you can change all values at once with Global Change and a selection of the affected records. For example, if you have the attribute category “Athletics” and a value of “Soccer” but you need to change all “Soccer” values to “Football,” you can use Global Change to make the change. You can also use the process to add new information to records. For example, if a constituent in the selection does not have an “Athletics” category included on his record but he is included in the record selection, the new data is added to the Attribute tab on his record.
Access Global Change
The global change functionality is housed in the Data section of the Administration page. From the action bar in the application, click Administration. The Administration page appears. In the Data section of the Administration page, click Global changes. The Global Changes page appears.
Tip: To learn more about how to administer and configure global change instances, see the chapter on Global Change within the Blackbaud CRM Administration Guide.
Add a Global Change Instance
To globally change data you will need to configure a global change instance. An instance is created from a global change definition which is defined via the SDK using a GlobalChangeSpec. A global change instance defines what you want changed where. After you create an instance, it is saved in the Global changes grid on the Global Changes page. You can process and reprocess the instance at anytime. You can edit the existing instance and make any necessary changes to the parameter values associated with the instance. The parameters are via the ParametersFormMetaData element within the GlobalChangeSpec. See Exploring a Global Change Spec for details.
You can add new instances from the Global Changes page, by clicking Add. The Select a global change definition screen appears.
Tip: Blackbaud CRM help contains a listing and descriptions of the global change definitions that ship with the product. See below.
Use the Select a global change definition screen to select the global change definition that meets your needs. For example, if you want to delete a constituency from selected records, select “Delete user-defined constituency”; if you want to add a constituent attribute to selected records, select “Add constituent attributes.” After you select your definition, The Add global change screen appears. The parameters (fields and options) included on this screen vary, based on how the global change definition was defined within the GlobalChangeSpec.
Authoring New Global Change Definitions
Infinity is extensible in regards to Global Change in that via the standard catalog mechanism there is no limit to the number or kinds of Global Change specs that can be defined. An Infinity SDK software developer may create new Global Changes. There is a specific catalog item type called GlobalChangeSpec that a software developer will author that expresses how to define the a Global Change. The spec includes metadata about the fields and options that appear within the Add global change screen. The spec also contains the logic used to specify and change the necessary data. To define a custom global change definition, the SDK author can define a GlobalChangeSpec.
See the following topics for details:
-
Adding a Stored Procedure Based GlobalChangeSpec to your Visual Studio Project
-
Adding a CLR based GlobalChangeSpec to your Visual Studio Project