WM Example

Aus infra-struktur AdminWiki 2.10
Version vom 31. August 2009, 07:53 Uhr von Ino (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Als Vorlage wie man so etwas umsetzt, haben wir hier mal ein kleines Beispiel engegeben. Das ist zwar in PHP geschrieben, könnte analog natürlich auch in andere...“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springenZur Suche springen

Als Vorlage wie man so etwas umsetzt, haben wir hier mal ein kleines Beispiel engegeben. Das ist zwar in PHP geschrieben, könnte analog natürlich auch in anderen Sprachen entwickelt werden, denn SOA ist erstmal unabhängig von der Sprache.

  <?php
  
  //Verbindung zum Server
  $soap[URL]		= 'http://localhost/';
  $soap[user]		= 'admin';
  $soap[password]	= 'infra-struktur';
  
  $default = array ();
  //ID des Verfassers
  $default[activityAuthorId]	= 2;
  //Zeitstempel der Planaktivität
  $default[activityStartTime]	= time();
  //Status 1=rot, 2=gelb, 3=grün
  $default[activityStatus]	= 1;
  //Kommunikationsart 8=Planaktivität
  $default[activityTypeID]	= 8;
  $default[checkBoxAktiv]		= true;
  
  $activityTitle			= array ();
  $activityDescription	= array ();
  $activityTitle[]		= '1. Einkaufen';
  $activityDescription[]	= ;
  $activityTitle[]		= '1.1. Bananen';
  $activityDescription[]	= ;
  $activityTitle[]		= '1.2. Äpfel';
  $activityDescription[]	= ;
  $activityTitle[]		= '2. Kochen';
  $activityDescription[]	= ;
  $activityTitle[]		= '2.1. Gemüse';   
  $activityDescription[]	= ;
  $activityTitle[]		= '2.2. Kartoffeln';
  $activityDescription[]	= ;
  $activityTitle[]		= '3. Abwaschen';
  $activityDescription[]	= ;
  $activityTitle[]		= '3.1. Teller';
  $activityDescription[]	= ;
  $activityTitle[]		= '3.1.1. Große';
  $activityDescription[]	= ;
  $activityTitle[]		= '3.1.2. Kleine';
  $activityDescription[]	= ;
  $activityTitle[]		= '3.2. Tassen';
  $activityDescription[]	= ;
  
  
  // AB HIER NICHTS MEHR ÄNDERN! Dynamische Generierung der Workflow Manager Seite!
  header('content-type: text/html; charset=utf-8');
  
  $client = new SoapClient(	$soap[URL].'webservice/wsdl/wsdl.php?ido',
  							array('exceptions' => true));
  
  $token = $client->__soapCall(	'authenticate',
  								array(	$soap[URL],
  										$soap[user],
  										$soap[password]));
  
  //... weiterer Code zum Aufbau der Seite, braucht nicht angepasst zu werden
  ?>

Das vollständige Script kann man hier runterladen: workflowbeispiel.zip

Erläuterungen zum Script

Wir notieren uns die anzulegenden Planaktivitäten als Liste, mit Einrückung:

1. Einkaufen
    1.1. Bananen
    1.2. Äpfel
2. Kochen
    2.1. Gemüse
    2.2. Kartoffeln
3. Abwaschen
    3.1. Teller
        3.1.1. Große
        3.1.2. Kleine
    3.2. Tassen
...

Dieses Struktur lässt sich jetzt auch wunderbar als EPK abbilden und entspricht im Code, dem oben angegeben Array. Der untere Teil kümmert sich darum in der grafischen Oberfläche noch die Benutzer, die Zeiten und Texte/Titel anpassbar zu machen. Dieses kleine Beispiel ist so generisch, das man damit schnell seine Workflows designen und benutzen kann. Die Anpassung der Serververbindung und die Anpassung des Arrays genügen.

In der HTML Ausgabe des Scriptes muss man oben noch die ID der IDO Instanz und die ID des Datensatzes angeben. HINWEIS: wenn man IDs angibt die nicht existieren, werden die Planaktivitäten trotzdem angelegt, sind aber "Leichen" in der Datenbank.


Hauptkapitel

Verwandte Themen