Managed Server
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Kundennummer in Rechnung/Lieferschein fehlt

    sowieso-max

    • Neu im Forum
    • Beiträge: 18
    Kundennummer in Rechnung/Lieferschein fehlt
    am: 02. November 2016, 09:09:55
    Guten Morgen miteinander,

    leider fehlen die Kundennummern in den Rechnungen/Lieferscheinen.

    Erst wenn ich die Bestellung bearbeite und die Kundennummer des Käufers manuell eintrage, wird sie angezeigt.

    Mit {debug} hat die $csID leidr auch keinen Wert.

    admin/print_order.php , Zeile 45
    Code: PHP  [Auswählen]
      $smarty->assign('vat_id',$order->customer['vat_id']);
     

    Rechnungs Template
    Code: PHP  [Auswählen]
    {if $csID}<strong>{#csID#}</strong> {$csID}<br />{/if}

    Da wurde nichts dran geändert.

    ( v1.06 rev 4642 SP2 )

    Hat jemand eine Idee?

    Viele Grüße und danke im vorraus

    Linkback: https://www.modified-shop.org/forum/index.php?topic=35977.0

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Re: Kundennummer in Rechnung/Lieferschein fehlt
    Antwort #1 am: 02. November 2016, 09:39:35
    Tabelle customers Feld customers_cid ist überall eine Kundennummer drin?

    Kurzerklärung .... es gibt Shops bei denen customers_id === customers_cid, bei anderen ist customers_id nur im Shop und customers_cid wird per Hand oder Schnittstelle gefüllt.

    Wenn bei Dir customers_id === customers_cid ist, müsstest Du das im code so umbauen, das entweder bei der Ausgabe die customers_id genommen wird, oder bei jeglichen Änderungen des Kundenkontos ins Feld customers_cid der Wert von customers_id mit reingeschrieben wird.

    sowieso-max

    • Neu im Forum
    • Beiträge: 18
    Re: Kundennummer in Rechnung/Lieferschein fehlt
    Antwort #2 am: 04. November 2016, 11:36:21
    Also das Feld customers_cid in Tabelle customers ist befüllt mit den Kundennummern.

    admin/print_order.php Zeile 44
    Code: PHP  [Auswählen]
      $smarty->assign('csID',$order->customer['csID']);

    In der Tabelle orders Feld customers_cid ist allerdings leer.

    Bekomme ich das Feld irgendwie automatisiert befüllt, dass ich nicht immer per Hand die Kundennummer eintragen muss?

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Re: Kundennummer in Rechnung/Lieferschein fehlt
    Antwort #3 am: 04. November 2016, 12:11:45
    Ich weiß jetzt nicht aus dem Kopf wo die order das erste mal angefasst wird und in die DB geschrieben. finde die Stelle und wir bauen es um ;-)

    ShopNix

    • Viel Schreiber
    • Beiträge: 1.208
    Re: Kundennummer in Rechnung/Lieferschein fehlt
    Antwort #4 am: 04. November 2016, 12:37:16
    ...
    Bekomme ich das Feld irgendwie automatisiert befüllt, dass ich nicht immer per Hand die Kundennummer eintragen muss?

    Ich bin nicht so ganz sicher, ob ich Dich recht verstehe. Das Feld customers_cid ist für die Kundennummer aus einem Warenwirtschaftssystem vorgesehen, soll also von Hand oder über eine Schnittstelle befüllt werden.

    Die interne Kundennummer des Shops ist die customers_id und wird vom System vergeben.

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Re: Kundennummer in Rechnung/Lieferschein fehlt
    Antwort #5 am: 04. November 2016, 16:00:24
    Ich habe es so verstanden:
    Feld customers_cid in customers ist bereits mit Kundennummer versehen.

    Wenn er aber im Backend auf Lieferschein oder Rechnung drückt, fehlt die.

    Das scheint daran zu liegen, dass customers_cid in Tabelle orders nicht befüllt ist.

    3 Lösungswege:
    1) rausfinden warum die customers_cid nicht in Tabelle orders steht und das fixen (da fällt mir ein .... Wenn die Bestellung gemacht wird BEVOR der Kunde eine customers_cid hatte, ist das Feld logischerweise leer)
    2) Bei Lieferscheinen / Rechnungen die customers_cid nicht aus Tabelle orders lesen, sondern aus customers. Dafür könnte man den SQL Query umbauen, der die orders Tabelle liest.
    3) Einen SQL query bauen, der alle customers.customers_cid in orders.customers_cid kopiert wo customers.customers_id = orders.customers_id

    sowieso-max

    • Neu im Forum
    • Beiträge: 18
    Re: Kundennummer in Rechnung/Lieferschein fehlt
    Antwort #6 am: 08. November 2016, 15:34:12
    Danke für eure Mühe bislang!

    Zitat
    3 Lösungswege:
    1) rausfinden warum die customers_cid nicht in Tabelle orders steht und das fixen (da fällt mir ein .... Wenn die Bestellung gemacht wird BEVOR der Kunde eine customers_cid hatte, ist das Feld logischerweise leer)
    2) Bei Lieferscheinen / Rechnungen die customers_cid nicht aus Tabelle orders lesen, sondern aus customers. Dafür könnte man den SQL Query umbauen, der die orders Tabelle liest.
    3) Einen SQL query bauen, der alle customers.customers_cid in orders.customers_cid kopiert wo customers.customers_id = orders.customers_id

    Also ich hätte es gerne so, dass ich bei einer ganz normalen Bestellung (auch Erstkunde) schon die Kundennummer - vom System - in der Rechnung mit dabei habe (die auch im Backend unter Kunden zu sehen ist).

    In der Tabelle customers Feld customers_cid ist befüllt (vom System her).
    Tabelle orders Feld customers_cid ist leer.

    ShopNix

    • Viel Schreiber
    • Beiträge: 1.208
    Re: Kundennummer in Rechnung/Lieferschein fehlt
    Antwort #7 am: 08. November 2016, 16:22:41
    Ich bin immer noch nicht sicher, ob ich Dich richtig verstehe.  :-(

    Willst die vom System vergebenen customers_id als Kundennummer customers_cid verwenden?

    In dem Falle solltest Du im Code die Inserts auf die Tabelle customers suchen, und dort jeweils nach dem Insert- ein Update-Statement absetzen. Eine geeignete Stelle im Code wäre zum Beispiel da, wo die default-Adresse angelegt wird, da musst Du kein neues Query absetzen, sondern kannst das vorhandene einfach um eine Zeile erweitern.

    Z.B. in create_account.php:

     
    Code: PHP  [Auswählen]
    xtc_db_query("UPDATE ".TABLE_CUSTOMERS."
                         SET customers_default_address_id = '"
    .(int)$address_id."'
                       WHERE customers_id = '"
    .(int)$_SESSION['customer_id']."'");

    ersetzen durch

     
    Code: PHP  [Auswählen]
    xtc_db_query("UPDATE ".TABLE_CUSTOMERS."
                         SET customers_default_address_id = '"
    .(int)$address_id."',
                                customers_cid = customers_id
                       WHERE customers_id = '"
    .(int)$_SESSION['customer_id']."'");

    sowieso-max

    • Neu im Forum
    • Beiträge: 18
    Re: Kundennummer in Rechnung/Lieferschein fehlt
    Antwort #8 am: 08. November 2016, 16:41:46
    Wow, danke! Gerade getestet mit einem neuen Account. Das langt mir vollkommen :thumbs:
    Bei den vorherigen Bestellungen füge ich einfach die alten Kundennummern hinzu.

     :close:
    rechtstexte für onlineshop
    12 Antworten
    10771 Aufrufe
    28. August 2014, 12:31:07 von Hendrik1
    8 Antworten
    4302 Aufrufe
    03. Juni 2010, 17:37:59 von Aquarienfreude
    6 Antworten
    5148 Aufrufe
    28. Januar 2016, 07:28:54 von Fakrae
    6 Antworten
    2213 Aufrufe
    10. Februar 2017, 20:05:07 von Tomcraft