Ckeck-Mate (askObejct only in workpart)
Ckeck-Mate (askObejct only in workpart)
(OP)
Hi -
I'm playing and editing some custom checkmate checks in nx 8.5....
Sometimes I wonder what exactly "control" if checks are done in current workpart or in all childparts of a assembly.
Example could be: If I try to check for presence of datum CSYS in an assembly, the list have collected all CSYS from assembly childs.
But in my case I only need a collection of CSYS in current workpart....
Maybe someone can advise me in the correct direction??+
regards lklo
--------------------------------------------------------------
I used this command:
I'm playing and editing some custom checkmate checks in nx 8.5....
Sometimes I wonder what exactly "control" if checks are done in current workpart or in all childparts of a assembly.
Example could be: If I try to check for presence of datum CSYS in an assembly, the list have collected all CSYS from assembly childs.
But in my case I only need a collection of CSYS in current workpart....
Maybe someone can advise me in the correct direction??+
regards lklo
--------------------------------------------------------------
I used this command:
( Any Uncached ) do_check:
@{
$csys_list << mqc_askObjectOfType(true,45,0);
$numObjects << Length( $csys_list );
if ( $numObjects = 0 )
then Donothing
else @{
$detail_msg << mqc_sprintf( "Found %s CSYS(s).~n", Stringvalue( Length( $csys_list ) ) );
$usr_msg << If ( log_msg: = "" ) Then "" Else log_msg: + "~n";
ug_mqc_log(Nth( log_type:, log_type_option: ), $csys_list, $usr_msg + $detail_msg);
};
}; 




RE: Ckeck-Mate (askObejct only in workpart)
I did it myself....
Simply change true to false in mqc_askObjectOfType(true,45,0)
But not sure if there are alternatively solutions, to control the check levels....
lklo
RE: Ckeck-Mate (askObejct only in workpart)
There are 3 toggle buttons in Check-mate to specify what to run the checker on.
Select Analysis --> Check-mate --> Set Up Test --> Parts (tab) --> Select one
of the following;
Current Part | All Loaded Parts | All Parts in Directory
RE: Ckeck-Mate (askObejct only in workpart)
Philosophically speaking, Check-Mate was designed to perform queries within the Work Part (or the specific part being checked.) There are a couple of stray Knowledge Fusion functions (like the one you've described above) that reach beyond that scope, but you'll find very few of those (by design) and in general the recommended practice is to design checks to run in the work part only -- and if investigations into the contents of components are needed, to use the framework settings that NXJockey describes to run Check-Mate against the components as well.
In practice, it's pretty common to add some logic into a checking profile to describe which checkers should be executed against piece parts, versus assemblies, versus drawings, or routed parts, or sheet metal parts, for instance. (Because checks that are specific to each class of part can be common.) And once the logic is described in the checking profile, then you can just run that profile against everything (or all of the parts you own, or all of the parts for which you have write access -- meaning the parts that you could actually fix if you did find a problem in them.
Does that help?
Taylor Anderson
NX Product Manager, Knowledge Reuse and NX Design
Product Engineering Software
Siemens Product Lifecycle Management Software Inc.
(Phoenix, Arizona)