profacto bietet einen token-gesicherten Zugriff auf ausgewählte Tabellen und Felder mit sehr flexibler Architektur. Bei Wünschen für zusätzliche Tabellen, API-Sets oder als externer Entwickler sprich uns gerne an.
...
(entspricht KundenNr=131 AND Ort=Hildesheim)
Vollständiges Beispiel:
http://meinServer:8080/4DAction/api_get?token=124&table=Ansprechpartner&fields=Anrede,Geschlecht,Name,VorName,email,Telefon,MobilTel,isInaktiv,Suchfeld1&query=TypNr%3D131
Operatoren
Für eine Übersicht der query-Syntax bitte folgende Darstellung verwenden (Übersetzung folgt).
Symbole zum Vergleichen von Attribut und Value. Es gibt folgende Symbole:
Vergleich Symbol(e) Kommentar Ist gleich =, == Erhält passende Daten, unterstützt den Joker @, berücksichtigt weder Groß- und Kleinschreibung noch diakritische Zeichen. ===, IS Erhält passende Daten, bewertet @ als Standardzeichen und nicht als Joker, berücksichtigt weder Groß- und Kleinschreibung noch diakritische Zeichen. Ungleich zu #, != unterstützt den Joker (@) !==, IS NOT bewertet @ als Standardzeichen und nicht als Joker Kleiner als < Größer als > Kleiner als oder gleich <= Größer als oder gleich >= Enthalten in IN Erhält Daten, die mit mindestens einem Wert in einer Collection bzw. einem Satz Werte übereinstimmt Nicht enthalten in einer Anweisung NOT Klammern sind zwingend, wenn NOT vor einer Anweisung mit mehreren Operatoren verwendet wird Enthält Schlüsselwort % Schlüsselwörter lassen sich in Attributen vom Typ String oder Bild verwenden - Value: Wert zum Vergleichen mit dem aktuellen Wert der Eigenschaft.
Für eine Suche nach einem String innerhalb eines anderen String (eine Suche "Enthalten in") verwenden Sie den Joker (@) in value, um den zu suchenden String zu isolieren, zum Beispiel: "@Smith@".
Für numerische Werte dient Punkt als Dezimaltrenner. Datumsangeben müssen im Format "YYYY-MM-DD" sein.
Bei einer Suche mit einem IN Vergleichsoperator muss value eine Collection sein bzw. Werte, die zum Typ des Attributspfads zwischen eckigen Klammern [] passen, getrennt durch Kommas (bei Strings müssen Anführungszeichen " mit "\" abschließen). LogicalOperator: verbindet mehrere Bedingungen in der Suche (optional). Es gibt folgende logische Operatoren (Sie können Name oder Symbol übergeben):
Konjunktion Symbol(e) AND &, &&, and OR |, ||, or - order by Attribut: Sie können eine Anweisung order by Attribute in der Suche hinzufügen, so dass die Ergebniswerte sortiert werden. Sie können mehrere Sortieranweisungen, durch Komma getrennt, verwenden, (z.B. order by Attribut1 desc, Attribut2 asc). Die Sortierung ist standardmäßig aufsteigend. Übergeben Sie 'desc' für absteigende Reihenfolge und 'asc' für aufsteigende Reihenfolge
...
{"Error":["Das Feld Quatschfeld ist nicht vorhanden."],"Kunden":[{"KundenNr":"100001"},{"KundenNr":"_SMIMR100019"},{"KundenNr":"MIMR2100003"},{"KundenNr":"131"},{"KundenNr":"130"},{"KundenNr":"129"},{"KundenNr":"128"},{"KundenNr":"127"},{"KundenNr":"125"},{"KundenNr":"124"},{"KundenNr":"123"},{"KundenNr":"100018"},{"KundenNr":"100015"},{"KundenNr":"MIMR1000012"},{"KundenNr":"126"},{"KundenNr":"100013"},{"KundenNr":"100009"},{"KundenNr":"100008"},{"KundenNr":"100012"},{"KundenNr":"100006"},{"KundenNr":"100005"},{"KundenNr":"100003"},{"KundenNr":"100004"},{"KundenNr":"100002"}]}
...
{"success":false,"error":"Datensatz der Tabelle Kunden mit Schlüssel KundenNr:MIMR18100019 ist gesperrt und kann nicht geschrieben werden.","processingTime":7575,"errorMsg":"Datensatz der Tabelle Kunden mit Schlüssel KundenNr:MIMR18100019 ist gesperrt und kann nicht geschrieben werden."}
...
Erforderliche Parameter:
Token
Konkretes Beispiel:
http://meinServer:8080/4DAction/api_getapilist?token=5E05A427CD134432A28F2DAF11EC500E
In der JSON-Rückmeldung wird eine Liste aller verfügbaren Schnittstellen im Feld 'APIList' zurückgegeben:
...
Ausgeschlossene Parameter:
PKUUID_90
Optionale Parameter:
Telefon, Telefax
...
http://meinserver:8080/4DAction/api_put_contact?token=5223EE4D186449B0BDBE9ED7EC53F747&VorName=Heinz&Name=Ruehmann&TypNr=_0573&Typ=1&Telefon=089&Telefax=0891
Zu Beachten ist, daß die TypNr je nach Ansprechpartner der KundenNr, LieferantenNr oder PersonalNr entsprechen sollte.
...
In der JSON-Rückmeldung wird auch die neue vergebene UUID zurückgeliefert:
{"success":true,"error":"","processingTime":1326,"errorMsg":"","recNum":885,"UUID":"3665FF277C1C4589AD07C075EA159314"}
api_time_getpositions - Projektpositionen
...
{"success":true,"error":"","zeiten":[{"AuftragsNr":"M059100019","VonZeit":21600,"BisZeit":43200,"PositionsNr":3,"KSTNR":200,"GesamtZeit":6,"Bemerkung":"","Nachweis":false,"FeedbackRequired":true,"BisZeitIstPausenAnfang":false,"VonZeitIstPausenEnde":false,"Zeitart":"B","Pause":0.5},{"AuftragsNr":"M059100019","VonZeit":43200,"BisZeit":64800,"PositionsNr":3,"KSTNR":400,"GesamtZeit":6,"Bemerkung":"","Nachweis":false,"FeedbackRequired":true,"BisZeitIstPausenAnfang":false,"VonZeitIstPausenEnde":false,"Zeitart":"B","Pause":0.5}],"processingTime":6,"errorMsg":"","procTime2":0}
...