Export Verkaufspreise mit Staffeln und Gruppen 086

Hallo,

ich ersuche, meine Staffelpreise zu exportieren. Es gibt den Bericht 086. Dieser erzeugt für jeden Artikel, mit jedem Preis und Staffel eine eigene Zeile, was sehr gut ist. Allerdings fehlt die Beziehung der Werte zur Kundengruppe bzw. Kundennummer. Kann mir jemand helfen, das SQL Statement um Kundengruppe und Kundenummer zu erweitern?

Das aktuelle lautet:

SELECT
p.name_de,
p.nummer,
p.gueltig_ab,
p.gueltig_bis,
p.ab_menge,
p.preis,
p.waehrung,
p.art
FROM (
(SELECT ‘EK’ as art, a.nummer, a.name_de, ek.preis, ek.waehrung, ek.ab_menge, ‘’ as gueltig_ab, IF(ek.gueltig_bis = ‘0000-00-00’, ‘unbegrenzt’, DATE_FORMAT(ek.gueltig_bis, ‘%d.%m.%Y’)) AS gueltig_bis
FROM einkaufspreise ek
LEFT JOIN artikel a ON ek.artikel = a.id
WHERE a.geloescht = 0)
UNION ALL
(SELECT ‘VK’ as art, a.nummer, a.name_de, vk.preis, vk.waehrung, vk.ab_menge, IF(vk.gueltig_ab = ‘0000-00-00’, ‘aktuell’, DATE_FORMAT(vk.gueltig_ab, ‘%d.%m.%Y’)) AS gueltig_ab, IF(vk.gueltig_bis = ‘0000-00-00’, ‘unbegrenzt’, DATE_FORMAT(vk.gueltig_bis, ‘%d.%m.%Y’)) AS gueltig_bis FROM verkaufspreise vk LEFT JOIN artikel a ON vk.artikel = a.id WHERE a.geloescht = 0)
) p
ORDER BY p.nummer

Danke vorab!

Phuc-An

Hallo @Phuc-An_Tran

du kannst in Xentral die Datenbankansicht aufrufen und darin nachschauen wie das Feld in der Datenbank heisst. Ich tipp auf p.gruppe oder p.kunde für due Felder die du suchst.

liebe Grüsse

David

Hallo Daniel,

in der Datenbankansicht gibt es “gruppen”, jedoch keine kundennummer.

Ich tue mir schwer, das Script zu verändern. Könntest Du mir beispielhaft im Script zeigen, wie ich p.gruppen abrufe?

Danke

Phuc-An

Hallo @Phuc-An_Tran ,

schau gerne mal, ob wir diese Variante des Berichts nicht bereits in unserem Shop haben: https://xendoit.de/?s=preise&post_type=product&type_aws=true

Falls nicht, können wir die Anpassung auch für die vornehmen. Nutze dann das Kontaktformular auf unserer Seite.

Dein Xendoit-Team

Hi @Phuc-An_Tran

Alternativ habe ich dir hier auch einen Bericht mit mehr Filtermöglichkeiten. Wenn du nur die Preise Exportieren möchtest.

Filter:

Preis: 59 EUR

@Phuc-An_Tran für Einkaufspreise gibt es keine Gruppen. Ansonsten sollte es wie folgt funktionieren:
Du bekommst halt nur die IDs der Gruppe und Adresse ausgegeben.

SELECT 
    p.name_de, 
    p.nummer,
    p.gueltig_ab, 
    p.gueltig_bis,
    p.ab_menge, 
    p.preis, 
    p.waehrung,
    p.art,
    p.adresse,
    p.gruppe
FROM (
    (SELECT 
        'EK' as art, 
        a.nummer, 
        a.name_de, 
        ek.preis, 
        ek.waehrung, 
        ek.ab_menge, 
        '' as gueltig_ab, 
        IF(ek.gueltig_bis = '0000-00-00', 'unbegrenzt', DATE_FORMAT(ek.gueltig_bis, '%d.%m.%Y')) AS gueltig_bis,
        ek.adresse, 
        NULL as gruppe
    FROM 
        einkaufspreise ek 
    LEFT JOIN 
        artikel a ON ek.artikel = a.id
    WHERE 
        a.geloescht = 0)

    UNION ALL

    (SELECT 
        'VK' as art, 
        a.nummer, 
        a.name_de, 
        vk.preis, 
        vk.waehrung, 
        vk.ab_menge, 
        IF(vk.gueltig_ab = '0000-00-00', 'aktuell', DATE_FORMAT(vk.gueltig_ab, '%d.%m.%Y')) AS gueltig_ab, 
        IF(vk.gueltig_bis = '0000-00-00', 'unbegrenzt', DATE_FORMAT(vk.gueltig_bis, '%d.%m.%Y')) AS gueltig_bis,
        vk.adresse, 
        vk.gruppe
    FROM 
        verkaufspreise vk 
    LEFT JOIN 
        artikel a ON vk.artikel = a.id
    WHERE 
        a.geloescht = 0)
) p
ORDER BY 
    p.nummer

Danke sehr Christian, das funktioniert! Ich musste nur die ids der Kunden und Gruppen gegen deren Namen manuell austauschen

Das könnte man bei Bedarf auch noch erweitern. Ist halt aufwendiger, weil diese Informationen in anderen Tabellen in Xentral stehen.