生成されるCADデータのファイル名を変更したい

PARTsolutionsからCAD転送で生成されるCADデータのファイル名は、通常以下の赤枠で囲った箇所の値になります。

生成されたCADデータです。一致していることが確認できます。

これを変更し、たとえば「先頭に自社を示すプリフィックスを加えたい」「CADのバージョン名を加えたい」「メーカー名を加えたい」「英数字以外はすべて_に変換したい」等が必要な場合もあるかと思います。今回はこれを行ってみたいと思います。例にあげた項目をすべて設定する例で解説します。

 

設定方法

PARTadminを起動し、「$CADENAS_SETUP/ifsolidworks.cfg」を選択します。右側の「CreateOptions(is3d)~」以下の「FileName」キーの値で設定します(赤枠)。上がsldprtファイルの名前、下はsldasmファイルの名前です。

それぞれのキーを以下のように変更します。

  • FileName(isCreaOptNotSet,is3dpart)=?“CNS_”+_FORMAT_0(“<CATALOG>_<GENNAME>”).alnum(“_”).value()+“_SOLIDWORKS”+application.cadVersion+“.sldprt”
  • FileName(isCreaOptNotSet,is3dasm)=?“CNS_”+_FORMAT_0(“<CATALOG>_<GENNAME>”).alnum(“_”).value()+“_SOLIDWORKS”+application.cadVersion+“.sldasm”

 

CADデータを生成してみましょう。次の画像の下がそれです。デフォルト設定とは名前が変わっていることが確認できます。

以下が設定した値についての解説です。少々ごちゃごちゃしていますが仕様なのでこれは如何ともし難く。

 

設定値

?“CNS_”+_FORMAT_0(“<CATALOG>_<GENNAME>”).alnum(“_”).value()+“_SOLIDWORKS”+application.cadVersion+“.sldasm”

  • 値先頭の「?」:これは、値の中にマクロが入っている場合文字列ではなくマクロとして処理するためのマークです。仮に「"CNS_“+_FORMAT_0(”<CATALOG>_<GENNAME>“).alnum(”_“).value()+”_SOLIDWORKS"+application.cadVersion+“.sldprt"」と先頭の?がない値を設定すると、このままの文字列がファイル名となってしまいます。
  • “CNS_”:ファイル名の先頭に「CNS_」という文字をつける記述です。文字は””でくくります。
  • +:文字の連結を示す記号です。
  • _FORMAT_0(”<CATALOG>_<GENNAME>“).alnum(”_“).value():マクロ処理です。「<CATALOG>」はパーツのメーカー名に置換され、「<GENNAME>」は冒頭にあげた値に置換されます。続く「almun(”_”)」は英数字以外を_(アンダーバー)に置換するためのマクロです。最後の「.value()」は文字を出力するマクロです。お約束だと思ってつけてください。
  • ”_SOLIDWORKS"+application.cadVersion+“.sldasm”:「”_SOLIDWORKS”」は”“でくくられているので単なる文字です。続く「application.cadVersion」はSolidworksのバージョンに置換するマクロです。この例ではSolidworks2017を使っているので「2017」という値になります。「”.sldasm”」も文字で拡張子です。

sldprtファイル用とsldasmファイル用の設定の違いは、末尾の拡張子だけです。逆に個別に設定することもできますので、sldasmファイルとsldprtファイルで命名ルールが異なる運用にも対応することができます。

 

その他値で使用可能なマクロは、以下のとおりです。

  • <GENNAME(25)>:冒頭赤枠で囲った値に最大文字数を指定します(これは25文字)。パーツによっては100文字以上となる場合のありますので、その際CADシステム側で長いファイル名を受け付けないときの対策等に使用できます。
  • ToLower():すべての文字を小文字に変換します。
  • MaxLen(28):最終的な値の最大文字数を制約します。この例は28文字に制限します。
  • toFileName(“_”):一般的な禁則文字を「_」に置換します。
  • RepSeq(“;,_”):値を置換します。この例は「;」を「_」に置換します。
  • add(“.sldasm”) :文字を追加します。この例は「.sldasm」という文字を追加しています。

こんな形で使用します。

?_FORMAT_0(“<GENNAME(25)>”).toFileName(“_”).RepSeq(“;,_”).ToLower().MaxLen(28).add(“.sldasm”).value()

拡張子の前のファイルベース名までで28文字に制限、小文字に変換され、最後に拡張「.sldasm」が加わり、最終的なファイル名となります。

 


戦略的な部品管理ソリューションについてのお問い合わせはこちらから

CADENASが提供する戦略的パーツマネジメントPARTsolutionsに関するご質問がございましたらお気軽にお問い合わせください。

  • 部品標準化によるコスト削減について
  • PARTsolutionsのインテリジェントな部品検索システムについて
  • 社内のCAD/PLM/ERPとの連携について

※個人情報の取り扱い方針につきましては、プライバシーポリシーをご参照ください。

* は入力必須項目です。

Please add 8 and 5.



資料ダウンロード

PARTsolutions 総合カタログ

PARTsolutions(パーツソリューションズ)の総合カタログです。開発から後工程まで多部門に渡り効果を発揮する戦略的部品管理のコンセプトをわかりやすく、色々な活用例を交えてご紹介いたします。

> PARTsolutions カタログを見る

> ユーザー事例・ホワイトペーパーのダウンロードはこちら