Assemblers are used to register inserts, modules, references, removal options, events and many other Promob functionalities.
Below are guidelines on the main Promob Catalog assemblers:
@id_model@ |
Returns the reference of the Type Model. |
@id_model.N@ |
Returns the reference of the Type Model N level. Used when there are associated models, just change the N for the level you want to access. Example: @id_model.2@. |
@id_model(ID_INFORMATION)@ |
Returns Type Model information where ID_INFORMATION is the ID of the information registered in the type model. |
@id_model(NAME)@ |
Find the field information Model Description Type |
%CHECKED(VAR1.VAR2)% |
Checks whether a particular aggregate is active or not, where VAR1 is equal to the Module ID field (aggregate) and VAR2 is equal to the Aggregate ID field |
!Find(entityid,VAR1).VAR2! |
Searches for the module's aggregate information, with VAR1 equal to the Module ID field and VAR2 an expression. Furthermore, in addition to entityid, it is possible to search for groupid as well. Example: !Find(entityid,Sis_coz_eng_inf).$REFERENCE(CODE)$! |
%VAR1.VAR2.VAR3% |
Returns aggregate information, with VAR1 equal to the aggregate Module ID and VAR2 equal to the Aggregate ID field. VAR3 is the value to be returned. This formula is equivalent to the find, described above. Example: %Sis_coz_por_inf.porta.$REFERENCE(CODE)$% |
Below are links with more information about the specific assemblers for each use:
Assemblers for models.
To search for the information of an applied model just use the assemblers below:
@id_model@
Returns the reference of the Type Model.
@id_model.N@
Returns the reference of the Type Model N level. Used when there are associated models, just change the N for the level you want to access.
Example: @id_model.2@. Remembering that @id_model@ is the equivalent of @id_model.1@.
@id_model(ID_INFORMATION)@
Returns the Type Model information where ID_INFORMACAO is the ID of the information registered in the Type Model, as shown in the image.
@id_model(NAME)@
If it is necessary to search for the information in the Type Model Description field, it is necessary to use the variable NAME, as shown. This assembler is widely used when it is necessary to display the model set in the item description.
Example: Straight Door - @id_model(NAME)@ - Results in Straight Door - White.
Assemblers for references.
To find the value of a reference just use the assembler$REFERENCE(NAME_REFERENCE)$.
If the reference information is being searched in the reference register itself, it is not necessary that the completed formula is $REFERENCE(NAME_REFERENCE)$, but only $NAME_REFERENCE$ can be used.
If the reference to be used is at levels above, just add P. at each level.
Example: $P.P.Reference(NAME_REFERENCE)$ - In this case, the reference value of the item's parent's father will return.
Assemblers for aggregates
- !Find
The !Find assembler is used to search for information about a specific group or entity. It is generally used in the reference assembly of Format Templates, but it can be used in several other functions in the customization of Promob.
Find can only be used to search for references when this search refers to one of the item's aggregates.
To search for information for a particular reference in a module aggregate:
!find(entityid,id_entity).$REFERENCE(information)$!
To search for information for a particular reference in a group aggregate:
!find(groupid,id_group).$REFERENCE(information)$!
Example 1:
!find(groupid,POR_MOD_INF*).$REFERENCE(FORMAT)$!
In this example, the search will be for the FORMAT reference within any item (*) of the group (groupid) POR_MOD_FOR *.
IMPORTANT: The * used at the end of the ID is for the reference to search in all groups that have the ID POR_MOD_FOR even if it contains some information after the FOR such as the ID POR_MOD_FOR_INF, this makes it easier when looking for the IDs in the format templates door.
Example 2:
!find(entityid,POR_COZ_INF).$D$!
In this example, the search will be done by the depth ($ D $) of the entity (entityid) POR_COZ_INF.
IMPORTANT: For the result to return, the aggregate in question must be active.
- %IDmodule.IDAggregate.InformationDesired%
In addition to Find, it is possible to use the assembler below to search for aggregate information. This assembler should only be used on the item that has the item mentioned in the aggregate formula.
%IDmodule.IDAggregate.InformationDesired%
Example:
%POR_MOD_FOR_INF.Model.$REFERENCE(FORMAT)%
In the example, the information sought will be the FORMAT reference in the item or group POR_MOD_FOR_INF.
The desired information may be an assembler (not related to the environment) mentioned in the table above.
Example:
%IDmodule.IDAggregate.$EntityID$%
Returns the name (abbreviation) of the aggregate.
%IDmodule.IDAggregate.$Width$%
Returns the width of the aggregate.
%IDmodule.IDAggregate.$Reference(COMPLETE)$%
Returns the COMPLETE reference of the aggregate.
IMPORTANT: For the result to return, the aggregate in question must be active.
- %CHECKED(IDmodule. IDAggregate)%
The CHECKED assembler checks whether the aggregate is checked. This function is useful when the reference is different depending on the aggregate that is active or in visibility conditions, where a specific aggregate will only be visible if aggregate X is active.
%CHECKED(IDmodule. IDAggregate)% == ‘TRUE’