Instale el Adobe Commerce B2B extensión
La extensión Adobe Commerce B2B, magento/extension-b2b
está disponible para todas las versiones compatibles de Adobe Commerce. Se instala después de instalar Adobe Commerce.
Requisitos
- Adobe Commerce, todas las versiones compatibles
- PHP 8.1/8.2/8.3
- Composer
Plataformas compatibles
- Adobe Commerce en infraestructura en la nube (ECE)
- Adobe Commerce local (EE)
Pasos de instalación
Requisitos previos
-
Acceso a repo.magento.com para descargar la extensión de. Para obtener la generación de claves y los derechos necesarios, consulte Obtener las claves de autenticación.
Guarde las claves de autenticación para la instalación definiéndolas globalmente en su COMPOSER_HOME directorio. O bien, guárdelos en una auth.json en el directorio raíz de la aplicación de Adobe Commerce.
-
Versión compatible de la extensión B2B: determine la versión más reciente de la extensión B2B compatible con la versión de Adobe Commerce implementada.
-
Consulte las notas de la versión para obtener la información más actual acerca de la compatibilidad de versiones, actualizaciones o cambios que pueden afectar a los requisitos de instalación o actualización.
Instale la extensión B2B (magento/b2b-extension
) con Composer. La extensión es un metapaquete de compositor que incluye la colección de módulos que habilitan las capacidades B2B para una instancia de Adobe Commerce. Para ver una lista de los módulos incluidos, consulte Paquetes B2B.
note tip |
---|
TIP |
Al instalar Adobe Commerce B2B en la infraestructura en la nube, Adobe recomienda implementar la aplicación de Adobe Commerce en un entorno de integración o ensayo antes de comenzar. |
Adobe recomienda trabajar en una rama de desarrollo al añadir la extensión B2B al proyecto. Si no tiene una rama, consulte Crear una rama para desarrollo. Al instalar la extensión B2B, la variable Magento_B2b
nombre de extensión se inserta automáticamente en app/etc/config.php
archivo. No es necesario editar el archivo directamente.
Para instalar la extensión B2B:
-
En la estación de trabajo local, cambie al directorio del proyecto.
-
Cree o desproteja una rama de desarrollo.
-
Añada la extensión B2B a
require
de la seccióncomposer.json
archivo.code language-bash composer require magento/extension-b2b --no-update
-
Actualice las dependencias del proyecto.
code language-bash composer update
-
Agregar, confirmar y enviar cambios de código.
code language-bash git add -A
code language-bash git commit -m "Install the B2B extension."
code language-bash git push origin <branch-name>
note note NOTE Al insertar actualizaciones en el entorno de la nube de, se inicia el proceso de implementación de la nube de Commerce para aplicar los cambios. Compruebe el estado de implementación desde el implementar registro. Si encuentra errores de implementación, consulte Recuperar de un error de componente. -
Una vez finalizada la generación y la implementación, utilice SSH para iniciar sesión en el entorno remoto y comprobar que la extensión B2B está instalada y habilitada.
code language-bash bin/magento module:status Magento_B2b
Un nombre de extensión utiliza el formato:
<VendorName>_<ComponentName>
.Respuesta de ejemplo:
code language-terminal Magento_B2b : Module is enabled
-
En el directorio raíz de la aplicación de Adobe Commerce, actualice el
composer.json
para añadir las dependencias para la extensión B2B:code language-bash composer require magento/extension-b2b:<version>
Si se produce un error, por ejemplo:
code language-terminal [InvalidArgumentException] Could not find a matching version of package magento/extension-b2b.
Compruebe la ortografía del paquete, la restricción de versión y que el paquete está disponible y coincide con el requisito de estabilidad mínima (estable).
-
Si se le solicita, introduzca su claves de autenticación.
Su clave pública es su nombre de usuario; su clave privada es su contraseña. Si ha almacenado sus claves pública y privada en
auth.json
, no se le pedirá que se autentique. -
Ejecute los siguientes comandos una vez que Composer haya terminado de actualizar los módulos:
code language-bash bin/magento setup:upgrade
code language-bash bin/magento setup:di:compile
code language-bash bin/magento setup:static-content:deploy -f
code language-bash bin/magento cache:clean
note note NOTE En el modo de producción, podría recibir un mensaje a Please rerun Magento compile command
. Introduzca los comandos para completar la instalación. Adobe Commerce no le pide que ejecute el comando de compilación en modo de desarrollador.
Después de completar la instalación, configure e inicie los consumidores de mensajes.
Consumidores de mensajes
La extensión Adobe Commerce B2B utiliza MySQL para la administración de colas de mensajes. En la tabla siguiente se enumeran los consumidores de mensajes que admiten las capacidades B2B. Después de instalar la extensión, inicie los consumidores de mensajes para las funciones B2B necesarias para su tienda de Commerce.
sharedCatalogUpdatePrice
sharedCatalogUpdateCategoryPermissions
negotiableQuotePriceUpdate
purchaseorder.toorder
purchaseorder.transactional.email
purchaseorder.validation
quoteItemCleaner
inventoryQtyCounter
async.operations.all
Configuración de consumidores de mensajes
Para evitar posibles problemas o retrasos en el procesamiento, agregue los siguientes parámetros cuando inicio del mensaje consumidores para las capacidades B2B.
-
--max-messages <value>
— especifica el número máximo de mensajes que cada consumidor debe procesar antes de finalizar (valor por defecto = 10000). Aunque el Adobe no lo recomienda, puede utilizar 0 para evitar que el consumidor finalice. La práctica recomendada para una aplicación PHP es reiniciar los procesos de larga ejecución para evitar posibles fugas de memoria. -
--batch-size <value>
— Permite limitar los recursos del sistema consumidos por los consumidores (CPU, memoria). El uso de lotes más pequeños reduce el uso de recursos y, por lo tanto, ralentiza el procesamiento. Si se especifica, los mensajes de una cola se consumen en lotes de<value>
cada uno. Esta opción solo se aplica al consumidor de lotes. If--batch-size
no está definida, el consumidor por lotes recibe todos los mensajes disponibles en una cola.
Para obtener más información sobre las opciones de configuración adicionales, consulte Specific-configuration.
Iniciar consumidores de mensajes
Para habilitar operaciones asincrónicas para las capacidades B2B, debe iniciar varios consumidores de mensajes.
-
Enumerar los consumidores de mensajes disponibles:
code language-bash bin/magento queue:consumers:list
El comando devuelve los consumidores de mensajes disponibles, incluidos todos los Consumidores de mensajes B2B.
-
Inicie cada consumidor por separado:
code language-bash bin/magento queue:consumers:start [--max-messages=<value>] [--batch-size=<value>] <consumer_name>
Por ejemplo:
code language-bash bin/magento queue:consumers:start quoteItemCleaner
&
para ejecutar el comando, vuelva al símbolo del sistema y siga ejecutando los comandos. Por ejemplo: bin/magento queue:consumers:start sharedCatalogUpdatePrice &
.Para obtener más información, consulte Administrar colas de mensajes en el Guía de configuración.
Añadir consumidores de mensajes a cron
Puede automatizar la programación de ejecución de SharedCatalogUpdateCategoryPermissions
y SharedCatalogUpdatePrice
consumidores de mensajes añadiendo la programación al archivo de configuración de cron /app/code/Magento/MessageQueue/etc/crontab.xml.
* * * * * ps ax | grep [s]haredCatalogUpdateCategoryPermissions >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdateCategoryPermissions &
* * * * * ps ax | grep [s]haredCatalogUpdatePrice >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdatePrice &
También puede configurar programaciones para consumidores de mensajes desde el Ajustes de configuración de tienda en el Administrador.
Habilitar funciones B2B en el administrador
Después de instalar la extensión Adobe Commerce B2B e iniciar los consumidores de mensajes, también debe habilitar las funciones B2B en el administrador.