Press "Enter" to skip to content

PrestaShop 1.7 – problem z pobraniem detali zamówienia: OrderInvoiceAddressForViewing::__construct() must be of the type string

Admin 3

Błąd może pojawić sie przy przenoszeniu strony na inny serwer, przy aktualizacji, przy migracji danych itp. Objawia się problemem z otwarciem szczegółów zamówienia:

Ups ... wygląda na to, że wystąpił nieoczekiwany błąd

Type error: Argument 4 passed to PrestaShop\PrestaShop\Core\Domain\Order\QueryResult\OrderInvoiceAddressForViewing::__construct() must be of the type string, null given, called in /var/www/src/Adapter/Order/QueryHandler/GetOrderForViewingHandler.php on line 343

[Symfony\Component\Debug\Exception\FatalThrowableError 0]

Ewentualnie może pojawić się dodatkowo:

Ups ... wygląda na to, że wystąpił nieoczekiwany błąd

Type error: Argument 4 passed to PrestaShop\PrestaShop\Core\Domain\Order\QueryResult\OrderInvoiceAddressForViewing::__construct() must be of the type string, null given, called in /var/www/src/Adapter/Order/QueryHandler/GetOrderForViewingHandler.php on line 343

[Symfony\Component\Debug\Exception\FatalThrowableError 0]

Oznacza to, że dane przetrzymywane w tabeli adresowej są błędne. Zamiast pustych wartości są wartości NULL.

Poniższe zapytanie powinno to rozwiązać 🙂

Wejdź w PHPmyAdmin na Twoim serwerze i wybierz bazę danych, która jest podana w:

Zaawansowane -> Informacja

Ewentualnie w pliku:

app/config/parameters.php

W zakładce SQL wywołaj:

UPDATE `ps_address` SET phone_mobile = '' WHERE `phone_mobile` IS NULL ;
UPDATE `ps_address` SET phone = '' WHERE `phone` IS NULL ;
UPDATE `ps_order_detail` SET product_reference = '' WHERE product_reference IS NULL ;
UPDATE `ps_address` SET company = '' WHERE company IS NULL ;	
UPDATE `ps_address` SET address2 = '' WHERE address2 IS NULL ;	
UPDATE `ps_order_detail` SET product_supplier_reference = '' WHERE product_supplier_reference IS NULL ;	
UPDATE `ps_order_payment` SET card_number = '' WHERE card_number IS NULL ;	
UPDATE `ps_order_payment` SET card_brand = '' WHERE card_brand IS NULL ;	
UPDATE `ps_order_payment` SET card_expiration = '' WHERE card_expiration IS NULL ;	
UPDATE `ps_order_payment` SET card_holder = '' WHERE card_holder IS NULL ;	
UPDATE `ps_order_payment` SET transaction_id = '' WHERE transaction_id IS NULL ;	
UPDATE `ps_address` SET dni = '' WHERE dni IS NULL ;	
UPDATE `ps_address` SET vat_number = '' WHERE vat_number IS NULL ;	
UPDATE `ps_address` SET other = '' WHERE other IS NULL ;

UWAGA! Przed manipulowaniem z bazą danych wykonaj kopię bezpieczeństwa !

 

 

grafika:wallpaperflare.com

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

Zobacz także !
Prezentujemy prostą modyfikację, która dodaje informację o liczbie produktów w…