Aide en ligne de MagicFormula pour modifier en masse les données PrestaShop à l'aide de formules
Interface de MagicFormula
Pour ouvrir MagicFormula, placez le curseur dans la colonne à modifier et faites un clic droit, ce qui a pour effet d'ouvrir le menu contextuel de la colonne.
Si MagicFormula est disponible sur cette colonne, deux possibilités s'offrent à vous, soit une action sur uniquement les lignes déjà sélectionnées, soit sur toutes les lignes:
Sélectionnez ou saisissez votre formule (voir la notice ci-dessous):
Une fois la formule saisie, cliquez sur "Phase 1 : Pré-visualiser". le résultat de l'opération est affichée dans la table. Il vous reste juste à valider (sauvegarde réalisée dans la base) ou à annuler :
Comment saisir une formule ?
Le champ de saisi peut recevoir toutes sortes de formules, pour remplir ou modifier en masse les valeurs dans les colonnes.
Il peut s'agir aussi bien de formules mathématiques, agissant et produisant des nombres, que des expressions de manipulation des textes, voir un mélange des deux.
Il est possible de sauver et ré-utiliser les formules. Vous pouvez aussi les supprimer et dupliquer :
Chaque colonne de chaque table à sa propre liste de formules (liste filtrée).
En décochant l'option de filtrage, il est possible d'utiliser dans une colonne une formule crée pour une autre colonne. Si vous dupliquez la formule, la copie sera associée à la colonne en cours.
Cette liste est accessible en cliquant sur le petit icône en forme de double flêches bleues.
Vous pouvez soit taper au clavier vos formules, soit utilser les boutons de saisie rapide présent dans la barre titre de cette micro fenêtre.
Les formules peuvent utiliser les valeurs lues dans la même colonne que celle modifiée, avec le paramêtre {VA}. Ou les données d'autres colonnes (utilisez le sélecteur de colonnes ci-dessus, évitez de les taper au clavier), sous la forme {nom de la colonne}.
Si le texte est affiché en rouge, cela signifie qu'au moins une des colonnes utilisées dans la formule n'est pas présente dans la table, ce qui conduira certainement à un résultat incorect.
Si le 1er élément de la formule est un chiffre (ou le nom d'une colonne contenant un chiffre), la formule sera un calcul mathématique.
Si au contraire elle commence par un texte (ou le nom d'une colonne contenant du texte), elle manipulera les données de la formule, y compris les chiffres, comme des chaines de caractères et donnera comme résultat une chaine de caractères.
Pour forcer un chiffre, ou le contenu d'une colonne contenant un chiffre, à être vu et traité comme un texte, par exemple au début de la formule, placez ce chiffre ou ce nom de colonne entre deux guillemets doubles (" ").
Pour forcer une chaine issue d'une colonne de type texte, mais contenant des chiffres, à être traitée comme un nombre, utilisez la fonction Val().
Il est possible de saisir des formules et expressions du type "SI (condition) ALORS (valeur1) SINON (valeur2)", avec le petit bouton "?" de la barre titre.
La condition peut être multiple (de type ET/OU), en utilisant les boutons & et |).
Le mot "PAS" permet d'inverser une condition (ex : "PAS <=" veut dire "pas inférieur ou égal à").
Le bouton "!" permet d'insérer rapidement le mot "PAS".
Le bouton % (pourcentage), insère dans la formule "/100".
Par exemple "{VA}+{VA}*5/100" est la formule à connaitre pour augmenter les valeurs actuelles de 5%. Elle est aussi équivalente à celle ci : "{VA}*(1+5/100)".
Dans les formules mathématiques, les signes * et / (multiplier et diviser), sont prioritaires sur les + et - (ajouter et soustraire). Ajoutez des parenthèses si nécessaire.
Ex : A+B*C est équivalent à A+(B*C).
Si vous voulez d'abord ajouter A et B, saisir (A+B)*C.
Pour saisir des chiffres à virgules, utilisez le point (.) et non pas la virgule !
Pour concaténer des chaines de caractères (des textes), utilisez le signe +. Par exemple "{VA}+ " _ "+{name__ps_product}" va remplir chaque cellule avec son propre contenu suivi d'un espace, d'un tiret, d'un autre espace puis du nom du produit de la même ligne.
Attention, on ne peut construire les formules qu'avec les colonnes affichées. Mais si plus tard vous ré-utilisez une formule construite prédemment avec une colonne qui n'est plus affichée, le résultat sera forcément incorrect (contenu au mieux remplacé par une chaine vide voir une erreur).
Utilisation niveau expert(e) :
- La manipulation des textes permet l'utilisation de toutes les fonctions de gestion des chaines de caractères du langage Windev. Par exemple Contient(), ChaineCommencePar(), Droite(), SansEspace(), ExtraitChaine(), Remplace(), etc...
- De même vous pouvez effectuer des calculs complexes en utilisant les opérateurs arithmétiques du langage Windev, comme +=, -=, les fonctions mathématiques comme Abs() et les opérateurs binaires &, |, ||... La seule limite est votre imagination. Se référer à la documention Windev en accès libre sur le site de PCSoft. Nous avons fait une pré-sélection des fonctions les plus utiles, mais il en existe bien d'autres. Il va de soit que Sitolog ne pourra pas assurer de formation sur ce langage qui n'est pas le sien, dans le cadre du support gratuit. Mais pour les problématiques complexes, vous pouvez obtenir nos conseils grâce à nos tickets de service disponibles sur notre site.
Rappel de quelques rêgles :
- Utilisez le. (le point et non pas la virgule) pour les chiffres décimaux.
- Utilisez * pour la mulitplication et non pas la lettre x ni le point.
- Pour utiliser une valeur à lire dans une colonne (une variable), utiliser le sélecteur, pour éviter les fautes de frappe.
- Les variables sont écrites sous la forme du nom de la colonne entourée de crochets { }.
- {VA} signifie "valeur actuelle du champ".
- Toute parenthèse ouverte doit être fermée. Il doit y avoir le même nombre de ( que de ).
- Deux variables ou chiffres doivent toujours être séparés par un opérateur.
- Il est interdit de placer deux opérateurs l'un à coté de l'autre.
- Il est interdit de diviser par 0.
- Une parenthèse ne peut pas être vide.
- Bien respecter la syntaxe des comparaisons : ( (A=B) ? (C) SINON (D) ) pour si A=B, inserer C, sinon insérer D . Les conditions possibles sont =, <, >, <=, >=, !=, DANS ( , , ) . La condition peut être inversée en ajoutant devant le mot PAS. Ainsi "A PAS= B" veut dire "si A est différent de B".
- La formule ne doit ni commencer ni se terminer par un opérateur, mais par un chiffre ou une variable ou une parenthèse.
Tutoriel video complet avec de nombreux exemples, de l'outil de modification en masse MagicFormula
54 min
Pour tout connaitre sur MagicFormula et les colonnes calculées, aussi bien dans les tables de la fenêtre principale que dans l'outil d'importation. Après une explication complète de l'interface, les nombreux exemples détaillés vous permettrons de maîtriser l'outil et surtout d'adapter son usage à vos propres besoins.
La formation commence par un petit rappel des autres outils, comme le modificateur par calcul, afin de bien comprendre les différences et savoir quand utiliser l'un ou l'autre.
resolution Augmentez la résolution à 720p si la vidéo est trop floue, repassez-la en Auto si elle se fige.
Besoin d'administrer plus vite votre catalogue, lancez-vous sans risque pendant 15 jours grâce à notre garantie "satisfait ou remboursé" :