[Endast PaaS]{class="badge informative" title="Gäller endast Adobe Commerce i molnprojekt (Adobe-hanterad PaaS-infrastruktur) och lokala projekt."}

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
NOTE
Korrigeringen kan bli tillämplig för andra versioner med nya Quality Patches Tool-versioner. Om du vill kontrollera om korrigeringen är kompatibel med din Adobe Commerce-version uppdaterar du 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:

  1. Kontrollera att konsumenten matchCustomerSegmentProcessor körs:

    code language-bash
    $ bin/magento que:cons:st matchCustomerSegmentProcessor
    
  2. Gå till Magento backend.

  3. Gå till Customers > Segments.

  4. Klicka på Add Segment.

  5. Ange en Segment Name, markera en webbplats under Assigned to Website och kontrollera att Status är inställd på Aktiv.

  6. Klicka på Save and Continue Edit.

  7. Gå till fliken Conditions och lägg till ett nytt villkor: Produkter{} > {}Produktlista{}.

  8. Lägg till ett undervillkor för Date range och ange ett giltigt Date range.

  9. Klicka på den gröna bekräftelseknappen bredvid Date range.

  10. 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:

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3