1. März 2010 18:45
rallnus hat geschrieben:Wie kann ich steuern, auf welchen Mandant sich der NAS bezieht?
Bei jeder NAS-Einrichtung muss (entweder grafisch per SnapIn oder direkt per Kommandozeile) ein Mandantenname mitgegeben werden. Dies muss bei eurem bestehenden NAS-Dienst schon einmal durchgeführt worden sein, sonst würde der NAS nämlich gar nicht laufen.
rallnus hat geschrieben:Meine Idee wäre, 2 NAS in unterschiedlichen Mandanten zu haben...
Eine Alternative gibt es auch nicht: Pro Mandant ein eigener NAS-Dienst.
Aber jetzt wird es spanned:
Per
CHANGECOMPANY kannst du nur auf Tabllendaten zugreifen (lesen, und schreiben/löschen, jedoch OHNE jedgliche Trigger = OHNE Business Logic). Unter CHANGECOMPANY kannst KEINE Funktionen ausführen und insbesondere auch KEINE Objekte wie Codeunits ausführen. Tust du es dennoch, wird der Code stattdessen und ohne Vorwarnung im aktuellen Mandanten, und nicht im Zielmandanten durchgeführt.
Der Ansatz, Arbeiten im Zielmandanten den NAS (des Zielmandanten) ausführen zu lassen, ist die einzig richtige Lösung. Doch woher soll der NAS in Mandant 2 nun wissen, was er wie auszuführen hat? Welche Bestellung soll z.B. gebucht werden? Und wann soll das alles ausgeführt werden?
rallnus hat geschrieben:aber wie kann ich die Buchungen im Vertriebsmandant auf dem NAS starten?
Per CHANGECOMPANY könntest du "hart" (weil ohne Trigger) einen Datensatz im Zielmandanten erzeugen, der alle benötigten Informationen enthält, die wiederum vom NAS entsprechend erkannt werden können.
Weiterhin müssen die Objekte , die durch den NAS (direkt oder indirekt) verwendet werden sollen, gegen Aufruf von Dialog-Variablen sowie Forms und Dataports abgesichert werden.
Der Standard machts in (glaub ich) Codeunit 90 schon vor (IF GUIALLOWED THEN ...), muss aber z.B. in CU 80 nachgezogen werden.
Übrigens: nicht umsonst bietet mein Arbeitgeber eine hübsches Add-On zu genau diesem Thema an
Wir erzeugen über ein Regelwerk eine XML-Datei, die in der Datenbank in beiden Mandanten abgelegt wird und vom Zielmandanten entsprechend nach einem eigenen Regelwerk verarbeitet werden kann. Buchungen sind so auch möglich.