Neu eigene CSV für Kampagne erstellen

MB Survival

Aktives Mitglied
12. Januar 2021
4
3
Hallo liebe Forengemeinde,
ich beabsichtige kurzfristig auf den JTL Shop 5 umzusteigen, benötige aber dringend Hilfe bei einer Sache.
Ich brauche eine CSV, die mir aus einer selbstdefinierten Kampagne (refID=XXX) die Anahl der Klicks und alle Bestellungen ausliest.
Der Aufbau sollte so gestaltet sein:

Besucher: XXX (alle Besucher mit diese refID)

Artikelnummer Menge Artikel Gesamtpreis Netto
12345 1 Testartikel 1 80,90
22222 5 Testartikel 2 9,29
22156 2 Testartikel 2 161,81
...

Das Affiliate Modul läuft nicht im 5er Shop und bei WebStollen klappt es zeitlich nicht zu helfen.
Kann mir jemand weiterhelfen und mir sagen, welche Dateien in die CSV includiert werden müssen, um die Daten aus den entsprechenden Tabellen zu bekommen?

Vielen Dank und herzliche Grüße
Martin
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.401
1.324
Leider kann ich zu deiner Frage nichts beitragen, aber hast du dich umgeschaut, wegen alternativen zum Webstollen-Affiliate-Plugin?

Wir möchten auch "bald" umstellen, aber das Affiliate soll ja - laut eigener Roadmap - erst Ende Q2 verfügbar sein.
 

MB Survival

Aktives Mitglied
12. Januar 2021
4
3
Hab mir was zurecht "gebastelt". Vielleicht nicht schön, funktioniert aber... Bei Interesse einfach mal anrufen - 030 81473698
 

MB Survival

Aktives Mitglied
12. Januar 2021
4
3
Hier nachfolgen der Code... Wie gesagt vielleicht nicht schön, aber funktioniert bei mir...
Den Code einfach mit einem Texteditor (z.B. Notepad) als Datei (mit Endung ".php") speichern und in den Shoproot laden.

Code:
<?php

require("includes/config.JTL-Shop.ini.php");

/*##########################################################################*/

$Table = "twarenkorbpos";
$Table1 = "tbestellung";
$Table2 = "tkampagnevorgang";
$Table3 = "tartikel";
$campain = "4"; //hier die eigene Kampagnennummer eintragen!

/*##########################################################################*/

// Wenn die CSV nicht gleich in einem Texteditor oder Excel geöffnet werden soll, dann diese 4 Zeilen auskommentieren!
header('Content-Type: text/x-csv');
header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Content-Disposition: attachment; filename=newsletter.csv');
header('Pragma: no-cache');

/*##########################################################################*/

/*Verbindung zur Datenbank aufnehmen*/
$conn = mysqli_connect( DB_HOST, DB_USER, DB_PASS, DB_NAME );
    if( !$conn ) {
        echo "Couldn't connect to database!<BR>";
    }


/*Anzahl der Klicks zählen und ausgeben*/   
$query_tvp = "SELECT count(*) as total from ".$Table2." WHERE kKampagneDef = 1";
    if ($result_tvp = $conn->query("$query_tvp")) {
    /* determine number of rows result set */
        $total_tvp = $result_tvp->fetch_row();
        $total_tvp = $total_tvp['0'];
        /* close result set */
        $result_tvp->close();
    }

echo "Besucher:;$total_tvp"."\r\n";



/*Tabellen und Spalten für Bestellungen aus der Kampagne auswählen*/
$ResultPointer = mysqli_query($conn, "SELECT distinct
                                             w.cArtNr,
                                             w.kArtikel,
                                             w.nAnzahl,
                                             w.cName,
                                             w.fPreisEinzelNetto,
                                             w.fPreis,
                                             w.kWarenkorb,
                                             w.kVersandklasse,
                                             b.dErstellt,
                                             b.kWarenkorb,
                                             b.kBestellung,
                                             b.cBestellNr,
                                             k.kKey,
                                             k.kKampagne,
                                             b.cStatus,
                                             a.kArtikel,
                                             a.kHersteller                                             
                                        FROM ".$Table." w
                                   LEFT JOIN ".$Table1." b
                                          ON b.kWarenkorb = w.kWarenkorb
                                   LEFT JOIN ".$Table2." k
                                          ON k.kKey = b.kBestellung                                             
                                   LEFT JOIN ".$Table3." a
                                          ON a.kArtikel = w.kArtikel                                             
                                       WHERE k.kKampagne = ".$campain."
                                         AND w.kVersandklasse != 0
                                         AND b.cStatus != -1
                                    ORDER BY b.cBestellNr DESC");


/*Kopfzeile ausgeben*/
echo "Datum;Artikelnummer;Anzahl;Artikel;Einzelpreis Netto;Gesamtpreis Netto;Hersteller"."\r\n";


for($i=0, $Export=""; $i<mysqli_num_rows($ResultPointer); $i++)
{
        $Daten = mysqli_fetch_object($ResultPointer);

        $timestamp = strtotime(str_replace("\"", "\"\"", $Daten->dErstellt));
        $Spalte[] = date('d.m.Y', $timestamp);
        $Spalte[] = str_replace("\"", "\"\"", $Daten->cArtNr);
        $anzahl = str_replace("\"", "\"\"", $Daten->nAnzahl);
        $anzahl = round($anzahl, 0);
        $Spalte[] = $anzahl;
        $Spalte[] = str_replace("\"", "\"\"", $Daten->cName);
        $price = str_replace("\"", "\"\"", $Daten->fPreisEinzelNetto);
        $price = round($price, 2);       
        $Spalte[] = number_format($price, 2, ',', '.') . "€";
        $gprice = str_replace("\"", "\"\"", $Daten->nAnzahl) * str_replace("\"", "\"\"", $Daten->fPreisEinzelNetto);
        $gprice = round($gprice, 2);       
        $Spalte[] = number_format($gprice, 2, ',', '.') . "€";
        $Spalte[] = str_replace("\"", "\"\"", $Daten->kHersteller);

        for($j=0; $j<count($Spalte); $j++)
        {
                $Export .= "\"" . $Spalte[$j] . "\"";
                if($j!=count($Spalte)-1)
                {
                        $Export .= ";";
                }
        }
        $Export .= "\r\n";
        $Spalte = array ();
}

echo $Export;

?>
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.401
1.324
Danke @MB Survival fürs zur VErfügung stellen an die Community, top!

Hilft mir pers. leider wenig, ich muss das auf der Seite für unsere Affiliates anzeigen lassen, alles andre (exports etc) würde die nur heillos überfordern :D
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Eigene Felder in ZUGFeRD integrieren User helfen Usern - Fragen zu JTL-Wawi 0
Neu Eigene Umsatzsteuer-ID fehlt oft in Aufträgen JTL-Wawi - Fehler und Bugs 3
Neu Eigene Artikel Felder im JTL Shop anzeigen lassen User helfen Usern - Fragen zu JTL-Wawi 4
Neu Beta-Tester gesucht: Produktdaten aus Artikelfotos schneller für JTL/CSV vorbereiten Dienstleistung, Jobs und Ähnliches 0
CSV Exportvorlage - SQL Abfrage Eigenes Feld JTL-Wawi 2.0 4
Artikelnamen bei Varioartikel nichtänderbar mit csv JTL-Wawi 1.10 0
Neu Wir suchen Mitstreiter für ein gemeinsames Konfigurator-Projekt Dienstleistung, Jobs und Ähnliches 0
Neu Wir suchen Mitstreiter für ein gemeinsames Konfigurator-Projekt User helfen Usern - Fragen zu JTL-Wawi 4
In Diskussion Workflow für Erinnerungen an bevorstehende Lieferungen JTL-Workflows - Ideen, Lob und Kritik 0
Neu Wie stelle ich Retouren in JTL für DPD ein? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu JTL Shop Plugin - BD Automatisierter Widerruf (Von Händler für Händler - Schluss mit Mail-Chaos & Spam-Sorgen!) Plugins für JTL-Shop 0
Wroker macht keinen abgleich für Kaufland JTL-Wawi 2.0 6
Neu Kundengruppeneinstellungen für Mindestabnahme und Abnahmeintervall löschen User helfen Usern - Fragen zu JTL-Wawi 0
Neu Installationsdatei für JTL‑Wawi 1.9.6.5 Installation von JTL-Wawi 2
Wie lange braucht ihr aktuell für die Anlage eines neuen Artikels? JTL-Wawi App 3
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
In Diskussion Tool für Abrechnung von Fulfillment Dienstleistungen Arbeitsabläufe im Fulfillment Network 0
Neu Widerrufsbutton für JTL-Shop 4 Allgemeine Fragen zu JTL-Shop 17
Neu Keine Labels für Warenpost international über Packtisch JTL-ShippingLabels - Fehler und Bugs 8
Neu Laut Backend Shop Update für Shop 5.71 - Download nicht zu finden? Betrieb / Pflege von JTL-Shop 3
Neu Meta Shop seit September 2025: JTL-Lösung für neue Checkout-URL gesucht Allgemeine Fragen zu JTL-Shop 0
Angebliche externe Aufträge "für Rechnungserstellung freigeben" und Rechnungen erstellen. Gibt es dazu eine akzeptable Erklärung von JTL? JTL-Wawi 1.11 1
Neu Artikelname & Beschreibung angepasst für jeweiligen Marktplatz Arbeitsabläufe in JTL-Wawi 1
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 0
API 2.1 für OnPrem? JTL-Wawi 2.0 6
Neu Dummy-ID oder Freiposition für Angebot mit mehrzeiliger Beschreibung JTL-Wawi - Ideen, Lob und Kritik 7
Neu Neue Kennzeichnungspflicht für Elektrogeräte (Altgeräterücknahme) Betrieb / Pflege von JTL-Shop 4
Neu Freelancer für JTL-Wawi, Shop & Prozessautomatisierung Dienstleistung, Jobs und Ähnliches 2
Neu Exportgenehmigung / Ausfuhrgenehmigung automatisch für Auslandskunden als Aufpreis Allgemeine Fragen zu JTL-Shop 2
Für Ihren SQL-Server wurde ein Service Pack zur Verfügung gestellt - nö, gelogen, wie kriege ich die Meldung weg? JTL-Wawi 1.11 15
Neu Ab welcher JTL Wawi Version ist der OnPremise REST API Endpoint POST /v2/returns oder POST /v1/returns für Create Return verfügbar? Schnittstellen Import / Export 0
Neu Seller2Go – Mobile App & JTL-Plugin für Bestellungen, Support und Produktmanagement Plugins für JTL-Shop 0
Neu Neues Plugin: Erweiterter Widerrufsbutton für JTL-Shop Plugins für JTL-Shop 9
JTL-Worker 2.0 - Einrichtung als Dienst - Auffälligkeiten und Problemlösungen für manche JTL-Wawi 2.0 3
Neu Muss man für DHL Versenden 4.0 einen neuen Benutzer bei DHL anlegen? JTL-ShippingLabels - Ideen, Lob und Kritik 2
Neu Retourenetikett für Briefe kann unter Internetmarke 2.0 nicht erstellt werden JTL-ShippingLabels - Fehler und Bugs 5
Neu Neue Tracking-URL für DPD JTL-ShippingLabels - Fehler und Bugs 4
AboutYou keine Felder für GPSR Daten SCX-(Ninepoint)-Anbindungen 0
globale Angebotsvorlage anpassen für eBay Angebote "Artikelspezifisch" JTL-Wawi 1.11 0
Neu Connectorupdates für Shopware 6.7.7 bzw 6.7.8? Shopware-Connector 39
Neu Streichpreise oder Rabatte für Staffelpreise von einem Artikel einrichten? Wie am Besten? JTL-Wawi 1.6 0
Neu DRIGEND HILFE!!! Ebay Abgleich endet mit Arithmetischer Überlauffehler für tinyint-Datentyp, Wert = -1. Die Anweisung wurde beendet. eBay-Anbindung - Fehler und Bugs 4
Neu Stornobeleg für Verkauf ohne Rechnung User helfen Usern - Fragen zu JTL-Wawi 9
Neu Neuentwicklung - Helpdesk für JTL Wawi - Eure Ideen und Wünsche? User helfen Usern - Fragen zu JTL-Wawi 4
Kein changelog für 1.11.8 JTL-Wawi 1.11 29
Text Vorbereitung für WAWI import JTL-Wawi 1.11 3
gelöst: Für diesen User wurde zum angegebenen Mandanten keine Firma gefunden!! JTL-Wawi 1.10 13
Neu Best Practices für den Export und die Automatisierung von täglichen Berichten in JTL‑WaWi User helfen Usern - Fragen zu JTL-Wawi 2

Ähnliche Themen