Attention: Confluence is not suitable for the storage of highly confidential data. Please ensure that any data classified as Highly Protected is stored using a more secure platform.
If you have any questions, please refer to the University's data classification guide or contact ict.askcyber@sydney.edu.au

Skip to end of banner
Go to start of banner

TAP-902: MS Team - To check the logic and any bad code practice for the list of flows mentioned and merge if required

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 41 Next »

Description:

Persona + Need + Purpose

As a System admin

I want to make sure there are no issues with existing flows

So that Batch processing gift/pledge creation & updates/transactions run smoothly without CPU limit errors or SOQL 201 errors.

Batch closing is one of the scenario that created the gift/pledge and transactions at the backend and there are lot of process builders and flows that are being called

Business Area:

Batch Processing/GA

Business Value:

Best code practice


Implementation:

To avoid hitting governor limits on a single synchronous transaction(DML limit of 150, SOQL limit of 200) and avoid the unwanted recursion of flow calls because of roll-up summary fields not related to the flows’s logic, the team has implemented the following:

  • A parent flow is created for each triggering sObject.

    • Gift

    • Gift Implementation

    • Transaction

  • Flows are then translated to sub-flows. This is created with considerations to the original Flow Trigger order of each object.

  • Roll-up summary fields changes on Gift object is filtered to avoid recurring run of subflows triggered on Gift sObject.


Metadata Changelog:

* Items in red are deactivated

v.0.5.0

  • update USYD GIft Main Flow conditional nodes on flow to mitigate found errors

  • update GIN Staged based update flow and move GetRecord element after decision

  • remove hard-coded emails

  • remove before-save on subflow name - GIN Staged based update (subflow)

  • update main flow so that it uses Before Save and/or After Save

  • update flow API to 57 to avoid flow interview 2000 element maximum limit

  • Rename USYD_Update_Gift_Implementation_Status_subflow to USYD_Update_Gift_Implementation_Status_subflow

API Name

Type

Type - Description

sObject

New/Update

Description/Change

USYD_GiftAfterSave
Flow
record-triggered flow
Gift/Pledge
New
change:
* Added conditions to avoid update on records with no changes
* Added After Save for context on flow name
USYD_Gift_ImplementationAfterSave
Flow
record-triggered flow
Gift Implementation
New
Change:
* Added conditions to avoid update on records with no changes
* Added After Save for context on flow name
USYD_TransactionAfterSave
Flow
record-triggered flow
Transaction
New
Change:
* Added conditions to avoid update on records with no changes
* Added After Save for context on flow name
USYD_Update_Gift Implementation_Status_subflow
Flow
auto-launched flow
Gift Implementation
New
Change: Renamed
USYD_AQC_Donor_Contact_Type_Auto_Updater_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Updated API versoin to 57
Flow
auto-launched flow
Gift/Pledge
Update
Change: Updated API versoin to 57
USYD_Updates_pledge_status_if_gift_pledge_recordtype_is_Pledge_and_Pledge_Status
Flow
auto-launched flow
Gift/Pledge
Update
Change: Updated API versoin to 57
USYD_Update_Credited_Contacts_and_GRC_Rollup_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Updated API versoin to 57
USYD_Gift_Driver_Derivation_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Updated API versoin to 57
USYD_GIN_Stage_based_Update_subflow
Flow
auto-launched flow
Gift Implementation
New
Change: Change static email to system configuration custom label
Usyd_Update_Reporting_Section_Flags_subflow
Flow
auto-launched flow
Transaction
Update
Change: Updated API versoin to
USYD_Campaign_member_status_update_when_new_transaction_created_subflow
Flow
auto-launched flow
Transaction
Update
Change: Updated API versoin to
USYD_EMAIL_TAP_GIFT_ADMINISTRATION
Custom Label

New
Custom Label to house the static email advancement-services.gifts@sydney.edu.
USYD_GIN_Stage_based_Update_Before_Save_subflow
Flow
auto-launched flow
Gift Implementation
Delete
renamed to USYD_GIN_Stage_based_Update_subflow
USYD_Usyd_Update_Gift Implementation_Status_subflow
Flow
auto-launched flow
Gift Implementation
Delete
renamed to USYD_Update_Gift Implementation_Status_subflow
USYD_Gift_Main_Flow
Flow
record-triggered flow
Gift/Pledge
Delete
renamed to USYD_GiftAfterSave
USYD_Gift_Implementation_Main_Flow
Flow
record-triggered flow
Gift Implementation
Delete
renamed to USYD_Gift_ImplementationAfterSave
USYD_Transaction_Main_Flow
Flow
record-triggered flow
Transaction
Delete
renamed to USYD_TransactionAfterSave

v.0.4.0

  • remove un-used resources from Flows

  • rename TransactionTrigger name and add USYD namespace

  • rename TransactionTriggerHandler and add USYD namespace

API Name

Type

Type - Description

sObject

New/Update

Description/Change

Main Gift Flow

Gift/Pledge
Update
Change: Removed the ISNEW() variable as it is no longer in use.
USYD_Campaign_member_status_update_when_new_transaction_created_subflow
Flow
record-triggered flow
Gift/Pledge
Update
Change: Removed CampaignMemberList variable as it is no longer in use.
USYD_AQC_Donor_Contact_Type_Auto_Updater_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Removed isRelatedAccountChanged variable as it is no longer in use.
Flow
auto-launched flow
Gift/Pledge
Update
Change: Removed giftRecord_Prior variable as it is no longer in use.
USYD_Update_Credited_Contacts_and_GRC_Rollup_subflow.flow-meta.xml
Flow
auto-launched flow
Gift/Pledge
Update
Change: Removed ContactCreditedName variable as it is no longer in use.
USYD_Update_Text_Area_Description_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Removed fml_GiftDescription variable as it is no longer in use.
USYD_Gift_Driver_Derivation_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Removed SCTAccountType variable as it is no longer in use.
USYD_TransactionTrigger
Apex trigger

Transaction
New
Calls the USYD_TransactionTriggerHandler’s method on before insert/update stage.
USYD_TransactionTriggerHandler
Apex class

Update
Change: Added USYD namespace to class name.
USYD_TransactionTriggerHandlerTest
Apex class

Update
Change: Added USYD namespace to class name.
TransactionTrigger
Apex trigger

Transaction
Delete
renamed to USYD_TransactionTrigger

v.0.3.0

  • Combined create/update flow paths to lessen elements on Gift Main Flow

  • Removed hardcoded Ids to dynamically queried Ids

  • Renamed “USYD_Update_Pledge_Status_subflow” to “Updates pledge status if gift/pledge recordtype is Pledge and Pledge Status is Active or Paid”.

API Name

Type

Type - Description

sObject

New/Update

Description/Change

USYD_Gift_Main_Flow
Flow
record-triggered flow
Gift/Pledge
Update
Change: Simplified flow path elements to handle create/update at the subflow level.
USYD_Updates_pledge_status_if_gift_pledge_recordtype_is_Pledge_and_Pledge_Status
Flow
auto-launched flow
Gift/Pledge
New
Updates pledge status if gift/pledge recordtype is Pledge and Pledge Status is Paid.
USYD_Automate_task_for_GA_for_Pledge_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Allow dynamic setting of Gifts Administration Group Id for use in ‘Create Task’ element.
USYD_Update_Pledge_Status_subflow
Flow
auto-launched flow
Gift/Pledge
delete
Renamed to USYD_Updates_pledge_status_if_gift_pledge_recordtype_is_Pledge_and_Pledge_Status

v.0.2.1

  • Flows divided and named according to their function

  • Renamed flows where names does not describe their function

API Name

Type

Type - Description

sObject

New/Update

Description/Change

Flow
auto-launched flow
Gift/Pledge
New
Updates related Gift Implementation Stage to "5. GI - Kick Off"
USYD_Update_Pledge_Status_subflow
Flow
auto-launched flow
Gift/Pledge
New
Updates pledge status if gift/pledge recordtype is Pledge and Pledge Status is Paid.
USYD_Update_Credited_Contacts_and_GRC_Rollup_subflow
Flow
auto-launched flow
Gift/Pledge
New
Updates Credited Contacts field and GRC roll-up field per related GRC records.
USYD_Update_Text_Area_Description_subflow
Flow
auto-launched flow
Gift/Pledge
New
Updates Usyd Pledge Area Description from Gift Description.
Usyd_Update_Reporting_Section_Flags_subflow
Flow
auto-launched flow
Transaction
New
Calculates Send Pledge Reminder, Funds Raised Flag Static, Funds Received Flag Static, and Special Category Flag fields.
USYD_Gift_Main_Flow
Flow
record-triggered flow
Gift/Pledge
Update
Change:
* Added USYD Update Related Gift Implementation as subflow
* Added USYD Update Pledge Status (subflow) as subflow
* Added USYD USYD Update Credited Contacts and GRC Rollup (subflow) as subflow
* Added USYD Update Text Area Description (subflow) as subflow
* Removed USYD Gift Pledge On Create After Save (subflow) subflow
* Removed USYD Gift Pledge Update (subflow) subflow
USYD_Gift_Pledge_On_Create_After_Save_subflow
Flow
auto-launched flow
Gift/Pledge
Deleted
Renamed to USYD Update Related Gift Implementation
USYD_Gift_Pledge_Update_subflow
Flow
auto-launched flow
Gift/Pledge
Deleted
Translated to the following flows
* USYD Update Pledge Status (subflow)
* USYD Update Credited Contacts and GRC Rollup (subflow)
* USYD Update Text Area Description (subflow)
USYD_Transaction_Update_subflow
Flow
auto-launched flow
Transaction
Deleted
Renamed to Usyd Update Reporting Section Flags (subflow)
USYD_Update_Pledge Status
Flow
auto-launched flow

Deactivated
translated to subflow(auto-launched flow) USYD Update Related Gift Implementation
USyd_GRC_Rollup
Flow
auto-launched flow

Deactivated
translated to subflow(auto-launched flow) USYD Update Credited Contacts and GRC Rollup (subflow)

v.0.2.0

  • Fault paths are added to flows with Update Record element.

  • Added descriptions on new flows.

API Name

Type

Type - Description

sObject

New/Update

Description/Change

USYD Create Application Log (subflow)
Flow
auto-launched flow
-
New
Reusable flow that creates an application log record when fault paths are traversed.
USYD_Gift_Derivation_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Added flow description
USYD_Gift_Pledge_On_Create_After_Save_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Added flow description
USYD_Gift_Pledge_Update_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change: Added flow description
USYD_GIN_Stage_based_Update_Before_Save_subflow
Flow
auto-launched flow
Gift Implementation
Update
Change: Added flow description
USYD_Usyd_Update_Gift_Implementation_Status_subflow
Flow
auto-launched flow
Gift Implementation
Update
Change: Added flow description
USYD_Populate_Chart_of_Accounts_in_Transaction_subflow
Flow
auto-launched flow
Transaction
Update
Change: Added flow description
USYD_Transaction_Roll_up_to_Gift_Pledge_fields_subflow
Flow
auto-launched flow
Transaction
Update
Change:
* Added flow description
* Added fault path on Update Record element
USYD_Pledge_is_Due_To_Be_Paid_Out_subflow
Flow
auto-launched flow
Transaction
Update
Change: Added flow description
USYD_Transaction_Update_subflow
Flow
auto-launched flow
Transaction
Update
Change: Added flow description
USYD_AQC_Donor_Contact_Type_Auto_Updater_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change:
* Added fault path on Update Record element
* Added flow description
USYD_Automate_task_for_GA_for_Pledge_subflow
Flow
auto-launched flow
Gift/Pledge
Update
Change:
* Added fault path on Update Record element
* Added flow description
USYD_Campaign_member_status_update_when_new_transaction_created_subflow
Flow
auto-launched flow
Transaction
Update
Change:
* Added fault path on Update Record element
* Added flow description
* (Updated passed value in Add ContactId to List)
USYD_Description_HOLD_RECEIPT_subflow
Flow
auto-launched flow
Transaction
Update
Change:
* Added fault path on Update Record element
* Added flow description
USYD_Gift_Main_Flow
Flow
record-triggered flow
Gift/Pledge
Update
Change:
* Added fault path on Update Record element
* Added flow description
USYD_Gift_Implementation_Main_Flow
Flow
record-triggered flow
Gift Implementation
Update
Change:
* Added fault path on Update Record element
* Added flow description
USYD_Transaction_Main_Flow
Flow
record-triggered flow
Transaction
Update
Change:
* Added fault path on Update Record element
* Added flow description

v.0.1.0

  • Existing record-triggered flows and process builder flows are translated as auto-launched flows used as subflows on main record-triggered flows.

  • New record-triggered flows to handle all the subflows for triggering objects(Gift/Pledge, Gift Implementation, Transaction)

  • A custom label for static values used in flows.

  • One PB (Automate_task_for_GA_for_Pledge) translated as Apex trigger to better handle batch DML.

API Name

Type

Type - Description

sObject

New/Update

Description/Change

USYD_Automate_task_for_GA_for_Pledge_subflow
Flow
auto-launched flow
Gift/Pledge
New
Create task record if Pledge Status is "Pending Review".
USYD_AQC_Donor_Contact_Type_Auto_Updater_subflow
Flow
auto-launched flow
Gift/Pledge
New
Checks related Account's primary and secondary contact and update these if required.
USYD_Gift_Driver_Derivation_subflow
Flow
auto-launched flow
Gift/Pledge
New
Updates "Gift Driver Derivation" and "Usyd_Gift_Driver__c" after updating Actual Donor Type depending on Gift recordtype.
USYD_Gift_Pledge_On_Create_After_Save_subflow
Flow
auto-launched flow
Gift/Pledge
New
Updates related Gift Implementation Stage to "5. GI - Kick Off"
USYD_Gift_Pledge_Update_subflow
Flow
auto-launched flow
Gift/Pledge
New
Updates pledge status if gift/pledge recordtype is Pledge and Pledge Status is Paid.
Updates Credited Contacts field and GRC roll-up field per related GRC records.
Updates Usyd Pledge Area Description from Gift Description.
USYD_GIN_Stage_based_Update_Before_Save_subflow
Flow
auto-launched flow
Gift Implementation
New
Updates Last Modified By field on Gift Implementation and update record owner according to stage. Create alert when stage is GA-Manage/Consolidate.
USYD_Usyd_Update_Gift_Implementation_Status_subflow
Flow
auto-launched flow
Gift Implementation
New
Checks If Gift Implemenation record's Funds Received Or Supporting Doc Are Change and updates status per matrix.
USYD_Populate_Chart_of_Accounts_in_Transaction_subflow
Flow
auto-launched flow
Transaction
New
Set original class code and designation account number field.
USYD_Transaction_Roll_up_to_Gift_Pledge_fields_subflow
Flow
auto-launched flow
Transaction
New
Relates Appeal record and calculates gift driver derivation/Pledge WO.
USYD_Campaign_member_status_update_when_new_transaction_created_subflow
Flow
auto-launched flow
Transaction
New
Update the Campaign member status to "Donated" of Primary contact and secondary contact when exists as campaign member and campaign appeal id = campaign id
Used the same flow to update the Gift Driver Derivation field so that the Gift Driver will be recalculated
USYD_Pledge_is_Due_To_Be_Paid_Out_subflow
Flow
auto-launched flow
Transaction
New
Creates a notification for Pledges due to be paid out according to account type.
USYD_Description_HOLD_RECEIPT_subflow
Flow
auto-launched flow
Transaction
New
Updates Text Area Description and update child receipts of Gift when transaction is flagged as Hold.
USYD_Transaction_Update_subflow
Flow
auto-launched flow
Transaction
New
Updates flags in Reporting Section and calculates and creates a link to third party pledge.
USYD_Gift_Main_Flow
Flow
record-triggered flow
Gift/Pledge
New
* Create/Update triggering flow on Gift/Pledge
* Encapsulates all related subflows of triggering sObject
USYD_Gift_Implementation_Main_Flow
Flow
record-triggered flow
Gift Implementation
New
* Create/Update triggering flow on Gift Implementation
* Encapsulates all related subflows of triggering sObject
USYD_Transaction_Main_Flow
Flow
record-triggered flow
Transaction
New
* Create/Update triggering flow on Transaction
* Encapsulates all related subflows of triggering sObject
CUSTOM_NOTIFICATION_TYPE_ID_SYDNEY_STANDARD_NOTIFICATION
CustomLabel
custom label

New
Static string Id that is used in flow and can be used elsewhere.
TransactionTrigger
Apex Class

Transaction
New
Calls the TransactionTriggerHandler’s method on before insert/update stage.
TransactionTriggerHandler.createLinkToThirdpartyPledge()
Apex Class

Transaction
New
This will populate custom field USYD_Third_Party_Pledge__c with the pledge number of the pledge being paid off by a third party.
TransactionTriggerHandlerTest
Apex Class

Transaction
New
Apex test handler class for code coverage.
Automate_task_for_GA_for_Pledge
PB
process builder
Gift/Pledge
Deactivated
translated to subflow(auto-launched flow) USYD_Automate_task_for_GA_for_Pledge_subflow
USYD_Populate_Chart_of_Accounts_in_Transaction
PB
process builder
Transaction
Deactivated
translated to subflow(auto-launched flow) USYD_Populate_Chart_of_Accounts_in_Transaction_subflow
Usyd_Transaction_surface_up_Pledge_WO_Notation_to_Gift
PB
process builder
Transaction
Deactivated
translated to subflow(auto-launched flow)
pledge_is_due_to_paid_out
PB
process builder
Transaction
Deactivated
translated to subflow(auto-launched flow) USYD_Pledge_is_Due_To_Be_Paid_Out_subflow
Description_HOLD_RECEIPT
PB
process builder
Transaction
Deactivated
translated to subflow(auto-launched flow) USYD_Description_HOLD_RECEIPT_subflow
AQC_Donor_Contact_Type_Auto_Updater
Flow
record-triggered flow
Gift/Pledge
Deactivated
translated to subflow(auto-launched flow) USYD_AQC_Donor_Contact_Type_Auto_Updater_subflow
Gift_Pledge_On_Create_After_Save
Flow
record-triggered flow
Gift/Pledge
Deactivated
translated to subflow(auto-launched flow) USYD_Gift_Pledge_On_Create_After_Save_subflow
USYD_Gift_Pledge_Update
Flow
record-triggered flow
Gift/Pledge
Deactivated
translated to subflow(auto-launched flow) USYD_Gift_Pledge_Update_subflow
Usyd_Gift_Driver_Derivation
Flow
record-triggered flow
Gift/Pledge
Deactivated
translated to subflow(auto-launched flow) USYD_Gift_Driver_Derivation_subflow
GIN_Stage_based_Update_Before_Save
Flow
record-triggered flow
Gift Implementation
Deactivated
translated to subflow(auto-launched flow) USYD_GIN_Stage_based_Update_Before_Save_subflow
Usyd_Update_Gift_Implementation_Status
Flow
record-triggered flow
Gift Implementation
Deactivated
translated to subflow(auto-launched flow) USYD_Usyd_Update_Gift_Implementation_Status_subflow
Usyd_Campaign_member_status_update_when_new_transaction_created
Flow
record-triggered flow
Transaction
Deactivated
translated to subflow(auto-launched flow) USYD_Campaign_member_status_update_when_new_transaction_created_subflow
USYD_Transaction_Update
Flow
record-triggered flow
Transaction
Deactivated
translated to subflow(auto-launched flow) USYD_Transaction_Update_subflow
PB
process builder
Gift/Pledge
Deactivated
translated to Apex Trigger
Version Date Comment
Current Version (v. 41) May 09, 2023 03:18 anderson.pagtabunan
v. 50 Jul 24, 2023 03:23 anderson.pagtabunan
v. 49 Jul 24, 2023 01:50 bob.alicante
v. 48 Jul 12, 2023 06:18 bob.alicante
v. 47 Jul 12, 2023 06:14 bob.alicante
v. 46 Jul 12, 2023 01:15 bob.alicante
v. 45 May 11, 2023 01:36 anderson.pagtabunan
v. 44 May 11, 2023 01:34 anderson.pagtabunan
v. 43 May 10, 2023 03:29 bob.alicante
v. 42 May 09, 2023 22:42 bob.alicante
v. 41 May 09, 2023 03:18 anderson.pagtabunan
v. 40 May 08, 2023 00:45 anderson.pagtabunan
v. 39 May 03, 2023 18:11 anderson.pagtabunan
v. 38 May 03, 2023 17:57 anderson.pagtabunan
v. 37 May 03, 2023 17:50 anderson.pagtabunan
v. 36 May 03, 2023 06:38 anderson.pagtabunan
v. 35 May 03, 2023 06:21 anderson.pagtabunan
v. 34 Apr 29, 2023 03:22 anderson.pagtabunan
v. 33 Apr 19, 2023 06:40 anderson.pagtabunan
v. 32 Apr 19, 2023 06:09 anderson.pagtabunan
v. 31 Apr 19, 2023 06:01 anderson.pagtabunan
v. 30 Apr 19, 2023 05:07 bob.alicante
v. 29 Apr 19, 2023 00:09 anderson.pagtabunan
v. 28 Apr 19, 2023 00:00 anderson.pagtabunan
v. 27 Apr 18, 2023 03:16 anderson.pagtabunan
v. 26 Apr 18, 2023 03:08 anderson.pagtabunan
v. 25 Apr 18, 2023 01:23 anderson.pagtabunan
v. 24 Apr 18, 2023 01:02 anderson.pagtabunan
v. 23 Apr 17, 2023 23:35 anderson.pagtabunan
v. 22 Apr 17, 2023 22:40 anderson.pagtabunan
v. 21 Apr 17, 2023 22:18 anderson.pagtabunan
v. 20 Apr 13, 2023 18:31 anderson.pagtabunan
v. 19 Apr 13, 2023 18:00 anderson.pagtabunan
v. 18 Apr 13, 2023 17:59 anderson.pagtabunan
v. 17 Apr 13, 2023 16:28 anderson.pagtabunan
v. 16 Apr 13, 2023 01:45 anderson.pagtabunan
v. 15 Apr 12, 2023 22:44 anderson.pagtabunan
v. 14 Apr 12, 2023 21:52 anderson.pagtabunan
v. 13 Mar 29, 2023 05:19 anderson.pagtabunan
v. 12 Mar 29, 2023 05:18 anderson.pagtabunan
v. 11 Mar 29, 2023 03:07 bob.alicante
v. 10 Mar 29, 2023 02:35 anderson.pagtabunan
v. 9 Mar 28, 2023 23:17 anderson.pagtabunan
v. 8 Mar 28, 2023 23:15 anderson.pagtabunan
v. 7 Mar 28, 2023 23:02 anderson.pagtabunan
v. 6 Mar 28, 2023 22:03 anderson.pagtabunan
v. 5 Mar 28, 2023 21:58 anderson.pagtabunan
v. 4 Mar 28, 2023 21:56 bob.alicante
v. 3 Mar 28, 2023 21:50 anderson.pagtabunan
v. 2 Mar 28, 2023 15:32 anderson.pagtabunan
v. 1 Mar 28, 2023 15:26 anderson.pagtabunan
  • No labels