====== XML-RPC: Umsätze ====== * Name des Service: **hibiscus.xmlrpc.umsatz** ===== Schlüssel-Namen ===== ^ Bezeichnung ^ Beschreibung ^ | id | ID des Umsatzes (eindeutig auch konto-übergreifend) | | konto_id | ID des Kontos, dem der Umsatz zugeordnet ist | | empfaenger_name | Inhaber-Name des Gegenkontos | | empfaenger_konto | Kontonummer des Gegenkontos | | empfaenger_blz | Bankleitzahl des Gegenkontos | | art | Buchungsart | | betrag | Betrag im Locale-spezifischen Format des Systems | | valuta | Valuta-Datum im Format dd.mm.yyyy | | datum | Buchungsdatum im Format dd.mm.yyyy | | zweck | Verwendungszweck, bereinigt um SEPA-Tags. Er enthält also keine EREF-,KREF,...-Tags | | zweck_raw | Der originale Verwendungszweck incl. der SEPA-Tags | | saldo | Saldo des Kontos zu diesem Zeitpunkt im Locale-spezifischen Format des Systems | | primanota | Primanota-Kennzeichen | | customer_ref | Kundenreferenz | | umsatz_typ | Name der Umsatzkategorie (falls zugeordnet) | | kommentar | Kommentar (Freitext) | ===== Verfügbare Funktionen ===== ==== Liste der Umsätze ermitteln ==== public List> list(HashMap options) throws RemoteException; * Name der Funktion: **list** * Liste der Parameter - **struct** Struct mit Suchkriterien. Folgende Schlüssel können im Struct verwendet werden: * **konto_id** ID des Kontos, dem der Umsatz zugeordnet ist * **art** Buchungsart * **empfaenger_name** Inhaber-Name des Gegenkontos * **empfaenger_konto** Kontonummer des Gegenkontos * **empfaenger_blz** Bankleitzahl des Gegenkontos * **id** ID des Umsatzes * **id:min** niedrigste zulässige ID des Umsatzes * **id:max** höchste zulässige ID des Umsatzes * **saldo** Saldo des Kontos bei diesem Umsatz * **saldo:min** niedrigster zulässiger Saldo des Kontos bei diesem Umsatz * **saldo:max** höchster zulässiger Saldo des Kontos bei diesem Umsatz * **valuta** Valuta-Datum im Format "dd.mm.yyyy" oder "yyyy-mm-dd" * **valuta:min** niedrigstes Valuta-Datum im Format "dd.mm.yyyy" oder "yyyy-mm-dd" * **valuta:max** höchstes Valuta-Datum im Format "dd.mm.yyyy" oder "yyyy-mm-dd" * **datum** Buchungsdatum im Format "dd.mm.yyyy" oder "yyyy-mm-dd" * **datum:min** niedrigstes Buchungsdatum im Format "dd.mm.yyyy" oder "yyyy-mm-dd" * **datum:max** höchstes Buchungsdatum im Format "dd.mm.yyyy" oder "yyyy-mm-dd" * **betrag** Betrag des Umsatzes * **betrag:min** niedrigster zulässiger Betrag des Umsatz * **betrag:max** höchster zulässiger Betrag des Umsatzes * **primanota** Primanota-Kennzeichen * **customer_ref** Kunden-Referenz * **umsatz_typ** Name oder ID der Umsatz-Kategorie * **zweck** Verwendungszweck * Rückgabe-Werte: **array** (Liste mit "struct"-Elementen) \\ Liste der gefundenen Umsätze. Jedes Element der Liste enthält einen Umsatz in Form eines Struct mit den o.g. Schlüsseln === Code-Beispiele === == Java == import java.util.Map; import java.util.HashMap; Map params = new HashMap(); params.put("zweck","test"); params.put("datum:min","01.01.2010"); params.put("datum:max","31.12.2011"); Object[] l = (Object[]) client.execute("hibiscus.xmlrpc.umsatz.list",new Object[]{params}); for (Object o:l) { System.out.println(o); } == PHP == $params = new xmlrpcval( array( "zweck" => new xmlrpcval("test","string"), "datum:min" => new xmlrpcval("01.01.2010","string"), "datum:max" => new xmlrpcval("31.12.2011","string") ),"struct"); $msg = new xmlrpcmsg("hibiscus.xmlrpc.umsatz.list",array($params)); $response = $client->send($msg); $value = $response->value(); for ($i=0;$i<$value->arraySize();$i++) { $umsatz = $value->arrayMem($i); print("ID : ".$umsatz->structMem("id")->scalarVal()."\n"); print("Name : ".$umsatz->structMem("empfaenger_name")->scalarVal()."\n"); print("Konto : ".$umsatz->structMem("empfaenger_konto")->scalarVal()."\n"); print("BLZ : ".$umsatz->structMem("empfaenger_blz")->scalarVal()."\n"); print("Betrag: ".$umsatz->structMem("betrag")->scalarVal()."\n"); print("Zweck : ".$umsatz->structMem("zweck")->scalarVal()."\n"); print("\n"); } ==== Liste der Umsätze ermitteln (veraltet) ==== | **deprecated** Diese Funktion existiert aus Gründen der Abwärtskompatibilität weiterhin. \\ Verwende künftig jedoch bitte die andere Funktion **[[develop:xmlrpc:umsatz#liste_der_umsaetze_ermitteln|list]]** mit dem "struct"-Parameter - die neue Funktion liefert zudem detailliertere Rückgabe-Werte. | public String[] list(String text, String von, String bis) throws RemoteException; * Name der Funktion: **list** * Liste der Parameter - **String** Suchbegriff (darf leer sein) - **String** Start-Datum im Format "dd.mm.yyyy" oder "yyyy-mm-dd" (darf leer sein) - **String** End-Datum im Format "dd.mm.yyyy" oder "yyyy-mm-dd" (darf leer sein) * Rückgabe-Werte: **array** (Liste mit "String"-Elementen) \\ Liste der gefundenen Umsätze. Die Werte in jeder Zeile sind durch Doppelpunkte getrennt.\\ \\ Aufbau der Zeilen ::::::::::::: === Code-Beispiele === == Java == Object[] list = (Object[]) client.execute("hibiscus.xmlrpc.umsatz.list",new String[]{"","01.01.2010","31.12.2011"}); for (Object o:list) { System.out.println(o); } == PHP == $msg = new xmlrpcmsg("hibiscus.xmlrpc.umsatz.list",array(new xmlrpcval("","string"), new xmlrpcval("01.01.2010","string"), new xmlrpcval("31.12.2011","string"))); $response = $client->send($msg); $value = $response->value(); for ($i=0;$i<$value->arraySize();$i++) { print($value->arrayMem($i)->scalarVal()."\n"); }