Para crear un ticket de soporte, comience con una búsqueda

Rejilla de combinación multitienda: añadir un campo de una tabla externa a las tablas de combinación multitienda


Objetivo

Queremos añadir el campo "Etiqueta BIO" que nos permitirá distinguir este tipo de producto en la parrilla de declinación de varias tiendas. En nuestro ejemplo, este campo se encuentra en la tabla ps_label ( id_product_attribute ; label_bio (0/1); id_shop ).

Esto nos permitirá :

  • utilizar los filtros de las cuadrículas para afinar nuestra selección de declinaciones
  • editar este campo en masa utilizando el sistema de copiar y pegar de SC

 

Configuración

Para añadir el campo a la lista de campos disponibles para su cuadrícula de MB - variaciones, haga clic en el botón desde la interfaz "Añadir campo", e introduzca la siguiente información:

¿Cuál es la identificación del campo? label_bio (debe coincidir exactamente con el nombre del campo en la base de datos)

 

SC crea el campo, ahora debe rellenar la cuadrícula:

Nombre del campo: Etiqueta BIO
Tabla: -
Tipo: opciones múltiples

 

En el panel de propiedades avanzadas de la derecha:

- seleccione el menú SQL Select e introduzca :

return ' ,lab.label_bio';

 

- seleccione el menú SQL Leftjoin e introduzca:

return ' LEFT JOIN '._DB_PREFIX_.'label lab ON (lab.id_product_attribute = pas.id_product_attribute AND lab.id_shop=pas.id_shop) ';

 

- seleccione el menú de PHP definition e introduzca :

$product_attr['label_bio'] = $product_attr_by_shop['label_bio'];

 

- seleccione el menú PHP onAfterUpdateSQL y rellene:

if (isset($_POST['label_bio'])){
    $sql = "UPDATE "._DB_PREFIX_."label 
            SET label_bio = ".(int)Tools::getValue('label_bio',0)." 
            WHERE id_shop = ".(int)$id_shop." 
            AND id_product_attribute=".(int)$id_product_attribute;
    Db::getInstance()->Execute($sql);
}

 

- Si desea añadir una opción Sí/No, seleccione el menú Lista de opciones e introduzca:

return array(1=>_l('Yes'), 0=>_l('No'));

 

Cierre la ventana de edición de los campos personalizados.

El nuevo campo está ahora en la lista de campos disponibles, y puede añadirlo a su cuadrícula de declinación.




Artículos relacionados