ACSD-64149: Kundsegment med villkoret Date range kan sparas när endast ett datum har redigerats
Korrigeringen ACSD-64149 åtgärdar ett problem där ett kundsegment med ett datumintervall kan sparas när endast ett av datumen redigeras. Den här korrigeringen är tillgänglig när Quality Patches Tool (QPT) 1.1.60 har installerats. Korrigerings-ID är ACSD-64149. Observera att problemet är planerat att åtgärdas i Adobe Commerce 2.4.8.
Berörda produkter och versioner
Korrigeringen har skapats för Adobe Commerce-version:
- Adobe Commerce (alla distributionsmetoder) 2.4.6-p8
Kompatibel med Adobe Commerce-versioner:
- Adobe Commerce (alla distributionsmetoder) 2.4.4 - 2.4.7-p4
magento/quality-patches-paketet till den senaste versionen och kontrollerar kompatibiliteten på Quality Patches Tool: Sök efter korrigeringsfiler . Använd patch-ID:t som söknyckelord för att hitta patchen.Problem
När du redigerar ett befintligt kundsegment med ett villkor för produkter i kundvagnen som anges av ett datumintervall misslyckas konsumenten matchCustomerSegmentProcessor med ett SQL-fel.
Steg som ska återskapas:
-
Kontrollera att konsumenten
matchCustomerSegmentProcessorkörs:code language-bash $ bin/magento que:cons:st matchCustomerSegmentProcessor -
Gå till Magento backend.
-
Gå till Customers > Segments.
-
Klicka på Add Segment.
-
Ange en Segment Name, markera en webbplats under Assigned to Website och kontrollera att Status är inställd på Aktiv.
-
Klicka på Save and Continue Edit.
-
Gå till fliken Conditions och lägg till ett nytt villkor: Produkter{} > {}Produktlista{}.
-
Lägg till ett undervillkor för Date range och ange ett giltigt Date range.
-
Klicka på den gröna bekräftelseknappen bredvid Date range.
-
Klicka på Date range igen, markera datumväljaren, redigera ett av datumvärdena och bekräfta genom att klicka på den gröna knappen.
Förväntade resultat:
Date range-väljaren ska inte lägga till tid till datumet när du redigerar.
Faktiska resultat:
-
Date range-väljaren lägger till tid till datumet:
- Ett datum har bara datumet, medan det andra har både det angivna datumet och den angivna tiden.
-
Följande fel visas i loggarna:
code language-none report.CRITICAL: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 2, query was: SELECT `item`.`quote_id` FROM `quote_item` AS `item` INNER JOIN `quote` AS `list` ON item.quote_id = list.entity_id WHERE (list.is_active = 1) AND () [] []
Tillämpa korrigeringen
Använd följande länkar beroende på distributionsmetod för att tillämpa enskilda korrigeringsfiler:
- Lokal användning för Adobe Commerce eller Magento Open Source: Quality Patches Tool > Användning i guiden Quality Patches Tool.
- Adobe Commerce om molninfrastruktur: Uppgraderingar och korrigeringar > Tillämpa korrigeringar i guiden Commerce om molninfrastruktur.
Relaterad läsning
Mer information om Quality Patches Tool finns i:
- Quality Patches Tool: Ett självbetjäningsverktyg för kvalitetspatchar i verktygshandboken.