Could not convert database value "2022-05-12" to Doctrine Type datetime. Expected format: Y-m-d H:i:s

Seit 8 Tagen haben wir in unserer Shopwareinstallation einen merkwürdigen Fehler, der nur bei der Nutzung von Paypal auftritt.
Installiert ist die Version 5.7.11

Der Kunde kann die Bestellung bis zum Paymentdienst und dessen Checkout ausführen und kommt nach Zahlungsauthorisierung wieder zurück in den Shop wo folgende Fehlermeldung erscheint:

Could not convert database value „2022-05-12“ to Doctrine Type datetime. Expected format: Y-m-d H:i:s in shoproot-bj4m /shop/p/vendor/doctrine/dbal/lib/Doctrine/DBAL/Types/ConversionException.php on line 53

#0 shoproot-bj4m /shop/engine/Shopware/Components/Model/DBAL/Types/DateTimeStringType.php(69): Doctrine\DBAL\Types\ConversionException::conversionFailedFormat('2022-05-12', 'datetime', 'Y-m-d H:i:s')
#1 shoproot-bj4m /shop/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/AbstractHydrator.php(457): Shopware\Components\Model\DBAL\Types\DateTimeStringType->convertToPHPValue('2022-05-12', Object(Doctrine\DBAL\Platforms\MySqlPlatform))
#2 shoproot-bj4m /shop/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/ObjectHydrator.php(314): Doctrine\ORM\Internal\Hydration\AbstractHydrator->gatherRowData(Array, Array, Array)
#3 shoproot-bj4m /shop/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/ObjectHydrator.php(143): Doctrine\ORM\Internal\Hydration\ObjectHydrator->hydrateRowData(Array, Array)
#4 shoproot-bj4m /shop/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/AbstractHydrator.php(268): Doctrine\ORM\Internal\Hydration\ObjectHydrator->hydrateAllData()
#5 shoproot-bj4m /shop/engine/Library/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php(963): Doctrine\ORM\Internal\Hydration\AbstractHydrator->hydrateAll(Object(Doctrine\DBAL\ForwardCompatibility\Result), Object(Doctrine\ORM\Query\ResultSetMapping), Array)
#6 shoproot-bj4m /shop/vendor/doctrine/orm/lib/Doctrine/ORM/EntityRepository.php(203): Doctrine\ORM\Persisters\Entity\BasicEntityPersister->loadAll(Array, NULL, NULL, NULL)
#7 shoproot-bj4m /shop/custom/plugins/SwagPaymentPayPalUnified/Components/Services/CartRestoreService.php(49): Doctrine\ORM\EntityRepository->findBy(Array)
#8 shoproot-bj4m /shop/custom/plugins/SwagPaymentPayPalUnified/Controllers/Frontend/AbstractPaypalPaymentController.php(193): SwagPaymentPayPalUnified\Components\Services\CartRestoreService->getCartData()
#9 shoproot-bj4m /shop/custom/plugins/SwagPaymentPayPalUnified/Controllers/Frontend/PaypalUnifiedV2.php(126): SwagPaymentPayPalUnified\Controllers\Frontend\AbstractPaypalPaymentController->handleOrderWithSendOrderNumber(Object(SwagPaymentPayPalUnified\PayPalBundle\V2\Api\Order), 'PayPalClassicV2')
#10 shoproot-bj4m /shop/engine/Library/Enlight/Controller/Action.php(186): Shopware_Controllers_Frontend_PaypalUnifiedV2->returnAction()
#11 shoproot-bj4m /shop/engine/Library/Enlight/Controller/Dispatcher/Default.php(467): Enlight_Controller_Action->dispatch('returnAction')
#12 shoproot-bj4m /shop/engine/Library/Enlight/Controller/Front.php(225): Enlight_Controller_Dispatcher_Default->dispatch(Object(Enlight_Controller_Request_RequestHttp), Object(Enlight_Controller_Response_ResponseHttp))
#13 shoproot-bj4m /shop/engine/Shopware/Kernel.php(197): Enlight_Controller_Front->dispatch()
#14 shoproot-bj4m /shop/vendor/symfony/http-kernel/HttpCache/SubRequestHandler.php(85): Shopware\Kernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#15 shoproot-bj4m /shop/vendor/symfony/http-kernel/HttpCache/HttpCache.php(479): Symfony\Component\HttpKernel\HttpCache\SubRequestHandler::handle(Object(Shopware\Kernel), Object(Symfony\Component\HttpFoundation\Request), 1, true)
#16 shoproot-bj4m /shop/engine/Shopware/Components/HttpCache/AppCache.php(266): Symfony\Component\HttpKernel\HttpCache\HttpCache->forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL)
#17 shoproot-bj4m /shop/vendor/symfony/http-kernel/HttpCache/HttpCache.php(452): Shopware\Components\HttpCache\AppCache->forward(Object(Symfony\Component\HttpFoundation\Request), true)
#18 shoproot-bj4m /shop/vendor/symfony/http-kernel/HttpCache/HttpCache.php(346): Symfony\Component\HttpKernel\HttpCache\HttpCache->fetch(Object(Symfony\Component\HttpFoundation\Request), true)
#19 shoproot-bj4m /shop/engine/Shopware/Components/HttpCache/AppCache.php(192): Symfony\Component\HttpKernel\HttpCache\HttpCache->lookup(Object(Symfony\Component\HttpFoundation\Request), true)
#20 shoproot-bj4m /shop/vendor/symfony/http-kernel/HttpCache/HttpCache.php(224): Shopware\Components\HttpCache\AppCache->lookup(Object(Symfony\Component\HttpFoundation\Request), true)
#21 shoproot-bj4m /shop/engine/Shopware/Components/HttpCache/AppCache.php(117): Symfony\Component\HttpKernel\HttpCache\HttpCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#22 shoproot-bj4m /shop/shopware.php(122): Shopware\Components\HttpCache\AppCache->handle(Object(Symfony\Component\HttpFoundation\Request))
#23 {main}

Welche Tabelle erwartet auf einmal ein anderes format und vor allem … weshalb?

Toll wäre natürlich ein Lösungsansatz …

vielen Dank

Du solltest auf Paypal 3 zurückgehen bis das neue Plugin läuft. Das Forum ist voll davon wie toll das Plugin läuft.

Moin @msskft,

hmm das ist in der Tat ein komischer Fehler. Schau mal bitte in deine Datenbanktabelle s_order und guck ob die DateTimes dem richtigen Format entsprechen „Y-m-d H:i:s“ (Jahr-Monat-Tag Stunde:Minute:Sekunde)

LG Dennis

Hallo Dennis, das war auch mein Gedanke aber da scheint alles zu passen … und dann ist ja der Fehler nur bei paypal und nicht bei stripe etc.

in der Tabelle changed (s_order) allerdings tauchen dezent viele „NULL“ Werte auf, allerdings auch bei anderen Zahlungsanbietern!?

Hmm :thinking:

check auch mal die Spalten ordertime und cleareddate. Das Komische ist ja das passiert beim auslesen der s_order

NULL wird in engine/Shopware/Components/Model/DBAL/Types/DateTimeStringType.php vorher abgefangen…

Ai… mein Fehler… nicht die s_order tabelle… sonder die Tabelle s_order_basket :sweat_smile:

hier die spalte „datum“ checken

1 Like

das wars tatsächlich … vielen dank für deinen Tipp!
läuft alles wieder einwandfrei …

jetzt muss ich nur rausfinden, was sich veränderte dass es auf einmal nicht mehr funktionierte …

Sind das vllt. besondere produkte die durch ein Plugin in den WK gelegt werden?

nein keine Sonderprodukte … es liegt definitiv an dem Payment Plugin dass scheinbar im update die DB Table „umformatiert“ hat …

Moin @msskft,

also ich kann dir versichern das ein Plugin keine Änderungen an Core-Tabellen vornimmt. Attr-Tabellen ausgenommen, aber diese sind ja auch dazu da.

D.h. deine DB Tabelle hatte den falschen DatenTyp?

Date anstatt DateTime?

hmm…

nun dann würde mich sehr interessieren, wie das zustande kommt!?