Administration - Tasks / Principles
Velosity is extremely flexible and thus able to model your business - instead of the other way around.
It is generally good practice to keep the number of Tasks to the smallest set possible. This minimizes upfront and maintenance effort. This is particulary important because of capacity scaling. For each Task in the setup that can be done in parallel (more than one station that are equivalent), N copies of that Task are required (easy to duplicate in Velosity). These N copies are then assigned to a Resource Group. The Scheduler uses this definition to swap out one Task for another if available earlier.
Task Time and Detail
Achieving work specific process time and detail/description can be accomplished in two different ways:
- Rule
- Description Placeholders
Detail Update via Rule
The task detail can be modified/set using a Rule:
when
var config = Configurator();
then
config.TaskAdd("MACHINING_01").Detail("Machine to print");
Detail Update via Placeholders
The task detail can also be updated by placing placeholders in the Detail/Description - where the placeholder name matches an Attribute in the Product.
Time & Cost - Internal Processes
For internal processes the cost is calculated from the time and total shop rate. The time can be set two different ways:
- Rule
- Time model. See this section for details
Rule:
when
var config = Configurator();
then
// Note: m is for "decimal" notation...not minutes!
config.TaskAdd("MACHINING_01").Time(30m); // 30 minutes
// The cost can be overriden if needed:
// config.TaskAdd("MACHINING_01").Time(30m).Cost(0m); // time = 30 minutes. Cost = 0
Time Model
See this section for details
Time & Cost - External Processes
Time and cost for external processes is different from internal because time and cost are not directly connected. In this case, time is the turnaround time from the external service provider, typically in days. Cost on the other hand is in some units: Each, By Weight, By Volume, etc. The units depends on what service is being provided and the nature of the material.
For external processes time and cost and be set in two ways - similar like internal:
Rule:
when
var config = Configurator();
var wtperpc = Attribute_WEIGHT(x => x.NameIs("PARTWEIGHT") );
then
// 3 days (in minutes). Note: m is for "decimal" notation...not minutes!
// $50 per pound * weight of the part
config.TaskAdd("EXT_HEATTREAT").Time(3*60*8m).Cost(50m * wtperpc.LB() );