Power Apps .msapp 파일로 작동.
[이 문서는 시험판 문서이며 변경될 수 있습니다.]
Important
-
pack및unpack명령은 더 이상 사용되지 않습니다. - 캔버스 앱을 소스 제어하려면 Power Platform Git 통합을 사용합니다.
- 이
create명령은 일반적으로 사용할 수 있습니다.
Commands
| Command | Description |
|---|---|
| pac canvas create | 사용자 지정 커넥터에서 캔버스 앱 생성 |
| pac canvas download | 캔버스 앱을 .msapp 파일로 다운로드 |
| pac canvas list | 캔버스 앱 나열 |
| pac canvas pack | (미리 보기) 원본을 msapp 파일에 압축 |
| pac canvas unpack | (미리 보기) 원본으로 msapp 파일 추출 |
pac canvas create
사용자 지정 커넥터에서 캔버스 앱 생성
이 명령은 기존 .msapp의 OpenAPI 정의를 기반으로 캔버스 앱을 생성 합니다. 앱에는 미리 정의된 모양과 느낌으로 사용자 지정 커넥터의 동작이 정의되는 방식에 따라 생성된 화면, 컨트롤 레이아웃 및 Power Fx 코드가 포함됩니다. 앱을 사용하여 사용자 지정 커넥터에 정의된 작업을 직접 연습할 수 있습니다.
제작자는 생성된 항목을 .msapp Power Apps Studio로 가져와서 앱을 재생하거나 편집을 수행하고 추가 사용자 지정을 수행할 수 있습니다. Studio 내에서 파일>열기> 찾아보기로 이동하여 생성된 앱을 Power Apps Studio로 가져옵니다.
Examples
다음 예제에서는 명령의 사용을 보여 줍니다 pac canvas create .
표시 이름으로 Open API 정의를 기반으로 캔버스 앱 만들기
이 예제에서는 커넥터의 표시 이름을 사용하여 Open API 정의를 기반으로 캔버스 앱(*.msapp 파일)을 만듭니다.
pac canvas create --msapp HelloWorld.msapp --connector-display-name "My Custom Connector"
ID별 Open API 정의를 기반으로 캔버스 앱 만들기
이 예제에서는 커넥터의 ID를 사용하여 Open API 정의를 기반으로 캔버스 앱(*.msapp 파일)을 만듭니다.
pac canvas create --msapp HelloWorld.msapp --connector-id 00000000-0000-0000-0000-000000000000
둘 중 하나 connector-display-name 또는 connector-id 필수입니다.
에 대한 필수 매개 변수 canvas create
--msapp
생성할 .msapp 파일의 경로
에 대한 선택적 매개 변수 canvas create
--connector-display-name
Power App을 생성할 커넥터의 표시 이름입니다.
--connector-id
Power App을 생성할 커넥터의 ID입니다.
--environment
대상 환경 ID 또는 URL입니다. 기본값은 현재 활성 Dataverse Auth 프로필의 환경입니다.
Remarks
고려 사항 및 제한 사항:
- 또는 매개 변수로 참조되는 사용자 지정 커넥터는
connector-display-nameconnector-id의 일부여야 합니다. - Studio로 앱을 가져온 후에는 사용자 지정 커넥터에 연결되지 않습니다. 작성자는 앱을 재생하기 전에 앱이 생성된 사용자 지정 커넥터에 대한 참조를 수동으로 추가해야 합니다. 단계는 캔버스 앱에 데이터 연결 추가 를 참조하세요. 이 작업이 완료될 때까지 커넥터 참조가 추가되면 해결되는 수식 오류가 앱에 표시될 수 있습니다. 앱에 추가하는 사용자 지정 커넥터의 이름은 명령에서
canvas create참조되는 사용자 지정 커넥터의 표시 이름과 일치해야 합니다. - 앱은 각각
POST에 대해 하나의 화면과GET커넥터가 정의하는 작업을 포함합니다.- 사용자 지정 커넥터에서 사용할 수 있는 다른 동사는 지원되지 않습니다.
- 각 작업의 화면에 렌더링된 컨트롤은 각 작업의 입력 및 출력 형식이 정의되는 방식에 따라 동적으로 생성됩니다. 사용자 지정 커넥터에 정의된 특정 유형의 입력 및 출력은 .에서 지원
canvas create되지 않습니다. 이 명령은 이러한 경고가 발생하면 콘솔에서 경고를 생성합니다. Specific cases:- 개체 배열 및 배열 배열은 입력으로 지원되지 않습니다.
- 개체 또는 중첩된 배열에 대해 깊이가 20을 초과하여 컨트롤이 생성되지 않습니다.
- "파일" 및 "이진 형식" 형식은 입력 또는 출력에 지원되지 않습니다.
pac canvas download
캔버스 앱을 .msapp 파일로 다운로드
에 대한 필수 매개 변수 canvas download
--name
-n
캔버스 앱 정확한 이름, 부분 이름 또는 앱 ID
에 대한 선택적 매개 변수 canvas download
--environment
-env
대상 Dataverse를 지정합니다. 값은 Guid 또는 절대 https URL일 수 있습니다. 지정하지 않으면 현재 인증 프로필에 대해 선택된 활성 조직이 사용됩니다.
--extract-to-directory
-d
캔버스 앱을 추출할 디렉터리 이름
--file-name
-f
파일 이름(일반적으로 .msapp 확장명 사용). 제공되지 않은 경우 파일이 'appname'.msapp을 사용하여 현재 디렉터리에 저장됩니다.
--overwrite
-o
파일 덮어쓰기 허용
이 매개 변수에는 값이 필요하지 않습니다. 그것은 스위치입니다.
pac canvas list
캔버스 앱 나열
에 대한 선택적 매개 변수 canvas list
--environment
-env
대상 Dataverse를 지정합니다. 값은 Guid 또는 절대 https URL일 수 있습니다. 지정하지 않으면 현재 인증 프로필에 대해 선택된 활성 조직이 사용됩니다.
pac canvas pack
(미리 보기) 원본을 msapp 파일에 압축
Example
pac canvas pack --sources MyHelloWorldFiles --msapp HelloWorld.msapp
에 대한 필수 매개 변수 canvas pack
--sources
압축할 원본에 대한 디렉터리
에 대한 선택적 매개 변수 canvas pack
--disable-load-from-yaml
지정이 있을 때, 'Src' 디렉터리의 *.pa.yaml 파일에서 패킹된 앱을 불러오는 것을 비활성화합니다. 'SourceCode' 레이아웃에서만 지원됩니다.
이 매개 변수에는 값이 필요하지 않습니다. 그것은 스위치입니다.
--layout
소스 디렉터리에 사용할 레이아웃입니다. 참고: '실험적' 레이아웃은 더 이상 지원되지 않으며 향후 릴리스에서 삭제될 예정입니다. 최신 지원 레이아웃은 'SourceCode' 레이아웃을 사용하세요.
다음 값 중 하나를 사용합니다.
ExperimentalSourceCode
--msapp
.msapp 파일의 경로
--overwrite
파일 덮어쓰기 허용
이 매개 변수에는 값이 필요하지 않습니다. 그것은 스위치입니다.
Remarks
.msapp 이전에 압축을 풉진 원본 파일에서 파일을 만듭니다.
파일 열기찾아보기로 이동하여 > Power Apps Studio에서 결과를> 수 있습니다.
압축을 풀면 Visual Studio Code 및 GitHub와 같은 외부 도구를 사용하여 원본 파일을 편집하고 관리할 수 있습니다.
pac canvas unpack
(미리 보기) 원본으로 msapp 파일 추출
Example
pac canvas unpack --msapp HelloWorld.msapp --sources MyHelloWorldFiles
pac canvas unpack --msapp HelloWorld.msapp
기본 HelloWorld_src 디렉터리로 압축을 풉니다.
에 대한 필수 매개 변수 canvas unpack
--msapp
.msapp 파일의 경로
에 대한 선택적 매개 변수 canvas unpack
--layout
소스 디렉터리에 사용할 레이아웃입니다. 참고: '실험적' 레이아웃은 더 이상 지원되지 않으며 향후 릴리스에서 삭제될 예정입니다. 최신 지원 레이아웃은 'SourceCode' 레이아웃을 사용하세요.
다음 값 중 하나를 사용합니다.
ExperimentalSourceCode
--overwrite
파일 덮어쓰기 허용
이 매개 변수에는 값이 필요하지 않습니다. 그것은 스위치입니다.
--sources
압축을 풀 원본에 대한 디렉터리
Remarks
원본 파일의 압축을 .msapp 풉니다.
.msapp
이 컴퓨터로 파일> 이동하여 Power Apps Studio에서 > 다운로드합니다.
원본 매개 변수 를 지정하지 않으면 파일과 동일한 이름과 위치를 .msapp 가진 디렉터리가 접미사와 함께 _src 사용됩니다.
Folder structure
압축 풀기 및 압축 속성은 다음 폴더 구조를 사용합니다.
-
\src - 컨트롤 및 구성 요소 파일. 여기에는 원본이 포함됩니다.
-
*.fx.yaml - 파일에서
control.json추출된 수식입니다.Note
수식을 편집할 수 있는 곳입니다.
- CanvasManifest.json - 헤더, 속성 및 publishInfo에 일반적으로 존재하는 정보를 포함하는 매니페스트 파일입니다.
-
*.json - 원시
control.json파일입니다. - \EditorState*.editorstate.json - Power Apps Studio에서 사용할 캐시된 정보입니다.
-
*.fx.yaml - 파일에서
- \DataSources - 앱에서 사용하는 모든 데이터 원본입니다.
- \Connections - 앱과 함께 저장되고 Power Apps Studio로 다시 로드할 때 사용되는 연결 인스턴스입니다.
- \Assets - 앱에 포함된 미디어 파일입니다.
- \pkgs - 템플릿, API 정의 파일 및 구성 요소 라이브러리와 같은 외부 참조의 다운로드된 복사본입니다. 이는 NuGet/NPM 참조와 유사합니다.
-
\other - 다시 만드는
.msapp데 필요한 모든 기타 파일입니다.- entropy.json - 휘발성 요소(예: 타임스탬프)가 이 파일에 추출됩니다. 이렇게 하면 다른 파일의 시끄러운 차이를 줄이는 동시에 왕복할 수 있습니다.
- \r유추와 같은 msapp의 다른 파일을 보유합니다.
File format
파일은 .fx.yamlYAML의 하위 집합을 사용합니다. Excel과 마찬가지로 모든 식은 등호 =로 시작해야 합니다. 추가 정보: Power Fx YAML 수식 문법
Power Apps Studio를 사용하여 변경 내용 병합
두 가지 Power Apps Studio 세션에서 수행된 변경 내용을 병합하는 경우:
- 모든 컨트롤 이름이 고유한지 확인합니다. 예를 들어 서로 다른 두 세션에 단추를 삽입하면 두 개의
Button1컨트롤이 생성될 수 있습니다. 컨트롤을 만든 후 바로 이름을 지정하는 것이 좋습니다. 도구는 이름이 같은 두 개의 컨트롤을 허용하지 않습니다. - 이러한 파일의 경우 일반적으로 다음과 같이 병합합니다.
- \src*.fx.yaml
- 충돌 또는 오류가 있는 경우 다음 파일을 삭제할 수 있습니다.
- \src\editorstate*.json - 이러한 파일에는 Power Apps Studio의 선택적 정보가 포함되어 있습니다.
- \other\entropy.json
- 이러한 파일의 충돌의 경우 최신 버전을 수락해도 됩니다.
- \checksum.json
- 이러한 경로 아래에 병합 충돌이 있는 경우 병합하는 것이 안전하지 않습니다. 이런 일이 자주 발생하는지 알려주세요. 충돌을 방지하기 위해 파일 형식을 재구성하는 작업을 수행합니다.
- \Connections*
- \DataSources*
- \pkgs*
- CanvasManifest.json
Open source
Microsoft Power Platform CLI의 캔버스 명령은 오픈 소스입니다. 향상된 기능을 논의하고 문제를 발생시키고 Power Apps 언어 도구 리포지토리에서 코드에 액세스합니다.
See also
Microsoft Power Platform CLI 명령 그룹
Microsoft Power Platform CLI 개요