Dataverse에서 로우코드 플러그 인 사용(프리뷰)
[이 항목은 시험판 설명서이므로 변경될 수 있습니다.]
Microsoft Dataverse는 로우코드 플러그 인을 통해 보다 효율적인 데이터 아키텍처를 달성하고 클라이언트 측 작업 부하를 줄이기 위한 강력한 솔루션을 제공합니다. 이러한 플러그 인은 Dataverse 내에서 특정 명령 세트를 실행하고 서버 측에서 실행되며 개인화된 이벤트 핸들러에 의해 트리거되는 재사용 가능한 실시간 워크플로입니다.
중요
- 이는 프리뷰 기능입니다.
- 프리뷰 기능은 생산용으로 만들어진 것이 아니므로 기능이 제한될 수 있습니다. 이런 기능은 공식 릴리스 전에 사용할 수 있으므로 고객이 조기에 액세스하고 피드백을 제공할 수 있습니다.
전통적으로 플러그 인은 .NET Framework 어셈블리로 컴파일된 사용자 지정 클래스로 생성된 후 Dataverse에 업로드되고 등록되었습니다. 그러나 로우코드 플러그 인이 도입되면서 사용자는 코딩이 최소화되거나 필요 없이 수동 등록 없이 이러한 이벤트 핸들러를 생성할 수 있습니다.
로우코드 플러그 인은 Dataverse 데이터베이스 내에 저장되며 Power Apps 및 Power Automate에 원활하게 통합될 수 있습니다. 워크플로의 동작은 Power Fx 표현식 언어를 사용하여 정의되며 Power Platform 커넥터를 통해 Dataverse 비즈니스 데이터 및 외부 데이터 원본과 직접 연결할 수 있습니다. 로우코드 플러그 인을 사용하면 제작자는 최소한의 코딩 전문 지식으로 복잡한 워크플로를 신속하게 구성할 수 있어 더욱 간소화되고 효율적인 데이터 아키텍처를 얻을 수 있습니다.
서버 측 로직의 이점
서버 측 비즈니스 로직을 정의하면 다음과 같은 여러 가지 이점을 얻을 수 있습니다.
- 보안이 강화됩니다. 서버 측 로직은 서버에서 실행되므로 중요한 데이터나 프로세스에 대한 무단 액세스를 방지하는 데 도움이 될 수 있습니다.
- 성능이 향상됩니다. 비즈니스 로직을 서버에서 실행함으로써 클라이언트와 서버 간에 전송해야 하는 데이터의 양을 줄여 처리 시간을 단축할 수 있습니다.
- 일관성과 신뢰성을 얻을 수 있습니다. 서버 측 논리는 비즈니스 규칙이 모든 클라이언트에 일관되게 적용되도록 보장하여 오류나 불일치의 위험을 줄입니다.
- 유지 관리 및 업그레이드가 더 쉬워집니다. 비즈니스 로직을 서버에 중앙 집중화하면 여러 클라이언트를 업데이트할 필요 없이 한 곳에서 변경 사항을 적용할 수 있으므로 유지 관리 및 업데이트가 더 쉬워집니다.
- 확장성을 얻을 수 있습니다. 서버 측 논리는 클라이언트 측 논리보다 더 쉽게 확장할 수 있으므로 더 나은 성능과 더 큰 워크로드를 처리할 수 있습니다.
로우코드 플러그 인
Dataverse에서는 두 가지 유형의 로우코드 플러그 인이 지원됩니다.
Type | 트리거 | 매개 변수 지원 | 지원되는 범위 |
---|---|---|---|
인스턴트 | 수동으로 실행 | 네 | 전역 및 테이블 |
자동화됨 | Dataverse 테이블 이벤트 | 없음 | 테이블 |
모든로우 코드 플러그 인에는 다음과 같은 공통 속성이 있습니다.
Property | Description |
---|---|
Display name | 사람이 읽을 수 있는 플러그 인 이름입니다. 한번 생성되면 변경할 수 없습니다. |
입력 | 플러그 인의 내부 이름입니다. 코드 및 데이터베이스 작업에서 구성 요소를 식별하기 위해 플랫폼에서 사용됩니다. 한번 생성되면 변경할 수 없습니다. |
Description | 플러그 인에 대한 추가 컨텍스트(목적, 동작 또는 기타 중요한 세부 정보)를 제공하는 데 사용됩니다. |
해결 방법 | 구성 요소를 그룹화하고 다른 환경으로 내보내는 데 사용됩니다. 솔루션에 대해 자세히 알아보세요. |
식 | 이는 Power Fx 표현식 언어를 사용하여 정의된 작업이나 계산을 수행하는 데 사용할 수 있는 사용자 지정 함수입니다. Power Fx는 Power Apps 캔버스 앱에서 사용되는 공식 언어이며, 로우코드 플러그 인에서 사용할 수 있도록 확장되었습니다. 자세한 내용은 지원되는 기능을 참조하세요. |
인스턴트 로우코드 플러그 인은 사용자가 수동으로 트리거하는 사용자 지정 코드 로직입니다. 사용자 지정 입력 및 출력 매개 변수를 사용할 수 있습니다.
고유 속성:
Property | Description |
---|---|
Scope | 플러그 인을 특정 테이블에 연결하는 데 사용됩니다. 테이블(엔터티로 표시) 또는 전역으로 설정할 수 있습니다. 여기서 테이블(엔터티) 범위는 플러그 인이 특정 테이블 레코드의 컨텍스트로 트리거됨을 의미하고 전역 범위는 작업이 테이블과 연결되지 않음을 의미합니다(자세히 알아보기). |
매개 변수 | 매개 변수를 사용하면 플러그 인과 이를 실행하는 컨텍스트 간에 정보를 전달할 수 있으므로 다양한 상황에서 재사용할 수 있는 비즈니스 로직을 더 쉽게 설계할 수 있습니다. 입력 매개 변수는 플러그 인에 데이터를 제공하는 데 사용되며 Power Fx 수식에 지정한 다양한 값을 전달하여 함수의 작동 방식을 제어할 수 있습니다. 출력 매개 변수를 사용하면 프로그램에서 나중에 사용할 함수나 메서드의 결과를 검색할 수 있습니다. 지원되는 데이터 형식:
|
캔버스 앱 또는 Power Automate 클라우드 흐름에서 통합하는 방법에 대한 자세한 내용: 로우코드 플러그 인 통합
플러그 인 권한
디자인 타임
Power Platform 환경에서 시스템 사용자 지정자 또는 시스템 관리자 보안 역할 멤버십을 보유한 제작자는 해당 환경의 모든 플러그 인에 액세스할 수 있습니다. 사용자 지정 보안 역할을 사용하여 로우코드 플러그 인에 대한 액세스를 제한할 수 있습니다.
실행 시간
플러그 인이 호출되면 플러그 인 정의와 관련된 테이블 데이터(수식의 일부인 테이블 또는 테이블이 자동화된 플러그 인의 설정과 연결된 경우)를 호출한 사용자의 컨텍스트에서 액세스합니다.
연결
보안 역할을 사용하면 플러그 인 내의 커넥터 액세스를 조직 내 특정 사용자 집합으로 제한할 수 있습니다. 만들기, 읽기, 업데이트 또는 삭제 권한이 있는 역할을 지정합니다.
로우코드 플러그 인 생성을 위한 전제 조건
- Power Platform 환경의 시스템 관리자 또는 시스템 사용자 지정 보안 역할 구성원.
- Dataverse 가속기 앱에 액세스합니다.
팁
모든 새로운 환경에는 2023년 10월 1일부터 Dataverse 가속기 앱이 자동으로 설치됩니다. 이미 Dataverse 가속기를 설치한 경우 Dataverse 가속기를 수동으로 업데이트할 수 있습니다.
Dataverse 가속기 업데이트
- 사용자 환경에서 라이선스가 부여된 앱을 보려면 지침을 따르십시오.
- Dataverse Accelerator가 이미 설치되어 있고 업데이트를 사용할 수 있는 경우 항목 옆의 표에 표시됩니다.
- Dataverse Accelerator를 선택한 다음 명령 모음에서 업데이트를 선택합니다.
팁
Microsoft - Power CAT 게시자가 사용 가능한 경우 자동으로 업데이트를 받을 수 있도록 자동 앱 업데이트를 활성화합니다(2023년 10월 1일 이후에 생성된 새로운 환경에는 필요하지 않음).
참고
이전에 옵션인 커넥터용 로우 코드 플러그 인 솔루션을 설치한 경우 2023년 6월 29일 이후에 업데이트하면 자동으로 삭제됩니다. 기능은 기본 솔루션에서 사용할 수 있습니다.
인스턴트 로우코드 플러그 인 생성
- Dataverse 가속기 앱을 실행합니다.
- 인스턴트 플러그 인 생성 카드를 선택합니다.
- 표시 이름을 제공합니다.
- 선택적으로 매개 변수를 정의합니다.
- 새 입력 매개 변수 또는 새 출력 매개 변수를 선택한 다음 레이블과 데이터 형식을 입력합니다.
- 필요에 따라 더 많은 입력 및 출력 매개 변수를 추가합니다.
- 식 편집기에 Power Fx 식을 입력합니다.
- 레이블 이름으로 수식의 입력 매개 변수를 참조합니다.
- 출력 매개 변수는
{ Out: "Return value" }
과 같이 중괄호 안에서 참조되어야 합니다. - Filter() 및 LookUp() 등의 데이터 수집 기능을 사용하여 Dataverse 테이블을 참조합니다.
- 범위가 엔터티로 설정된 경우
ThisRecord
를 사용하여 플러그 인 실행과 연결된 테이블 행의 열 값(예:ThisRecord.'Account Name'
)에 액세스합니다.
팁
식 상자의 IntelliSense를 확인하세요. 빨간색 밑줄은 유효하지 않습니다. 구불구불한 노란색은 논리가 위임 제한의 영향을 받을 수 있음을 의미합니다. 위임 가능한 함수를 사용하여 위임 문제를 방지합니다.
- 선택적으로 고급 옵션을 확장하여 솔루션, 범위 또는 설명을 수정합니다.
- 저장을 선택합니다.
- 인스턴트 로우코드 플러그 인 테스트.
예: 두 정수의 합을 계산합니다.
- 두 개의 입력 매개변수
X
및Y
(둘 다 정수 유형)와 하나의 출력 매개 변수Z
(문자열 유형)를 생성합니다. - 다음 수식을 사용합니다.
{Z: X + Y }
자동화된 로우코드 플러그 인 생성
- Dataverse 가속기 앱을 실행합니다.
- 자동 플러그 인 생성 카드를 선택합니다.
- 다음 값을 제공합니다.
- 이름: 입력 유효성 검사와 같이 플러그 인 이름을 입력합니다.
- 테이블: 거래처와 같이 플러그 인을 연결할 테이블을 선택합니다.
- 행이 다음과 같을 때 이 플러그 인을 실행합니다. 플러그 인을 호출하는 데이터 이벤트를 지정합니다.
- 식 편집기에 Power Fx 식을 입력합니다.
- Filter() 및 LookUp() 등의 데이터 수집 기능을 사용하여 Dataverse 테이블을 참조합니다.
ThisRecord
를 사용하여 플러그 인 실행과 연관된 테이블 행의 열 값(예:ThisRecord.'Account Name'
)에 액세스합니다.
- 선택적으로 고급 옵션을 확장하여 스테이지(실행해야 하는 시점) 및 플러그 인이 저장된 솔루션을 수정합니다.
- 저장을 선택합니다.
- 자동 로우코드 플러그 인 테스트.
로우코드 플러그 인에서 Power Platform 커넥터 사용
Power Platform 커넥터는 로우코드 플러그 인에서 사용되어 복잡한 코딩이나 사용자 지정 개발 없이 SQL Server, Salesforce, SharePoint 등 Dataverse 외부 시스템의 데이터와 기능을 쉽게 통합할 수 있습니다.
로우코드 플러그 인에서 커넥터를 사용하기 위한 전제 조건
- 로우코드 플러그 인 생성을 위한 전제 조건
- 활성 연결이 있는 연결 참조.
로우코드 플러그 인에서 커넥터 작업 사용
Power Fx 수식의 로우코드 플러그 인 내에서 커넥터 및 사용자 지정 커넥터를 쉽게 사용할 수 있습니다.
- 사용하려는 커넥터에 대한 연결을 만듭니다.
- Dataverse 환경의 연결에 연결 참조를 추가합니다.
- 로우코드 플러그 인 Power Fx 식 편집기에서 연결 참조의 이름(표시 이름이 아닌
new_connectorName
와 같이 접두사와 밑줄이 있는 내부 이름)을 입력합니다. - IntelliSense는 사용 가능한 작업을 보여줍니다. 원하는 작업을 선택한 다음 필수 매개 변수를 입력합니다.
로우코드 플러그 인에서 커넥터를 사용하기 전에 커넥터의 설명서를 검토하여 입력 및 출력 매개 변수를 올바르게 전달하고 있는지 확인하세요.
추가 정보: 예
참고
- 현재 모든 커넥터 작업이 지원되는 것은 아닙니다.
- 플러그 인 식에서 Dataverse 테이블에 연결하는 데 Dataverse 커넥터를 사용하지 마십시오. 대신, 기본 Power Fx 함수를 사용하여 컬렉션: 필터, 검색, 조회, 패치, 수집 및 설정과 상호 작용하세요. 여기서 열은 전역 변수로 처리됩니다.
로우코드 플러그 인 테스트
인스턴트 플러그 인 테스트
홈 화면의 목록에서 인스턴트 플러그 인을 선택한 다음 명령 모음에서 테스트를 선택합니다. 저장한 후 명령 모음의 인스턴트 플러그 인 편집기에서 이 화면으로 이동할 수도 있습니다.
로우코드 플러그 인에 정의된 모든 입력 매개 변수에 대한 값을 제공한 다음 실행을 선택합니다.
응답을 확인합니다.
팁
출력 매개 변수를 사용하여 예상되는 동작 및 결과를 검증할 수 있습니다. 그렇지 않으면 테스트할 때 성공 또는 실패만 표시됩니다.
자동 플러그 인 테스트
데이터 이벤트를 호출하여 자동 플러그 인을 테스트합니다. 수식에 정의된 예상 변경 사항의 유효성을 검사하여 플러그 인이 성공적으로 실행되었는지 확인합니다.
팁
프리뷰 중에 Power Apps의 테이블 편집기를 사용하여 연결된 데이터 이벤트를 호출할 수 있습니다.
- Power Apps에 로그인하고 테이블로 이동하여 플러그 인 테이블을 선택합니다.
- 명령 모음에서 편집을 선택합니다.
- 이 보기에서 직접 행을 생성, 업데이트 또는 삭제합니다. 또는 행을 선택하여 기본 양식에서 행을 연 다음 명령 모음에서 양식을 사용하여 행 편집을 선택합니다.
로우코드 플러그 인 통합
캔버스 앱 또는 사용자 지정 페이지에서 인스턴트 플러그 인 호출
- Dataverse Accelerator 앱에서:
- 목록에서 인스턴트 플러그 인을 선택합니다.
- 명령 모음에서 코드 조각 복사를 선택합니다.
- 복사한 수식을 텍스트 편집기나 메모장(쉽게 참조할 수 있는 위치)에 붙여넣고 저장합니다.
- Power Apps의 경우:
- Power Apps Studio에서 캔버스 앱(또는 사용자 지정 페이지)을 만들거나 편집합니다.
- 왼쪽 탐색 메뉴의 데이터 원본 탭에서 + 새로운 데이터 원본을 선택하고 Dataverse 커넥터에서 환경 옵션을 검색합니다.
- 캔버스에 다음 구성 요소를 삽입합니다.
- 복사한 플러그 인 수식을 버튼의
OnSelect
속성에 붙여넣습니다. - 각 입력 매개 변수
Value
를 매핑하여 해당 입력 컨트롤을 참조합니다.- 수식이
Environment.new_CalculateSum({ X: Value, Y: Value });
였다면,Environment.new_CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text });
와 같이 다시 작성할 수 있습니다. - 수식이 바인딩된 경우 플러그 인에 액세스하려면
Environment
를 테이블 표시 이름으로 바꾸세요.
- 수식이
- 로우코드 플러그 인에 대해 출력 매개 변수가 정의된 경우:
Set()
또는UpdateContext()
수식:Set( ActionResult, Environments.CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text }) );
로 응답을 캡처합니다. 레이블에 변수를 표시합니다. 또는Notify()
수식을 사용하여 알림에 데이터를 표시하세요.
- 앱을 실행하고 명령 모음에서 명령을 선택하여 로우코드 플러그 인을 실행합니다.
캔버스 앱의 Power Fx에서 직접 Dataverse 작업을 호출하는 방법에 대해 자세히 알아보세요.
Power Automate 클라우드 흐름에서 인스턴트 플러그 인 호출
- 클라우드 흐름에서는 Microsoft Dataverse 커넥터에서 새 작업을 추가합니다.
- 바인딩되지 않은 작업 수행 또는 바인딩된 작업 수행이라는 작업을 선택합니다.
- 플러그 인을 선택하십시오(접두사가 붙은 고유 이름이 있음).
- 모든 입력 매개 변수(있는 경우)에 대한 값을 제공하십시오.
Dataverse 웹 API에서 인스턴트 플러그 인 호출
웹 API 문서에서 사용자 지정 API 호출의 바인딩되지 않은 작업 또는 테이블에 바인딩된 함수 섹션의 단계를 따르세요(플러그인의 적절한 범위에 따라 다름).
로우코드 플러그 인으로 도움 받기
로우코드 플러그 인을 생성하거나 실행하는 데 문제가 발생하면 발생할 수 있는 일반적인 문제에 대한 Microsoft Dataverse 로우코드 플러그인 팁 및 알려진 문제 팁으로 이동하세요.
도움말 + 지원 문의
문서화되지 않은 오류 수신과 같이 Microsoft Dataverse 로우코드 플러그 인 팁 및 알려진 문제에서 다루지 않는 Dataverse 가속기 솔루션 설치 또는 로우코드 플러그 인 문제의 경우 도움말 + 지원 환경 사용 및 다음 정보를 포함합니다.
- 문제 유형- Dataverse 웹 API 및 SDK
- 문제 하위 유형 - Dataverse용 가속기 키트
생성할 수 있는 로우코드 플러그 인의 예
로우코드 플러그 인을 생성하는 방법에 대한 몇 가지 예를 보려면 Dataverse 로우코드 플러그 인(프리뷰) 예로 이동하세요.
제한 사항
기존 캔버스 앱 내의 새 플러그 인에 액세스하려면 환경 언어 개체를 읽어야 합니다. 환경 테이블 데이터 원본을 기존 캔버스 앱에 추가한 후 생성된 모든 플러그인의 경우 Power Fx 환경 언어 개체를 제거하고 읽어야 합니다. 그러면 업데이트된 플러그 인 목록이 작업으로 표시됩니다.
Intellisense에서는 수식의 테이블을 참조하려면 자동화된 플러그 인에 명시적인 표기법이 필요합니다. 대괄호와
@
기호(Accounts
아님)를 사용하여[@Accounts]
와 같은 다음 명확성 구문을 사용합니다.중첩 지원. 플러그 인은 Power Fx 식에서 Microsoft가 게시한 자사 작업만 호출할 수 있습니다.
일부
Collect
시나리오에는Patch
가 필요합니다.Collect()
이 작동하지 않는 몇 가지 시나리오가 있습니다. 해결 방법은 아래 관련 열 채우기 예시에 표시된 대로Patch()
를 사용하는 것입니다. 자동화된 플러그 인을 생성하는 경우 Power Fx 수식에서 참조하는 각 테이블 앞에 @를 추가합니다.Patch(Faxes, Collect(Faxes, { Subject : "Sub1" } ), { Regarding : First(Accounts) } )
로우코드 플러그 인이 커넥터와 상호 작용하고 DLP가 사용되는 경우 관리자는 DLP를 사용하여 연결 생성을 차단할 수 있습니다. 그러나 Dataverse 환경의 기존 연결 참조는 계속 작동합니다. 관리자가 커넥터와의 모든 로우코드 플러그 인 상호 작용을 차단해야 하는 경우 조직 설정
Allowconnectorsonpowerfxactions
를 비활성화할 수 있습니다. 이 설정은 기본적으로 활성화되어 있으며 일반적인 SDK 방법(WebAPI, SDK, PowerShell 등)으로 비활성화할 수 있습니다. 다음과 같이 로우코드 인스턴트 플러그 인을 사용하여 이를 비활성화할 수 있습니다.Patch(Organizations, First(Organizations), { 'Enable connectors on power fx actions.': 'Enable connectors on power fx actions. (Organizations)'.No })
커넥터를 사용하는 플러그 인은 특정 필드의 결과만 출력할 수 있습니다. 이로 인해 커넥터 응답의 특정 기본 값을 출력 값에 매핑해야 합니다.
사용자 지정 커넥터 제한이 있는 로우코드 플러그인
사용자 지정 커넥터가 포함된 로우코드 플러그인이 있는 경우 연결 참조 또는 흐름보다 먼저 사용자 지정 커넥터를 가져와야 합니다.
환경에 솔루션의 사용자 지정 커넥터가 포함되어 있지 않은 경우 사용자 지정 커넥터만 포함하는 별도의 솔루션을 가져옵니다. 실제 솔루션을 가져오기 전에 이 가져오기를 수행하십시오. 다른 솔루션 구성 요소를 가져오기 전에 Azure에서 사용자 지정 커넥터를 등록해야 하므로 이 작업을 먼저 수행해야 합니다.
사용자 지정 커넥터 및 흐름이 포함된 솔루션을 가져오는 경우 Azure는 연결 참조 또는 흐름을 등록하는 동안 사용자 지정 커넥터를 등록할 수 없습니다. 이는 이전에 별도의 솔루션으로 가져오지 않은 사용자 지정 커넥터에 대한 연결 참조에도 적용됩니다. Azure가 사용자 지정 커넥터를 등록하지 않은 경우 가져오기가 실패하거나 가져오기를 시작할 수 없습니다.
추가 정보: 솔루션에서 사용자 지정 커넥터 만들기: 알려진 제한 사항
참조 항목
Power Apps의 Dataverse 로우코드 플러그인에서 사전 빌드된 프롬프트 사용