2017-02-27 9 views
1

Microsoft 및 다른 사람들의 자습서 덕분에 Dynamics NAV 용 작은 Control-AddIn 을 만들었습니다.서버 쪽의 Dynamics NAV 2016에서 Control-AddIn을 사용하는 방법은 무엇입니까?

이 AddIn은 클라이언트의 addins-folder에있을 때 잘 작동합니다. 서버에서 AddIn 작업을 수행하도록 요청 받았기 때문에 모든 사용자에게 배포 할 필요가 없습니다.

Microsoft는 서버 쪽에서 작동하는 표준 AddIns가 있더라도이 정보를 제공하지 않습니다.

단순히 AddIn-dll을 이동하고 추가 기능에 대한 참조를 다시 만들면 작동하지 않는 것 같습니다.

나는이 AddIn이 서버 측에서 감지되도록하는 다양한 모호한 방법을 시도했다. 나는 C# 코드를 편집 할 때 다음 절차는 다시하지만, 정확히 한 번만 일 :

  • 서버 추가 기능 폴더에 클라이언트 추가 기능 - 폴더 추가 기능 테이블
  • 이동 추가 기능에서 추가 기능을 제거하고 생성 새로운 AddIns 테이블 항목
  • 필드에서 Control-AddIn을 사용하여 페이지를 만들고 "OnInit"에서 초기화되는 Control-AddIn 클래스 (RunOnClient = Yes 속성 사용)의 DotNet 변수를 만듭니다. 다른 건 없어.
  • 실행 CodeUnit 2,

(추가 기능 - DLL이 이제 NAV 임시 폴더에 복사) 새로운 페이지를 실행하지만, 제가 말씀 드린 것처럼 이것은 단지 하나의 시간을 근무하고 그 이후 추가 기능이 발견되지 않습니다. 누구나 서버에서 Control-Addins를 실행할 수있는 확실한 방법을 알고 있습니까?

답변

0

그래서 나는 나 자신을 알아내는 끝내었고, 다른이에 문제가 내가 대답, 조금 이상한을 찾을 수 있지만, 여기이 경우 사람에 : 서버의 추가에

  • 놓습니다 추가 기능을 -Ins 폴더
  • 제어 추가 기능 페이지에 추가 기능 추가
  • 추가 기능을 사용해야하는 페이지에서 먼저 추가 기능의 DotNet 변수를 만들어야합니다 수업. OnInit 함수에서이 변수를 초기화하십시오.
  • 변수를 설정하고 Control Add-In 필드를 만든 다음 속성에서 컨트롤 추가 기능을 선택하십시오.

어셈블리를 임시 또는 다른 것으로 복사하려면 먼저 변수를 만드는 것이 필요합니다. 이 기능이 없으면 추가 기능의 일부 기능이 감지되지 않을 수 있습니다.

초기화하려면 표시 할 컨트롤 추가 기능이 초기화되기 전에 추가 기능이 클라이언트의 임시 폴더에 복사되어 있는지 확인해야합니다. 이 단계가 없으면 어셈블리를 찾을 수 없습니다.