[Solo PaaS]{class="badge informative" title="Applicabile solo ai progetti Adobe Commerce on Cloud (infrastruttura PaaS gestita da Adobe) e ai progetti on-premise."}

ACSD-64149: è possibile salvare il segmento del cliente con una condizione Date range quando viene modificata una sola data

La patch ACSD-64149 risolve il problema che consente di salvare un segmento del cliente con una condizione di intervallo di date quando viene modificata solo una delle date. Questa patch è disponibile quando è installato Quality Patches Tool (QPT) 1.1.60. L’ID della patch è ACSD-64149. Questo problema è pianificato per la risoluzione in Adobe Commerce 2.4.8.

Prodotti e versioni interessati

La patch è stata creata per la versione di Adobe Commerce:

  • Adobe Commerce (tutti i metodi di distribuzione) 2.4.6-p8

Compatibile con le versioni di Adobe Commerce:

  • Adobe Commerce (tutti i metodi di implementazione) 2.4.4 - 2.4.7-p4
NOTE
La patch potrebbe diventare applicabile ad altre versioni con le nuove versioni di Quality Patches Tool. Per verificare se la patch è compatibile con la versione di Adobe Commerce in uso, aggiornare il pacchetto magento/quality-patches alla versione più recente e verificare la compatibilità nella pagina Quality Patches Tool: Cerca patch. Utilizza l’ID patch come parola chiave di ricerca per individuare la patch.

Problema

Quando si modifica un segmento di clienti esistente con una condizione per i prodotti all'interno del carrello specificato da un intervallo di date, il consumatore matchCustomerSegmentProcessor genera un errore SQL.

Passaggi da riprodurre:

  1. Verificare che il consumer matchCustomerSegmentProcessor sia in esecuzione:

    code language-bash
    $ bin/magento que:cons:st matchCustomerSegmentProcessor
    
  2. Passare a Magento backend.

  3. Vai a Customers > Segments.

  4. Fai clic su Add Segment.

  5. Immettere un Segment Name, selezionare un sito Web in Assigned to Website e assicurarsi che Status sia impostato su Attivo.

  6. Fare clic su Save and Continue Edit.

  7. Vai alla scheda Conditions e aggiungi una nuova condizione: Prodotti{} > {}Elenco prodotti{}.

  8. Aggiungere una sottocondizione per Date range e impostare un Date range valido.

  9. Fare clic sul pulsante verde di conferma accanto a Date range.

  10. Fai di nuovo clic su Date range, seleziona il selettore di date, modifica uno dei valori di data e conferma facendo clic sul pulsante verde.

Risultati previsti:

Il selettore Date range non deve aggiungere l'ora alla data durante la modifica.

Risultati effettivi:

  • Il selettore Date range aggiunge un orario alla data:

    • Una data ha solo la data, mentre l’altra ha sia la data che l’ora specificate.
  • Nei registri viene visualizzato il seguente errore:

    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 () [] []
    

Applicare la patch

Per applicare singole patch, utilizzare i collegamenti seguenti, a seconda del metodo di distribuzione utilizzato:

  • Adobe Commerce o Magento Open Source on-premise: Quality Patches Tool > Utilizzo nella guida di Quality Patches Tool.
  • Adobe Commerce su infrastruttura cloud: Aggiornamenti e patch > Applica patch nella guida Commerce su infrastruttura cloud.

Lettura correlata

Per ulteriori informazioni su Quality Patches Tool, vedere:

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