Protokoll

 

Das Protokoll von gastronovi Office ist Baumartig angeordnet und stellt Bereiche für die Antwort, Nachrichten etc. dar. Im Folgenden wird ein abstraktes Gesamtbeispiel dargestellt.


Abstraktes Protokollbeispiel 
 

array() {
  ["<MODEL>"] => array() {***DATA***}
  ["result"] => array(1) {
    ["<ACTION>"] => array(1) {
      ["<MODEL>"] => array(1) {
        [0] => array() {***DATA***}
        [1] => array() {***DATA***}
      }
    }
  }
  ["total"] => int(X)
  ["total_single"] => array() {
    ["<MODEL1>"] => int(X)
    ["<MODEL2>"] => int(X)
  }
  ["messages"] => array(1) {
    [0] => array(4) {
      ["text"] => string() "<STRING>"
      ["status"] => string(9) "cancelled|failed|successed"
      ["model"] => string(12) "<MODEL>"
      ["identifier"] => int(X)
    }
  }
  ["success"] => true|false
}


Status der Anfrage (success)


Über den Bereich „success“ wird man über den Status der gesamten Anfrage informiert. Der Status kann den Zustand „true“ oder „false“ annehmen.


Anzahl Treffer (total, total_single)


Es gibt zwei Bereiche für die Anzeige der Treffer. Der „total“-Bereich zeigt alle Treffer und der „total_single“-Bereich wiederum zeigt die Anzahl der verschiedenen Objekte an.

Beispiel: Anzeige der Treffer

["total"] => int(8)

  ["total_single"] => array() {

    ["Recipe"] => int(5)

    ["Order"] => int(3)

  }


Lesen (MODEL)

 

Beim Auslesen wird die Antwort direkt unter dem angeforderten „Model“-Bezeichner eingefügt. Wenn mann also z.B. Rezepte mit dem Aufruf „recipes/read“ ausgelesen hat, steht die Antwort direkt unter „Recipe“.

 

["Recipe"] => array() {

  [0] => array() {

    [„title“] => „Schnitzel“

    [„price“] => 12,9

...

  }

   ...

}


Antwort (result)



Der „result“-Bereich, enthält das Ergebnis einer Veränderung, die auf dem Server stattgefunden hat. Hier findet man alle Objekte die zum Bearbeiten, Löschen oder Erstellen angefordert wurden. Wenn man also ein Bearbeitungsvorgang für Angebote „CompanyPrice“ gestartet hat, findet man unter „result->updated->CompanyPrice“ alle veränderten Angebote.

 

Beispiel beim Bearbeiten von „CompanyPrice“ (Angebot)

["result"] => array(1) {
    ["updated"] => array(1) {
      ["CompanyPrice"] => array(1) {
        [0] => array(11) {
          ["value"] => string(12) "2.6255000000"
          ["comparevalue"] => string(12) "0.5251000000"
          ["discount"] => string(13) "11.0000000000"
          ["calculated_at"] => string(10) "1306165068"
          ["updated_at"] => string(10) "1306165068"
          ["version"] => string(1) "3"
          ["usedcount"] => string(1) "1"
          ["totalamount"] => string(32) "5.000000000000000000000000000000"
          ["comparevalue_discount"] => string(12) "0.0649000000"
          ["value_discount"] => string(12) "0.3245000000"
          ["uid"] => string(1) "1"
        }
      }
    }
  }

 

Nachrichten (messages)


Der Bereich „messages“ gibt benutzerfreundliche Nachrichten aus und zeigt zusätzlich den Ursprung der Nachricht über die Felder „Model“ und „Identifier“ an. 

Beispiel beim Lesen eines nicht vorhandenen Angebotes („CompanyPrice“)
 

["messages"] => array(1) {
    [0] => array(4) {
      ["text"] => string(101) "Fehler beim Bearbeiten. Es ist nicht erlaubt, den Eintrag zu bearbeiten oder er wurde nicht gefunden."
      ["status"] => string(9) "cancelled"
      ["model"] => string(12) "CompanyPrice"
      ["identifier"] => int(99)
    }
  }