Sharing my template: Code Tables Report (OnDemand and Scheduled)

Options

- Description:

There are TWO versions of this flow.

1. Scheduled: This "stand-alone flow" generates a regularly scheduled email report inspired by the Code Tables Report in Raiser's Edge NXT Database View (Tables -> File -> Print / Preview -> Code Tables Report).

2. OnDemand: Similar to the above version, but is triggered by a link on the Raiser's Edge NXT Home Screen (SKY Add-in). This is setup to be sent to the person who triggered it.


The emailed report starts of with a table of contents of all tables linked to a section of the report that shows each of the table entries. The heading of each section includes a link directly to the corresponding table in Raiser's Edge NXT.


- Required connections: Blackbaud SKY Add-ins Send an HTTP Request, The 'Generic' Send an Email Notification. You may want to consider replacing the Email Notification with the equivalent Outlook or Gmail version.


- Suggested skill level required to use this template: Beginner for the scheduled, Intermediate for the OnDemand as it requires setting up an App and a SKY Add-in

- Configuration details: Will need your Raiser's Edge NXT Environment ID (the part after "envid=" in the address bar), email address of the report recipient (Scheduled Version) or those allowed to run the report (On Demand Version)

- Category: Report


- Instructions: https://github.com/glenhutson/BlackbaudCustomizations/tree/main/Raiser's-Edge-NXT/CodeTablesReport

UPDATE: There is a walk through at https://youtu.be/Nc46LZmA_g8 . This starts from the very beginning with getting Power Automate connected to your system if this is the first time using Power Automate.

a3bc991cfd22b3e012e926311b355ca1-huge-co

97b990cb3f45fb55a0dc4e765a339155-huge-co

Comments

  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 PowerUp Challenge #3 Gift Management Name Dropper

    @Glen Hutson
    Thank you Glen.

    Curious about the information provided by the flow. Is it any different from what we get off the RE NXT Control Panel > Tables page? (I do notice it has the code table id column that's not in the RE NXT page). Trying to understand use-case to determine if we want to implement.

  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Alex Wong:

    @Glen Hutson
    Thank you Glen.

    Curious about the information provided by the flow. Is it any different from what we get off the RE NXT Control Panel > Tables page? (I do notice it has the code table id column that's not in the RE NXT page). Trying to understand use-case to determine if we want to implement.

    It's a single report without having to drill into each of the individual tables. There's a DB View Version of the report that many use for auditing and to prep for clean-up. With Table Management moving to the WebView, this lessens the need to flip back and forth.

  • @Glen Hutson Thank you! Worked just as advertised.

  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Mark Warner:

    @Glen Hutson Thank you! Worked just as advertised.

    Great to hear. Did you do the On Demand or Scheduled version?

  • @Glen Hutson I did the scheduled version.

  • @Glen Hutson- Hi Glen, I finally got this up and going for the On Demand version. I have a question about the links to the table. When I click on the Word, it doesn't do anything. I changed it to be Outlook - Send an Email to see if that was the issue but still doesn't work.

    When I do click on a choice it brings me to the top of the Tables, not to the table I click on. Am I missing something? Here's a snapshot of some of the tables if that helps.

    3e5f9bb1b8062008761ff35a45556e84-huge-im

    Thanks,

    Carol

    @Dan Snyder - tagging you here in case this happened to you also?

  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Carol Grant
    I'm not sure what could be the error here. What I do know is that sometimes email security systems may mangle a few items within an email as it does things such as block images, etc. The alternative solution would be to “find” within the email the table you want to inspect further. I know that's not ideal, but I'm not sure what could be causing the issue.

  • @Carol Grant and @Glen Hutson I was able to get this to import successfully but there was one additional change I made in the Create HTML table - ListTables action. The link to the table had "#table" which looked odd to me so I inserted the full link with the code table id value. Maybe that is what is happening for you Carol?

    1d9aed63cf636792222f5cd67650911d-huge-im
    From imported flow
    070bfcc8eb52e6dae666e25b28990f54-huge-im
    Updated linking to the specific table


  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 PowerUp Challenge #3 Gift Management Name Dropper

    @Carol Grant
    in your successful run of the flow, go to your send email action, and copy the email body (which includes the HTML) and paste it here, I can help tell you what the HTML problem is.

  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Dan Snyder
    That first link that has just “#table” is meant to hop to a later part of the report/email that has all the table entries, and from there you can hop directly to RENXT. That's the intent, anyway.

  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 PowerUp Challenge #3 Gift Management Name Dropper

    @Glen Hutson
    I didn't import the flow so i'm not sure the actual situation, which is why i ask her to send the HTML from the send email action.

    However, based on what you said Glen, the intent is to “go down” to the table that's in the same email, not link out to RE NXT. Then the code is correct, the link is “#anchorname” however, you have to make sure that each of your codetable entires table has a <a name="table##"></a> that can be anchor to. Secondary, not all email client allows anchoring.

  • @Alex Wong:

    @Glen Hutson
    I didn't import the flow so i'm not sure the actual situation, which is why i ask her to send the HTML from the send email action.

    However, based on what you said Glen, the intent is to “go down” to the table that's in the same email, not link out to RE NXT. Then the code is correct, the link is “#anchorname” however, you have to make sure that each of your codetable entires table has a <a name="table##"></a> that can be anchor to. Secondary, not all email client allows anchoring.

    This is my issue, it doesn't move down the email to the correct table. Dan pasted the HTML part below where it says #table

    This is what appears in the email. I think that's what you wanted.

    3bf71b15a3fc418e977e6e17ebb21ea8-huge-im
  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Carol Grant
    That section forms the anchor section with the code table details before then linking out to RENXT. Why the TOC doesn't move down to the right table, I'm not certain. As Alex mentioned, not all email clients support anchors and some email “security” systems can mangle those. There's quite a number of variables here. That's why I mentioned that if you want to hop to a particular table, then just use good ‘ole “find”. I know that’s not ideal, but an option. What Alex suggests you post is not the HTML part of the Flow, but “view source” in your email and post a snippet of that HTML to see if it's rendering correctly.

  • @Glen Hutson- sounds good, I'll do the good ‘ole “find”.

  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 PowerUp Challenge #3 Gift Management Name Dropper

    @Carol Grant
    add the bold into your A tag:

    <a name="table@{code_table_id_dynamic_content}" href="……."></a>

    using <a name is more backward compatible vs using id on div

  • @Glen Hutson First, we have too many tables so I didn't even pick up on the table entries portion at the bottom of the email, shame on me. Second, we are primarily a Google shop so I presume that Gmail does not support those anchors so just using a link to the table in NXT is great cause you are getting to the same information or you can just “find”.

  • @Alex Wong- that didn't seem to work, I'm getting an error. It says to fix the invalid expression. I have a space in between the" href=, I don't know if that matters?

    b6c7b6c25ee268e4617cac9d1a92fb16-huge-im


  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Dan Snyder:

    @Glen Hutson First, we have too many tables so I didn't even pick up on the table entries portion at the bottom of the email, shame on me. Second, we are primarily a Google shop so I presume that Gmail does not support those anchors so just using a link to the table in NXT is great cause you are getting to the same information or you can just “find”.

    I try to factor in different things as possible, but that's not always the case. If you're using this primarily as a “give me a list of all tables and how many entries there are”, you could remove the Apply to each - Get Table Entries loop and that would speed up the processing time.

  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 PowerUp Challenge #3 Gift Management Name Dropper

    @Carol Grant
    table@{code_table_id_dynamic_content}

    you need to select the dynamic content of the code table id, i don't know your action step's name to put that in for you,

    it should be

    1ed5a5ba8857ccaeb0132cc69fc7edee-huge-im
  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 PowerUp Challenge #3 Gift Management Name Dropper

    @Dan Snyder
    I just tried a test email to gmail.

    <A NAME> anchoring works

    <DIV ID" enchoring does not work

  • @Alex Wong Thanks, that worked perfect!

    For those Google shops, here is a screenshot of the slightly modified HTML to use that Alex suggested.

    c24ad1312706c8b565fa1167248d6dc9-huge-im


  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Dan Snyder / @Alex Wong : Glad to see that worked and will try to make sure to remember that for future/similar examples

  • Alex Wong
    Alex Wong Community All-Star
    Ninth Anniversary Kudos 5 PowerUp Challenge #3 Gift Management Name Dropper

    @Dan Snyder
    you added a separate <A> tag, which isn't needed. your HTML also did not close the extra <A> with </A>

    94bab21ac7c7d780cc58db445e33a3dc-huge-im
  • @Glen Hutson Thanks for this template. I have it imported but getting the following error message. The Mail connector is currently restricted for new tenants. Microsoft is working on enabling this connector. In the meantime, please consider using alternatives like Office 365 Outlook, Gmail, SendGrid connector instead.
    I would prefer to use Outlook but how do I change the mail connector. I have the Outlook 365 connector in my connectors but when I go to change the connector the only one available are Mail? Thanks for guidance.

  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Sandra Ross:

    @Glen Hutson Thanks for this template. I have it imported but getting the following error message. The Mail connector is currently restricted for new tenants. Microsoft is working on enabling this connector. In the meantime, please consider using alternatives like Office 365 Outlook, Gmail, SendGrid connector instead.
    I would prefer to use Outlook but how do I change the mail connector. I have the Outlook 365 connector in my connectors but when I go to change the connector the only one available are Mail? Thanks for guidance.

    If I'm reading it correctly, you're getting the notification on import? See if you can go ahead and at least import using that ‘generic’ Mail. If so, once you import and edit the flow, you can switch it out for the Outlook connector.

  • @Glen Hutson Thanks for replying, I actually got the template completely setup. The error occurs when I tried to run it. The error is on “send an email notification” at the very end of the flow. I have tried to change the connector to Outlook but the flow seems to require Mail? Are there any instructions on changing the email connector that can be shared? Thanks!

    7718b4d919b9634abcb7e82242cf33c4-huge-im

    f44e2fd973bf17b1709b121b73e2b96f-huge-im


  • Glen Hutson
    Glen Hutson Blackbaud Employee
    Tenth Anniversary Kudos 3 Name Dropper Participant

    @Sandra Ross:

    @Glen Hutson Thanks for replying, I actually got the template completely setup. The error occurs when I tried to run it. The error is on “send an email notification” at the very end of the flow. I have tried to change the connector to Outlook but the flow seems to require Mail? Are there any instructions on changing the email connector that can be shared? Thanks!

    The flow doesn't require the generic Mail. To make sure we're on the same page in regards to the steps needed: You won't be able to edit the generic mail and switch it for Outlook. You'll need to create a new action, add the “Send an Email (V2)" Outlook option, fill in those pieces mimicking the generic email, and then delete the non-working action. Are you running into errors following those steps?

  • @Glen Hutson
    Success! Thanks for all your guidance.

Categories