Benutzer-Werkzeuge

Webseiten-Werkzeuge


develop:xmlrpc:einzelauftrag

Dies ist eine alte Version des Dokuments!


XML-RPC: Einzel-Aufträge

  • Namen der Services
    • hibiscus.xmlrpc.ueberweisung Für den Zugriff auf Einzel-Überweisungen
    • hibiscus.xmlrpc.lastschrift Für den Zugriff auf Einzel-Lastschriften

Die Funktionen für Überweisungen und Lastschriften sind identisch, lediglich die Service-Namen unterscheiden sich.

Schlüssel-Namen

Bezeichnung Beschreibung
konto ID des Kontos
termin Ausführungstermin im Format dd.mm.yyyy
blz Bankleitzahl des Gegenkontos
kontonummer Kontonummer des Gegenkontos
name Inhaber-Name des Gegenkontos
betrag Betrag des Auftrages im Format „0,00“
verwendungszweck Verwendungszweck (Array)
textschluessel Text-Schlüssel (Auftragsart)

Mögliche Werte:
04: Lastschrift - Abbuchungsverfahren
05: Lastschrift - Einzugsermächtigung
51: Überweisung (muss nicht explizit angegeben werden)
53: Überweisung - Lohn/Gehalt/Rente
54: Überweisung - Vermögenswirksame Leistungen
59: Überweisung Rücküberweisung
ausgefuehrt Auftragsstatus (true/false)

Verfügbare Funktionen

Liste der Schlüsselnamen ermitteln

public Map<String,String> createParams() throws RemoteException;
  • Name der Funktion: createParams
  • Liste der Parameter <keine>
  • Rückgabe-Wert: struct Ein leeres Struct, welches lediglich die o.g. Schlüssel, jedoch noch keine Werte enthält. Das Struct kann als Vorlage für neue Aufträge verwendet werden

Liste der Aufträge ermitteln

public List<Map> find(String text, String von, String bis) throws RemoteException;
  • Name der Funktion: find
  • Liste der Parameter
    1. String Suchbegriff (darf leer sein)
    2. String Start-Datum des Termins im Format „dd.mm.yyyy“ oder „yyyy-mm-dd“ (darf leer sein)
    3. String End-Datum des Termins im Format „dd.mm.yyyy“ oder „yyyy-mm-dd“ (darf leer sein)
  • Rückgabe-Werte: array<struct> (Liste mit „struct“-Elementen)
    Liste der gefundenen Aufträge. Jedes Element der Liste enthält einen Auftrag in Form eines Struct mit den o.g. Schlüsseln

Code-Beispiele

Java
String[] params = new String[]{"test",
                               "01.01.2009",
                               "31.12.2011"
                              };
Object[] l = (Object[]) client.execute("hibiscus.xmlrpc.ueberweisung.find",params);
// Object[] l = (Object[]) client.execute("hibiscus.xmlrpc.lastschrift.find",params);
 
for (Object o:l)
{
  System.out.println(o);
}
PHP
$params = array(new xmlrpcval("test","string"),
                new xmlrpcval("01.01.2009","string"),
                new xmlrpcval("31.12.2011","string"));
 
$msg = new xmlrpcmsg("hibiscus.xmlrpc.ueberweisung.find",$params);
// $msg = new xmlrpcmsg("hibiscus.xmlrpc.lastschrift.find",$params);
 
$response = $client->send($msg);
 
$value = $response->value();
 
for ($i=0;$i<$value->arraySize();$i++)
{
  $job = $value->arrayMem($i);
  print("ID        : ".$job->structMem("id")->scalarVal()."\n");
  print("Termin    : ".$job->structMem("termin")->scalarVal()."\n");
  print("Ausgeführt: ".$job->structMem("ausgefuehrt")->scalarVal()."\n");
  print("Name      : ".$job->structMem("name")->scalarVal()."\n");
  print("Konto     : ".$job->structMem("konto")->scalarVal()."\n");
  print("BLZ       : ".$job->structMem("blz")->scalarVal()."\n");
  print("Betrag    : ".$job->structMem("betrag")->scalarVal()."\n");
 
  $zweck = $job->structMem("verwendungszweck");
  for ($k=0;$k<$zweck->arraySize();$k++)
  {
    $line = $zweck->arrayMem($k);
    print("  ".$line->scalarVal()."\n");
  }
  print("\n");
}

Liste der Aufträge ermitteln (veraltet)

deprecated Diese Funktion existiert aus Gründen der Abwärtskompatibilität weiterhin.
Verwende künftig jedoch bitte die Funktion find mit dem „struct“-Parameter - die neue Funktion liefert zudem detailliertere Rückgabe-Werte.
public String[] list() throws RemoteException;
  • Name der Funktion: list
  • Verwendung: Liefert eine Liste aller Aufträge
  • Liste der Parameter: <keine>
  • Rückgabe-Werte: array<string> (Liste mit „String“-Elementen)
    Liste der gefundenen Aufträge. Die Werte in jeder Zeile sind durch Doppelpunkte getrennt.

    Aufbau der Zeilen
    <konto_id>:<kontonummer>:<blz>:<name>:<zweck (nur Zeile 1)>:<zweck (nur Zeile 2)>:<betrag>

Code-Beispiele

Java
Object[] list = (Object[]) client.execute("hibiscus.xmlrpc.ueberweisung.list",(Object[])null);
// Object[] list = (Object[]) client.execute("hibiscus.xmlrpc.lastschrift.list",(Object[])null);
for (Object o:list)
{
  System.out.println(o);
}
PHP
$msg = new xmlrpcmsg("hibiscus.xmlrpc.ueberweisung.list");
// $msg = new xmlrpcmsg("hibiscus.xmlrpc.lastschrift.list");
$response = $client->send($msg);
$value = $response->value();
 
for ($i=0;$i<$value->arraySize();$i++)
{
  print($value->arrayMem($i)->scalarVal()."\n");
}

Auftrag anlegen

public String create(Map auftrag) throws RemoteException;
  • Name der Funktion: create
  • Liste der Parameter
    1. struct Struct mit den Eigenschaften des Auftrages. Als Schlüssel sind die o.g. Schlüssel-Namen zu verwenden.
  • Rückgabe-Wert

Code-Beispiele

Java
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.util.HashMap;
 
Map params = new HashMap();
params.put("betrag","1,50");
params.put("termin","15.01.2011");
params.put("konto","1");
params.put("name","Max Mustermann");
params.put("blz","12345678");
params.put("kontonummer","1234567890");
 
params.put("verwendungszweck","Test");
// alternativ
// List lines = new ArrayList();
// lines.add("Zweck 1");
// lines.add("Zweck 2");
// lines.add(...);
// params.put("verwendungszweck",lines);
 
Object result = client.execute("hibiscus.xmlrpc.ueberweisung.create",new Object[]{params});
// Object result = client.execute("hibiscus.xmlrpc.lastschrift.create",new Object[]{params});
System.out.println(result);
PHP
$params = new xmlrpcval(
  array(
    "betrag"           => new xmlrpcval("1,50","string"),
    "termin"           => new xmlrpcval("15.01.2011","string"),
    "konto"            => new xmlrpcval("1","string"),
    "name"             => new xmlrpcval("Max Mustermann","string"),
    "blz"              => new xmlrpcval("12345678","string"),
    "kontonummer"      => new xmlrpcval("1234567890","string"),
    "verwendungszweck" => new xmlrpcval("Test","string"),
    // alternativ
    // "verwendungszweck" => new xmlrpcval(array(new xmlrpcval("Zweck 1","string"),new xmlrpcval("Zweck 2","string")))
  ),"struct");
 
$msg = new xmlrpcmsg("hibiscus.xmlrpc.ueberweisung.create",array($params));
// $msg = new xmlrpcmsg("hibiscus.xmlrpc.lastschrift.create",array($params));
$response = $client->send($msg);
print($response->value()->scalarval());

Auftrag anlegen (veraltet)

deprecated Diese Funktion existiert aus Gründen der Abwärtskompatibilität weiterhin.
Verwende künftig jedoch bitte die Funktion create mit dem „struct“-Parameter - die neue Funktion bietet zudem detailliertere Parameter.
public String create(String kontoID, String kto, String blz, String name, String zweck, String zweck2, double betrag, String termin, String type) throws RemoteException;
  • Name der Funktion: create
  • Liste der Parameter
    1. String ID des Kontos
    2. String Kontonummer des Gegenkontos
    3. String Bankleitzahl des Gegenkontos
    4. String Inhaber-Name des Gegenkontos
    5. String Verwendungszweck (Zeile 1, max. 27 Zeichen)
    6. String Verwendungszweck (Zeile 2, max. 27 Zeichen)
    7. double Betrag als Dezimalzahl(!)
    8. String Ausführungstermin im Format „dd.mm.yyyy“ oder „yyyy-mm-dd“
    9. String Textschlüssel (Auftragsart)
  • Rückgabe-Wert

Code-Beispiele

Java
Object[] params = {
  "1",              // ID des Kontos
  "1234567890",     // Kontonummer des Gegenkontos
  "12345678",       // BLZ des Gegenkontos
  "Max Mustermann", // Inhaber-Name des Gegenkontos
  "Zweck 1",        // Verwendungszweck, Zeile 1
  "Zweck 2",        // Verwendungszweck, Zeile 2
  1.5d,             // Betrag
  "15.01.2011",     // Ausfuehrungstermin
  "",               // Text-Schluessel
};
 
Object result = client.execute("hibiscus.xmlrpc.ueberweisung.create",params);
// Object result = client.execute("hibiscus.xmlrpc.lastschrift.create",params);
System.out.println(result);
PHP
$params = array(
  new xmlrpcval("1","string"),              // ID des Kontos
  new xmlrpcval("1234567890","string"),     // Kontonummer des Gegenkontos
  new xmlrpcval("12345678","string"),       // BLZ des Gegenkontos
  new xmlrpcval("Max Mustermann","string"), // Inhaber-Name des Gegenkontos
  new xmlrpcval("Zweck 1","string"),        // Verwendungszweck, Zeile 1
  new xmlrpcval("Zweck 2","string"),        // Verwendungszweck, Zeile 2
  new xmlrpcval(1.5,"double"),              // Betrag (Achtung: Punkt statt Komma, da Variable vom Typ double!)
  new xmlrpcval("15.01.2011","string"),     // Ausfuehrungstermin
  new xmlrpcval("","string")                // Text-Schluessel
);
 
$msg = new xmlrpcmsg("hibiscus.xmlrpc.ueberweisung.create",$params);
// $msg = new xmlrpcmsg("hibiscus.xmlrpc.lastschrift.create",array($params));
$response = $client->send($msg);
print($response->faultString());
print($response->value()->scalarval());

Auftrag löschen

public String delete(String id) throws RemoteException;
  • Name der Funktion: delete
  • Liste der Parameter
    1. String ID des zu löschenden Auftrages
  • Rückgabe-Wert

Code-Beispiele

Java
Object result = client.execute("hibiscus.xmlrpc.ueberweisung.delete",new Object[]{"13"});
// Object result = client.execute("hibiscus.xmlrpc.lastschrift.delete",new Object[]{"13"});
System.out.println(result);
PHP
$msg = new xmlrpcmsg("hibiscus.xmlrpc.ueberweisung.delete",array(new xmlrpcval("13","string")));
// $msg = new xmlrpcmsg("hibiscus.xmlrpc.lastschrift.delete",array(new xmlrpcval("13","string")));
$response = $client->send($msg);
print($response->value()->scalarval());


Impressum | Datenschutz
develop/xmlrpc/einzelauftrag.1297353138.txt.gz · Zuletzt geändert: d.m.Y H:i von willuhn