This custom solution enables users to upload a certificate file to LMS365, ready for approval. Once approve, the certificate is stored in their training record. This solution helps users to easily and securely submit their certificates for verification, and access them at any time from My Training Dashboard. The solution uses Power Apps embedded in an LMS365 course to upload the certificate files, Microsoft Power Automate is used to automate the approval process, and SharePoint Lists is used as the certificate storage mechanism.
This guide will cover the following:
- Use case
- How to use the solution
- Important notes
- Install the solution
- Content of the download files
- Set up the SharePoint list
- Set up the Power Platform solution
- Share the Power App
- Configure the Embed URL Copier Power BI report
- Embed the app in a course using its unique URL
- Change completion settings to prevent the course from prematurely completing
A learner uploads a certificate file from their device to the custom app for approval. Once approved, the file is stored in their training records and can be accessed at any time. The app is embedded in a specific LMS365 course, ensuring that the uploaded certificate is using the correct information.
How to use the solution
The learner accesses the application that's embedded inside an LMS365 course. After proceeding through the tutorial, a form will enable the learner to upload the certificate file for approval. Once submitted, a confirmation page shows that their certificate will be submitted for approval. The approver will receive a notification in Microsoft Teams and via email, asking them to approve or reject the submission. Once approved, the learner will be notified via email that their certificate was approved and their training record in LMS365 has been updated.
- The link to the Power App is uniquely generated for each Office 365 tenancy and it won't work outside of your tenant organization.
- For the solution to work, the link needs to be customized to reference the course to which it's being added. Without this step, the app will still function, but the automation will fail because it doesn’t know which course it's supposed to reference.
- Currently, the solution doesn't work across multiple course catalogs and will only work within the catalog for which it's currently configured. Additional deployments of the solution to other catalogs would need to be made for the solution to work on the respective catalogs.
- The solution will only show results of uploaded certificates if you're enrolled in the course as a learner. If you're testing the Power App inside a course without being enrolled in it, your certificate won't be uploaded and there will be errors in the automation.
- The Embed URL Copier report is intended to be used on Power BI Desktop. It isn't intended to be uploaded into Power BI Online because the Power BI Online data would need to be refreshed on a schedule - this wouldn't be appropriate for admins, who create the courses and need the embed URLs quickly.
Install the solution
The Learner Certificate Uploader (LM Variant) consists of multiple components as part of its solutions package. The installation of the solution consists of the following stages:
The SharePoint List
This is used for storing the submissions and acting as the intermediary for all the components involved and is created using a SharePoint List template file.
The Power Platform solution
This consists of a Power App and a Power Automation.
- Power App. This is embedded within a learning module of an LMS365 course and provides learners with an easy-to-follow form, which is used to populate the SharePoint List with submissions.
- Power Automation. This automates the process of handling learner submissions and is triggered by the creation of a new submission in the SharePoint List. Power Automation handles the approval process via Microsoft Approvals and leverages the LMS365 API to complete automation processes. It also contains email notification commands powered by Microsoft Outlook.
The customized Power BI report
This helps to obtain the custom unique Embed URL, which is used in the LMS365 learning module builder.
Content of the download files
You'll receive a compressed ZIP file from your LMS365 consultant for this common solution during the guided installation.
After downloading the ZIP file and extracting the files, you'll see the following files:
- This is the Power Platform solution file that's imported into your environment.
- Don't unzip this package file. This file must remain zipped in order for it be uploaded to your Power Platform.
Learner Certificate Uploader SP List.stp
- This is the SharePoint List template file that's used to create a SharePoint List on your LMS365 course catalog site and contains all the necessary columns of information.
- This is a Classic SharePoint List template and has different installation instructions to Modern SharePoint List templates.
LMS365 Embed URL Copier.pbix
- This is the Power BI file that helps to generate the Embed URL that's used in the LMS365 learning module builder.
- We recommend you use this report in Power BI Desktop in order to avoid data refresh lag while creating courses.
Set up the SharePoint list
1. Navigate to your LMS365 course catalog site in your web browser.
2. Upload the SharePoint List template file by selecting Settings (the gear icon) > Site information > View all site settings > List templates.
3. In the List Template Gallery, select Files > Upload Document > navigate to the location to which you saved the Learner Certificate Uploader SP List.stp file and select it.
4. After uploading the file, select Settings (the gear icon) > Add an app.
5. In the Apps you can add section of the My apps page, select the hyperlink in the sentence that reads “Built in apps… can be found in the classic experience.”
6. On the Your Apps page, select Learner Certificate Uploader SP List and enter LearnerCertificateUploads in the Name field.
The site Contents page opens and the list will be created.
7. You'll need to modify the permissions of this list to prevent learners from seeing submissions from other learners. To do this, open the vertical ellipsis menu (three dots) next to the LearnerCertificateUploads list and select Settings.
8. Select Permissions for this list.
9. Select Stop Inheriting Permissions on the ribbon menu.
10. Select OK on the confirmation window.
11. You'll need to delete all the existing permissions, except for the owners permissions. To do this, select all the existing settings and uncheck the Owners permission. Traditionally, this is indicated by the name of your site, appended with Owners. This step is important in order to retain the permissions for owners of the site. Once all the permissions are selected (except for owners), select Remove User Permissions. The page will update.
12. You'll need to grant unique permissions to the learners of the site. To do this, select Grant Permissions from the ribbon menu. In the Share dialog, enter the name of your site’s visitor's group and append it with Visitors. Select Show Options. Uncheck Send an email invitation to prevent learners from being notified of the permission change. Select the Contribute permission from the Select a permission level drop-down.
13. Select Share.
14. Refresh the page and ensure that the permissions are properly set.
Set up the Power Platform solution
1. Navigate to Power Automate.
2. Go to the Solutions section. This option might be displayed in the More menu on the left-hand side of the page.
3. Select Import solution.
4. Select Browse and select the LMS365CertificateUploaderLMVariant_1_0_0_7.zip file.
5. Select Open.
6. Once the file is uploaded, select Next. The Import a solution wizard opens and confirms the solution details.
7. Select Next. The Connections page opens.
8. You'll need to connect each item before importing. Use the drop-down menu for each item and select the account that you want to use for the solution. If there are no existing items, select +New connection.
9. In the opened dialog, enter API as the username and your LMS365 API Key (Full Control) as the password.
10. Select Create.
11. Close the newly created tab and return to the Microsoft Power Automate tab.
12. On the Apply changes dialog, select Refresh to apply the newly added changes and to show the connection in the list.
13. Once all the connections are selected, select Next. The Environment Variables page opens.
14. From the drop-down menus, select your LMS365 Catalog Site and the Learner Certificate Uploads list. Once you've selected the site and list, select Import to start the import your variables.
The solution will take a few minutes to import. Check the status of the import using the notification bar at the top of the page. The status will change once the import has been completed.
15. Select the newly imported solution and then Edit on the top menu.
The details page of the solution is displayed. This page contains all the components that required for the Power Platform Solution. You'll need to modify the Power App to re-apply the SharePoint list to the correct URL.
16. Select the Learner Certificate Uploader (LM Variant) canvas app and select Edit on the top menu.
You'll need to remove the SharePoint data references relating to our development environment, and incorporate our newly added SharePoint List in its place.
17. Navigate to the Data view on the left-hand side of the Power App editor.
18. Open the horizontal ellipsis (three dots) menu next to the SPListForCertUpload data connection and select Remove.
Once removed, you'll need to add the data source again.
19. Select the +Add data section and search for SharePoint.
20. Select the option named SharePoint. Don't select any other related data source options.
21. Select your existing SharePoint connection. The Connect to a SharePoint site panel opens.
22. Select the Advanced tab and then SPSiteForCertUpload.
You'll be redirected to the Choose a list panel.
23. Select Advanced again and then SPListForCertUpload. Select Connect to add SPListForCertUpload to your Power App again, with the proper connection to your course catalog.
24. Select Save at the top of the page and Publish your changes.
Share the Power App
To enable users to access the Learner Certificate Uploader solution, you'll need to share the Power App.
1. Select the Share icon in the top right-hand section.
A new window opens, which displays a form that needs to be completed in order to share your Power App. A warning message will notify you about implicitly sharing connections and this is intended behavior.
2. Enter any users who will need to use the Power app. Preferably, add the Everyone group to ensure that all members of the organization will have the appropriate permissions to the application. Set them as co-owners if you want them to be able to edit the app. You can also check or uncheck Send an email invitation to new users, depending on whether you want to notify them.
3. Confirm on the red error at the top, then select Share at the bottom. The red error is displayed because you're using connectors assigned to the account that owns the flow. Adding users will grant themaccess to the owner’s flows connector in relation to running the flow.
Configure the Embed URL Copier Power BI report
Just like the LMS365 Power BI Starter Kit, you can configure the Embed URL Copier in the same manner, with a few exceptions. The summary of steps is shown here:
1. Using a web browser, navigate to your Microsoft Power Apps Portal.
2. Open the details of the LM Variant app by going to Apps > Learner Certificate Uploader (LM Variant) > ... (the more commands menu) > Details.
3. Select Copy link to Clipboard to copy your unique App URL. This URL is randomly generated and is unique to your installation of the Learner Certificate Uploader.
4. Open the provided PBIX file using Power BI Desktop.
5. Open the Transform Data menu, select Edit Parameters, and verify/update the API URL field to correctly reflect your LMS365 tenant region.
6. Paste the App URL in the Power Apps URL field.
7. Select OK and Apply your changes.
8. If applicable, authenticate your Power BI Report using your LMS365 API Key using Basic Authentication, with API as the User name and your API key as the Password.
For more detailed information on how to connect your Power BI report to your LMS365 database, see this Sway.
Embed the app in a course using its unique URL
After successfully configuring your Embed URL Copier report, you can use it to quickly generate and copy your unique Embed URLs for your LMS365 Courses. These unique URLs are what inform the App on how to map the uploads properly to the associated course. Without these unique URLs, the App won't work and will show an error instead.
A summary of the instructions for embedding the app in your LMS365 course is shown here:
1. Fully create your LMS365 course because the system needs to generate its unique course ID for the application to function.
2. Using the fully configured Embed URL Copier report on Power BI Desktop, select Refresh and use the report to find your created course.
3. Select the Embed URL of the course to which you want to embed the App. Your web browser will open and you can copy the URL from the browser once the browser has finished loading.
4. Return to the content of your LMS365 the course and create a learning module via the LMS365 Admin Center > Training Management > select the course > Manage Course Content > Add Learning Items > Learning Module.
5. Select Add Website link/URL and paste the copied Embed URL in the Link field. Give the link a name of your choosing. We recommend you turn off the Open in a New Tab option and use the Full Width size in order to have the best experience of the app within your LMS365 course.
6. Add any other items and information that you want to have in your learning module, then save your changes. You can add more content items in your course, if relevant.
Change completion settings to prevent the course from prematurely completing
The Learner Certificate Uploader marks a course as complete after the uploaded certificate is approved. However, when using the LM Variant of the app and associating it with a course, you'll need to modify the course completion settings in order to prevent the course from being prematurely marked as complete (that is to say, before the learner's certificate upload has been approved). The following process ensures that the approval of an uploaded certificate determines whether the course can be marked as complete.
A summary of the instructions for changing your course completion settings is shown here:
1. Go to the course completion settings in the LMS365 Admin Center > Training Management > select the course > Course completion settings.
2. Select the Default completion set and then Edit course completion set.
3. Uncheck all the items in the completion set. This ensures that the course can't be completed until the uploaded certificate has been approved.
Learner progress on all other items in the course will still be tracked but won't be considered as requirements towards course completion because the approved certificate will serve as the reason why the course is complete.
4. Save your changes. Your course will show 0 items in the set and can now be completed only when the uploaded certificate is approved.