2017-11-01 11 views
2
[ReferenceTarget("contact")] 
    public InOutArgument<EntityReference> PartyList{ get; set; } 

가 어떻게/반환 할 수 있습니다 반환?어떻게 워크 플로우 단계로 다시 정의 CodeActivity에서 ActivityParty 또는 EntityCollection의 목록을 보내 Outparameter 사용자 정의 활동으로 EntityCollection을

execute 메서드에서 EntityCollection 또는 List를 반환하면 형식 변환 오류가 발생합니다. 아래의 답변에서


- 나는 몇 가지 설명을 추가하고 싶었 : 어떻게 내가 목록이 제한됩니다 참조 다시 어떤 수집을 전달할 수 있습니다 - 제가 해결 방법을 찾고 있었다. 의 EntityReference가

+0

플러그인 및 워크 플로를 사용하면 실행 파이프 라인 주변의 기능을 확장 할 수 있습니다. CRM 제품 플랫폼은 범위를 벗어나지 않고 플레이 할 수있는 경계를 설정합니다. –

+0

어떤 데이터 형식을 반환하는 C# 메서드와 동일하지 않습니다. –

+0

기본적으로 자식 레코드 용 WF를 배포하려는 경우 사용할 수있는 코드 플렉스 (git?) 솔루션이 하나 있습니다. 그것이 당신에게 적합하면 검색하고 사용하십시오. 당신은 Collection을 얻은 후에 성취하려는 것을 말하지 않고 있습니다. –

답변

1

EntityCollection 사용자 정의 워크 플로 활동의 입력/출력 방식의 지원 목록에없는 참조/포인터 타입 이었기 때문에 : MSDN 당신은 WF 단계에서 EntityCollection을 얻어서 달성하기 위해 노력하고 무엇

, 그것은 달성해야 내부 WF 활동 그 자체.

출력 매개 변수 유형이 EntityReference이므로 변환 오류가 발생합니다.

+0

슬프게도 내가 뭘했는지가 아니라, 나는 그것을 표시 할 것입니다. – transformer

+0

당신이 무엇을하고 있는지 알려주지 않고 어떻게 그것을 성취 할 수 있도록 도울 수 있습니까? :) @ 변압기 –

+0

물론. 내 사용자 지정 작업에서 워크 플로로 다시 전자 메일 목록을 보내려고했습니다. 내가 얼마나 많은 이메일을 미리 알지 못하기 때문에, 커스텀 액티비티는 동적 인 액티비티리스트를 생성하고 그것을 되돌려 보낸다. 나는 목록이나 콜렉션에 대한 'EntityReference' 포인터로 넘겨 줄 수 있다고 생각했다. 둘 다 작동하지 않는다. ... 그래서 나는 그것에 대한 도움을 받기를 희망했다. 또한, 포인터 인 EntityRefence는 무엇입니까? – transformer

3

일반 InOutArgument<T> 속성에는 EntityCollection 유형을 사용할 수 없습니다.

지원되는 유형은 다음과 같습니다

  • 부울
  • 날짜 시간
  • 진수
  • 더블
  • 의 EntityReference
  • INT32
  • OptionSetValue
  • 문자열

MSDN를 참조하십시오.

+0

안녕하세요, 엔티티 참조로 컬렉션이나 목록에 다시 색인을 전달할 수있는 방법이 없습니다. 그렇다면 어떻게 개발자가'custom workflow plugin '에서 여러 수신자 상황에 대해 복수의'activityparties ..를 돌려 보내거나/패스 할 것인가? – transformer

+0

@transformer : 워크 플로우는 데이터를 리턴하거나 배치 프로세스를 실행하도록 설계되지 않았다. 그러므로 커스텀'CodeActivity' 클래스는 오직 원자적인 데이터 아이템만을 반환 할 수 있습니다. 기술적으로 워크 플로우가 오랫동안 실행되는 태스크를 실행할 수 있지만이 작업을 수행하려면 전체 프로세스를 단일 CodeActivity에 연결해야하며 온 프레미스 전개에서만 작동합니다. –