Please enable JavaScript to view this site.

Das Handbuch für den JobRouter Entwickler

Navigation: Systemaktivitäten > Ausführungslogik einer Systemaktivität

Ausführen der ausgewählten Funktion im Simulator

Scroll Zurück Oben Weiter Mehr

Grundlegende Funktionsweise

Bei der Konfiguration der Systemaktivität über die Oberfläche haben Sie zuerst eine Funktion ausgewählt. In der XML-Konfiguration wird diese Funktion eindeutig identifiziert (anhand der functionId). Die vollständige Ausführungslogik der ausgewählten Funktion kann nun in einer Methode der Basisklasse implementiert werden, die genau so heißt, wie die ausgewählte functionId. Selbstverständlich können Sie darüber hinaus Hilfsmethoden und Eigenschaften definieren, die innerhalb dieser Methode aufgerufen werden oder die API für Systemaktivitäten verwenden, doch dazu später mehr.

Beispiel

Folgendes Beispiel zeigt den erweiterten Quellcode der Basisklasse mit einer ersten Implementierung der functionId exportCsv. Diese wirft eine Exception und bricht damit die Ausführung der Systemaktivität mit einer entsprechenden Fehlermeldung ab:

Implementierte Ausführungslogik in der Basisklasse (getDialogXml aus Platzgründen gekürzt)

<?php

class csvSystemActivity extends AbstractSystemActivityAPI

{

    public function getActivityName()

    {

        return CONST_SA_CSV_NAME;

    }

 

    public function getActivityDescription()

    {

        return CONST_SA_CSV_DESCRIPTION;

    }

 

    protected function getDialogXml()

    {

        return "...";

    }

 

    // functionId='exportCsv'

    protected function exportCsv()

    {

        throw new Exception('exportCsv wurde ausgeführt');

    }

}

Wenn Sie die Systemaktivität nun im Simulator ausführen, erhalten Sie eine entsprechende (in diesem Fall gewünschte) Fehlermeldung:

ERSTEL~1_img15

Nun könnten Sie beginnen, die Ausführungslogik zu implementieren. Zuvor sollten Sie jedoch das Statusmodell kennen, welches die Ausführung entscheidend beeinflusst und die grundlegende Funktionsweise der Programmierschnittstelle (API) verstanden haben.