data-dictionary

FPSINPUT.WIP_GOALS_PER_SHIFT_HIST

Data Dictionary

>

FPSINPUT Tables

> FPSINPUT.WIP_GOALS_PER_SHIFT_HIST

Table FPSINPUT.WIP_GOALS_PER_SHIFT_HIST"

See comments in WIP_APD_GOALS_PER_SHIFT_HIST view.

  • Schema: FPSINPUT

  • Tablespace: FPSDATAHIST

  • Primary key: START_SHIFT, FACILITY, PRD, PLANPRD, ROUTE, STEP, LOT_TYPE, PLAN_PRIORITY, IS_NONSTD

  • Foreign keys: WIP_GOALS_PER_SHIFT_H_FK_STSH: START_SHIFT REFERENCES FPSINPUT.CAL_SHIFTS (START_SHIFT)


Column

Type

Nullable

Comment

START_SHIFT

DATE

N

Shifts can be of any length and it is important that all queries get the shift length based on start_shift and end_shift rather than assuming a set number of hours. (* from FPSINPUT.CAL_SHIFTS)

FACILITY

VARCHAR2(6)

N

Facility is included in almost every join in the DWH so this represents a definitive split. A route must have all steps on tools in the same facility. A tool must process all lots in the same facility. If your site has multiple buildings where lots run on routes using tools in multiple buildings then everything should be one facility. For example, multiple Fab buildings. But if your site has independent facilities like Fab and Test and Assembly where lot may progress from one to the next but on different routes then these should be different facilities. Since this column is in virtually every table it is critical that the value here is exactly matches what is in the MES if the MES has facility. Use facility_display for the display friendly name displayed in applications. See site_name comment for client/site/facility example. (* from FPSINPUT.GEN_FACILITIES)

PRD

VARCHAR2(64)

N

Prd determines the route which is used to process the lot in the facility and what tools, recipes, durables, etc. can be used at each step. Prd also determines the next facility for the lot when it finishes its route. For detailed information on prd vs. planprd see table comments in RTG_PLANPRDS. (* from FPSINPUT.RTG_PRDS)

PLANPRD

VARCHAR2(64)

N

Planning product used for all planning purposes. All lots with the same planprd are interchangeable to ship to the customer regardless of their prd, route, technology, wafer size, etc. For detailed information on prd vs. planprd see table comments in RTG_PLANPRDS. (* from FPSINPUT.RTG_PLANPRDS)

ROUTE

VARCHAR2(256)

N

Route that has threading requirements (* from FPSINPUT.RTG_STEP_THREADING)

STEP

VARCHAR2(256)

N

A single processing step within a route representing a single tool visit. Step is often a very complex string and should rarely be displayed. Instead we should use process_display. (* from FPSINPUT.RTG_ROUTE_STEPS)

LOT_TYPE

VARCHAR2(24)

N

Lot_type is the base of the hierarchy that determines lot_family then lot_group. Ideally lot_type will come straight from the MES with little modification. (* from FPSINPUT.WIP_LOT_TYPES)

PLAN_PRIORITY

VARCHAR2(7)

N

Permanent priority of the lot set in the MES generally by planning. (* from FPSINPUT.WIP_EVENT_HIST)

IS_NONSTD

CHAR(1)

N

Our column to indicate non-standard processing at the step. For example, an experiment or a chain that is only active at a particular step or set of steps and then goes back to being normal for the route. If an experiment is severe enough that it affects the final product and has to be planned separately then it will be its own prd or planprd. (* from FPSBASE.WIP_LOT_HIST)

EST_SMP_PCT

NUMBER(5,2)

Smp_pct tells you what percentage of the lots complete on a tool. Some sites skip steps by jumping over them so we see the lot move from step 3 to step 5 and we only know that it jumped step 4 because step 4 is on the route between 3 and 5. Other sites skip steps by moving lots into them and then moving them out a second later so we see a move from 3 to 4 at 11:11:11 and a move from 4 to 5 at 11:11:12. We do not care how it is done but just that the lot did not process at step 4 -- and to be more specific that no tool capacity is required to process this lot at step 4 and no cycle time is accumulated at step 4. (* from FPSBASE.WIP_GOAL_LOT_SHIFT)

GOAL_COMPLETES

NUMBER(12,4)

Completes goal for the current shift. Typically we calculate either completes or moves goal depending on the site logic and then either multiply moves by est_smp_pct to get completes or divide completes by est_smp_pct to get moves. (* from FPSINPUT.WIP_GOALS_PER_SHIFT)

GOAL_MOVES

NUMBER(12,4)

Moves goal for the current shift means how many units we need to move through this step to progress towards our demand or due date. This could be either a complete or a skip. Typically we calculate either completes or moves goal depending on the site logic and then either multiply moves by est_smp_pct to get completes or divide completes by est_smp_pct to get moves. (* from FPSINPUT.WIP_GOALS_PER_SHIFT)

GOAL_OPER_MOVES

NUMBER(12,4)

Oper moves goal for the current shift. This should be recorded at only one step of the operation at it can be at any step not necessarily the last one. Since we do not get an oper move if we skip the entire operation, this is typically the maximum goal completes for any step in the operation. Some sites might calculate goal oper moves independently and potentially even get goal moves and completes from the goal oper moves. (* from FPSINPUT.WIP_GOALS_PER_SHIFT)

GOAL_WIP

NUMBER(12,4)

WIP goal for each shift. If you are using the GP logic in FPSAPP to get WIP goals for line balancing then you might want to pull those goals into this table to show on Dashboard. If not, this can be calculated by dividing the goal moves per day (from this logic) by the commit cycle time in days for the step (from CTM_SUMMARY_PLUS). (* from FPSINPUT.WIP_GOALS_PER_SHIFT)

GP_SUBFAMILY

VARCHAR2(58)

GP_subfamily is used for Goal Planner and is an extension of process_family which can additionally include lot_group and an additional suffix. We populate GP_subfamily automatically based on process_family, process_subfamily, gp_subfamily_suffix, and add_lotgrp_to_gp_subfamily using the function GET_GP_SUBFAMILY. We build this starting with nvl(process_subfamily, process_family) followed by gp_subfamily_suffix if populated then followed by lot_group if add_lotgrp_to_gp_subfamily is set to Y. It is possible to have one or two or three parts. You might have values for process_family/process_subfamily/gp_subfamily_suffix/add_lotgrp of Furn/blank/blank/Y and that would give you gp_subfamilies of Furn/Prod and Furn/Dev. Or Furn/HighTemp/blank/Y would give you HighTemp/Prod and HighTemp/Dev. Or Sink/blank/FeedsOxFurn/N would give you Sink/FeedsOxFurn. And so on. (* from FPSBASE.WIP_END_SHIFT_HIST)

LOT_FAMILY

VARCHAR2(24)

Lot_family is a grouping of lot_type which is mainly use for goal planning. We set goals by family and are allowed to switch goals for different lots of different types within the family. We also report goal performance by family. (* from FPSINPUT.WIP_LOT_FAMILIES)

OPERATION

VARCHAR2(50)

Operation is usually the primary level of routing in the MES and the level where the facility typically reports moves. FPS only allows one tool per step so our step is a lower level of routing than operation although both may be the same if the MES only allows one tool per operation. Note that because operation can include multiple steps and therefore multiple process families that we cannot have any association to equipment by operation. (* from FPSINPUT.RTG_OPERATIONS)

OPERATION_FAMILY

VARCHAR2(36)

Grouping of route-step that is completely dependent on routing information from MES. The primary use of this field is for filtering on Operations Dashboard. Unfortunately for our database structure and naming convention, this field no longer has any link to operation. This is because operation is used primarily for Oper Moves and it is normal for steps in an operation to belong to multiple MES routing groups. For example, a sink step and a furnace step and a measurement step are in the same operation but each step belongs to the appropriate sink/furnace/measurement MES routing groups which we store in operation family. Since Dashboard already uses both operation and operation_family extensively and independently, we decided not to rename either column but simply remove the link. Please note that operation family is similar to process family and in fact they are often the same. The key differences are that operation family has nothing to do with equipment and that comes straight from ETL with no complex logic. Process family is the link between routing and equipment for the Operations Dashboard and therefore has complex logic. (* from FPSINPUT.RTG_OPERATION_FAMILIES)

PROCESS

VARCHAR2(50)

N

Process defines what occurs at a step. Different steps can share the same process if they are identical. Process should normally determine allowed tools and recipe although it can be overridden by step, route, prd, lot, and experiment for exceptions. Each process is dynamically assigned to one or more eqp_type-process_family combinations with use_pct. One process_family is determined to be primary. If grouping is done correctly, a process should only be one eqp_group with no crossover. (* from FPSINPUT.RTG_PROCESSES)

PROCESS_FAMILY

VARCHAR2(50)

See https://help.inficonims.com/display/DW/Guide+to+Process+Families. (* from FPSINPUT.RTG_PROCESS_FAMILIES)