Please enable Javascript to view this site.

GENIUS TOOLS Model Processor

The use of variables allows values to be automatically adjusted in many Model Processor tasks. Values with entered variables automatically adapt to the prevailing environment.

The variable entries can be clicked on and then automatically write the variable values into the text field provided.

Please use logical decision criteria to assess whether a variable can be used. (When checking parameters, @project_dir@ is not useful, for example.) Unsupported variables are retained at the end.

String-Operations

Please note: An outer RegExp cannot contain string operations inside it.

String-Operations work on any strings and are initiated with the double dollar sign $$ . The following string operations are available in the Model Processor:

Operation

Description

$$post$N$s$$

Returns the last N characters of the given string, e.g.:

$$post$6$Hello World!$$

Result: World!

$$poste$N$s$$

Deletes the first N characters of the given string and returns the result, e.g.:

$$poste$4$Hello World!$$

Result: orld!

$$posts$A$s$$

Returns the last characters of the given string starting from the first occurrence of string A, e.g.:

$$posts$W$Hello World!$$

Result: orld!

$$pre$N$s$$

Returns the first N characters of the given string, e.g.:

$$pre$5$Hello World!$$

Result: Hello

$$pree$N$s$$

Deletes the last N characters of the given string and returns the result, e.g.:

$$pree$4$Hello World!$$

Result: Hello W

$$pres$A$s$$

Returns the first characters of the given string up to the last occurrence of string A, e.g.:

$$pres$o$Hello World!$$

Result: Hell

$$repl$A$B$s$$

Replaces all occurrences of A in the given string with B and returns the result. Regular expressions can be used in A with /.../.

If a $ is to be used in A or B, it must be marked with a ! following it. Examples:

–$$repl$.$-$@para@$$

–Replace spaces in values with underscores:

$$repl$/^\s$!/$_$with the$$

–$$repl$e$o$Hello World!$$

Result: Hollo World!

$$sub$A$B$s$$

Returns the sub-string from character A to character B-1 of the given string. The first character has the index 0, e.g.:

$$sub$1$9$Hello World!$$

Result: ello Worl

Parameters, user variables, system variables

Parameters, user variables, system variables, etc. are queried using the percent sign %. There are different sources for values that can be queried, as well as different operations for processing data. Only one source should be specified per expression; otherwise, the source furthest to the right in the expression will be used. Operations can generally be combined in any order and are executed in the specified sequence. Individual sub-expressions are separated by a colon.

Please note: The percent sign “%” can be escaped with two percent signs: “%%”. These are replaced with a single percent sign during substitution. Since Creo parameters never start with a number, percent signs that appear directly before a digit are also replaced with a single percent sign. This is useful, for example, in percent-encoded URLs.

Source

Description

`` (no source)

Parameters of the current model or drawing

conf

Currently set value of a Creo Config option

curmat

Parameters of the current material of the current model

curmod

Parameters of the currently active drawing model of the current drawing

env

Value of an environment variable of the current Creo process, e.g. §§ (paragraph symbols)

user

Value of a user variable

Operation

Description

dubase

Converts a given number to exponential e-notation with 6 decimal places

length

The length (number of characters)

nozero

Removes leading zeros from a number

tolower

Converts the given text to lowercase

toupper

Converts the given text to uppercase

Environment Variables

Text Operation

Description

§env-var§

Output of an environment variable of the model processor/from Windows, e.g. §COMPUTERNAME§, §HOME§, §HOMEDRIVE§, §LOGONSERVER§, §USERDOMAIN§, §USERNAME§. Two § signs "§§" are supported.

Creo variables

Please note: An @ sign can be escaped with two @ signs: "@@". These are replaced with a single @ sign during substitution, e.g. escape @mdln@ with “@@mdln@@”.

Text-Operation

Description

@workerdir:XX@

The current Windchill Worker Directory in a subfolder under XX

– Combined views

Text-Operation

Description

@combview@ / @combstate@

Output of the name of the currently set combined view, e.g. F01_Master

@explodestate@ / @explodedstate@

Output of the name of the explode state in the currently set combined view, e.g. AssyInstrctns

@layerstate@

Output of the name of the layer state in the currently set combined view, e.g. Work_State

@orientation@ / @view@

Output of the name of the orientation in the currently set combined view, e.g. Front

@simprep@

Output of the name of the simplified representation in the currently set combined view, e.g. Detailed_Medium

@stylestate@ / @displaystyle@

Output of the name of the style or display style in the currently set combined view, e.g. CustomStyle

@xsec@

Name of the cross section of the currently set combined view, e.g. CUR_XSEC or ""

– Drawings

Text Operation

Description

@curdrwmdln@

Output of the model name of the current drawing model, e.g. STEAMENGINE. If the model currently being edited is not a drawing, the output is ‘-’.

@curdrwmdltype@

Output of the model type of the current drawing model, e.g. asm. If the model currently being edited is not a drawing, the output is ‘-’.

@cursheetcurmdlscale@

Output of the model scaling of the current model relative to the current sheet, e.g. output: 0.5 for 1:2. If the model currently being edited is not a drawing, the output is ‘-’.

@cursheetcurmdlscaleISO@

Output of the model scaling of the current model relative to the current sheet in ISO-compliant notation, e.g. output: 1:2 for 1:2. Denominators of the ISO standard: 2, 3, 5, 10. If the model currently being edited is not a drawing, the output is ‘-’.

@cursheetformat@ / @curpageformat

@

Output of the format name based on the current sheet. If the model currently being edited is not a drawing, or if the current sheet does not have an assigned format frame, the output is ‘-’.

@cursheetname@ / @curpagename@

Output of the sheet name based on the current sheet, e.g. COVERSHEET. If the model currently being edited is not a drawing, or if the current sheet has no name, the output is ‘-’.

@cursheetsize@ / @curpagesize@

Output of the sheet size of the current sheet, e.g. A0, A1, A2, A3, A4, A, B, C, D, E, F, var: x:y, empty. If the model currently being edited is not a drawing, the output is ‘-’.

@maxsheet@ / @maxpage@

Output of the total number of pages. If the model currently being edited is not a drawing, the output is ‘-’.

@sheetno@ / @pageno@

Output of the current page. If the model currently being edited is not a drawing, the output is ‘-’.

– Features

Text Operation

Description

@featID@

Output of the ID of the feature

@featname@

Output of the name of the feature

@feattype@

Output of the type of the feature

– Folder variables

Text Operation

Description

@default_layer_model@

Will be replaced by the contents of the default_layer_model configuration option.

@pro_material_dir@

Will be replaced by the contents of the pro_material_dir configuration option, e.g. @pro_material_dir@stahl_c35.mtl

@project_dir@

Points to the root directory of the extracted MPX files, e.g., @project_dir@\Materials\SteelGeneral.mtl or @project_dir@\reports\parameters.csv.

– Model information

Text Operation

Description

@body@

Output of the name of the standard body, e. g. ratchet.

@common@

Output of the usual name of the current model, e.g. steam engine

@curworkdir@ / @workdir@ / @cwd@

Output of the current work directory, e.g. C:\temp

@feat@

Output of the name of the current feature (only in “Rename Feature” and “Add Feature Parameter”)

@filename@

Output of the file name of the current model, e.g. Steamengine.asm

@fileversion@

Output of the current version of the file preceded by ‘.’ (number after the file extension), e.g. test.prt.2

@fullmdln@

Output of the complete name of the current model, e.g. SCREW_M6<SCREW>

@genname@

Output of the generic name of the current instance. If the model currently being edited is not an instance, the output is ‘-’, e.g. SCREW

@line@

Output of the value of the current parameter (only in “Edit Relations”)

@mdln@

Output of the current model name, e.g. STEAMENGINE

@mdlno@

Output the current version of the file WITHOUT the preceding ‘.’ (number after the file extension), e.g. test.prt2

@mdlpath@ / @filepath@

Output of the current directory of the current model, e.g. C:\

@mdlpathr@

Output of the complete POSIX folder of the current model,  e.g. C:\

@mdltype@

Output of the current model type (file extension), e.g. asm

@number@

Output of a continuously increasing number. This number is increased each time “@number@” is called. No distinction is made between tasks; therefore, the number is also increased when “@number@” is used in different task.

@origin@

Output of the complete file path of the current model, e.g. C:\Dampfmaschine.asm.2

@para@

Output of the value of the current parameter (only in “Edit Model Parameters”)

@selmdln@

Output of the model name of the first selected model in an assembly

@selmdlpath@

Output of the directory of the first selected model in an assembly

– Solids

Text Operation

Description

@regen_status@

Output of the current regeneration status:

–PRO_SOLID_CONNECT_FAILED

–PRO_SOLID_FAILED_REGENERATION

–PRO_SOLID_NEEDS_REGENERATION

–PRO_SOLID_REGENERATED

– Time and date variables

Text Operation

Description

@date@

Output of the current date in yyyy-mm-dd format (ISO 8601), e.g. 2025-07-06.

@datede@

Output of the current date in US English format dd.mm.yyyy, e.g. 13.02.2025.

@dateen@

Output of the current date in British format dd-mm-yyyy, e.g. 13-02-2025.

@dateus@

Output of the current date in US formatting mm-dd-yyyy, e.g. 02-13-2025.

@dateusshort@

Output of the current date in US formatting, short notation mm-dd-yy, e.g. 02-13-25.

@fulldate@  / @datetime@

Output of the current date and time in a local textually informative readable format, e.g. Sun Jul 6 14:01:31 2025 or Ср. 28 дек. 2011 10:21:16

@time@

Output of the current time in a format that can also be used for file names, short format HH-MM (0-23)-(0-59), e.g. 14-15

@time_with_seconds@

Output of the current time in a notation that can also be used for file names, short notation HH-MM-SS (0-23):(0-59):(0-59), e.g. 14-15-59.

@time12@ / @timeen@

Output of the current time in 12-hour format hh:mm p.m., e.g. 03:24 PM

@time24@ / @timede@

Output of the current time in 24-hour format hh:mm, e.g. 15:24

@timede@

Output of the current time in US English format, short notation HH:MM (0-23):(0-59), e.g. 14:15.

@timeen@

Output of the current time US formatting, short notation HH:MM (1-12):(0-59) AM/PM, e.g. 02:15 AM.

PTC Windchill variables

Text Operation

Description

@oid@

Returns the current OID of the model currently being edited, provided that there is a connection to PTC Windchill and the model has a corresponding representation in PTC Windchill. This variable is primarily required for ODATA REST API requests, e.g. @oid@ or wt.epm.EPMDocument:6431854.

@workdir:<PATH>@

When triggered in conjunction with PTC Creo View Adapter, this task can be used to determine the transfer folder in the pubtemp/transfer directory. This variable is primarily required for GENIUS TOOLS Model Processor Worker Extension processing, e.g. @workerdir:D:\pubtemp\@.

Model Processor: internal variables

Text Operation

Description

@errorcount@

Number of errors logged in the previous execution of Model Processor, e.g. 2.

@logfile@

Current log file written by Model Processor, e.g. %AppData%\INNEO\GENIUS TOOLS\ModelProcessorServer\X\var\log\ModelProcessor.0.log

@temp@

Output the full path to a temporary directory that will be deleted after the task list has been fully executed, e.g. %Temp%\abcde

Parameter operations

Text Operation

Description

%curmat:PARAM%

Output of the value of a parameter from the current material of a part. The replacement of PARAM may vary.

For parts without a current material or without the material parameter, the notation fails. To catch these cases, the enhanced filter Material Parameter Value can be used, e.g. %curmat:SELECT_EN_NAME%.

%curmod:PARAM%

Output of the value of a parameter from the current model of a drawing into a drawing. The replacement of PARAM may vary.

This notation does not make sense outside of drawings, e.g. %curmod:DRAWINGNUMBER%.

%DubAsE:PARAM%

Output of a double value in e^ notation instead of the normal output rounded to 6 decimal places. This can also be used in combination with curmod and curmat. The order %curmat:dubase:PARAMETER% must be followed in this case, e.g. %dubase:DOUBLE_PARAMETER%.

%length:PARAM%

Outputs the length of the value of a parameter from the current model. This can also be used in combination with user, curmod, and curmat. In this case, the order

%curmat:dubase:PARAMETER% must be observed, e.g. %length:NAME%.

%NoZero:PARAM%

Output of a double value without trailing zeros. This can also be used in combination with user, curmod, and curmat. In this case, the order %curmat:nozero:PARAMETER% must be followed, e.g. %nozero:DOUBLE_PARAMETER%.

%PARAM%

Output of the value of another parameter. The input between the % signs may vary, e.g. %NAME%.

%tolower:PARAM%

Output the value of a parameter in lowercase. This can also be used in combination with 'user', e.g. %tolower:STRING_PARAMETER%.

%toupper:PARAM%

Output the value of a parameter in uppercase. This can also be used in combination with user, e.g. %toupper:STRING_PARAMETER%.

%user:PARAM%

Output of the value of a user variable. The replacement of PARAM may vary.

%conf:PARAM%

Output of the value of a Creo configuration option. The replacement of PARAM may vary.

Created with Help & Manual 8 and styled with Premium Pack Version 4 © by EC Software