<style>p { margin: 0; }span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left:0; padding-left:5px;}blockquote blockquote{ border-color: #00bcd4; color: #00bcd4;}blockquote blockquote blockquote{ border-color: #43a047; color: #43a047;} table.grid{ border-collapse: collapse;} table.grid td, table.grid th { border: 1px solid #ddd;} .fr-fic.fr-dib{ display: block; margin: 5px auto;}.fr-fic.fr-dib.fr-fir{ text-align: right; margin: 5px 0 5px auto;}.fr-fic.fr-dib.fr-fil{ text-align: left; margin: 5px auto 5px 0;}.fr-fic.fr-dii{ float: none; margin: 5px auto;}.fr-fic.fr-dii.fr-fil{ float: left; margin: 5px auto;}.fr-fic.fr-dii.fr-fir{ float: right; margin: 5px auto;}img.fr-dib.fr-fir { margin-right: 0; text-align: right;}img.fr-dib.fr-fil { margin-left: 0; text-align: left;}img.fr-dib { margin: 5px auto; display: block; float: none;}img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC;}img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc;}img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;}</style><style>
p {
margin: 0;
}
span.fr-emoticon.fr-emoticon-img {
background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle;
}
span.fr-emoticon {
font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0;
}
blockquote {
border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px;
}
blockquote blockquote {
border-color: #00bcd4; color: #00bcd4;
}
blockquote blockquote blockquote {
border-color: #43a047; color: #43a047;
}
table.grid {
border-collapse: collapse;
}
table.grid td,
table.grid th {
border: 1px solid #ddd;
}
.fr-fic.fr-dib {
display: block; margin: 5px auto;
}
.fr-fic.fr-dib.fr-fir {
text-align: right; margin: 5px 0 5px auto;
}
.fr-fic.fr-dib.fr-fil {
text-align: left; margin: 5px auto 5px 0;
}
.fr-fic.fr-dii {
float: none; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fil {
float: left; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fir {
float: right; margin: 5px auto;
}
img.fr-dib.fr-fir {
margin-right: 0; text-align: right;
}
img.fr-dib.fr-fil {
margin-left: 0; text-align: left;
}
img.fr-dib {
margin: 5px auto; display: block; float: none;
}
img.fr-bordered {
box-sizing: content-box; border: solid 5px #CCC;
}
img.fr-shadow {
box-shadow: 10px 10px 5px 0px #cccccc;
}
img.fr-rounded {
border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;
}
</style><div><style>
p {
margin: 0;
}
span.fr-emoticon.fr-emoticon-img {
background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle;
}
span.fr-emoticon {
font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0;
}
blockquote {
border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px;
}
blockquote blockquote {
border-color: #00bcd4; color: #00bcd4;
}
blockquote blockquote blockquote {
border-color: #43a047; color: #43a047;
}
table.grid {
border-collapse: collapse;
}
table.grid td,
table.grid th {
border: 1px solid #ddd;
}
.fr-fic.fr-dib {
display: block; margin: 5px auto;
}
.fr-fic.fr-dib.fr-fir {
text-align: right; margin: 5px 0 5px auto;
}
.fr-fic.fr-dib.fr-fil {
text-align: left; margin: 5px auto 5px 0;
}
.fr-fic.fr-dii {
float: none; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fil {
float: left; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fir {
float: right; margin: 5px auto;
}
img.fr-dib.fr-fir {
margin-right: 0; text-align: right;
}
img.fr-dib.fr-fil {
margin-left: 0; text-align: left;
}
img.fr-dib {
margin: 5px auto; display: block; float: none;
}
img.fr-bordered {
box-sizing: content-box; border: solid 5px #CCC;
}
img.fr-shadow {
box-shadow: 10px 10px 5px 0px #cccccc;
}
img.fr-rounded {
border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;
}
</style> <style>
p {
margin: 0;
}
span.fr-emoticon.fr-emoticon-img {
background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle;
}
span.fr-emoticon {
font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0;
}
blockquote {
border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px;
}
blockquote blockquote {
border-color: #00bcd4; color: #00bcd4;
}
blockquote blockquote blockquote {
border-color: #43a047; color: #43a047;
}
table.grid {
border-collapse: collapse;
}
table.grid td,
table.grid th {
border: 1px solid #ddd;
}
.fr-fic.fr-dib {
display: block; margin: 5px auto;
}
.fr-fic.fr-dib.fr-fir {
text-align: right; margin: 5px 0 5px auto;
}
.fr-fic.fr-dib.fr-fil {
text-align: left; margin: 5px auto 5px 0;
}
.fr-fic.fr-dii {
float: none; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fil {
float: left; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fir {
float: right; margin: 5px auto;
}
img.fr-dib.fr-fir {
margin-right: 0; text-align: right;
}
img.fr-dib.fr-fil {
margin-left: 0; text-align: left;
}
img.fr-dib {
margin: 5px auto; display: block; float: none;
}
img.fr-bordered {
box-sizing: content-box; border: solid 5px #CCC;
}
img.fr-shadow {
box-shadow: 10px 10px 5px 0px #cccccc;
}
img.fr-rounded {
border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;
}
</style><p><strong><span style="font-size: 11pt;">In this guide we will cover:</span></strong></p><p><span style="font-size: 11pt;"><strong>- Creating a Publish Profile</strong></span></p><p><span style="font-size: 11pt;"><strong>- Adding the Report</strong></span></p><p><span style="font-size: 11pt;"><strong>- Connecting to Postman</strong></span></p><p><strong><span style="font-size: 11pt;">- Connecting to Power BI</span></strong></p><p><strong><span style="font-size: 11pt;">- Upload Scheduled Reports to SharePoint</span></strong></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 14pt;"><strong>Creating a Publish Profile</strong></span></p><p><span style="font-size: 11pt;">On the "Availability" tab of reports there is a checkbox for publishing reports. The "Scheduled Emails" tab will eventually include a section for sending report data on a recurring schedule to your BI tools.</span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">Publish Profiles have been added to Halo in order for large quantities of report data to be sent to BI tools without the use of read only access to your database, which will be slowly phased out. This set up will require authentication in order for the data to be accessed at the given report endpoint.</span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">First navigate to Configuration > Integrations > Halo API:</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImM3YWUyMDQxLTliZWMtNDJhYi05YTQwLWYxYmM1OTU4NzhkOSJ9.3W-T6vZde3UCB9eHyK2sSTKsCRDAoSwhRPaqTQ7EVx0" class="fr-fic fr-fil fr-dib" width="846" style="width: 848px; height: 236.379px;" height="236"></p><p><strong><span style="font-size: 10pt;">Fig 1. Halo's API Module</span></strong></p><p><br></p><p><span style="font-size: 11pt;">Then scroll to the Publish Profiles section and click the "View Publish Profiles" Button.</span></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjlkNGI5ZTM4LTljODItNDY1ZS1iYmZhLTJhNzc0MGI3ZWQyOSJ9.3mBn1domLvFUzCwf4ZeJg606KEJIU1vHYKjeQGpcA4I" class="fr-fic fr-fil fr-dib" width="855" style="width: 857px; height: 117.388px;" height="117"></p><p><strong><span style="font-size: 10pt;">Fig 2. Publish Profiles Button</span></strong></p><p><br></p><p><span style="font-size: 11pt;">Create a new profile by clicking new in the top right of the screen. The Profile Name must be alphanumeric, no spaces or special characters. There are two authentication methods, either can be used, it is likely that your BI tool is going to require basic authentication.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNiMWU2MGEzLTkzNTktNDJiNi1iZmE4LTQ5NzA4MmMxODQ0OCJ9.2sAhbUyplaxEtd5G0baQZ0NSRttdH4-lN64pyMXDQMI" class="fr-fic fr-fil fr-dib" width="847" style="width: 849px; height: 577.908px;" height="578"></p><p><strong><span style="font-size: 10pt;">Fig 3. Publish Profile Creation Screen</span></strong></p><p><br></p><p><span style="font-size: 11pt;">The "Published Reports" dropdown requires the Report to have been marked as published in order to populate this field. Once a report is published and associated to the Publish Profile this field will automatically populate. </span></p><p><span style="font-size: 11pt;">In order to publish a report you can navigate to the reporting section of Halo. </span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjQzOWJlYTMwLTg4NjYtNDY2ZS1hZTIwLTg0YzQ3NDE1YTI5YyJ9.9uiOyqMpvfTnaVt7sGs5Lpl5si2L2INDUy4_j9S5Mfw" class="fr-fic fr-fil fr-dib" width="310" height="816"></p><p><strong><span style="font-size: 10pt;">Fig 4. The Reporting Section of Halo</span></strong></p><p><br></p><p><strong><span style="font-size: 14pt;">Adding the Report</span></strong></p><p><span style="font-size: 11pt;">Then click into a report and navigate to the "Availability" tab. After checking "Publish this report", an endpoint will show at the bottom of the page. Take note of this endpoint as it will be needed later.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImQ0MmUxNmY4LTE2ZjQtNDIwYi1iNDc1LWJhYzYyNGFjODYxMiJ9.8JFWOxJkYiJSxaT2hYQ8wQhrIoHRDPGWqHAVcPaO2Sk" class="fr-fic fr-fil fr-dib" width="1099" style="width: 1101px; height: 603.809px;" height="604"></p><p><strong><span style="font-size: 10pt;">Fig 5. Adding the Report to the Publish Profile</span></strong></p><p><br></p><p><span style="font-size: 11pt;">Now the report has been made available for publishing published, the access level needs to be set to "Use Publish Profiles". When selected an additional dropdown will show for the Publish Profile to use.</span></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjEwOWE0NDM4LTkwNWYtNGRjZi1hZjZjLTYzNTc2MDU3YjQ4YiJ9.DL8yV7h9-GL1g23nQ6GBhOCZxjeaST90Js8piCWJu0U" class="fr-fic fr-fil fr-dib" width="775" style="width: 777px; height: 315.383px;" height="315"></p><p><strong><span style="font-size: 10pt;">Fig 6. Access Level required</span></strong></p><p><br></p><p><span style="font-size: 11pt;">Multiple reports can be added to the same Publish Profile by following the same process for each. </span></p><p><br></p><p><span style="font-size: 11pt;">After the profile has been added, when going into BI tools or Postman, you can use a bearer or basic auth to authenticate the API request and then get back the data of the report by using the endpoint given for the dataset as shown in <strong>Fig 5</strong>. To obtain this token or password, head back into your Publish profile, set the authentication method, and click the "generate" button. Copy this as it will be required later. </span></p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjE2YTkxYTUyLTVlNTctNDhiYi1iYWRkLTZmZTY0NzFkNmExMSJ9.FlfwGEGhbAHIY8rYMjikrqazPRa9IctjYEmvQgIAgXQ" class="fr-fic fr-fil fr-dib" width="944" style="width: 946px; height: 523.153px;" height="523"></strong><strong><span style="font-size: 10pt;">Fig 7. Using the Bearer Token Method</span></strong></p><p><br></p><p id="isPasted"><span style="font-size: 14pt;"><strong>Connecting to Postman</strong></span></p><p><strong><span style="font-size: 11pt;"><em>Note this is an example of connecting to Postman to call a report. Please refer to the PowerBI section below for connecting to PowerBI.</em></span></strong></p><p><br></p><p><span style="font-size: 11pt;">In Postman I can add in the credentials in order to return the report data. Set the URl to your instance URL appeneded with the report endpoint. </span></p><p><br></p><p data-pasted="true"><span style="font-size: 11pt;">For Bearer Tokens you will need to set the Auth Type to "Bearer Token" and paste your token in the Token field. </span></p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNmOWNkODQ3LTk2NzUtNDY4Ni05MzM0LWU4MzkwMDQ2NDQ4MiJ9.7cins4sT01jZpHjYruux6-CI3Rva1MwxNJMTFOy4Feg" class="fr-fic fr-fil fr-dib" width="987" style="width: 989px; height: 465.762px;" height="466"></strong></p><p><strong><span style="font-size: 10pt;">Fig 8. Authentication using the Bearer Token in Postman</span></strong></p><p><br></p><p><span style="font-size: 11pt;">Alternatively for Basic Auth you will need to set the Auth Type to "Basic Auth", set the Username as the name given to the publish profile in Halo, and paste your password in the password field. </span></p><p><br></p><p><span style="font-size: 11pt;"><strong><em>Note:</em><em> The username will be the <span style="font-size: 11pt;" data-pasted="true"><strong><em>name given to the publish profile on Halo</em></strong></span>, and the password should be generated and then copied from the publish profile in Halo.</em></strong></span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImVkNDU2NDc0LWZmYjEtNGE5ZS05YjE3LTQ2N2I2ZjczYmRkZiJ9.eNpGVMCrRRuSVQ7R8X0HfMI3y0FBRllK-OF73bV48wA" class="fr-fic fr-fil fr-dib" width="1019" style="width: 1021px; height: 421.047px;" height="421"></p><p><strong><span style="font-size: 10pt;">Fig 9. Authentication using the Basic Authentication Method in Postman</span></strong></p><p><br></p><p><strong><span style="font-size: 14pt;">Connecting to Power BI</span></strong></p><p><span style="font-size: 11pt;">You can send data to your BI tools, this is achieved using the basic authentication method in Power BI. After creating your publish profile and connecting your report (detailed explanation is above), you can then connect this report to i.e. Power BI and send the data into the tool. Once you connect to Power BI, the next time you authenticate, you will only need to give the endpoint, you don't need to enter the credentials again.</span></p><p><br></p><p><span style="font-size: 11pt;">First navigate to "File".</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU5ODQ2MThlLTI2ZGUtNGRkYS05ZTRlLWY4MTNkNGJjNWFlZSJ9.95npA2XRvazONgbwe3Y2wzycISi3qq41ydPGtPFxI7Q" class="fr-fic fr-fil fr-dib" width="773" style="width: 775px; height: 132.21px;" height="132"></p><p><strong><span style="font-size: 10pt;">Fig 10. File section of Power BI</span></strong></p><p><br></p><p><span style="font-size: 11pt;">Then we will get data from the web, as shown below. Go to "Get data" and then "Web".</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6Ijg1MjRmNGM1LTgxOTctNGFjYy1iNjEyLWYzNzhkNDE0NTMwYSJ9.yuGROLXqLahzr2aBP23I-LEnSXiqkyfrTLeWs59q1QE" class="fr-fic fr-fil fr-dib" width="552" style="width: 554px; height: 704.886px;" height="705"></p><p><strong><span style="font-size: 10pt;">Fig 11. Getting Data from the Web</span></strong></p><p><br></p><p><br></p><p><span style="font-size: 12pt;"><strong>Basic Auth</strong></span></p><p><span style="font-size: 10pt;"><span style="font-size: 11pt;" data-pasted="true">To get the URL for the report you will need to have your halo instance URL appended with the report endpoint i.e. https://www.myhaloexample.halopsa.com/api/ReportData/3h53c7b-4f8gtg...</span></span></p><p> <img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjJlZDQ0ZDdhLTlhMjUtNDM4MC1hZjU3LWQ3NTQ1N2JhNzA5YyJ9.nQmX0uHQWoPms-kcfor8n3wwf2ojZDE9am_bRJuTS_I" class="fr-fic fr-fil fr-dib" width="682" style="width: 684px; height: 206.708px;" height="207"></p><p><strong><span style="font-size: 10pt;">Fig 12. Add the URL for the report</span></strong></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">You can then select the Basic method and add in your credentials that you created on the Publish Profile (Your Username will be the Profile Name).</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjNmNmYzNTQ2LTgzM2MtNGMxNS04YzNmLTRlMTUxMGJmMjUzNiJ9.GweTHWBnzRuJ86gNjbYlBxvek7RqNA0COazfMjG041I" class="fr-fic fr-fil fr-dib" width="690" style="width: 692px; height: 296.666px;" height="297"></p><p><strong><span style="font-size: 10pt;">Fig 13. <strong data-pasted="true"><span style="font-size: 10pt;">Connecting using the Basic Method</span></strong></span></strong></p><p><br></p><p data-pasted="true"><span style="font-size: 11pt;">Click Connect, and your data will then appear in a new window of Power BI.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjMxMGUwNGQzLWVkNTAtNGNiZS1hZTQ5LTJmMmM4MGFhM2UwNSJ9.pSpJiwjy1o0G19CGVVo98ccp5KdItL8ZixsUpy4HEc0" class="fr-fic fr-fil fr-dib" width="965" style="width: 967px; height: 238.296px;" height="238"></p><p data-pasted="true"><strong><span style="font-size: 10pt;">Fig 14. Your Data in Power BI</span></strong></p><p><br></p><p><span style="font-size: 11pt;">While Power BI is used as the example throughout this guide, the same Basic Authentication approach works with all major BI tools. Any platform that supports web-based data sources with Basic or Bearer Token authentication, including Tableau, Qlik, Looker, and others can connect to Halo report data using the same Publish Profile endpoint and credentials.</span></p></div><p><br></p><p><span style="font-size: 12pt;"><strong>Bearer Token</strong></span></p><p>If you are using the Bearer Token method, once you have selected to "Get Data" from "Web", you will need to switch to the Advanced connection method. Here enter your URL appended with the report endpoint, and add the Headers "Authorization" and "Content-Type".</p><p>Against your "Authorization" Header set the value "Bearer" followed by your Bearer Token.</p><p>Against the "Content-Type" Header, set the value "Application/json". </p><p><br></p><p><strong><em>Note: These Headers may not be available in the dropdown so may need to be entered manually. </em></strong></p><p><br></p><p><span style="font-size: 12pt;"><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjUzNmUwZDU1LWJjZWMtNDZiOC1hYTIzLThiMzdlNGYzNWU1ZCJ9.sXSjGbZ2vxFhEhbzi7nIMDQ37cR99PnrJoPyWZ8JDtI" class="fr-fic fr-fil fr-dib" width="755" style="width: 757px; height: 507.095px;" height="507"></strong></span></p><p data-pasted="true"><strong><span style="font-size: 10pt;">Fig 15. Connecting using the Bearer Token Method </span></strong></p><p><br></p><p data-pasted="true"><span style="font-size: 11pt;">Click "OK", and your data will then appear in a new window of Power BI.</span></p><p><br></p><p><img data-fr-image-pasted="true" src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjMxMGUwNGQzLWVkNTAtNGNiZS1hZTQ5LTJmMmM4MGFhM2UwNSJ9.pSpJiwjy1o0G19CGVVo98ccp5KdItL8ZixsUpy4HEc0" width="965" height="238" style="box-sizing: inherit; border-style: none; cursor: pointer; padding: 0px 1px; user-select: none; text-align: left; color: rgb(0, 0, 0); font-family: sans-serif; font-size: 13px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; width: 967px; height: 238.296px; max-width: none !important;" data-pasted="true" class="fr-fil fr-dib"></p><p data-pasted="true" style="box-sizing: inherit; margin: 0px; line-height: 1.4285em;"><strong style="box-sizing: inherit; font-weight: 700;"><span style="box-sizing: inherit; font-size: 10pt;">Fig 16. Your Data in Power BI</span></strong></p><p><br></p><p><span style="font-size: 14pt;"><strong>Upload Scheduled Reports to SharePoint</strong></span></p><p><span style="font-size: 11pt;">This feature requires a folder that allows document uploads. You must configure at least one folder mapping that allows document uploads.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjZjMDk5ZGUwLWZlMWYtNGFkZi1hNzIwLWZhOGIyMzRlNmIwNCJ9.V_faXxT188QWcX1cZoBIr0piMPmjZNu31_8xKxGvtMw" class="fr-fic fr-fil fr-dib" width="357" style="width: 359px; height: 272.075px;" height="272"></p><p><span style="font-size: 10pt;"><strong>Fig 17. Mapping Types</strong></span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">Once this is done, you can configure the upload by adding a schedule in the scheduling tab of a report.</span></p><p><span style="font-size: 11pt;">This now allows you to specify an export type of either "Email", the existing scheduled reports functionality, or "Upload to SharePoint".</span></p><p><span style="font-size: 11pt;">With the latter selected you can pick one of your mappings as the upload destination for the reports. The reports can either be uploaded with the current date append to the file name to create a new file each time or replace the existing file.</span></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNiOTQ5NzcxLTcxN2YtNDgzMC05N2FiLWQ2MTkzYThlZWI4NyJ9.VBIYNC9-hp7rIdpum_xbY3bj-_hZB_S_jnIa3I64Od0" class="fr-fic fr-fil fr-dib" width="776" style="width: 778px; height: 263.088px;" height="263"></p><p><span style="font-size: 10pt;"><strong>Fig 18. Configuring the SharePoint Connection</strong></span></p><p><br></p><p><span style="font-size: 11pt;">Additionally, there is now an @lastrundate variable that can be used in reports. This can be used to filter the reports to just the data since the report last ran. The report will not be filtered during the first run. For example, this could be used:</span></p><p><br></p><p id="isPasted"><span style="font-size: 11pt;">select faultid, ..., etc from faults where flastupdate > @lastrundate</span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">Now when bringing data from Halo, we can send it to SharePoint (only the relevant data which hasn't synced over yet) then from SharePoint it can go to PowerBI via a SharePoint folder that is found in PowerBI as a data source, when connecting the report from SharePoint.</span></p><p><span style="font-size: 11pt;"><br></span></p><p><span style="font-size: 11pt;">When it first runs it brings back all data. When it next runs it only brings back data after the last runs run date.</span></p><p data-pasted="true"><br></p>