addinvoice billowrap

80 views
Skip to first unread message

Exact

unread,
Nov 25, 2012, 11:31:27 AM11/25/12
to billo...@googlegroups.com
Hi @all,

zunächst einmal möchte ich mich bedanke an Davor für die Bereitstellung seines Codes!.

Ich wollte zunächst ein wenig mit dem code von Davor spielen. Als Beispiel habe ich testweise die Funktion addInvoice aufgerufen und folgende Daten mit beigefügt.

 $test = array("invoice" => array(
            "client_id" => "1",
            "date" => "2009-11-18",
            "note" => "Vielen Dank für Ihren Auftrag",
        
        "invoice-items" => array(
            "invoice-item" => array(
            "unit" => "Stück",
            "unit_price" => "1.23",
            "quantity" => "1.5",
            "title" => "Muster"
            ),
        ),
        ),
);

$json = json_encode($test);
$billoWrap->addInvoice($json);

Leider erhalte ich eine weisse Seite... könntet Ihr mir vielleicht Helfen wo hier mein Denkfehler ist?


Schöne Grüße

Davor Ilic

unread,
Nov 25, 2012, 12:31:52 PM11/25/12
to billo...@googlegroups.com
Hallo danke fürs nutzen. Ich habe mal getestet und es passt alles, musst nur die von dir existierenden clienten_id eingeben dem du die Rechnung erstellen magst. So um etwas auszugeben gib vor dem $billoWrap->addInvoice($json) ein print davor

print  $billoWrap->addInvoice($json);

Davor Ilic

unread,
Nov 25, 2012, 12:58:46 PM11/25/12
to billo...@googlegroups.com
so habe auch ein kleines update durchgeführt wo du einfach deinen array übergeben kannst und dieser übergibt dann das richtig ausgewählte Objekt in deinem Falle JSON an billomat weiter.

lg,

Davor


Am Sonntag, 25. November 2012 17:31:27 UTC+1 schrieb Exact:

Exact

unread,
Nov 25, 2012, 5:23:58 PM11/25/12
to billo...@googlegroups.com
Vielen Dank!! Davor!!

jetzt läuft alles :)

Exact

unread,
Dec 3, 2012, 4:21:07 PM12/3/12
to billo...@googlegroups.com
Hi @all,

ich versuche gerade die einzelnen Artikel in einer Rechnung hinzuzufügen. Im Moment erzeugt er die Rechnung mit einer Position :(

//hier hol ich mir die einzelnen Artikel und Speicher sie mir in dem Array ab
[foreach]
 $shop_inv_pos = array("invoice-item" => array(
      "unit"      => "Stück",
      "quantity"  => $anzahl,
      "unit_price"  => $bruttopreis,
      "title"  => $titel,
      "description" => $variantenText
     
     
        ),);
  $resultset[] = $shop_inv_pos;
[/foreach]

nachdem ich alle Artikel habe bastel ich mir das Format zusammen:

$test = array("invoice" => array(
            "client_id" => $client_idnr,
            "label" => "Label Bezeichnung",
            "invoice-items" =>  $resultset,
             ),);         
 
  //Formatierung
  $json = json_encode($test);
 /*********Rechnungerstellen*******/
 $billoWrap->addInvoice($json);

//Billowrap Settings:
.....
$dataType = true; // Set to true, to output JSON Object, false otherwise for XML Object
      $convertData = false; // Convert the JSON or XML data to Array, false otherwise for not converting the object 
    $billoWrap = new billoWrap($bmId, $bmApiKey, $dataType, $convertData);
        /***************BilloMat Ende****************/


Problem: Im moment wird nur eine Pos. erstellt und nicht mehr :(. 

Hat hier jemand eine Idee was ich falsch mache?

Davor Ilic

unread,
Dec 3, 2012, 5:51:21 PM12/3/12
to billo...@googlegroups.com
Hei Exact,

jut das du es testest. Was genau ist ein Pos. Position ?
Welches von den beiden funktioniert nicht, die addInvoice ?

Ich habe den teil wo du wo du json_encode ausführst bereits in billoWrap intigriert das bedeutet bei dir nen schritt weniger vielleicht ist es ja das was den fehler auslöst bin mir aber nicht sicher da ich das denke ich auch mit eingebaut habe aber ich teste es mal.

Probier mal ohne der Zeile $json =json_encode($test);

Davor Ilic

unread,
Dec 3, 2012, 6:11:29 PM12/3/12
to billo...@googlegroups.com
sry schaue es mir morgen abend an bin zu kaputt muss noch in die arbeit. hab eine neue version drinnen in github versuch mal dort habe vielleicht das schon debugt weiß nur nimma mehr.

Den in der neuen version brauchst du json_encode nicht da kannste auch objecte übergeben findet sich eh im master hatte nur keine zeit dieses im readme zu erklären. also dur kannst direkt im addInvoice dein array übergeben so erstparst du dir den encoder von php auch in xml format möglich. bitte nochmal mit der neuen version testen. wenn das nicht klappt bin ich sowieso morgen dran dein fehler zu testen ausser du hast es bis dahin gelöst ^^ .

Exact

unread,
Dec 4, 2012, 4:59:42 PM12/4/12
to billo...@googlegroups.com
Danke Davor!,

ich guck mir jetzt das an. 

Davor Ilic

unread,
Dec 5, 2012, 11:41:40 AM12/5/12
to billo...@googlegroups.com
hats funktioniert?

Exact

unread,
Dec 5, 2012, 6:47:43 PM12/5/12
to billo...@googlegroups.com
leider nicht :(,  ich habe nun alles umgeschrieben. 

Ich Formatier gleich alles in XML um, blos jetzt weiß ich nicht wie ich die asXML(); an die addInvoice übergebe...

anbei der umgeschriebene Code:
........
 $dataType = false; // Set to true, to output JSON Object, false otherwise for XML Object
 $convertData = false; // Convert the JSON or XML data to Array, false otherwise for not converting the object 

 $billoWrap = new billoWrap($bmId, $bmApiKey, $dataType, $convertData);
.........
$xml = new SimpleXMLElement('<invoice/>');

$xml->addChild('client_id', $client_idnr);
$xml->addChild('label', "Label Bezeichnung");
$invoiceItems = $xml->addChild('invoice-items');

[foreach]
                $invoiceItem = $invoiceItems->addChild('invoice-item');
$invoiceItem->addChild('unit', 'Stück');
$invoiceItem->addChild('quantity', $anzahl);
$invoiceItem->addChild('unit_price', $bruttopreis);
$invoiceItem->addChild('title', $titel);
$invoiceItem->addChild('description', $variantenText);
[foreach end]

print_r $xml->asXML();

wie übergebe ich das nun an die addInvoice....

$billoWrap->addInvoice();

Schöne Grüße

Exact

unread,
Dec 5, 2012, 7:20:06 PM12/5/12
to billo...@googlegroups.com
Okay jetzt kann ich das speichern...

$output = $xml->asXML();

Jetzt habe ich das Problem das er mir meinen Client nicht anlegt :(. Ich finde im Moment meinen Fehler nicht :(.

$xmlClient = new SimpleXMLElement('<client/>');
$xmlClient->addChild('name', 'NAME1');
$xmlClient->addChild('salutation','HERR');
$xmlClient->addChild('first_name','FIRST');
$xmlClient->addChild('last_name','LAST');
$xmlClient->addChild('street','STREET');
$xmlClient->addChild('zip','ZIPPLZ');
$xmlClient->addChild('city','CITYYY');
$xmlClient->addChild('state','STAEEETE');
$xmlClient->addChild('country_code','DE');
 
$client = $xmlClient->asXML();
$client_objekt = $billoWrap->addClient($client);
$client_idnr = $client_objekt->client->id;
.....

Davor Ilic

unread,
Dec 6, 2012, 3:06:02 PM12/6/12
to billo...@googlegroups.com
ich schau mir das gleich an und versuche es selber da ich jetzt das ganze auch für mich jetzt schreiben muss. ich muss nur kurz weg bin aber so ca in ner stunde wieder da und kann dir bericht erstatten was nicht passt oder was ich falsch gemacht habe xD was ich eher glaube oder meine doku ist mies und man versteht es falsch. mal sehen ich gebe dir gleich bescheid.

Exact

unread,
Dec 6, 2012, 3:13:58 PM12/6/12
to billo...@googlegroups.com
merci :), bis gleich

Davor Ilic

unread,
Dec 7, 2012, 4:54:54 AM12/7/12
to billo...@googlegroups.com
verdammt sorry ich war gestern dabei als ich mich kurz hingelegt hatte war ich weg leider viel zu tun diesen monat das ich kaum zum ausruhen komme aber heute bin ich auf jeden fall dir dabei zu helfen um 15:30 schau ich mir das auf jeden fall an. tut mir wircklich leid wegen gestern. bekommst heute die auflösung hoffe das kommt nicht zu spät.

Exact

unread,
Dec 7, 2012, 6:42:29 PM12/7/12
to billo...@googlegroups.com
Kein Thema Davor! kein Stress wir kriegen das schon hin, ich werde mir das morgen auch in Ruhe nochmal angucken :)

Exact

unread,
Dec 8, 2012, 7:59:07 PM12/8/12
to billo...@googlegroups.com
Okay ich habs jetzt :) danke Davor !

Davor Ilic

unread,
Dec 8, 2012, 11:46:23 PM12/8/12
to billo...@googlegroups.com
kannst du vielleicht helfen wie du es geschaft hast? was war das problem und was war die lösung damit könnt ich vielleicht auch der dokumentation helfen.

Exact

unread,
Dec 18, 2012, 4:39:25 PM12/18/12
to billo...@googlegroups.com
HEy Davor,

mich hatte es richtig erwischt (Erkältung)....,

ich hab bei billomat (kostenloser account die Kunden die ich erstellt habe ) gelöscht und es ging wieder ohne Probleme :).

Schönen Abend dir noch 

Davor Ilic

unread,
Dec 20, 2012, 8:26:41 AM12/20/12
to billo...@googlegroups.com
Kein ding mich auch sitze morgen wieder in der arbeit ^^.
Also war der fehler das du http genutzt hast oder. kannst du den fehler genauer erläutern.
Reply all
Reply to author
Forward
0 new messages