Pour créer un ticket support, commencez par une recherche

Grille Déclinaisons : Ajouter le champ 'désactiver déclinaisons'


Pré-requis

Version 2014-03-12 de Store Commander
Extension SC Éditeur de grilles Pro - Version 1.0
Le champ doit être déjà présent en base de données


Objectif

Nous souhaitons inclure dans la grille des déclinaisons de Store Commander, le champ du module Activation/Désactivation de déclinaisons'
 

Mise en place

  • Pour ajouter le champ à la liste des champs disponibles pour votre grille déclinaison, cliquez sur le bouton   de l'interface "Ajout de champ", puis saisissez les informations suivantes :

           Quel est l'ID du champ ? used
 

  • SC crée le champ, il faut maintenant renseigner dans la grille déclinaisons :


            ID : used
            ​Nom du champ : Désactivé
            Table : None
            Type: Choix multiple
 

  • Dans le panneau des propriétés avancées : 

           
           Liste de choix

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

           SQL Select

                        return ' , IF( (SELECT COUNT(tsad.id_tot_switch_attribute_disabled) FROM pre9680_tot_switch_attribute_disabled tsad WHERE tsad.id_product_attribute=pa.id_product_attribute)>0, 1, 0 ) as used ';
           

          PHP definition

                         $combArray[$combinaison['id_product_attribute']]['used'] = $combinaison['used'];
            

          PHP onAfterUpdateSQL

                         if (isset($_POST['used']))
                        {
                        $sql = "SELECT * FROM pre9680_tot_switch_attribute_disabled WHERE id_product_attribute=".(int)$id_product_attribute;
                        $exist=Db::getInstance()->ExecuteS($sql);
                        $used = (int)$_POST['used'];
                        if (count($exist)>0 && empty($used))
                        {
                        $sql = "DELETE FROM pre9680_tot_switch_attribute_disabled WHERE id_product_attribute=".(int)$id_product_attribute;
                        Db::getInstance()->Execute($sql);
                        }
                        elseif (count($exist)<=0 && !empty($used))
                        {
                         $sql = "INSERT INTO pre9680_tot_switch_attribute_disabled (id_product_attribute,id_shop) VALUES (".(int)$id_product_attribute.",'1')";
                          Db::getInstance()->Execute($sql);
                        }
                        }

 

  • Fermez la fenêtre d'édition des champs personnalisés puis ajoutez le champ à vos grilles :
    • Sélectionnez la grille des déclinaisons
    • Glissez/déposez le champ dans cette grille
    • Pour utiliser la liste de choix, choisissez le Type "Choix multiple (Type A)" pour votre champ

 


Pour ajouter ce champ à l'import de Store Commander
 

  • Après avoir sélectionné Catalogue Import Produits, cliquez sur   pour ajouter le champ et renseigner les données suivantes :
     

            ID : used
            Nom : _déclinaison - utilisée
         

  • Dans le panneau des propriétés avancées : After import process


                        if ($switchObject=='used')
                        {
                        $sql = "SELECT * FROM pre9680_tot_switch_attribute_disabled WHERE id_product_attribute=".(int)$id_product_attribute;
                        $exist=Db::getInstance()->ExecuteS($sql);
                        $used = (int)$value;
                        if (count($exist)>0 && !empty($used))
                        {
                        if(!empty($used))
                        {
                        $sql = "DELETE FROM pre9680_tot_switch_attribute_disabled WHERE id_product_attribute=".(int)$id_product_attribute;
                        Db::getInstance()->Execute($sql);
                        }
                        }
                        elseif (count($exist)<=0 && empty($used))
                        {
                        $sql = "INSERT INTO pre9680_tot_switch_attribute_disabled (id_product_attribute,id_shop) VALUES (".(int)$id_product_attribute.",'1')";
                        Db::getInstance()->Execute($sql);
                        }
                        }
 


Pour ajouter ce champ à l'export de Store Commander
 

  • Après avoir sélectionné Catalogue Export Produits, cliquez sur   pour ajouter le champ et renseigner les données suivantes :

            ID : used
            Nom : _déclinaison - utilisée
 

  • Dans le panneau des propriétés avancées : Champs des déclinaisons

                        if ( in_array( $switchObject,array('used') ) )
                        {
                        $field = 0;
                        $sql = "SELECT * FROM pre9680_tot_switch_attribute_disabled WHERE id_product_attribute=".(int)$id_product_attribute;
                        $exist=Db::getInstance()->ExecuteS($sql);
                        if ( count( $res ) > 0 )
                        $field = 1;
                        }