사용자 지정 워크플로 활동에 메타데이터 추가

 

게시 날짜: 2016년 11월

적용 대상: Dynamics CRM 2015

사용자 지정 워크플로 활동 정의가 포함된 어셈블리는 Microsoft Dynamics 365에서 런타임에 코드를 워크플로 엔진에 연결하기 위해 사용하는 메타데이터를 제공하는 .NET 특성을 사용하여 주석으로 처리됩니다..NET 특성에 대한 자세한 내용은 특성을 사용하여 메타데이터 확장을 참조하십시오.

메타데이터를 사용자 지정 워크플로 활동 정의에 추가하기 전에 사용자 지정 워크플로 활동에 지원되는 Microsoft Dynamics 365 유형과 특성을 알고 있어야 합니다.추가 정보:을 참조하십시오 프로세스 클래스, 특성 및 유형.

이 항목의 내용

입력 매개 변수 추가

출력 매개 변수 추가

동일한 매개 변수에 대해 입력 및 출력 특성 추가

추가 특성

실행 메서드 추가

입력 매개 변수 추가

워크플로 클래스에 입력 매개 변수를 지정하는 동안 매개 변수의 기본값을 지정할 수도 있습니다. 다음 샘플에서는 입력 매개 변수를 정의합니다.

[Input("DateTime input")]
[Default("2004-07-09T02:54:00Z")]
public InArgument<DateTime> Date { get; set; }

이 입력 매개 변수는 .NET 특성 Input을 사용하여 주석으로 처리됩니다.InputAttribute 클래스는 ParameterAttribute 클래스에서 파생되고 매개 변수(ParameterAttribute.Name)를 사용하여 입력 특성의 이름을 지정합니다. 이 이름은 웹 응용 프로그램의 프로세스 양식 도우미에 표시됩니다. 이 이름을 사용하면 특성을 입력 매개 변수로 프로세스에 매핑할 수 있습니다.

또한 필요한 입력 매개 변수를 만들 수 있습니다.추가 정보:RequiredArgumentAttribute

출력 매개 변수 추가

출력 매개 변수는 입력 매개 변수와 같은 방식으로 추가됩니다. 다음 샘플에서는 출력 매개 변수를 정의합니다.

[Output("Money output only")]
[Default("23.3")]
public OutArgument<Money> MoneyOutput { get; set; }

이 출력 매개 변수는 .NET 특성 Output을 사용하여 주석으로 처리됩니다.OutputAttribute 클래스는 ParameterAttribute 클래스에서 파생되고 매개 변수(ParameterAttribute.Name)를 사용하여 출력 특성의 이름을 지정합니다. 이 이름은 웹 응용 프로그램의 프로세스 양식 도우미에 표시됩니다. 이 이름을 사용하면 특성을 출력 매개 변수로 매핑할 수 있습니다.

동일한 매개 변수에 대해 입력 및 출력 특성 추가

동일한 매개 변수에 대해 입력 및 출력 특성을 사용할 수 있습니다. 다음 코드 예제에서 IntParameter는 입력 및 출력 매개 변수입니다.

[Input("Int input")]
[Output("Int output")]
[Default("2322")]
public InOutArgument<int> IntParameter { get; set; }

추가 특성

EntityReferenceOptionSetValue와 같은 일부 유형에는 Input, OutputDefault 특성 외에 추가 특성이 필요합니다. 추가 특성은 ReferenceTargetAttributeTarget입니다. 다음 샘플에서는 EntityReference 유형의 매개 변수를 정의합니다.

[Input("EntityReference input")]
[Output("EntityReference output")]
[ReferenceTarget("account")]
[Default("3B036E3E-94F9-DE11-B508-00155DBA2902", "account")]
public InOutArgument<EntityReference> AccountReference { get; set; }

지원되는 유형 및 특성 목록은 프로세스 클래스, 특성 및 유형을 참조하십시오.

실행 메서드 추가

사용자 지정 워크플로 활동에는 다음 예제와 같이 Execute 메서드가 있어야 합니다.

protected override void Execute(CodeActivityContext context)
{
   if (AccountReference.Get(context).Id != new Guid("3B036E3E-94F9-DE11-B508-00155DBA2902"))   
      throw new InvalidPluginExecutionException("Unexpected default value");
}

참고 항목

사용자 지정 워크플로 활동(워크플로 어셈블리)
사용자 지정 워크플로 활동(워크플로 어셈블리)
사용자 지정 워크플로 활동 만들기
사용자 지정 워크플로 활동에서 IOrganization 웹 서비스 사용
샘플: 사용자 지정 워크플로 활동 만들기
프로세스 클래스, 특성 및 유형

© 2017 Microsoft. All rights reserved. 저작권 정보