2.2.1.2. Créer et utiliser ses propres catégories

Les catégories doivent être créées dans le bloc [Categories].

Dans le fichier de configuration ifacecommon.cfg catégories par défaut ont déjà été créés, qui n’ont pas été modifiés peut/devrait être. Cependant, ces catégories peuvent être utilisées dans n’importe quel Fichier de configuration spécifique à la CAO.

Exemple d'utilisation de la catégorie par défaut "is3d" dans la clé poolPath :

poolPath(is3d)=$CADENAS_DATA/pool/solidworks

Des catégories distinctes sont créées dans les fichiers de configuration spécifiques à la CAO (par ex. ifugnx.cfg ) dans le bloc [Catégories] appliqué.

Ils peuvent ensuite être utilisés dans n'importe quel autre bloc des fichiers de configuration spécifiques à la CAO.

Exemple 1 :

Dans Voici un exemple tiré du fichier de configuration ifugnx.cfg. Tout d’abord, les catégories NX4, NX5, NX6, NX7, NX75 et NX80. Après cela, ceux-ci sont utilisés pour le l’attribution du modèle approprié.

[Categories]
nx4=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="400"
nx5=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="500"
nx6=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="600"
nx7=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="700"
nx75=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="750"
nx80=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="800"
tcActive=GetObject("iface.contextservice").GetVariable("UserApp").GetObject
("iface.teamcenter").isTeamcenterActive()

[CreationOptions]
TemplateName(nx4,isMMDoc)=$CADENAS/iface/unigraphics/shared/nx4/seedparts/ups_seed_mm.prt
TemplateName(nx4,isInchDoc)=$CADENAS/iface/unigraphics/shared/nx4/seedparts/ups_seed_in.prt
TemplateName(nx5,isMMDoc)=$CADENAS/iface/unigraphics/shared/nx5/seedparts/ups_seed_mm.prt
TemplateName(nx5,isInchDoc)=$CADENAS/iface/unigraphics/shared/nx5/seedparts/ups_seed_in.prt
TemplateName(nx6,isMMDoc)=$CADENAS/iface/unigraphics/shared/nx6/seedparts/ups_seed_mm.prt
TemplateName(nx6,isInchDoc)=$CADENAS/iface/unigraphics/shared/nx6/seedparts/ups_seed_in.prt
# etc.

Même pour Solid Edge dans le fichier de configuration ifsolidedge.cfg ressemble à ceci :

[Categories]
st1=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="100"
st2=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="200"

Et pour Pro/E dans le fichier de configuration ifproewildfire.cfg comme ceci :

[Categories]
wf3=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="3"
wf4=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="4"
wf5=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="5"
wf6=GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="6"
wf34=(GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="3") 
 OR (GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="4")
wf567=(GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="5") 
 OR (GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="6") 
 OR (GetObject("iface.contextservice").GetVariable("UserApp").cadVersion="7")

Exemple 2 :

LeFileName est géré différemment d'une entreprise à l'autre. Souvent, une longueur maximale de nom de fichier est définie ou un système PDM spécifique ne supporte qu'une longueur limitée. D'autres veulent voir leur ID dans le FileName, alors que d'autres peuvent se passer de l'article, etc.

Voici un petit exemple où, pour les pièces avec ERP_PDM_NUMBER, celui-ci doit être utilisé pour le nom, alors que pour les pièces sans ERP_PDM_NUMBER, le nom doit être formé par défaut à partir de NB.

FileName(isCreaOptNotSet,is3dpart)=?_FORMAT_0("<GENNAME>")
 .toFileName("_").add(".ipt").value()

FileName(isCreaOptNotSet,is3dpart,hasAttr(ERP_PDM_NUMBER))=
 ?_FORMAT_0("<ATTR(ERP_PDM_NUMBER)>").toFileName("_").add(".ipt").value()