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
Dziękuję ! Działa!
[…] PrestaShop 1.7 – problem z pobraniem detali zamówienia: OrderInvoiceAddressForViewing::__cons… […]
[…] PrestaShop 1.7 – problem z pobraniem detali zamówienia: OrderInvoiceAddressForViewing::__cons… […]