Polskie wsparcie PrestaShop
PrestaShop => Konfiguracja => Wątek zaczęty przez: precelik w Luty 12, 2009, 10:56:20 am
-
Jak w temacie zrobiłem kilka zamówień testowych. Teraz chciałbym aby one znikły ze statystyk sklepu? gdzie to zrobić? Nijak nie mogę nic znaleźć?
-
Przed takim testowaniem najlepiej zgrać bazę danych czy to przez phpMyAdmin, czy przez backub bazy z panelu administracyjnego. Inaczej to trudne zadanie grzebać w bazie po tabelkach szukając zależności.
-
Kurcze..? serio nie ma możliwości wyzerowania?
A to zamówienie, które jest wgrywane przy instalacji, też sie go nie da wykasować?
-
Teoretycznie jest możliwe usunięcie z bazy zamówień i innych rzeczy. Ale naprawdę to trudna prawa... do jednego zamówienie tworzy się sporo powiązań i naprawdę bardzo ławo o pomyłkę. Usuwanie czegoś z bazy przy działającym sklepie to jak chodzenie po polu minowym.
Co do tego zamówienia w standardzie. Jest to przykładowe zamówienie aby wiedzieć jak co wygląda. Zanim zaczniemy tworzyć i konfigurować sklep najlepiej posprawdzać wszystkie opcje lokalnie (WAMP i localhost). Dopiero później przy instalacji na serwerze i działaniu produkcyjnym wybieramy podczas instalacji gołą instalację (druga opcja, nie pamiętam jak się nazywa). Po takiej czynności mamy golusi sklep z pustą bazą. To najlepsze rozwiązanie ale też mocno utrudnione, bo wszystko trzeba samemu skonfigurować.
Tak więc wracając do Twojego pytania. Interesujące wpisy znajdziesz w następujących tabelach:
ps_address - adresy klientów i dostawców (patrzymy na id_customer=1 i o tym numerze z odpowiedniej tabeli musimy usunąć wiersz);
ps_cart - z tej tabeli usuwamy wszystko co się tyczy id_customer=1;
ps_customer - z tej tabeli tak samo usuwamy wszystko co się tyczy id_customer=1;
ps_orders - tutaj są zapisywane wszystkie zamówienia. z tej tabeli powinniśmy dokładnie sprawdzić wszelkie zależności między id_customer, id_cart, itd.
W ten sposób sprawdzasz wszystkie tabele i wszystkie powiązania z osobą którą chcesz usunąć (id_customer=1) oraz z zamówieniami jakie ta osoba złożyła id_order. Jak widzisz bardzo dużo danych jest ze sobą powiązanych. Łatwo o pomyłkę i rozsypanie sklepu.
Nie wiem jak wiele prób robiłeś i jak dużo danych przez to nagromadziło się w bazie. Może lepszym wyjściem będzie zgranie tabel, które nie są powiązane z klientami (nie występuje w nich id_customer) oraz z działaniami jakie klient wywołał. Przykładowe tabele (piszę tak na szybkiego tylko kilka, gdyż jest ich dużo więcej): ps_product, ps_product_attribute, ps_product_attribute_combination, ps_product_lang, itd.
Po zgraniu tych tabel, robisz gołą instalkę i importujesz do bazy tabele, które wcześniej sobie zgrałeś. Oczywiście trzeba tu sprawdzić wszelkie zależności.
Jak widzisz takie rozwiązanie wymaga bardzo dużego nakładu pracy. Czym więcej zmian w bazie tym więcej pracy będziesz musiał włożyć. Może szybciej wykonasz od nowa instalację i konfigurację (pamiętaj o gołej instalacji - wybierasz ją przy ustawianiu połączenia do bazy danych).
Pozdrawiam
Krzysiek
-
Tu jest podana instrukcja jak to zrobić może się przyda
http://www.prestashop.com/forums/viewthread/9045/installation_configuration___upgrade/solved_how_to_reset_or_delete_all_orders_and_customers
-
Dzięki wrzuciłem ten kod do zapytań php myadmina no i efekt ten co chciałem :)
-
Niemego tego znaleźne znaczy gdzie to wkleić proszę o podpowiedz gdzie tego szukać Pozdrowionka
-
MYSQL do wyzerowania sklepu
TRUNCATE TABLE `ps_customer`;
TRUNCATE TABLE `ps_customer_group`;
TRUNCATE TABLE `ps_address`;
TRUNCATE TABLE `ps_orders`;
TRUNCATE TABLE `ps_order_detail`;
TRUNCATE TABLE `ps_order_discount`;
TRUNCATE TABLE `ps_order_history`;
TRUNCATE TABLE `ps_message`;
TRUNCATE TABLE `ps_cart`;
TRUNCATE TABLE `ps_cart_product`;
TRUNCATE TABLE `ps_cart_discount`;
ALTER TABLE `ps_customer` AUTO_INCREMENT = 0;
ALTER TABLE `ps_customer_group` AUTO_INCREMENT = 0;
ALTER TABLE `ps_address` AUTO_INCREMENT = 0;
ALTER TABLE `ps_orders` AUTO_INCREMENT = 0;
ALTER TABLE `ps_order_detail` AUTO_INCREMENT = 0;
ALTER TABLE `ps_order_discount` AUTO_INCREMENT = 0;
ALTER TABLE `ps_order_history` AUTO_INCREMENT = 0;
ALTER TABLE `ps_message` AUTO_INCREMENT = 0;
ALTER TABLE `ps_cart` AUTO_INCREMENT = 0;
ALTER TABLE `ps_cart_product` AUTO_INCREMENT = 0;
ALTER TABLE `ps_cart_discount` AUTO_INCREMENT = 0;
-
Wielkie dzięki znalazłem działa
-
przeszukaj google - nie pamietam gdzie znalazłem, ale było rozwiązanie. na podstawie prostej modyfikacji umożliwiało usuwanie zamówień z poziomu panelu admina. zamówienie jest usuniete, statystyki się czyszczą, ale pozostaje numeracja. czyli jak testowo złożyłeś 20 zamówień i je usuniesz to kolejne będzie miało nr 21.
z pkt widzenia sklepu nie ma to żadnego znaczenia, a nawet lepiej jak klient składający zamówienie ma numer wyższy, bo ma świadomość, że nie jest pierwszym lub jednym z pierwszych ;)
-
Mam taki moduł,gdzieś znalazłem w wersji francuskiej nazywa się RAZ ,teraz nie mogę wyszukać.Kto chce to mogę przesłać na adres e-mail za fre .kontakt poprzez sklep www.mera.auto.pl
-
Przejdź na stronę zamówienia i otwórz zamowienie jakiekolwiek, bedzie link w stylu:
http://moja domena.pl/admin/index.php?tab=AdminOrders&id_order=17&vieworder&token=85c9dbf4394579fg5dc7b8399155f976
zamien w tym pasku napis "vieworder" na "deleteorder" i wcisnij enter.
-
Cześć, jestem początkującym uzytkownikiem presty i mam pytanie odnośnie ponizszego scryptu. Zalezy mi na wyzerowaniu magazynu, rotacji, listy zamówien. Gdzie i w jaki sposob mam wykonac ponizszy scrypt? W MyAdminPHP? czy to na ftp mojego serwera?
MYSQL do wyzerowania sklepu
TRUNCATE TABLE `ps_customer`;
TRUNCATE TABLE `ps_customer_group`;
TRUNCATE TABLE `ps_address`;
TRUNCATE TABLE `ps_orders`;
TRUNCATE TABLE `ps_order_detail`;
TRUNCATE TABLE `ps_order_discount`;
TRUNCATE TABLE `ps_order_history`;
TRUNCATE TABLE `ps_message`;
TRUNCATE TABLE `ps_cart`;
TRUNCATE TABLE `ps_cart_product`;
TRUNCATE TABLE `ps_cart_discount`;
ALTER TABLE `ps_customer` AUTO_INCREMENT = 0;
ALTER TABLE `ps_customer_group` AUTO_INCREMENT = 0;
ALTER TABLE `ps_address` AUTO_INCREMENT = 0;
ALTER TABLE `ps_orders` AUTO_INCREMENT = 0;
ALTER TABLE `ps_order_detail` AUTO_INCREMENT = 0;
ALTER TABLE `ps_order_discount` AUTO_INCREMENT = 0;
ALTER TABLE `ps_order_history` AUTO_INCREMENT = 0;
ALTER TABLE `ps_message` AUTO_INCREMENT = 0;
ALTER TABLE `ps_cart` AUTO_INCREMENT = 0;
ALTER TABLE `ps_cart_product` AUTO_INCREMENT = 0;
ALTER TABLE `ps_cart_discount` AUTO_INCREMENT = 0;
-
przeszukaj google - nie pamietam gdzie znalazłem, ale było rozwiązanie. na podstawie prostej modyfikacji umożliwiało usuwanie zamówień z poziomu panelu admina. zamówienie jest usuniete, statystyki się czyszczą, ale pozostaje numeracja. czyli jak testowo złożyłeś 20 zamówień i je usuniesz to kolejne będzie miało nr 21.
z pkt widzenia sklepu nie ma to żadnego znaczenia, a nawet lepiej jak klient składający zamówienie ma numer wyższy, bo ma świadomość, że nie jest pierwszym lub jednym z pierwszych ;)
jezeli chodzi o twoja kontrybucje to logika nakresla fakt, ze jezeli numeracja sie nie czysci to znaczy, ze baza mySQL odpowiedzialna za zamowienia tez nie jest wyczyszczona. to moze i owszem, dodanie jednej linijki kodu, tak jak piszesz, bardzo proste, ale usuwa tylko i wylacznie zamowienia z listy w PA a nie z bazy, wiec w statystykach wszystko zostaje.
opis z truncate tabel jest jak najbardziej adekwatny w tym typie problemowym
-
Komenda TRUNCATE TABLE czysci tabele i zeruje liczniki wiec nie trzeba jeszcze raz raz ich ustawiac przez ALTER TABLE
-
Witam, ktoś może mnie doinformować co to oznacza:
ALTER TABLE `ps_cart` AUTO_INCREMENT = 0;
tzn. chodzi mi o to = 0 ponieważ wyczyściłem tabele i jest np tak: (patrz załącznik),
i teraz nie wiem czy mam kliknąć edytuj i odznaczyć ptaszka przy AUTO INCREMENT czy zostawić tak jak jest?
-
alter zmienia strukturę nie czysci tabeli [przynajmniej jest niezalecany] powinieneś użyć drop lub truncate
auto increment w twoim poleceniu resetuje wartość id tabeli do 0 z innej już utrzymywanej
-
Tylko chodzi jeszcze o to że ja nie czyściłem tabel poleceniem, a wchodziłem do każdej i usuwałem rekordy ręcznie, po takim zabiegu tabele wyglądają jak na screenie, więc czy muszę jeszcze coś robić czy wszystko już zrobiłem i powinno być ok?
-
współczuję wystarczyło zrobić drop i miałbyś po temacie
wracając jeśli zrobiłeś dodatkowo alter to masz zachowana tylko strukturę tabel więc teoretycznie powinno być ok