PowerApps and Azure SQL Server / Blob storage

Peter Heffner
Peter HeffnerInternal Communications | Intranet Solutions bei Thermo Fisher Scientific Germany à Thermo Fisher Scientific Germany
Upload Files from PowerApps to SQL
Server
My cheat sheet for upload and display files in PowerApps
Peter Heffner
@Lingualizer
17 April 2019
Preliminary
notes
• First: I'm not an Azure Expert at all!
• This presentation is more like a cheat sheet if you have Microsoft Azure SQL Server as a database
and want to store files from within Microsoft PowerApps.
• For a Microsoft PowerApps project I created several tables on an Azure SQL Server.
• Documents and images are stored in an Azure Blob Storage Container
• Prerequisites:
• Azure SQL Server with tables of your choice
• Azure Blob Storage Container
Optional: Microsoft Azure Storage Explorer to understand where your files are uploaded to.
What you will find here
• An example of a very simple table “Projects”. Each project has an
unique ID.
• A blob storage container “projects”. This container will have folders
which are named as the IDs of the project ID. The folders are
created during upload.
• PowerApps with an upload functionality for files
• A Gallery with the uploaded files for each project
• PDF-viewer and image control to display the content
Azure SQL
Server Table
Azure Blob
Storage
Don‘t forget to define a key.
If not you won‘t be able to create
new records in PowerApps
This is where we want to store our
project files.
There will be folders underneath.
Folder names = Project.ID
Create a
Canvas App
In PowerApps the starting point was
[Create an app] – [Canvas] – [Start with your data]
Here I chose my SQL connector to automatically
build a standard app in Smartphone layout
Also add the
connector to the
Azure Blob Storage
Create some
Projects
First I created some projects.
Before we navigate from the
browse screen to the details
screen we store the project ID in a
global variable
Store the
project ID in a
global variable.
The
“Add Picture“
Control
On the detail screen we add next to
the Gallery the „Add picture“ control.
This is where we upload the files.
Show me the
details
This screen has some additional fields to see more details.
• ti_filename: a text input control which contains the filename of the selected file and the option to
rename it as a default value.
• lbl_ID_file: Concatenate the project ID (our folder name), add a „/“ and the filename
• lbl_blob: this is our file as a blob
All this fields can be hidden in the published app. It is just to show which content we use for the
upload.
File Upload
Next we add a button and add
some action to „OnSelect“
The Azue Blob Storage Container
Where is the
file?
If you open the Azure Blob Storage Explorer you will see a new folder (our project ID).
This is where we find the file.
Show Files
in a Gallery
Items = AzureBlobStorage.ListFolderV2(LookUp(
AzureBlobStorage.ListFolderV2("projects").value,
DisplayName=glb_ProjectID & "/", Id)).value
The command for retrieving the content of a folder is a bit tricky.
At first I expected something like „projects/1“ to look for my
files, but it is all about the Ids within the blob container
„projects“.
Finally I combined all my bits and pieces as one single command
for „Items“.
The screenshot on the right has the PDF viewer control.
If you also have images, add the image control and decide based
on the value of „ThisItem.Media.Type“ which to display.
Peter Heffner
@Lingualizer
Thanks for watching!
Thanks to Laura Rogers, Shane Young, Paul O‘Flaherty, and many more
for their inspiring videos and blog posts around Microsoft PowerApps.
1 sur 11

Recommandé

Oracle backup and recovery par
Oracle backup and recoveryOracle backup and recovery
Oracle backup and recoveryYogiji Creations
11.6K vues55 diapositives
Druid Adoption Tips and Tricks par
Druid Adoption Tips and TricksDruid Adoption Tips and Tricks
Druid Adoption Tips and TricksImply
464 vues41 diapositives
Speeding Time to Insight with a Modern ELT Approach par
Speeding Time to Insight with a Modern ELT ApproachSpeeding Time to Insight with a Modern ELT Approach
Speeding Time to Insight with a Modern ELT ApproachDatabricks
347 vues25 diapositives
Databricks Delta Lake and Its Benefits par
Databricks Delta Lake and Its BenefitsDatabricks Delta Lake and Its Benefits
Databricks Delta Lake and Its BenefitsDatabricks
5.1K vues21 diapositives
Live cache support guide par
Live cache support guideLive cache support guide
Live cache support guideKallol Chakrabarti
3.9K vues41 diapositives
Optimizing {Java} Application Performance on Kubernetes par
Optimizing {Java} Application Performance on KubernetesOptimizing {Java} Application Performance on Kubernetes
Optimizing {Java} Application Performance on KubernetesDinakar Guniguntala
421 vues15 diapositives

Contenu connexe

Tendances

Data Vault 2.0 DeMystified with Dan Linstedt and WhereScape par
Data Vault 2.0 DeMystified with Dan Linstedt and WhereScapeData Vault 2.0 DeMystified with Dan Linstedt and WhereScape
Data Vault 2.0 DeMystified with Dan Linstedt and WhereScapeWhereScape
667 vues24 diapositives
Architecting a datalake par
Architecting a datalakeArchitecting a datalake
Architecting a datalakeLaurent Leturgez
331 vues22 diapositives
Getting Started with Delta Lake on Databricks par
Getting Started with Delta Lake on DatabricksGetting Started with Delta Lake on Databricks
Getting Started with Delta Lake on DatabricksKnoldus Inc.
275 vues15 diapositives
Azure data factory par
Azure data factoryAzure data factory
Azure data factoryDavid Giard
1.5K vues11 diapositives
Sizing your alfresco platform par
Sizing your alfresco platformSizing your alfresco platform
Sizing your alfresco platformLuis Cabaceira
12.8K vues67 diapositives
Refactoring, Emergent Design & Evolutionary Architecture par
Refactoring, Emergent Design & Evolutionary ArchitectureRefactoring, Emergent Design & Evolutionary Architecture
Refactoring, Emergent Design & Evolutionary ArchitectureBrad Appleton
2.5K vues101 diapositives

Tendances(20)

Data Vault 2.0 DeMystified with Dan Linstedt and WhereScape par WhereScape
Data Vault 2.0 DeMystified with Dan Linstedt and WhereScapeData Vault 2.0 DeMystified with Dan Linstedt and WhereScape
Data Vault 2.0 DeMystified with Dan Linstedt and WhereScape
WhereScape667 vues
Getting Started with Delta Lake on Databricks par Knoldus Inc.
Getting Started with Delta Lake on DatabricksGetting Started with Delta Lake on Databricks
Getting Started with Delta Lake on Databricks
Knoldus Inc.275 vues
Azure data factory par David Giard
Azure data factoryAzure data factory
Azure data factory
David Giard1.5K vues
Sizing your alfresco platform par Luis Cabaceira
Sizing your alfresco platformSizing your alfresco platform
Sizing your alfresco platform
Luis Cabaceira12.8K vues
Refactoring, Emergent Design & Evolutionary Architecture par Brad Appleton
Refactoring, Emergent Design & Evolutionary ArchitectureRefactoring, Emergent Design & Evolutionary Architecture
Refactoring, Emergent Design & Evolutionary Architecture
Brad Appleton2.5K vues
LDM Slides: Data Modeling for XML and JSON par DATAVERSITY
LDM Slides: Data Modeling for XML and JSONLDM Slides: Data Modeling for XML and JSON
LDM Slides: Data Modeling for XML and JSON
DATAVERSITY4.4K vues
Comparing Native Java REST API Frameworks - Seattle JUG 2022 par Matt Raible
Comparing Native Java REST API Frameworks - Seattle JUG 2022Comparing Native Java REST API Frameworks - Seattle JUG 2022
Comparing Native Java REST API Frameworks - Seattle JUG 2022
Matt Raible48 vues
Azure DevOps CI/CD For Beginners par Rahul Nath
Azure DevOps CI/CD  For BeginnersAzure DevOps CI/CD  For Beginners
Azure DevOps CI/CD For Beginners
Rahul Nath459 vues
Why Aren't You Using Git Flow? par John Congdon
Why Aren't You Using Git Flow?Why Aren't You Using Git Flow?
Why Aren't You Using Git Flow?
John Congdon3.9K vues
Snowflake: The most cost-effective agile and scalable data warehouse ever! par Visual_BI
Snowflake: The most cost-effective agile and scalable data warehouse ever!Snowflake: The most cost-effective agile and scalable data warehouse ever!
Snowflake: The most cost-effective agile and scalable data warehouse ever!
Visual_BI1.1K vues
Building Serverless ETL Pipelines with AWS Glue - AWS Summit Sydney 2018 par Amazon Web Services
Building Serverless ETL Pipelines with AWS Glue - AWS Summit Sydney 2018Building Serverless ETL Pipelines with AWS Glue - AWS Summit Sydney 2018
Building Serverless ETL Pipelines with AWS Glue - AWS Summit Sydney 2018
Splunk: Druid on Kubernetes with Druid-operator par Imply
Splunk: Druid on Kubernetes with Druid-operatorSplunk: Druid on Kubernetes with Druid-operator
Splunk: Druid on Kubernetes with Druid-operator
Imply 735 vues
Strategic Approach To Data Migration Project Plan par SlideTeam
Strategic Approach To Data Migration Project PlanStrategic Approach To Data Migration Project Plan
Strategic Approach To Data Migration Project Plan
SlideTeam569 vues
Hadoop Data Modeling par Adam Doyle
Hadoop Data ModelingHadoop Data Modeling
Hadoop Data Modeling
Adam Doyle764 vues
The twelve factor app par Ravi Okade
The twelve factor appThe twelve factor app
The twelve factor app
Ravi Okade1.3K vues
Snowflake for Data Engineering par Harald Erb
Snowflake for Data EngineeringSnowflake for Data Engineering
Snowflake for Data Engineering
Harald Erb802 vues
Microservices Architecture - Cloud Native Apps par Araf Karsh Hamid
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
Araf Karsh Hamid1.4K vues

Similaire à PowerApps and Azure SQL Server / Blob storage

CC -Unit3.pptx par
CC -Unit3.pptxCC -Unit3.pptx
CC -Unit3.pptxRevathiparamanathan
9 vues53 diapositives
slides.pptx par
slides.pptxslides.pptx
slides.pptxFahmiTounsiBakri
10 vues37 diapositives
slides.pptx par
slides.pptxslides.pptx
slides.pptxMayankJain659
5 vues37 diapositives
Using ActiveObjects in Atlassian Plugins par
Using ActiveObjects in Atlassian PluginsUsing ActiveObjects in Atlassian Plugins
Using ActiveObjects in Atlassian PluginsAtlassian
4.4K vues14 diapositives
BackboneJS par
BackboneJSBackboneJS
BackboneJSArtemii Kravtsov
108 vues13 diapositives
4.Building a Data Product using apache Zeppelin - Apache Kylin Meetup @Shanghai par
4.Building a Data Product using apache Zeppelin - Apache Kylin Meetup @Shanghai4.Building a Data Product using apache Zeppelin - Apache Kylin Meetup @Shanghai
4.Building a Data Product using apache Zeppelin - Apache Kylin Meetup @ShanghaiLuke Han
4.2K vues63 diapositives

Similaire à PowerApps and Azure SQL Server / Blob storage(20)

Using ActiveObjects in Atlassian Plugins par Atlassian
Using ActiveObjects in Atlassian PluginsUsing ActiveObjects in Atlassian Plugins
Using ActiveObjects in Atlassian Plugins
Atlassian4.4K vues
4.Building a Data Product using apache Zeppelin - Apache Kylin Meetup @Shanghai par Luke Han
4.Building a Data Product using apache Zeppelin - Apache Kylin Meetup @Shanghai4.Building a Data Product using apache Zeppelin - Apache Kylin Meetup @Shanghai
4.Building a Data Product using apache Zeppelin - Apache Kylin Meetup @Shanghai
Luke Han4.2K vues
LEARNING  iPAD STORYBOARDS IN OBJ-­‐C LESSON 1 par Rich Helton
LEARNING	 iPAD STORYBOARDS IN OBJ-­‐C LESSON 1LEARNING	 iPAD STORYBOARDS IN OBJ-­‐C LESSON 1
LEARNING  iPAD STORYBOARDS IN OBJ-­‐C LESSON 1
Rich Helton1.5K vues
( 12 ) Office 2007 Features Custom List par LiquidHub
( 12 ) Office 2007   Features   Custom List( 12 ) Office 2007   Features   Custom List
( 12 ) Office 2007 Features Custom List
LiquidHub224 vues
Lesson 8 - Move Approved Elements To Insite Asset Library par Informatica
Lesson 8 - Move Approved Elements To Insite Asset LibraryLesson 8 - Move Approved Elements To Insite Asset Library
Lesson 8 - Move Approved Elements To Insite Asset Library
Informatica476 vues
COMPILATION PROCESS IN C.pptx par LECO9
COMPILATION PROCESS IN C.pptxCOMPILATION PROCESS IN C.pptx
COMPILATION PROCESS IN C.pptx
LECO9304 vues
COMPILATION PROCESS IN C.pptx par SKUP1
COMPILATION PROCESS IN C.pptxCOMPILATION PROCESS IN C.pptx
COMPILATION PROCESS IN C.pptx
SKUP19 vues
AEM Asset and Tag API par Lokesh BS
AEM Asset and Tag APIAEM Asset and Tag API
AEM Asset and Tag API
Lokesh BS2.1K vues
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica... par buildacloud
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...
buildacloud2.2K vues
Open writing-cloud-collab par Karen Vuong
Open writing-cloud-collabOpen writing-cloud-collab
Open writing-cloud-collab
Karen Vuong731 vues
[DanNotes] XPages - Beyound the Basics par Ulrich Krause
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics
Ulrich Krause56.4K vues
Lesson 5 - Create Projects And Upload Files par Informatica
Lesson 5 - Create Projects And Upload FilesLesson 5 - Create Projects And Upload Files
Lesson 5 - Create Projects And Upload Files
Informatica337 vues

Plus de Peter Heffner

Hey Siri, open my PowerApp par
Hey Siri, open my PowerAppHey Siri, open my PowerApp
Hey Siri, open my PowerAppPeter Heffner
144 vues7 diapositives
Multilingual Power Apps par
Multilingual Power AppsMultilingual Power Apps
Multilingual Power AppsPeter Heffner
253 vues10 diapositives
Power Apps and Office365 Groups par
Power Apps and Office365 GroupsPower Apps and Office365 Groups
Power Apps and Office365 GroupsPeter Heffner
312 vues8 diapositives
Power Apps and Microsoft Teams par
Power Apps and Microsoft TeamsPower Apps and Microsoft Teams
Power Apps and Microsoft TeamsPeter Heffner
179 vues10 diapositives
PowerApps - Canvas Screen with Tabs par
PowerApps - Canvas Screen with TabsPowerApps - Canvas Screen with Tabs
PowerApps - Canvas Screen with TabsPeter Heffner
3.4K vues13 diapositives
PowerApps - Using your own Colour Set par
PowerApps - Using your own Colour SetPowerApps - Using your own Colour Set
PowerApps - Using your own Colour SetPeter Heffner
1.8K vues10 diapositives

Plus de Peter Heffner(20)

Power Apps and Office365 Groups par Peter Heffner
Power Apps and Office365 GroupsPower Apps and Office365 Groups
Power Apps and Office365 Groups
Peter Heffner312 vues
Power Apps and Microsoft Teams par Peter Heffner
Power Apps and Microsoft TeamsPower Apps and Microsoft Teams
Power Apps and Microsoft Teams
Peter Heffner179 vues
PowerApps - Canvas Screen with Tabs par Peter Heffner
PowerApps - Canvas Screen with TabsPowerApps - Canvas Screen with Tabs
PowerApps - Canvas Screen with Tabs
Peter Heffner3.4K vues
PowerApps - Using your own Colour Set par Peter Heffner
PowerApps - Using your own Colour SetPowerApps - Using your own Colour Set
PowerApps - Using your own Colour Set
Peter Heffner1.8K vues
Import excel rows to sharepoint list par Peter Heffner
Import excel rows to sharepoint listImport excel rows to sharepoint list
Import excel rows to sharepoint list
Peter Heffner3.2K vues
Office Lens #68: Screenshots mit Office Lens par Peter Heffner
Office Lens #68: Screenshots mit Office LensOffice Lens #68: Screenshots mit Office Lens
Office Lens #68: Screenshots mit Office Lens
Peter Heffner382 vues
PowerApp #69 Create a PowerApp par Peter Heffner
PowerApp #69 Create a PowerAppPowerApp #69 Create a PowerApp
PowerApp #69 Create a PowerApp
Peter Heffner316 vues
SharePoint Lesson #67: Connect List Data and Visio par Peter Heffner
SharePoint Lesson #67: Connect List Data and VisioSharePoint Lesson #67: Connect List Data and Visio
SharePoint Lesson #67: Connect List Data and Visio
Peter Heffner520 vues
SharePoint Lesson #66: Live Data - List Items in PowerPoint par Peter Heffner
SharePoint Lesson #66: Live Data - List Items in PowerPointSharePoint Lesson #66: Live Data - List Items in PowerPoint
SharePoint Lesson #66: Live Data - List Items in PowerPoint
Peter Heffner1.5K vues
SharePoint Lesson #65: Content Organizer in SP2013 par Peter Heffner
SharePoint Lesson #65: Content Organizer in SP2013SharePoint Lesson #65: Content Organizer in SP2013
SharePoint Lesson #65: Content Organizer in SP2013
Peter Heffner606 vues
SharePoint Lesson #64. Sort-of-Gantt par Peter Heffner
SharePoint  Lesson #64. Sort-of-GanttSharePoint  Lesson #64. Sort-of-Gantt
SharePoint Lesson #64. Sort-of-Gantt
Peter Heffner487 vues
SharePointLesson #63: vCard for Outlook par Peter Heffner
SharePointLesson #63: vCard for OutlookSharePointLesson #63: vCard for Outlook
SharePointLesson #63: vCard for Outlook
Peter Heffner493 vues
SharePoint Lesson #62: Progress Bar in SP2013 par Peter Heffner
SharePoint Lesson #62: Progress Bar in SP2013SharePoint Lesson #62: Progress Bar in SP2013
SharePoint Lesson #62: Progress Bar in SP2013
Peter Heffner728 vues
SharePoint Lesson #61: Embed non-MS Content in SP2013 par Peter Heffner
SharePoint Lesson #61: Embed non-MS Content in SP2013SharePoint Lesson #61: Embed non-MS Content in SP2013
SharePoint Lesson #61: Embed non-MS Content in SP2013
Peter Heffner517 vues
SharePoint Tutorial Lesson 60#: Embed Microsoft Content par Peter Heffner
SharePoint Tutorial Lesson 60#: Embed Microsoft ContentSharePoint Tutorial Lesson 60#: Embed Microsoft Content
SharePoint Tutorial Lesson 60#: Embed Microsoft Content
Peter Heffner2.3K vues
SharePoint Lektion #52. Kurzanleitung - Webseiten und Inhalte par Peter Heffner
SharePoint Lektion #52. Kurzanleitung - Webseiten und InhalteSharePoint Lektion #52. Kurzanleitung - Webseiten und Inhalte
SharePoint Lektion #52. Kurzanleitung - Webseiten und Inhalte
Peter Heffner792 vues
SharePoint Lesson #59: Filtered Lookup par Peter Heffner
SharePoint Lesson #59: Filtered LookupSharePoint Lesson #59: Filtered Lookup
SharePoint Lesson #59: Filtered Lookup
Peter Heffner532 vues

Dernier

Google solution challenge..pptx par
Google solution challenge..pptxGoogle solution challenge..pptx
Google solution challenge..pptxChitreshGyanani1
98 vues18 diapositives
Psychology KS5 par
Psychology KS5Psychology KS5
Psychology KS5WestHatch
77 vues5 diapositives
The basics - information, data, technology and systems.pdf par
The basics - information, data, technology and systems.pdfThe basics - information, data, technology and systems.pdf
The basics - information, data, technology and systems.pdfJonathanCovena1
88 vues1 diapositive
The Accursed House by Émile Gaboriau par
The Accursed House  by Émile GaboriauThe Accursed House  by Émile Gaboriau
The Accursed House by Émile GaboriauDivyaSheta
158 vues15 diapositives
American Psychological Association 7th Edition.pptx par
American Psychological Association  7th Edition.pptxAmerican Psychological Association  7th Edition.pptx
American Psychological Association 7th Edition.pptxSamiullahAfridi4
82 vues8 diapositives
Lecture: Open Innovation par
Lecture: Open InnovationLecture: Open Innovation
Lecture: Open InnovationMichal Hron
96 vues56 diapositives

Dernier(20)

The basics - information, data, technology and systems.pdf par JonathanCovena1
The basics - information, data, technology and systems.pdfThe basics - information, data, technology and systems.pdf
The basics - information, data, technology and systems.pdf
JonathanCovena188 vues
The Accursed House by Émile Gaboriau par DivyaSheta
The Accursed House  by Émile GaboriauThe Accursed House  by Émile Gaboriau
The Accursed House by Émile Gaboriau
DivyaSheta158 vues
American Psychological Association 7th Edition.pptx par SamiullahAfridi4
American Psychological Association  7th Edition.pptxAmerican Psychological Association  7th Edition.pptx
American Psychological Association 7th Edition.pptx
Lecture: Open Innovation par Michal Hron
Lecture: Open InnovationLecture: Open Innovation
Lecture: Open Innovation
Michal Hron96 vues
Structure and Functions of Cell.pdf par Nithya Murugan
Structure and Functions of Cell.pdfStructure and Functions of Cell.pdf
Structure and Functions of Cell.pdf
Nithya Murugan368 vues
Narration ppt.pptx par TARIQ KHAN
Narration  ppt.pptxNarration  ppt.pptx
Narration ppt.pptx
TARIQ KHAN119 vues
OEB 2023 Co-learning To Speed Up AI Implementation in Courses.pptx par Inge de Waard
OEB 2023 Co-learning To Speed Up AI Implementation in Courses.pptxOEB 2023 Co-learning To Speed Up AI Implementation in Courses.pptx
OEB 2023 Co-learning To Speed Up AI Implementation in Courses.pptx
Inge de Waard167 vues
Are we onboard yet University of Sussex.pptx par Jisc
Are we onboard yet University of Sussex.pptxAre we onboard yet University of Sussex.pptx
Are we onboard yet University of Sussex.pptx
Jisc77 vues
Education and Diversity.pptx par DrHafizKosar
Education and Diversity.pptxEducation and Diversity.pptx
Education and Diversity.pptx
DrHafizKosar118 vues
UWP OA Week Presentation (1).pptx par Jisc
UWP OA Week Presentation (1).pptxUWP OA Week Presentation (1).pptx
UWP OA Week Presentation (1).pptx
Jisc74 vues
ISO/IEC 27001 and ISO/IEC 27005: Managing AI Risks Effectively par PECB
ISO/IEC 27001 and ISO/IEC 27005: Managing AI Risks EffectivelyISO/IEC 27001 and ISO/IEC 27005: Managing AI Risks Effectively
ISO/IEC 27001 and ISO/IEC 27005: Managing AI Risks Effectively
PECB 545 vues
Solar System and Galaxies.pptx par DrHafizKosar
Solar System and Galaxies.pptxSolar System and Galaxies.pptx
Solar System and Galaxies.pptx
DrHafizKosar85 vues

PowerApps and Azure SQL Server / Blob storage

  • 1. Upload Files from PowerApps to SQL Server My cheat sheet for upload and display files in PowerApps Peter Heffner @Lingualizer 17 April 2019
  • 2. Preliminary notes • First: I'm not an Azure Expert at all! • This presentation is more like a cheat sheet if you have Microsoft Azure SQL Server as a database and want to store files from within Microsoft PowerApps. • For a Microsoft PowerApps project I created several tables on an Azure SQL Server. • Documents and images are stored in an Azure Blob Storage Container • Prerequisites: • Azure SQL Server with tables of your choice • Azure Blob Storage Container Optional: Microsoft Azure Storage Explorer to understand where your files are uploaded to. What you will find here • An example of a very simple table “Projects”. Each project has an unique ID. • A blob storage container “projects”. This container will have folders which are named as the IDs of the project ID. The folders are created during upload. • PowerApps with an upload functionality for files • A Gallery with the uploaded files for each project • PDF-viewer and image control to display the content
  • 3. Azure SQL Server Table Azure Blob Storage Don‘t forget to define a key. If not you won‘t be able to create new records in PowerApps This is where we want to store our project files. There will be folders underneath. Folder names = Project.ID
  • 4. Create a Canvas App In PowerApps the starting point was [Create an app] – [Canvas] – [Start with your data] Here I chose my SQL connector to automatically build a standard app in Smartphone layout Also add the connector to the Azure Blob Storage
  • 5. Create some Projects First I created some projects. Before we navigate from the browse screen to the details screen we store the project ID in a global variable Store the project ID in a global variable.
  • 6. The “Add Picture“ Control On the detail screen we add next to the Gallery the „Add picture“ control. This is where we upload the files.
  • 7. Show me the details This screen has some additional fields to see more details. • ti_filename: a text input control which contains the filename of the selected file and the option to rename it as a default value. • lbl_ID_file: Concatenate the project ID (our folder name), add a „/“ and the filename • lbl_blob: this is our file as a blob All this fields can be hidden in the published app. It is just to show which content we use for the upload.
  • 8. File Upload Next we add a button and add some action to „OnSelect“ The Azue Blob Storage Container
  • 9. Where is the file? If you open the Azure Blob Storage Explorer you will see a new folder (our project ID). This is where we find the file.
  • 10. Show Files in a Gallery Items = AzureBlobStorage.ListFolderV2(LookUp( AzureBlobStorage.ListFolderV2("projects").value, DisplayName=glb_ProjectID & "/", Id)).value The command for retrieving the content of a folder is a bit tricky. At first I expected something like „projects/1“ to look for my files, but it is all about the Ids within the blob container „projects“. Finally I combined all my bits and pieces as one single command for „Items“. The screenshot on the right has the PDF viewer control. If you also have images, add the image control and decide based on the value of „ThisItem.Media.Type“ which to display.
  • 11. Peter Heffner @Lingualizer Thanks for watching! Thanks to Laura Rogers, Shane Young, Paul O‘Flaherty, and many more for their inspiring videos and blog posts around Microsoft PowerApps.