1.6.5.8.2. Bloc [settings] Clé "GenerationFilterRules" - Filtrer les projets et les lignes pour la génération du géo-index

Dans le Fichier de configuration CADENAS_SETUP/geomsearch.cfg vous pouvez Définissez un ensemble de règles de filtrage. Si une pièce répond à au moins un , il sera filtré et donc supprimé de la génération d’index sauf.

  1. Dans le bloc [settings], dans la tonalité GenerationFilterRules séparés par des virgules Liste de tous les noms de règles.

    [settings]
    GenerationFilterRules=Rule1,Rule2,etc.

  2. Pour chaque règle, définissez un bloc après le Schéma GenerationFilterRule_Rulex à.

    exemple :

    [GenerationFilterRule_Rule1]
    Catalogs=cat/__partialtest
    AlgoTypes=PARTIAL,TOPO
    PrjRegExp=.*ass.*
    PrjScriptCallbackFile=
    PrjScriptCallbackFunction=
    LineFilterCount=1
    LineFilterVar0=TYPE
    LineFilterRegExp0=.*ass.*
    Conjunction=AND
    LineScriptCallbackFile=test.vbb
    LineScriptCallbackFunction=checkLine

Explications sur les différentes clés :

Paramètres généraux

  • Les catalogues: Catalogues auxquels la règle doit s'appliquer

  • AlgoTypes: Types d'index qui ne doivent PAS être générés (séparés par des virgules)

    Valeurs possibles : TOPO,GEO,PARTIAL

  • Conjonction: AND | OR

    Se réfère aux conditions de projet et aux conditions de ligne. S'il n'y a qu'au plus 1 condition de projet et qu'au plus 1 condition de ligne, peu importe que ce soit OR ou AND.

    Si OR, alors un filtre de projet ou de ligne est appliqué si UNE règle s'applique. Si AND, alors toutes les règles non vides doivent s'appliquer.

Paramètres du chemin de projet

  • PrjRegExp: indication d'une expression régulière. Celle-ci est testée sur le chemin du projet par rapport au catalogue. Si elle s'applique, le filtrage est effectué.

    Exemple : tous les projets dont le chemin contient quelque part "asm" seront filtrés par l'expression régulière suivante.

    .*asm.*

  • PrjScriptCallbackFile: Chemin d'accès au script vbb contenant le callback.

  • PrjScriptCallbackFunction : la fonction Fonction PrjScriptCallbackFunction appelé avec le chemin du projet comme paramètre et doit renvoyer 1, Si vous souhaitez filtrer, sinon 0.

Paramètres de la ligne de tableau

  • LineFilterCount (nombre de filtres ) : Nombre de conditions de ligne

    Exemple avec 3 conditions de ligne :

    LineFilterCount=3
    LineFilterVar0=A
    LineFilterRegExp0=.*ab.*
    LineFilterVar1=B
    LineFilterRegExp1=.*ac.*
    LineFilterVar2=C
    LineFilterRegExp2=.*ad.*
    

  • LineFilterVar0: nom de la variable dans le tableau (0 doit être remplacé par l'index de la condition).

  • LineFilterRegExp0= La valeur caractéristique de la variable nommée doit correspondre à l'expression régulière pour être filtrée. (0 doit être remplacé par l'indice de la condition).

  • LineScriptCallbackFile: Chemin d'accès au script vbb contenant le callback.

  • LineScriptCallbackFunction : la fonction Fonction LineScriptCallbackFunction appelé avec la table comme paramètre et doit retourner 1 si doit être filtré, sinon 0.

    L'exemple suivant filtre toutes les lignes avec un Line-Id supérieur à 50000 :

    function filterLines(table)
      dim row = table.SelectedRow
      dim lineId = row.Idnr
      if lineId > 50000 then
        filterLines = 1
      else
        filterLines = 0
      end if
    end function