Pergunta

Eu tenho um código que salva os detalhes do pedido em uma tabela personalizada:

    foreach($links as $link) {
        $pdf = Mage::getModel('custom_sales/pdf');
        $pdf->setOrderId($order->getId())
            ->setOrderIncrementId($order->getIncrementId())
            ->setLink($link)
            ->save();
    }

O código salva os registros e as colunas order_id e link estão corretas, mas os IDs de incremento do pedido estão completamente errados, por exemplo, um pedido com ID de incremento 15070100396216 tem seu ID de incremento salvo como 4294967295

A estrutura da tabela é a seguinte:

  `entity_id` int(10) UNSIGNED NOT NULL auto_increment,
  `order_id` INTEGER(14) UNSIGNED NOT NULL,
  `order_increment_id` INTEGER(20) UNSIGNED NOT NULL,
  `link` VARCHAR(255) NOT NULL DEFAULT '',

Alguém tem alguma ideia do porque isso pode estar acontecendo?

Foi útil?

Solução

Eu vi sua estrutura de tabela, você deve usar a solução mencionada abaixo para resolver seu problema.

O tipo de dados increment_id na tabela sales_flat_order é varchar(50), tente alterar o tipo de dados de order_increment_id para varchar(50) em sua tabela que pode resolver seu problema.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top