Mehrere AgilePoint NX Mandanten auf der gleichen SharePoint Web-Application

Üblicherweise gibt es eine eindeutige 1:1 Zuordnung von AgilePoint NX Mandant und SharePoint Web-Application. Es gibt aber auch den Fall, dass sich mehrere AgilePoint NX Mandanten eine "SharePoint Web-Application" teilen - d.h. bspw. ein "AgilePoint NX Mandant" hat ein oder mehrere "Site-Collections".

Hintergrund Informationen

Nach dem Sie die AgilePoint SharePoint Integration nach Anleitung istalliert haben. Konfigurieren Sie Werte in der AgilePoint Configuration List. Es gibt bei einer SharePoint On-Prem Installation zwei parallel genutzte Mechanismen zum Zugriff auf die AgilePoint NX WebServices.

A.) Zugriff per REST

Zugriff auf AgilePoint REST WebService API. Der entsprechende Konfigurationseintag ist "ServerInstanceUrl". Dieser Mechanismus ist für das "AgilePoint Dashboard" und "AgilePoint Formulare".

B.) Zugriff per WCF (SOAP)

Mit dem Werkzeug Windows Service Client Utility Tool erstellten Sie bei der Konfiguration der AgilePoint SharePoint Integration im Web.Config Einträge für den Zugriff auf AgilePoint NX. Diesen Mechanismus nutzen "Assign Workflow", der "Process Viewer" und die SharePoint "Event Handler".

Insgesamt stehen Ihnen drei mögliche WCF Bindings zur Verfügung:

  • WSHttp
  • Basic HTTP
  • TCP

Sie wählen in der AgilePoint Configuration List jeweils das Binding für /Admin in der Eigenschaft "AdminBindingUsed" aus:

  • WSHttpBinding_IWCFAdminService
  • BasicHttpBinding_IWCFAdminService
  • NetTcpBinding_IWCFAdminService

und /Workflow in der Eigenschaft "WorkflowBindingUsed":

  • WSHttpBinding_IWCFWorkflowService
  • BasicHttpBinding_IWCFWorkflowService
  • NetTcpBinding_IWCFWorkflowService

Das ergibt dann beispielsweise:



Ansatz für bis zu 3 AgilePoint NX Mandanten auf der gleichen SharePoint Web-Application

Jeder Mandant konfiguriert seine Werte für die "ServerInstanceUrl" für den REST Zugriff.

Teilen Sie dann jedem Mandanten einen der folgenden Zugriffswege zu:
  • WSHttp
  • Basic HTTP
  • TCP
"Mandant 1" erhält die Bindings:
  • WSHttpBinding_IWCFAdminService
  • WSHttpBinding_IWCFWorkflowService
"Mandant 2" erhält die Bindings:
  • BasicHttpBinding_IWCFAdminService
  • BasicHttpBinding_IWCFWorkflowService
"Mandant 3" erhält die Bindings:
  • NetTcpBinding_IWCFWorkflowService
  • NetTcpBinding_IWCFAdminService

Folgen Sie nun den Schritten:

1.) Kopieren Sie 3x das Web.Config von SharePoint  und lassen das Windows Service Client Utility Tool jeweils gegen die AgilePoint NX WebServices laufen.

2.) Übertragen Sie nun erstellte Strukturen für die Bindings von "Mandant 2" und "Mandant 3" in das Web.Config von "Mandant 1". Die Werte des entsprechendes Bindings finden Sie jeweils im Bereich "client.endpoint". Bitte überprüfen Sie auch Unterscheide in den referenzierten Strukturen "bindingConfiguration" und Eigenschaften wie bspw. "userPrincipalName":


3.) Kopieren Sie das Web.Config von "Mandant 1" zurück auf SharePoint. und testen Sie die einzelnen Mandanten

Ansatz für >3 AgilePoint NX Mandanten auf der gleichen SharePoint Web-Application

Anmerkung: Wählen Sie diesen Weg nur, wenn Sie tatsächlich >3 Mandanten auf der gleichen SharePoint Web-Application benötigen.

Die AgilePoint Integration erstellt dynamisch mit den Werten aus "AdminBindingUsed" und "WorkflowBindingUsed" den Zugriff per WCF. Sie können eigene Binding Strukturen im Web.Config erstellen (durch kopieren und umbenennen) und diese dann verwenden:

  • WSHttpBinding_IWCFWorkflowService_Company1
  • WSHttpBinding_IWCFWorkflowService_Company2
  • WSHttpBinding_IWCFWorkflowService_Company3
  • WSHttpBinding_IWCFWorkflowService_Company4
  • WSHttpBinding_IWCFWorkflowService_Company5
  • ...
Und dann bspw. für WsHttp in "WorkflowBindingUsed" angeben. Analog gilt dies für "AdminBindingUsed". Dies kann wie folgt aussehen:


Und deren Verwendung in der AgilePoint Configuration List


Kontaktformular

Name

E-Mail *

Nachricht *