2012-03-23 2 views
2

일단 워크 플로 활동이 완료되면 SDL Tridion 이벤트 시스템을 사용하여 메소드 (OnEmergencyRelease)를 실행하고 있습니다. 그러나 테스트 중에는 메서드가 입력되지 않고 워크 플로 프로세스를 통해 일부 구성 요소를 단계적으로 수행합니다.SDL Tridion 2011 이벤트 시스템 - 워크 플로우 프로세스 완료

EventSystem.Subscribe<Component, 
    FinishProcessEventArgs>(OnEmergencyRelease, EventPhases.TransactionCommitted); 

그러나 OnEmergency 입력되고 있지 않습니다 : 나는 다음과 같은 코드를 사용하여 가입하고 있습니다

private void OnEmergencyRelease(Component component, 
           FinishProcessEventArgs args, EventPhases phase) 
{ 
    _log.Info("Emergency release entered"); 
} 

누구나 어떤 아이디어가 내가 잘못 여기서 뭐하는거야?

내 클래스의 생성자에서 로그에 쓸 때 이벤트 시스템이 선택된다는 것을 알고 있습니다.

+0

어떤 절차에 연결 하시겠습니까? pdb 파일이 올바른 위치에 있는지 알고 있습니까? –

답변

6

어떤 일이 발생하는지 확실히 알 수는 없지만 FinishProcessEventArgs가 Component 개체 자체에서 호출되지 않았다고 생각됩니다. 어쩌면 당신은 클래스 계층 구조에서 'higher up'객체에 대한 인터셉트를 시도해야합니다.

예 : 사용중인 프로세스 (또는 ProcessInstance 또는 IdentifiableObject는)

EventSystem.Subscribe<Process, FinishProcessEventArgs>(OnEmergencyRelease, EventPhases.TransactionCommitted);

+0

안녕하세요 미하이, 그건 의미가 있습니다, 그 기회를 알려주고 알려 드리겠습니다, 답변 주셔서 감사합니다. – johnwinter

+0

작동하는 경우 답변으로 표시하십시오 :) 알다시피 ... 포인트, 게시자 신용, 배지 및 기타 정보 :) –

+0

안녕하세요, Mihai, 예, RepositoryLocalObject와 함께 작동합니다. VersionedItem에 한 수준 올라 갔다.하지만 작동하지 않았다. 도움을 주셔서 감사합니다 :) – johnwinter

0

발사 이벤트인가? 마무리 프로세스 작업을 명시 적으로 호출 할 때, 그리고 항목을 단계별로 실행할 때가 아닌, Finish Process 이벤트가 실행될 것으로 예상됩니다.

+0

안녕하세요 돔, 지금은 내가 대신 구성 요소 대신 RepositoryLocalObject를 사용하고 있습니다. – johnwinter

관련 문제