Skip to content

Commit ee61363

Browse files
committed
Merge branch 'main' into jdaly-main-odatav2-migrate-examples
2 parents 53f9455 + fae817f commit ee61363

File tree

223 files changed

+1363
-222
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

223 files changed

+1363
-222
lines changed

.openpublishing.redirection.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
{
22
"redirections": [
3+
{
4+
"source_path": "powerapps-docs/developer/model-driven-apps/clientapi/reference/controls/getoutput.md",
5+
"redirect_url": "getoutputs",
6+
"redirect_document_id": false
7+
},
8+
{
9+
"source_path": "powerapps-docs/cards/glossary.md",
10+
"redirect_url": "overview",
11+
"redirect_document_id": false
12+
},
313
{
414
"source_path": "powerapps-docs/developer/data-platform/webapi/aad-group-team.md",
515
"redirect_url": "../aad-group-team",

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Microsoft Power Apps Documentation
22

3-
This is the GitHub repository for the technical product documentation for **Power Apps**. This documentation is published at [Microsoft Power Apps documentation](https://docs.microsoft.com/powerapps).
3+
This is the GitHub repository for the technical product documentation for **Power Apps**. This documentation is published at [Microsoft Power Apps documentation](https://learn.microsoft.com/powerapps).
44

55
## How to contribute
66

7-
Thanks for your interest in [contributing](https://docs.microsoft.com/), home of technical content for Microsoft products and services.
7+
Thanks for your interest in [contributing](https://learn.microsoft.com/), home of technical content for Microsoft products and services.
88

9-
To learn how to make contributions to the content in this repository, start with our [Docs contributor guide](https://docs.microsoft.com/contribute). If you are a Microsoft employee, please visit the [internal version](https://aka.ms/contributors-guide) of this guide (only accessible to Microsoft employees).
9+
To learn how to make contributions to the content in this repository, start with our [Docs contributor guide](https://learn.microsoft.com/contribute). If you are a Microsoft employee, please visit the [internal version](https://aka.ms/contributors-guide) of this guide (only accessible to Microsoft employees).
1010

1111
## Code of conduct
1212

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
[This article is pre-release documentation and is subject to change.]
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
---
2+
title: Connectors overview (Preview)
3+
description: Learn about connectors and how you can use them to expand the capabilities of your cards.
4+
ms.date: 09/20/2022
5+
ms.topic: article
6+
author: iaanw
7+
ms.author: iawilt
8+
manager: shellyha
9+
ms.reviewer:
10+
ms.custom:
11+
ms.collection:
12+
---
13+
14+
# Connectors (Preview)
15+
16+
[!INCLUDE[cards_preview_notice](../../includes/preview-include.md)]
17+
18+
Connectors are an important part of Power Apps, allowing your card to talk to other apps, data, and devices in the cloud.
19+
20+
For more information on Connectors in Power Platform, see [Connectors overview](/connectors/connectors).
21+
22+
## Prerequisites
23+
24+
- A [Power Apps](https://powerapps.microsoft.com/) account.
25+
- A card to add connectors to. For an example, see the [simple card tutorial](../../tutorials/hello-world-card.md).
26+
- Familiarity with the [Card Designer](../../make-a-card/designer-overview.md).
27+
28+
## Access connectors in cards
29+
30+
To access connectors in card:
31+
32+
1. Go to [Power Apps](https://make.test.powerapps.com/) and select **Cards (preview)**.
33+
1. On the left, select **Cards** and select the card you want to test add a connector to.
34+
1. On the left, select **Data**. Then select **+ Add data**.
35+
36+
:::image type="content" source="../../media/connector-intro/add-data-___location.png" alt-text="Screenshot of + Add data menu" border="true":::
37+
38+
You'll then be able to add a data source and see all available connectors.
39+
40+
## Types of connectors
41+
42+
Only connections to Dataverse are currently available. You can connect to Dataverse tables for creating, reading, updating, and deleting records.
43+
44+
Learn how to [create a card with data from Dataverse](../../tutorials/dataverse-card.md).
45+
46+
The other connectors are available within the Card Designer, but functionality for them will be added in future updates.
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
---
2+
title: Card Designer overview (Preview)
3+
description: Learn about the designer and how to create cards using it.
4+
ms.date: 09/20/2022
5+
ms.topic: article
6+
author: iaanw
7+
ms.author: iawilt
8+
manager: shellyha
9+
ms.reviewer:
10+
ms.custom:
11+
ms.collection:
12+
---
13+
14+
# Card Designer overview (Preview)
15+
16+
[!INCLUDE[cards_preview_notice](../includes/preview-include.md)]
17+
18+
The Card Designer is where makers and developers can build cards to suit their needs. The designer lets you optimize and automate business user tasks and create actionable scenarios in interactive and easy-to-make cards. The designer builds off of the designer for Adaptive Cards, introducing a few new concepts:
19+
20+
- Power Fx: specify an action to trigger when an element is selected
21+
- Connectors: bring data into cards (currently only from Dataverse)
22+
- Variables: store, bind, and reuse data across a card
23+
- Dataverse: stores each card you create and allows you to retrieve the card at send time
24+
25+
## Find the designer
26+
27+
To get to the designer, take the following steps:
28+
29+
1. Go to [Power Apps](https://make.powerapps.com) and make sure you're in the correct environment.
30+
31+
1. Go to the pane on the left to access all of the card-related views.
32+
33+
1. To create a new card, select **Cards** then **Create**.
34+
1. To see all current cards, select **Cards** then **Cards**
35+
36+
:::image type="content" source="../media/designer-overview/create-new-card.png" alt-text="Screenshot showing card creation screen." border="true":::
37+
38+
1. Select the **+ Create a card** to start building your own card.
39+
40+
## What's in the designer?
41+
42+
The designer is made up of the following elements:
43+
44+
:::image type="content" source="../media/designer-overview/designer-elements.png" alt-text="Screenshot of Card Designer with elements highlighted." border="true":::
45+
46+
1. Main menu
47+
1. Tool pane
48+
1. Card canvas
49+
1. Property pane
50+
1. Formula bar
51+
1. Play button
52+
53+
The sections below describe each of the designer elements.
54+
55+
### Main menu
56+
57+
The main menu lets you switch between the different tools available in the designer. In order, these are:
58+
59+
- Tree View: see the card as a hierarchical outline and view the relationships of the card elements.
60+
- Insert: main UI for editing and adding card elements.
61+
- Data: add connectors to your card to use data from external sources.
62+
- Variables: store, bind, and reuse data across a card.
63+
64+
### Tool pane
65+
66+
When you start making your card, you'll use controls from the Tool pane. There are three categories of controls in the pane:
67+
68+
- Display: Add text and media to cards.
69+
- Input: Add different types of input boxes to collect information from users.
70+
- Layout: Add formatting and customize your card's structure.
71+
72+
### Card canvas
73+
74+
The card canvas is where where you build the user interface for your card, using connectors, variables, and elements from the Tool pane.
75+
76+
You can't resize a card in the card canvas view because cards automatically fit themselves to the ___location they're placed into.
77+
78+
### Property pane
79+
80+
The property pane is used to change up specific properties for an element. Each type of element has its own property pane, including the card itself. For most of the drag-and-drop elements, you'll be able to specify things like:
81+
82+
- **Name**: the variable name associated with that element, which you can reference in a Power Fx formula
83+
- **Label**/**Text**: any text the user will see when they load in the card
84+
- **Default value**: the initial value of a field
85+
- **Initially visible**: choose if the element will be visible on load
86+
87+
Certain elements have visual aspects that you can modify. For text labels and input controls, for example, you can customize font, color, spacing, and more.
88+
89+
Each property pane also contains advanced features, which allow you to specify things like:
90+
91+
- **Repeat for every**: provide a trigger for if/when an element should be repeated
92+
- **Show when**: provide a trigger to show the element
93+
- **Requires**: make the element dependent on certain features, corresponding with a minimum version
94+
95+
You can also input Power Fx expressions into the properties, utilizing low-code solutions to make your card more powerful.
96+
97+
### Power Fx editor
98+
99+
The formula bar is at the top of the card designer and allows you to write Power Fx expressions. When you select an element on the card, the formula bar lets you select a property of that element from the dropdown that supports a code input and then assists you in writing an expression.
100+
101+
To get started with Power Fx, see [Introduction to Power FX](../make-a-card/power-fx/intro-to-pfx.md). For more information on the specific functions you can use, see the Microsoft documentation for [Formula reference for Power Apps](/powerapps/maker/canvas-apps/formula-reference).
102+
103+
> [!NOTE]
104+
> Some expressions supported in Power Apps aren't available for cards during preview.
105+
106+
### Play button
107+
108+
Once you've set up your card to your liking, you can preview the card with the **Play** button. This will open your card on the **Play** page in a new tab and allow you to test the card's functionalities. This is also where, if needed, you'll be able to debug and troubleshoot your card. For more information on debugging, see [Debugging cards](../make-a-card/testing/debugging-cards.md).
109+
110+
## Next steps
111+
112+
Now that you've got an overview of designer, [make your first card](../tutorials/hello-world-card.md).
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
title: Introduction to Power Fx (Preview)
3+
description: Learn about Power FX and how it's used in cards to add business logic.
4+
ms.date: 09/20/2022
5+
ms.topic: article
6+
author: iaanw
7+
ms.author: iawilt
8+
manager: shellyha
9+
ms.reviewer:
10+
ms.custom:
11+
ms.collection:
12+
---
13+
14+
# Introduction to Power Fx (Preview)
15+
16+
[!INCLUDE[cards_preview_notice](../../includes/preview-include.md)]
17+
18+
[Power Fx](/power-platform/power-fx/overview) is a low-code programming language available across the Power Platform, including cards. Cards can calculate values, perform other tasks, and respond to user input using [formulas](/power-platform/power-fx/formula-reference) expressed with Power Fx.
19+
20+
For example, a formula might determine what happens when a user selects a button or enters text into a text input. Formulas can also be used to update variables and data sources. Expressions can be combined to create complex formulas that can handle advanced business logic.
21+
22+
## Power Fx documentation
23+
24+
The [Power Fx documentation](/power-platform/power-fx/overview) is the main source for information about Power Fx. Makers and developers working with cards will find the following articles helpful:
25+
26+
- [Expression grammar](/power-platform/power-fx/expression-grammar)
27+
- [Operators](/power-platform/power-fx/operators)
28+
- [Variables](/power-platform/power-fx/variables)
29+
- [Formula reference](/power-platform/power-fx/formula-reference)
30+
31+
## Known Power Fx limitations with cards
32+
33+
There are some known limitations with cards and Power Fx. These include:
34+
35+
- All device sensor formulas don't work (**Acceleration**, **App**, **Compass**, **Connection**, and **Location**).
36+
- **SaveData**, **LoadData**, and **ClearData** don't work.
37+
- Form-related formulas don't work (**EditForm**, **NewForm**, **SubmitForm**, **ResetForm**, and **ViewForm**).
38+
- **Collect**, **Patch**, and **Remove** only work for variables and Dataverse tables.
39+
- **Update** and **UpdateIf** don't work.
40+
- **Set** requires the type of the variable to match what you are trying to set it to and requires the variable to be already created using the variable creation.
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
---
2+
title: Use screens (Preview)
3+
description: Learn how to build with screens.
4+
ms.date: 09/20/2022
5+
ms.topic: article
6+
author: iaanw
7+
ms.author: iawilt
8+
manager: shellyha
9+
ms.reviewer:
10+
ms.custom:
11+
ms.collection:
12+
---
13+
14+
# Use screens (Preview)
15+
16+
[!INCLUDE[cards_preview_notice](../../includes/preview-include.md)]
17+
18+
Cards can have multiple screens. Each screen can show a different user interface for specific scenarios. For example, a polling card might have a screen to collect user responses and a screen to show the current aggregated poll results. Use buttons to let users switch between screens or use Power Fx formulas for more complex scenarios.
19+
20+
## Tree view
21+
22+
You can view the screens in your card and change properties of each screen using the tree view in the Card Designer.
23+
24+
:::image type="content" source="../../media/make-a-card/cards-tree-view.png" alt-text="Screenshot of tree view in Card Designer." border="true":::
25+
26+
## Make a new screen
27+
28+
1. Open the **Tree View** for your card and select **+ New screen**.
29+
1. Enter a name for your new screen and select **Create** to make it.
30+
1. Add any controls, data, and variables you want to this screen. After you've added everything you wanted, you can use buttons to call your screen from a card.
31+
32+
## Use a button to show a screen
33+
34+
To show screens from other cards, use the **Show Screen** button.
35+
36+
1. Select **Insert** from the left. Then select **Input** then **Button** to create a new button.
37+
1. Go to **Type** in the Properties pane on the right. Select the drop-down and change the **Type** to **Show Screen**.
38+
1. **ShowCard** will appear on the right. Set **Screen** to the screen you want to show and set **Title** to the text to display on your button.
39+
40+
:::image type="content" source="../../media/make-a-card/show-card-properties.png" alt-text="Screenshot of ShowCard options." border="true":::
41+
42+
In the example above, this button will show the `NameScreen` screen when a user selects the button titled "Say Goodbye".
43+
44+
Now, the screen will appear when you test your card and select the button. The example below shows how the screen appears after adding an example button to the [simple card tutorial](../../tutorials/hello-world-card.md) card.
45+
46+
:::image type="content" source="../../media/make-a-card/screen-example.png" alt-text="Screenshot of an example screen in a card." border="true":::
47+
48+
Repeat this process as many times as needed to create more screens.
49+
50+
## Switch screens with Power Fx formulas
51+
52+
The Power Fx [Back](/power-platform/power-fx/reference/function-navigate#back) and [Navigate](/power-platform/power-fx/reference/function-navigate#navigate) functions let you switch between screens. While **ShowScreen** just shows a screen, these functions can be used outside of buttons and are appropriate for more complex screen-switching scenarios.
53+
54+
For more information about Back and Navigate, see the Power Fx reference documentation [syntax](/power-platform/power-fx/reference/function-navigate#syntax), [examples](/power-platform/power-fx/reference/function-navigate#examples), and [step-by-step instructions](/power-platform/power-fx/reference/function-navigate#step-by-step).
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
---
2+
title: Test and debug cards (Preview)
3+
description: Learn how to test and debug your cards using the Play page
4+
ms.date: 09/20/2022
5+
ms.topic: article
6+
author: iaanw
7+
ms.author: iawilt
8+
manager: shellyha
9+
ms.reviewer:
10+
ms.custom:
11+
ms.collection:
12+
---
13+
14+
# Test and debug cards (Preview)
15+
16+
[!INCLUDE[cards_preview_notice](../../includes/preview-include.md)]
17+
18+
Use the **Play** page to see how finished cards will look and act before sending them out to users. It has the tools to test your card and debug any issues.
19+
20+
> [!NOTE]
21+
> Card instances and their data, which you see on the **Play** page, will only last 48 hours after being created. Select the **Play** button from the Card Designer to get a new instance of that card.
22+
23+
## Prerequisites
24+
25+
- A [Power Apps](https://powerapps.microsoft.com/) account.
26+
- A card to test. For an example, see the [simple card tutorial](../../tutorials/hello-world-card.md).
27+
- Familiarity with the [Card Designer](../designer-overview.md).
28+
29+
## Access the **Play** page
30+
31+
To access the Play page:
32+
33+
1. Go to [Power Apps](https://make.test.powerapps.com/) and select **Cards (preview)**.
34+
1. On the left select **Cards** to see all of your cards. Select the card you want to test and debug.
35+
1. Select the **Play** button at the top of the page. A new window will appear with the Play page.
36+
37+
:::image type="content" source="../../media/debugging-cards/play-button-in-designer.png" alt-text="Screenshot of the **Play** button in the Card Designer" border="true":::
38+
39+
## **Play** page components
40+
41+
The **Play** page is made up of the following components:
42+
43+
:::image type="content" source="../../media/debugging-cards/play-page-elements.png" alt-text="Screenshot of the Play page elements" border="true":::
44+
45+
1. Card title - The title of the card
46+
1. View mode - Switch between light and dark modes to see how cards looks in different environments.
47+
1. Card viewer - Interact with and view the card.
48+
1. Send button - Send the card in Teams with a link.
49+
1. Debug pane - Displays important debugging information while testing. For more information, see the [debugging](#debug-your-card) section.
50+
51+
## Test your card
52+
53+
Now that you're on the Play page and understand the different elements of it, you can test your card. The example used in this section is from the [simple card tutorial](../../tutorials/hello-world-card.md).
54+
55+
Try interacting with your card. In the example below, the **Say Hello** button is used to fill a variable with the user's text input. Notice how the bot's title changes to the user input.
56+
57+
Before interacting with the card:
58+
59+
:::image type="content" source="../../media/debugging-cards/card-before-interaction.png" alt-text="Screenshot of the card before interacting with it" border="true":::
60+
61+
After interacting with the card:
62+
63+
:::image type="content" source="../../media/debugging-cards/card-after-interaction.png" alt-text="Screenshot of the card after interacting with it" border="true":::
64+
65+
You can also change the **View** button on the **Play** page to switch between light and dark modes. The example below is the same card in dark mode:
66+
67+
:::image type="content" source="../../media/debugging-cards/dark-mode-card.png" alt-text="Screenshot of the card in dark mode" border="true":::
68+
69+
If you encounter issues while testing your card, use the [Debug](#debug-your-card) panel to try and fix them.
70+
71+
## Debug your card
72+
73+
The **Debug** panel lets you ascertain issues with your card and gives suggestions when possible for fixes.
74+
75+
To open the **Debug** panel, select the **Debug** button on the right. There are four elements to the debug panel: **Memory**, **JSON**, **Output**, and **Info**.
76+
77+
### Memory
78+
79+
The **Memory** section lets you see variables stored in memory and how your card is assigning and using them.
80+
81+
The example below shows that the user input stored in `UserAnswer` has the same value as the assigned variable `UserName` used in the card.
82+
83+
:::image type="content" source="../../media/debugging-cards/memory-example.png" alt-text="Screenshot of the Memory section in the Debug panel" border="true":::
84+
85+
If you're encountering issues with memory, check your variable names and any related Power Fx formulas used in your card.
86+
87+
### JSON
88+
89+
The **JSON** section lets you see the JSON representation of your card. This can be helpful for developers working on cards who prefer a code-first approach.
90+
91+
### Output
92+
93+
The **Output** sections lets you see any output from your card. This is only available for cards where output is set up already.
94+
95+
### Info
96+
97+
The **Info** section lets you see information about the card's **Environment ID**, **Card ID**, and **User**.

0 commit comments

Comments
 (0)