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: Kundengruppe gelöscht

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Kundengruppe gelöscht
    am: 29. Juli 2010, 02:01:26
    Hallo,

    ich habe einmal vor Ewigkeiten eine Kundengruppe gelöscht und dann neu erstellt, anstatt eine vorhandene abzuändern.
    Prinzipiell ja egal, aber mich stört es jedes mal wenn ich in die Datenbank gucke, da ich dort dann
    personal_offers_by_customers_status_0 ...1 ...3 ...4 ...5 habe und auch vom Standard abweiche.

    Kann ich das im nachhinein wieder ändern, damit ich auch wieder näher am Standard bin ?

    Was ich herausgefunden habe, ist die customers_status ID in folgenden Tabellen in Verwendung:
    admin_access
    customers
    customers_status mit Primärschlüssel
    newsletter_recipients
    orders

    Wenn ich jetzt bei 3 anfange und dann bis 5 die ID um -1 pro Datensatz in den ID-Feldern runtersetze, klappt das dann ?
    Zum Schluss müsste dann die Tabelle customers_status neu erstellt werden, damit die IDs für neue Gruppen wieder stimmen.



    Linkback: https://www.modified-shop.org/forum/index.php?topic=6954.0
    Templateshop - Eine große Auswahl an neuen und modernen Templates für die modified eCommerce Shopsoftware

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Kundengruppe gelöscht
    Antwort #1 am: 29. Juli 2010, 03:03:29
    Hi speedy,

    meine Idee wäre, lade dir die USB Version von modified eCommerce Shopsoftware auf einen USB-Stick, oder eben ein freies Laufwerk, spiele dort die DB rein und teste es einfach. ;-)

    Grüße

    Torsten

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Kundengruppe gelöscht
    Antwort #2 am: 29. Juli 2010, 03:05:59
    Kann ich machen, aber "Folgeprobleme" oder an etwas nicht gedacht zu haben fällt manchmal erst auf, wenn schon zu viel Zeit vergangen ist.

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Kundengruppe gelöscht
    Antwort #3 am: 30. Juli 2010, 00:12:54
    Also prinzipiell ist die Änderung bzw. das Aufrücken der ID bei "Lücken" möglich, man muss aber sehr sorgfältig vorgehen.

    Man muss das auf seine Bedürfnisse anpassen und jedes SQL-Statement zeilenweise in phpMyAdmin ausführen.

    Code: SQL  [Auswählen]
    UPDATE customers SET customers_status=customers_status-1 WHERE customers_status = 3
    UPDATE customers SET customers_status=customers_status-1 WHERE customers_status = 4
    UPDATE customers SET customers_status=customers_status-1 WHERE customers_status = 5

    DROP TABLE customers_status

    CREATE TABLE IF NOT EXISTS customers_status (
      customers_status_id INT(11) NOT NULL DEFAULT '0',
      language_id INT(11) NOT NULL DEFAULT '1',
      customers_status_name VARCHAR(32) NOT NULL DEFAULT '',
      customers_status_public INT(1) NOT NULL DEFAULT '1',
      customers_status_min_order INT(7) DEFAULT NULL,
      customers_status_max_order INT(7) DEFAULT NULL,
      customers_status_image VARCHAR(64) DEFAULT NULL,
      customers_status_discount DECIMAL(4,2) DEFAULT '0.00',
      customers_status_ot_discount_flag CHAR(1) NOT NULL DEFAULT '0',
      customers_status_ot_discount DECIMAL(4,2) DEFAULT '0.00',
      customers_status_graduated_prices VARCHAR(1) NOT NULL DEFAULT '0',
      customers_status_show_price INT(1) NOT NULL DEFAULT '1',
      customers_status_show_price_tax INT(1) NOT NULL DEFAULT '1',
      customers_status_add_tax_ot INT(1) NOT NULL DEFAULT '0',
      customers_status_payment_unallowed VARCHAR(255) NOT NULL,
      customers_status_shipping_unallowed VARCHAR(255) NOT NULL,
      customers_status_discount_attributes INT(1) NOT NULL DEFAULT '0',
      customers_fsk18 INT(1) NOT NULL DEFAULT '1',
      customers_fsk18_display INT(1) NOT NULL DEFAULT '1',
      customers_status_write_reviews INT(1) NOT NULL DEFAULT '1',
      customers_status_read_reviews INT(1) NOT NULL DEFAULT '1',
      PRIMARY KEY (customers_status_id,language_id),
      KEY idx_orders_status_name (customers_status_name)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;

    INSERT INTO customers_status (customers_status_id, language_id, customers_status_name, customers_status_public, customers_status_min_order, customers_status_max_order, customers_status_image, customers_status_discount, customers_status_ot_discount_flag, customers_status_ot_discount, customers_status_graduated_prices, customers_status_show_price, customers_status_show_price_tax, customers_status_add_tax_ot, customers_status_payment_unallowed, customers_status_shipping_unallowed, customers_status_discount_attributes, customers_fsk18, customers_fsk18_display, customers_status_write_reviews, customers_status_read_reviews) VALUES
    (0, 2, 'Admin', 1, 50, 0, 'admin_status.gif', 99.99, '0', 0.00, '1', 1, 0, 1, '', '', 0, 1, 1, 1, 1),
    (1, 2, 'Gast', 1, 50, 0, 'guest_status.gif', 99.99, '0', 0.00, '1', 1, 1, 1, 'cod,invoice', '', 0, 1, 1, 1, 1),
    (2, 2, 'H‰ndler', 1, 50, 0, 'merchant_status.gif', 99.99, '0', 0.00, '1', 1, 0, 1, '', '', 0, 1, 1, 1, 1),
    (3, 2, 'Neuer Kunde', 1, 50, 0, 'customer_status.gif', 99.99, '0', 0.00, '1', 1, 1, 1, 'cod,invoice', '', 0, 1, 1, 1, 1),
    (4, 2, 'Stammkunde', 1, 50, 0, 'customer_status.gif', 99.99, '0', 0.00, '1', 1, 1, 1, '', '', 0, 1, 1, 1, 1);

    UPDATE newsletter_recipients SET customers_status=customers_status-1 WHERE customers_status = 3
    UPDATE newsletter_recipients SET customers_status=customers_status-1 WHERE customers_status = 4
    UPDATE newsletter_recipients SET customers_status=customers_status-1 WHERE customers_status = 5

    UPDATE orders SET customers_status=customers_status-1 WHERE customers_status = 3
    UPDATE orders SET customers_status=customers_status-1 WHERE customers_status = 4
    UPDATE orders SET customers_status=customers_status-1 WHERE customers_status = 5

    ALTER TABLE personal_offers_by_customers_status_3 RENAME personal_offers_by_customers_status_2
    ALTER TABLE personal_offers_by_customers_status_4 RENAME personal_offers_by_customers_status_3
    ALTER TABLE personal_offers_by_customers_status_5 RENAME personal_offers_by_customers_status_4

    ALTER TABLE products CHANGE group_permission_3 group_permission_2 TINYINT( 1 ) NOT NULL
    ALTER TABLE products CHANGE group_permission_4 group_permission_3 TINYINT( 1 ) NOT NULL
    ALTER TABLE products CHANGE group_permission_5 group_permission_4 TINYINT( 1 ) NOT NULL  

    ALTER TABLE categories CHANGE group_permission_3 group_permission_2 TINYINT( 1 ) NOT NULL
    ALTER TABLE categories CHANGE group_permission_4 group_permission_3 TINYINT( 1 ) NOT NULL
    ALTER TABLE categories CHANGE group_permission_5 group_permission_4 TINYINT( 1 ) NOT NULL  

    UPDATE content_manager SET group_ids = 'c_all_group,c_0_group,c_1_group,c_2_group,c_3_group,c_4_group,';
     
    Jetzt noch unter "Konfiguration> Mein Shop" die Standard-Kundengruppe für Neukunden korrigieren

    Auflerdem unter "Erweiterte Konfiguration> UST ID" die "Kundenstatus für UST ID geprüfte Kunden" korrigieren

    Am Schluss kann man zum Test eine neue Kundengruppe anlegen und löschen.
    Funktionierte beides, stehen die Chancen gut alles richtig gemacht zu haben, aber eine Garantie ist es nicht.

    Man sollte die Daten nach den "Updates" immer gegenprüfen, ob die IDs zur Kundengruppe richtig sind.

    Vor allem natürlich mit dem MySQL Dumper ein Backup machen.

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Kundengruppe gelöscht
    Antwort #4 am: 30. Juli 2010, 00:20:53
    Prima, dass es funktioniert hat und Danke für die Anleitung!

    ich war mal so frei und habe das noch in deinem Beitrag hinzugefügt/formatiert.

    Grüße

    Torsten

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Kundengruppe gelöscht
    Antwort #5 am: 30. Juli 2010, 00:23:51
    Hallo Torsten,

    bitte gerne.
    Hatte es erst gar nicht als SQL im Post versucht, traue dem nicht, der verschluckt oft was ;)

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Kundengruppe gelöscht
    Antwort #6 am: 30. Juli 2010, 00:25:45
    Ja, aber nur wegen der "Backticks", die habe ich einfach entfernt, der SQL-Code funktioniert auch ohne sie! ;-)

    Grüße

    Torsten

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Kundengruppe gelöscht
    Antwort #7 am: 30. Juli 2010, 00:28:13
    Aah, das ist der Grund.

    3 Antworten
    2887 Aufrufe
    21. Mai 2011, 15:47:19 von Tomcraft
    7 Antworten
    4178 Aufrufe
    19. Mai 2012, 00:22:33 von robertko
    4 Antworten
    2861 Aufrufe
    11. April 2012, 20:12:44 von astaller