class TutorialSysOperationService extends SysOperationServiceBase
{
}
Die Methode runService() ist die eigentliche Service-Methode. Über das Attribute SysEntryPointAttribute steuern wir hier, daß keine weiteren Berechtigungsprüfungen notwendig sind.
[SysEntryPointAttribute(false)]
public void runService(TutorialSysOperationDataContract _dataContract)
{
info("Done");
}
Controller
class TutorialSysOperationController extends SysOperationServiceController
{
}
In der new() verknüpfen wir den Controller mit der Service-Klasse.
Die main() ist der klassische Einstiegspunkt, wenn der Controller über ein MenuItem aufgerufen wird.
Im Beispiel befüllen wir an dieser Stelle den DataContract mit einem fixen Wert. Hier würde man beispielsweise über das Args-Objekt den Aufrufer ermitteln und dementsprechend den DataContract befüllen.
public static void main(Args _args)
{
TutorialSysOperationController controller;
TutorialSysOperationDataContract dataContract;
controller = new TutorialSysOperationController();
controller.parmArgs(_args);
controller.parmExecutionMode(SysOperationExecutionMode::Synchronous);
// DataContract
dataContract = controller.getDataContractObject();
if(dataContract is TutorialSysOperationDataContract)
{
dataContract.parmCustAccount("10001");
}
controller.startOperation();
}
Dieser Beitrag bezieht sich auf die Version: Dynamics AX 2012
Diese Webseite verwendet Cookies, um Benutzern einen besseren Service anzubieten. Wenn Sie weiterhin auf der Seite bleiben, stimmen Sie der Verwendung von Cookies zu.
Mehr dazu
Der nachstehende Code stellt ein einfaches Klassenkonstrukt für das SysOperation-Framework dar.
Datacontract
Service
Die Methode runService() ist die eigentliche Service-Methode. Über das Attribute SysEntryPointAttribute steuern wir hier, daß keine weiteren Berechtigungsprüfungen notwendig sind.
Controller
In der new() verknüpfen wir den Controller mit der Service-Klasse.
Die main() ist der klassische Einstiegspunkt, wenn der Controller über ein MenuItem aufgerufen wird.
Im Beispiel befüllen wir an dieser Stelle den DataContract mit einem fixen Wert. Hier würde man beispielsweise über das Args-Objekt den Aufrufer ermitteln und dementsprechend den DataContract befüllen.