Magento 2 – Ajustar rango de números

Como en Magento 1 (ver aquí) También lo queremos en Magento. 2 ajustar los rangos de números. Los números predeterminados asignados [Número de vista de tienda]000000000 no son realmente agradables y probablemente en la mayoría de los casos están completamente desproporcionados – ¿Quién casi espera eso? 1 mil millones. Tener que asignar números de pedido? Entonces queremos los números de pedido., Números de factura, Ajustar números de albaranes y números de notas de crédito. Se debe asignar un prefijo para facilitar la asignación a la tienda online correspondiente., para que sepas de qué tienda se trata directamente cuando hagas una transferencia con el número de pedido o soporte. En cuanto al número de puestos, sin embargo, no diferenciaremos por tienda y siempre 6 PONER (detrás del prefijo) TENER.

Entonces teníamos dos requisitos.:
1. Reducir el número de dígitos de los números a 6 PONER
2. Prefijo para una asignación clara a un proyecto de taller

Estaba en magento 1 rápida y cómodamente a través de una única tabla en la base de datos estaba hecho, debe estar en Magento 2 (¿Quién se sorprende??) se puede hacer con mucho más esfuerzo.

La tabla se utiliza en la base de datos para el prefijo. “perfil_secuencia_ventas” abrió. en la columna “prefijo” A continuación se puede introducir el prefijo deseado. – entonces las señales, que se colocan delante de cada número. Estos vienen ADEMÁS de los 9 (o. después del cambio 6) Dígitos del número real.

Como se puede ver, siempre serán bloques de cuatro (1-4/5-8/…) responsable de una vista de la tienda. La primera línea es el número de pedido., el segundo el número de factura, el tercero es el número de nota de crédito y el cuarto es el número de albarán de entrega. Esto se repite por vista de tienda.. Pero también puedes hacer esto en la tabla. “sales_sequence_meta” REBUSCAR:

Esta fue la parte rápida y relativamente fácil.. Entonces, después de ingresar el prefijo (Por supuesto, esto también funciona para el sufijo de la columna. “sufijo”), A partir de ahora, todos los rangos de números adaptados llevarán este prefijo.

PARTE 2 “Ajuste de la longitud del rango de números” es un poco mas complicado. Hay una solución rápida y sucia., que no recomendaría y es decente.

Para ambas soluciones, la longitud del número predeterminado de Magento debe ser 9 Lugares del archivo “/proveedor/magento/module-sales-sequence/Model/Sequence.php” (como. LÍNEA 22) ser sobrescrito.

No haría esto directamente en el archivo, ni siquiera en una solución QnD. Por lo tanto, el enfoque QnD sería el siguiente:

Abra el archivo /app/etc/di.xml
El siguiente código aparecerá allí antes del de cierre. </config> ENCLAVADO

<type name="Magento\SalesSequence\Model\Sequence">
    <arguments>
        <argument name="pattern" xsi:type="string"><![CDATA[%s%'.06d%s]]></argument>
    </arguments>
</type>

Dependiendo de la tienda, es posible que aún sea necesario actualizarlo. / desplegada / compilado o sólo el caché se puede eliminar. Después, todos los números NUEVOS solo tendrán 6 dígitos..

Sin embargo, la desventaja de esta solución QnD es, que el cambio puede. podría perderse en el futuro con una actualización o un di.xml adaptado. Por lo tanto tiene más sentido escribir un módulo pequeño., lo que asegura este cambio incluso más allá de una actualización.

Hacemos esto de la siguiente manera:

  • Crear una ruta de directorio para el módulo como por ejemplo:. “aplicación/código/Comerciantes/Idlength”
  • Creando un archivo “registro.php” en este directorio. Este tiene el siguiente contenido.
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::MODULE,
    'Commercers_Idlength',
    __DIR__
);
  • Creando un directorio “aplicación/código/comerciantes/Idlength/etc.”
  • Crea un archivo di.xml con el siguiente contenido
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\SalesSequence\Model\Sequence">
    <arguments>
        <argument name="pattern" xsi:type="string"><![CDATA[%s%'.06d%s]]></argument>
    </arguments>
</type>
</config>
  • Creando otro archivo en esta carpeta llamado “módulo.xml” con el contenido siguiente
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
    <module name="Commercers_Idlength" setup_version="1.0.0">
    </module>
</config>

Luego tienes que actualizar dependiendo de la tienda como se indica arriba. / desplegada / compilado o sólo el caché se puede eliminar. Después los números sólo tienen 6 PONER. Si quieres tener más o menos trabajos, solo tienes que ingresar la ubicación en el di.xml que acabas de crear “06%d” AJUSTAR.

Publicado por Covos

DESDE 2009 He estado trabajando intensamente con Magento. Empecé con la creación y el funcionamiento de las tiendas B2C. Esto se extendió a través de mi trabajo en el sector de la logística. Esto dio lugar a sistemas especializados primera B2E. Hoy trabajo del día a día con una emocionante B2C, B2B- y proyectos B2E e informes en este blog sobre los desafíos y dan consejos de expertos.

Deja un comentario

Su dirección de correo electrónico no será publicado. Los campos obligatorios están marcados *