Deseamos incluir en la parrilla de declinaciones del Comandante de la Tienda, el campo del módulo 'Activación/Desactivación de declinaciones'.
Para añadir el campo a la lista de campos disponibles para su cuadrícula de declinación, haga clic en el botón desde la interfaz "Añadir campo", e introduzca la siguiente información:
¿Cuál es el ID del campo? used
SC crea el campo, ahora debe rellenar la cuadrícula:
Nombre del campo: Desactivado
Tabla: Otra tabla
Tipo: Opción múltiple
En el panel de propiedades avanzadas de la derecha :
- seleccione el menú Seleccione las opciones y rellene :
return array(1=>_l('Yes'), 0=>_l('No'));
- seleccione el menú SQL Select e introduzca:
return ', IF( (SELECT COUNT(tsad.id_tot_switch_attribute_disabled)
FROM '._DB_PREFIX_.'tot_switch_attribute_disabled tsad
WHERE tsad.id_product_attribute=pa.id_product_attribute AND id_shop='.SCI::getSelectedShop().')>0, 1, 0 ) as used ';
- seleccione el menú PHP Definition e introduzca :
$combArray[$combinaison['id_product_attribute']]['used'] = $combinaison['used'];
- seleccione el menú PHP enAfterUpdateSQL y rellene:
if (isset($_POST['used'])) {
$id_shop = SCI::getSelectedShop();
$sql = "SELECT id_product_attribute FROM " . _DB_PREFIX_ . "tot_switch_attribute_disabled WHERE id_product_attribute=" . (int)$id_product_attribute . " AND id_shop=" . (int)$id_shop;
$exist = Db::getInstance()->getValue($sql);
$used = (int)$_POST['used'];
if ($exist && empty($used)) {
$sql = "DELETE FROM " . _DB_PREFIX_ . "tot_switch_attribute_disabled WHERE id_product_attribute=" . (int)$id_product_attribute . " AND id_shop=" . (int)$id_shop;
Db::getInstance()->Execute($sql);
} elseif (!$exist && !empty($used)) {
$sql = "INSERT INTO " . _DB_PREFIX_ . "tot_switch_attribute_disabled (id_product_attribute,id_shop) VALUES (" . (int)$id_product_attribute . "," . (int)$id_shop . ")";
Db::getInstance()->Execute($sql);
}
}
Cierre la ventana de edición de campos personalizados.
El nuevo campo está ahora en la lista de campos disponibles, y puede añadirlo a su cuadrícula de declinación.
Después de seleccionar Catálogo > Importación de productos, haga clic en para añadir el campo y rellenar los siguientes datos:
ID: used
Nombre: _combination - used
En el panel de propiedades avanzadas:
- seleccione el menú After import process y entre:
if ($switchObject=='used') {
$sql = "SELECT id_product_attribute FROM " . _DB_PREFIX_ . "tot_switch_attribute_disabled WHERE id_product_attribute=" . (int)$id_product_attribute . " AND id_shop=" . (int)$id_shop;
$exist = Db::getInstance()->getValue($sql);
$used = (int)$value;
if ($exist && empty($used)) {
$sql = "DELETE FROM " . _DB_PREFIX_ . "tot_switch_attribute_disabled WHERE id_product_attribute=" . (int)$id_product_attribute . " AND id_shop=" . (int)$id_shop;
Db::getInstance()->Execute($sql);
} elseif (!$exist && !empty($used)) {
$sql = "INSERT INTO " . _DB_PREFIX_ . "tot_switch_attribute_disabled (id_product_attribute,id_shop) VALUES (" . (int)$id_product_attribute . "," . (int)$id_shop . ")";
Db::getInstance()->Execute($sql);
}
}
Una vez que haya seleccionado Catálogo > Exportacion de productos: haga clic en para añadir el campo y rellenar los siguientes datos:
ID: used
Nombre: _combination - used
En el panel de propiedades avanzadas de la derecha:
- seleccione el campo Combinations fields y entre:
if (in_array($switchObject, array('used'))) {
$field = 0;
$sql = "SELECT * FROM "._DB_PREFIX_."tot_switch_attribute_disabled WHERE id_product_attribute=" . (int)$id_product_attribute." AND id_shop=".(int)$selected_shops_id;
$exist = Db::getInstance()->ExecuteS($sql);
if (count($res) > 0) {
$field = 1;
}
}