The FACTORY PART element


Some characteristics of each component are different according to the factory where it is produced / assembled.   For a manufacturing company you should define at least one factory that represents the point of reference for all actions that regards the specific productive plant.     Definition of new plant may be a complex operation, because you need to add all the elements related to the new factory, so an automatic tool is preferred instead of manual actions.   

The ability to execute the factory tool is limited to users with special configuration role.




name:  PDM_FactoryManager

description:  Add or archive plants

(*) all users with this role need the administrative access rights for objectspace and class  or the actions must be performed with a super user account



The main actions for Factory Manager users are:


1.    Define new Factory

o   create new factory objectspace

o   add new Factory Part class (extends the Factory Part base class)

2.    Archive a Factory



Define new Factory


The admin user has to specify the following information:


-       The factory name

-       A description

-       A code for the new factory




name:  PDM_FACTORY_<factory name>

description:  objectspace for <factory> elements
feature:  name=code  value=<factory code>





name:  PDM_FactoryPart_<factory name>

description:  <factory description>

abstract:  false

superclass:  PDM_FACTORYPART

feature:  name=objectspace  value=<factory code>   

                  to objectspace[PDM_FACTORY_<factory name>]





A part can have one or more factory parts to store the parameters for the specific factory.    Factory parts are connected to the related Part with a relationship, so when you navigate the Part, you can find all Factory parts defined for it.

Moreover, the factory parts are involved in the manufacturing product structure (MBOM) while the generic parts are used to define the engineering BOM.


Here is a list of generic properties of a FACTORY PART:








The factory name or code


(FACTORY elements)


Make or Buy

Indicates if the factory produces the part or purchases it from a supplier


(list Make / Buy)




Commodity category




Commercial SubType

Commodity sub-category





Description in the factory language


free (max length)


Unit Measure

Factory Unit measure associated to the Part




Estimated Cost

Cost of 1 unit of factory measure





Additional comments







name:  PDM_MakeOrBuy

description:  Indicates if the factory produces or purchases the part

type:  string

default:  Make

ranges:  Make / Buy




name:  PDM_Category

description:   Commodity category

type:  string

ranges:  (range program)





name:  PDM_SubCategory

description:  Commodity sub-category

type:  string

ranges:  (range program)




name:  PDM_UnitMeasure

description:  Factory Unit measure associated to the Part

type:  string

default:  -

ranges:  list of UnitMeasures  (range program)




name:  PDM_EstimatedCost

description:  Estimated cost of 1 unit of measure

type:  real

unitmeasure:  currency [$]
reset:  oncreate  (clone+revise)






description:  basic Factory part element

abstract:  true











name:  PDM_PartToFactory

description:  Connect a Part with a Factory Part

flags:  !duplicable , !selflinks

from: PDM_PART  (single, !revision, !clone)

to: PDM_FACTORYPART (multiple, !revision, !clone)

access rights:

community:  read

assignment[PDM_FactoryPartManager]: create,destroy




Coding of FACTORY PART instances


A factory part takes the same code and revision of the related original part:  when the factory part manager add a new factory part, he have to specify the mandatory attributes and select the factory name.    List of company factories are those assigned to the user (features between the admin user elements and factory part classes).





name:  <user name>


feature:  name=factory value=”” to

    class[PDM_FactoryPart_<factory name1>]

    name=factory value=”” to

    class[PDM_FactoryPart_<factory name2>]



The selected factory name is used to determine the specific (not abstract) FactoryPart class for generating the factory part instance and connect it to the engineering part.


The new factory part instance will be store in the FactoryPart related Objectspace.


FACTORY PART lifecycle


The lifecycle of the factory part instances may be represented with three states and some signatures to authorize the passage from one level to the next:




name:  PDM_FactoryPart

description:  Default lifecycle for factory part instances

revision rule: 99
filespace: PDM_PartDocuments


stages:  InWork , CostValuation , Released




A Factory Part instance can be created from an engineering part in status FactoryCheck or Production by users with a Factory Part Manager role.

The user who create the factory part becomes the holder and it will get the full control of it.


InWork (or simply IW):   it represents the first state of a just created factory part. In this level, the holder of part instance has all privileges, so it has the ability to change its attributes, promote the part to the next level or to delete it from the system.   




lifecycle:  PDM_FactoryPart

name:  InWork

description:  part released to factory division

access rights:

holder:  edit,destroy,progress,<manage files>…..

community:  read,fileget,<manage links>

assignment[PDM_FactoryPartManager]: create

validations:   Make  / Buy (*)


(*)    automatic validated on the basis of PDM_MakeOrBuy field value




CostValuation (CV):   this stage is valid only for purchased parts:  in this phase, the account manager has to insert the estimated cost after he contacted the supplier.




name:  PDM_CostEstimator

description:  Evaluate the factory part cost




lifecycle:  PDM_FactoryPart

name:  CostValuation

description:  insert the estimated cost

access rights:

community:  read,fileget,<manage links>

assignment[PDM_CostEstimator]: edit(*),progress

assignment[PDM_FactoryPartManager]: revise (**)


(*)     only update the estimated cost
(**)    only if already exists the new revision for the related engineering part




Released (REL):  the factory part is official (all approval has been obtained) and then producible or it can be purchased.   No change is more possible at the stage.




lifecycle:  PDM_FactoryPart

name:  Released

description:  factory part released for the production

revisionable:  true

access rights:

community:  read,fileget,<manage links>

assignment[PDM_FactoryPartManager]: revise (*)


(*)     only if already exists the new revision for the related engineering part