Melbourne user's group john bertsias presentation

37
Save the Children Australia Raiser’s Edge Examples using the VBA Module John Bertsias Marketing Database Manager

description

 

Transcript of Melbourne user's group john bertsias presentation

Page 1: Melbourne user's group   john bertsias presentation

Save the Children Australia

Raiser’s Edge

Examples using the VBA Module

John Bertsias

Marketing Database Manager

Page 2: Melbourne user's group   john bertsias presentation

Why Save the Children Australia (SCA) decided

to purchase the VBA Module.

Two main factors

• Data quality (Garbage in – Garbage out)

• Having greater flexibility to custom Raiser‟s Edge to meet our ever growing

organisational needs.

Page 3: Melbourne user's group   john bertsias presentation

VBA code at the Constituent Bio level

What we require…

IF (donor has a Title1=“Mr”) AND (donor Gender is set to “Female” OR

“Unknown”) THEN

Alert and Change(?) to “Male”

ENDIF

IF (donor has a Title1={“Miss”, ”Ms”, ”Mrs”) AND (donor Gender is set to

“Male” OR “Unknown”) THEN

Alert and Change(?) to “Female”

ENDIF

Issue: Raiser‟s Edge does not check Title1 against Gender to make sure its

logical.

Page 4: Melbourne user's group   john bertsias presentation
Page 5: Melbourne user's group   john bertsias presentation

If a user tried to SAVE this donor record, the following message would

appear…

Page 6: Melbourne user's group   john bertsias presentation

If a user selects the “OK” button, the VBA code would change the gender to

MALE.

If the user selects the “Cancel” button the VBA code will CANCEL the SAVE

& CLOSE request.

Page 7: Melbourne user's group   john bertsias presentation

VBA code at the Constituent Address level

Issue: Raiser‟s Edge does not check the address before SAVE & CLOSE.

What we require is…

Check the donors address against QAS (Auspost).

IF (QAS check < 97% confidence) THEN

Have the user verify suggestions from QAS

IF user chooses to bypass QAS suggestions THEN

Ask for reason – save this as an address attribute to follow-up

ENDIF

ENDIF

IF (QAS check >=97%) OR (user verified address) THEN

CHECK for Has no valid address tickbox and inquire.

Add MOSIAC Address Attribute (create new Attr is required)

Add GPS longitude Address Attribute (create new Attr is required)

ENDIF

Page 8: Melbourne user's group   john bertsias presentation
Page 9: Melbourne user's group   john bertsias presentation
Page 10: Melbourne user's group   john bertsias presentation

If a user tries to bypass the QAS suggestion box, the following form will be

displayed - asking for reason why…

Page 11: Melbourne user's group   john bertsias presentation

If a good match is made the following data is added/ edited into the Address

Attribute tab of the preferred address.

Page 12: Melbourne user's group   john bertsias presentation

One important final check is made…

Page 13: Melbourne user's group   john bertsias presentation
Page 14: Melbourne user's group   john bertsias presentation

VBA code at the Constituent Address Phone level

Issue: Raiser‟s Edge does not check whether the phone number matches

the phone type.

What we require is…

Check the donors Home and Mobile number against telephone numbering

format, the email address against a typical email format…

IF (Phone type is “Home” <> {“02”, “03”, “07”…}) OR

((Phone number < 10 digits) AND (Phone number >0 digits)) THEN

User to verify with the donor.

ENDIF

IF (Phone type is “Mobile” <> {“04}) OR

((Phone number < 10 digits) AND (Phone number >0 digits)) THEN

User to verify with the donor.

ENDIF

IF (Phone type is “E-mail” <> CONTAIN {“@”, ”.”}) THEN

User to verify with the donor.

ENDIF

Page 15: Melbourne user's group   john bertsias presentation

We can see the home number entered is not correct (as a Home type)…

Page 16: Melbourne user's group   john bertsias presentation

If the user tries to SAVE & CLOSE the donor record the following is displayed…

Page 17: Melbourne user's group   john bertsias presentation

We can see the mobile number entered is not correct…

Page 18: Melbourne user's group   john bertsias presentation

If the user tries to SAVE & CLOSE the donor record the following is displayed…

Page 19: Melbourne user's group   john bertsias presentation

We can see the email address entered is not correct…

Page 20: Melbourne user's group   john bertsias presentation

If the user tries to SAVE & CLOSE the donor record the following is displayed…

Page 21: Melbourne user's group   john bertsias presentation

One final note on Phone types, the following is displayed when a constituent

record is opened (if required).

Page 22: Melbourne user's group   john bertsias presentation

VBA code at the Constituent Gift (&Attribute) level

Issue: Raiser‟s Edge cannot check process requirements of an organisation.

What we require (not an exhaustive list)…

If a recurring gift has a „Pending Transaction‟ – CANCEL the save request.

If a recurring gift has a “Completed” status – CANCEL the save request.

If an ACTIVE recurring gift has a next transaction date in the past – CANCEL the

save request.

If an ACTIVE recurring gift has a Direct Debit pay method and the Reference

number field is BLANK – CANCEL the save request.

If an ACTIVE recurring gift does not have the EFT tick-box ticked – CANCEL the

save request.

If any particular Gift Attribute of interest is missing either a Description or the Date

– CANCEL the save request.

Page 23: Melbourne user's group   john bertsias presentation

If the user tries to SAVE & CLOSE the gift record the following are displayed…

Page 24: Melbourne user's group   john bertsias presentation
Page 25: Melbourne user's group   john bertsias presentation

One final note on (Gift) Attributes, you can also add the user who entered the

attribute for record auditing in the Comment column.

Page 26: Melbourne user's group   john bertsias presentation

Practical example: Outbound calls (using Actions)

The requirement:

1. Outbound Team to be able to identify donors requiring a call, the number of

attempts already made, data time of last call attempt, and who made the last

attempt.

2. Record all call attempts - date time, outcome, and solicitor.

3. Based on the last call outcome, check if the Action should be set to “Completed”

or “Not Completed”.

4. If some sufficient time has elapsed- “Complete” the Action, unless it‟s a “Call back”

outcome – normally 2 weeks from Action date but may vary (self-completing).

5. All the correct Action Attributes have been set for each call type.

6. If more than 3 uncontactable outcomes in a row, “Complete” the Action, unless the

donor has previously requested a call back.

7. If not enough time has elapsed between each call, do not treat as a new call

attempts.

Page 27: Melbourne user's group   john bertsias presentation

Solution…

Write lots of VBA code or ask for help.

Page 28: Melbourne user's group   john bertsias presentation
Page 29: Melbourne user's group   john bertsias presentation
Page 30: Melbourne user's group   john bertsias presentation
Page 31: Melbourne user's group   john bertsias presentation
Page 32: Melbourne user's group   john bertsias presentation

Possible error/ information messages…

Page 33: Melbourne user's group   john bertsias presentation

Fun Example: Queries

The Data Analyst in your team hands over a list of 10,000 (random) donors IDs (from

Raiser‟s Edge) which they would like to use as the universe for the next segment

mail run using Mail->Quick Letters.

Question: How do you create a

query for all those donors

WITHOUT using a flag?

Answer: Use the a Static Query

Uploader using VBA.

Page 34: Melbourne user's group   john bertsias presentation
Page 35: Melbourne user's group   john bertsias presentation

Last Example: Cost centres

Issue: Save the Children uses a 10 segment General Ledger code to track its

income and expenditure.

It is not immediately obvious from a gift record what the cost centre is.

Information is stored within the Campaign, Fund, Appeal, Constituent and Gift levels

Solution: Use VBA coding to collate all this information for the user.

Page 36: Melbourne user's group   john bertsias presentation
Page 37: Melbourne user's group   john bertsias presentation

Questions?