[Somente PaaS]{class="badge informative" title="Aplica-se somente a projetos do Adobe Commerce na nuvem (infraestrutura do PaaS gerenciada pela Adobe) e a projetos locais."}

ACSD-64149: Um segmento de cliente com uma condição Date range pode ser salvo quando apenas uma data é editada

O patch ACSD-64149 corrige o problema em que um segmento de cliente com uma condição de intervalo de datas pode ser salvo quando apenas uma das datas é editada. Este patch está disponível quando o Quality Patches Tool (QPT) 1.1.60 está instalado. A ID do patch é ACSD-64149. Observe que esse problema está programado para ser corrigido no Adobe Commerce 2.4.8.

Produtos e versões afetados

O patch foi criado para a versão do Adobe Commerce:

  • Adobe Commerce (todos os métodos de implantação) 2.4.6-p8

Compatível com as versões do Adobe Commerce:

  • Adobe Commerce (todos os métodos de implantação) 2.4.4 - 2.4.7-p4
NOTE
O patch pode se tornar aplicável a outras versões com as novas versões do Quality Patches Tool. Para verificar se o patch é compatível com a sua versão do Adobe Commerce, atualize o pacote magento/quality-patches para a versão mais recente e verifique a compatibilidade na Quality Patches Tool: página Procurar patches. Use a ID do patch como palavra-chave de pesquisa para localizar o patch.

Problema

Ao editar um segmento de cliente existente com uma condição em produtos dentro do carrinho de compras especificado por um intervalo de datas, o consumidor matchCustomerSegmentProcessor falha com um erro SQL.

Etapas a serem reproduzidas:

  1. Verifique se o consumidor matchCustomerSegmentProcessor está em execução:

    code language-bash
    $ bin/magento que:cons:st matchCustomerSegmentProcessor
    
  2. Vá para o Magento backend.

  3. Vá para Customers > Segments.

  4. Clique em Add Segment.

  5. Insira um Segment Name, selecione um site em Assigned to Website e verifique se Status está definido como Ativo.

  6. Clique em Save and Continue Edit.

  7. Vá para a guia Conditions e adicione uma nova Condição: Produtos{} > {}Lista de Produtos{}.

  8. Adicione uma subcondição para Date range e defina um Date range válido.

  9. Clique no botão verde de confirmação ao lado de Date range.

  10. Clique no Date range novamente, selecione o seletor de datas, edite um dos valores de data e confirme clicando no botão verde.

Resultados esperados:

O seletor Date range não deve adicionar hora à data ao editar.

Resultados reais:

  • O seletor Date range adiciona hora à data:

    • Uma data tem apenas a data, enquanto a outra tem a data e a hora especificadas.
  • O seguinte erro é exibido nos logs:

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

Aplicar o patch

Para aplicar patches individuais, use os links a seguir, dependendo do método de implantação:

  • Adobe Commerce ou Magento Open Source local: Quality Patches Tool > Uso no guia Quality Patches Tool.
  • Adobe Commerce na infraestrutura em nuvem: Atualizações e patches > Aplicar patches no guia do Commerce na infraestrutura em nuvem.

Leitura relacionada

Para saber mais sobre Quality Patches Tool, consulte:

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