DMS Help
DMS Help

Text File Import/Export Job File Format

 

 

The following file format is for DMS file format.  As well as importing and exporting data in the DMS file format, DMS will import and export data in the old RSS 4.7 and 4.8 formats for backward compatibility.  For legacy files formats, please refer to your legacy documentation.

 

When loading operations, the operations must be after the job record information, be together, and sorted in order of the operation sequence.  That is, the operations should be sorted by order number, by operation sequence number, from lowest to highest sequence. 

 

When loading in assemblies, the jobs, operations and assembly component records must be in the text file together, from the final assembly to the next highest level, etc. The final assembly job must be specified first, with a blank parent field, as it creates the assembly name and prepares for the assembly to be added.  The import file must have all of the jobs and assemblies defined together; you cannot load part of an assembly, then load another assembly, and then go back to the first assembly.  The reason for this is that DMS keeps track of one assembly load at a time.  When it finds a new assembly, it saves the current one and assumes that all of the component jobs for the current assembly have been defined and saved.  If a component has not been defined, the assembly component link is rejected.

 

Job Record

A job record typically consists of one record followed by one or more operation records that describe the job.

 

No.
 

Field

Type

Comment

1.

SJB

String 3

Record identifier.  Required field.

2.

Order Number

String 25

Required unique field. 

3.

Order ID

Big Integer

Unique identifier assigned by SQL.  It is ignored on importing.

4.

Part Number

String 45

Optional free format.

5.

Job Identification

String 45

Optional free format.

6.

Job State

String 20

Blank to select the default or valid existing Job Sate required.

7.

Copy Order Number

String 25

Blank or the order number to copy if adding a new order.  (See the Copy Order Number information below.)

8.

Priority

Integer

Blank to select the default or 1 to 99.

9.

Order Date

Date Time

Blank to select today’s date or a valid date.

10.

Release Date

Date Time

Blank to select today’s date or a valid date.

11.

Release Shift

Integer

Blank to default to 1, or 1 to 3.

12.

Due Date

Date Time

Blank to select today’s date or a valid date.

13.

Due Shift

Integer

Blank to default to 1, or 1 to 3.

14.

Promise Date

Date Time

Blank to select the due date or a valid date.

15.

Schedule Start Date

Date Time

Blank to select today’s date or a valid date.

16.

Schedule Start Shift

Integer

Blank to default to 1, or 1 to 3

17.

Schedule End Date

Date Time

Blank to select today’s date or a valid date.

18.

Schedule End Shift

Integer

Blank to default to 1, or 1 to 3.

19.

Quantity Ordered

Big Integer

Required.

20.

Quantity To Build

Big Integer

Ignored on import.  On export it is the ordered quantity X scrap factor.

21.

Quantity Received

Big Integer

Ignored on import.  On export it is the quantity delivered by the final operation.

22.

Scrap Factor

Float

Optional.  From 0 to 100%.

23.

Work in Process

Boolean

Blank for DMS to calculate True or False.

24.

Sequence Type

String 26

Blank for default or a valid sequence type.

25.

Lot Size

Big Integer

Blank for default or a lot size as required by the sequence type.

26.

Overlap

Float

Blank for default or a lot size as required by the sequence type.

27.

Schedule Method

String 20

Blank for default or a valid schedule method.

28.

Mid Point Operation Sequence 

Integer

Mid point operation sequence number to use if required by schedule method.

29.

Act Schedule Method

String 20

Ignore on import.

30.

Type Of Work

String 20

Blank for default or a valid type of work.

31.

Job Type

String 1

Blank for default or P for production or F for fabrication.

32.

Assembly Name

String 25

Ignored on input.

33.

Baseline Start Date

Date Time

Optional.  Blank or a valid date.

34.

Baseline Start Shift

Integer

Optional.  Blank or 1 to 3.

35.

Baseline End Date

Date Time

Optional.  Blank or a valid date.

36.

Baseline End Shift

Integer

Optional.  Blank or 1 to 3.

37.

Last Scheduled Completion Date

Date Time

Optional.  Blank or a valid date.

38.

Planner

String  20

Optional.  A valid employee number must be given or blank.

39.

Notes

Memo

Optional text to describe the job and/or other job notes.


Copy Order Number

The Copy Order Number field can be used to copy an existing template or order to a new order.  If the order number already exists, the Retain & Merge settings apply to the copied job information.  The Copy Order Number feature copies the entire order number; job user fields, operations, and operations user fields.  It does not include Assembly information.  It does, however, include any operation actual hours and operation statuses. 

 

Job information that is given on the SJD record will replace the copied job record information with the exception of the Job State, which must be given, and the Job Type (production or fabrication) which is set to the copied job’s Job Type.

 

When you are copying an order, you should not include any operations for the new order in the import text file, otherwise these operations will overwrite the copied information.  If required, you can include the following records after the SJB record to add or replace the copied information:

1.Job user field records

2.Operation user field records

3.Assembly records

 

Job User Fields

Before data can be imported into a job user, the user field must first be defined in DMS.  Depending on how the user field has been defined, the UF Text import would be one of the following text fields:

1.Text up to 40 characters long

2.Money (currency) value of 999999999.99

3.Integer

4.Fraction (floating point)

5.Date (YYYYMMDD)

6.Date and time (YYYYMMDD HH:MM)

7.Time (HH:MM)

8.Memo field

9.Valid text as defined in a lookup table (maximum 40 alphanumeric characters)

10.Filename, where filename may include the location of the file (i.e. \\server-name\Job Documents\Widget.DOC). The filename and its location can be up to 200 alphanumeric characters long. The filename is used if a user field has been defined as a “Button” to execute an application.

 

The Map Reference number is defined by the user in DMS to uniquely identify a user field.  For example, a job user field may have been defined as “Product Color”.  In order to import data into “Product Color” the user field must be assigned a unique map reference number which is an integer number.  So if “Product Color” was given a map reference number of 7, then the import uses 7 to load the data into “Product Color”.

 

No.

 

Field

Type

Comment

1.

SJU

String 3

Record identifier.  Required field.

2.

Order Number

String 25

Required field.  The job to which this user field belongs. 

3.

Job UF ID

Big Integer

Unique identifier assigned by SQL.  It is ignored on importing.

4.

Map Reference

Integer

Defined in DMS to uniquely identify a user field.

5.

UF Text

Text

One of 10 formats as defined above.


Job Material Record

The Job Material Record is an option record used to set material parameters at the job level.

 

No.

 

Field

Type

Comment

1.

SJM

String 3

Record identifier.  Required field.

2.

Order Number

String 25

Required field.  The job to which this material information belongs. 

3.

Material Available

Boolean

True if the material for the job is available, otherwise False.

4.

Days to Delay

Integer

Days to delay the job from the start date of the schedule run if material is not available.  0 to 999 days.

5.

Expected Delivery

Date Time

Date (YYYYMMDD) or blank.

6.

Date Received

Date Time

Date (YYYYMMDD) or blank.

7.

Material Planner

String  20

Optional.  A valid employee number must be given or blank.

 

Job Multi Template Record

The Job Multi Template Records are optional records used to add alternate template routing options to a job.  When importing, any existing records are replaced with the new imported records.

 

No.
 

Field

Type

Comment

1.

SJT

String 3

Record identifier.  Required field

2.

Order Number

String 25

Required field.  The job to which this Job Multi Template belongs. 

3.

Template Order Number

String 25

The order number of the template job for the alternate routing.

4.

Sequence Number

Integer

Sequence of the alternate template to try.  Ignored on input.

5.

Allowable Days Late

Integer

The number of days this routing can be late before trying the next routing.

6.

Selected

Boolean

The selected routing by the scheduler.

7.

Locked

Boolean

If set, the routing for the job is locked to the selected template’s routing.

8.

Schedule Start Date

Date Time

Date (YYYYMMDD) or blank.  Ignored on import.  The start date for the routing when the schedule last ran.

9.

Schedule End Date

Date Time

Date (YYYYMMDD) or blank.  Ignored on import.  The end date for the routing when the schedule last ran.


Operation Record

Operations should be grouped together by order number and sorted by order number by operation sequence.

 

No.
 

Field

Type

Comment

1.

SOP

String 3

Record identifier.  Required field.

2.

Order Number

String 25

Required field.  The parent job to which this operation belongs.

3.

Operation Sequence 

Integer

Required unique to job field.

4.

Operation ID

Big Integer

Unique identifier assigned by SQL.  It is ignored on importing.

5.

Operation Identification  (Ident)

String 15

Required for regular operations, but not required for schedule commands in which case the ident must be blank.  Unique to the job.

6.

Route Command

String 26

Blank or a valid command. 

7.

Route Parameter

String 20

Blank or a valid parameter to the route command.

8.

Pool

String 20

Blank or a valid existing pool name.

9.

Resource  

String 20

Required for active operations.  May be blank if a pool name has been given.

10.

Setup time  

Float

Optional.  From 0 to 9999.99.

11.

Runtime  

Float

Optional.  From 0 to 9999.99.  If given, it is either the time per piece, pieces per hour, or total hours of the operation depending on the runtime method.

12.

Runtime Method 

String 1

Blank for default or T for time per piece, P for parts per hour, H for hours, or L for time per lot.

13.

Type Of Work

String 20

Blank for default or a valid type of work.

14.

Quantity To Build

Big Integer

Must be given if “Quantity set manually” is true.  Otherwise this field can be blank.

15.

Quantity Scrapped

Big Integer

Blank or the total amount scrapped by this operation.

16.

Quantity Completed

Big Integer

Blank or the total quantity completed by this operation.

17.

Set Quantity Manually 

Boolean

Blank or false if the quantity is the same as the job quantity.  True if the quantity to build will be given in the import.

18.

Minimum Resources

Integer

Optional.  Blank or 0 to 99.  If given, minimum resources must be less than maximum resources.

19.

Maximum Resources 

Integer

Optional.  Blank or 0 to 99.  If given, minimum resources must be less than maximum resources.

20.

Min/max Setup Time  

Float

Optional.  If a min/max operation command, the setup time for each min/max operation.

21.

Min/max Runtime  

Float

Optional.  If a min/max operation command, the runtime for the min/max operation based on the runtime method.

22.

Min/max Act Setup  

Float

Optional.  If a min/max operation command, the total actual setup time for the min/max operations.

23.

Min/max Act Runtime  

Float

Optional.  If a min/max operation command, the total actual runtime for the min/max operations.

24.

Min/max Quantity To Build

Big integer

Optional.  If a min/max operation command, the total quantity to build for the min/max operations.

25.

Min/max Quantity Scrapped

Big integer

Optional.  If a min/max operation command, the total quantity scrapped for the min/max operations.

26.

Min/max Quantity Completed

Big integer

Optional.  If a min/max operation command, the total quantity completed for the min/max operations.

27.

Auto Reporting  

Boolean

Optional.  Blank or false for a regular operation.  True if the operation will be auto reporting.

28.

Start operation when previous operation is completed

Boolean

Optional.  Blank or false for a regular operation.  True if the operation is to be set to in process when the previous operation is completed.

29.

Variable Resource  

Boolean

Optional.  Blank or false for a regular operation.  True if an AND command block and each AND operation can have variable start and end times.

30.

Start End Same Day  

Boolean

Optional.  Blank or false for a regular operation.  True if the operation must start and end on the same day.

31.

Start End Same Shift  

Boolean

Optional.  Blank or false for a regular operation.  True if the operation must start and end on the same shift.

32.

No Capacity Interruptions  

Boolean

Optional.  Blank or false for a regular operation.  True if the operation cannot have any capacity interruptions.

33.

No Interruptions  

Boolean

Optional.  Blank or false for a regular operation.  True if the operation cannot have any interruptions (i.e. holidays, non working shifts, etc.)

34.

Lock On Dates  

Boolean

Optional.  Blank or false for a regular operation.  True if the operation must be scheduled on the given start and end dates.

35.

Skip shift if no capacity available

Boolean

Optional.  Blank or false for a regular operation, True if the operation can skip any shift, 1 to skip shift 1, 2 to skip shift 2, 3 to skip shift 3, 1&2 to skip shifts 1 and 2, 1&3 to skip shifts 1 and 3, 2&3 to skip shifts 2 and 3, or ALL to skip all shift (similar to TRUE).

36.

Non-contiguous Operation          

Boolean

Optional.  Blank or false for a regular operation.  True if the operation can be non-contiguous.

37.

Non-contiguous Resource Minimum Time  

Float

Optional.  If a non-contiguous operation, then the time given here is the minimum runtime required. 

38.

Within Work Time Fence  

Boolean

Ignored on import.  True if the operation is within the user defined time fence.

39.

Lock Selection    

Boolean

Typically set by the system for OR and MIN/MAX operations.  True indicates that the schedule has made a selection and has locked the selection.  It can be set by the import to force a selection.  Ignored for all other operations.

40.

Start Date

Date time

Operation start date.  May be imported but typically assigned by the schedule.

41.

Start Shift

Integer

Operation start shift.  May be imported but typically assigned by the schedule.

42.

Start Hours

Float

Operation start hours.  May be imported but typically assigned by the schedule.

43.

End Date

Date time

Operation end date.  May be imported but typically assigned by the schedule.

44.

End Shift

Integer

Operation end shift.  May be imported but typically assigned by the schedule.

45.

End Hours

Float

Operation end hours.  May be imported but typically assigned by the schedule.

46.

Planned Days

Integer

Blank or 0 for regular operations.  Number of elapsed or planned days for the operation.

47.

Original Planned Days

Integer

Blank or 0 for regular operations.  Original number of elapsed or planned days for the operation typically set by the system.

48.

Planned Resource  

String 20

Optional.  Planned resource.

49.

Original Resource  

String 20

Optional.  Originally planned resource.

50.

Act Setup Time  

Float

Blank, 0, or the actual setup for this operation.

51.

Act Run Time    

Float

Blank, 0, or the total actual runtime for this operation.

52.

Act Start Date

Date time

Blank or the actual start date for the operation.

53.

Act Start Shift

Integer

Blank or the actual start shift (1, 2 or 3) for the operation.

54.

Act End Date

Date time

Blank or the actual end date for the operation.

55.

Act End Shift

Integer

Blank or the actual end shift (1, 2 or 3) for the operation.

56.

Status ID  

String 5

Blank or a valid operation status.

57.

Baseline Start Date

Date Time

Optional import date for reporting purposes. 

58.

Baseline Start Shift

Integer

Optional import shift (1, 2 or 3) for reporting purposes. 

59.

Baseline End Date

Date Time

Optional import date for reporting purposes. 

60.

Baseline End Shift

Integer

Optional import shift (1, 2 or 3) for reporting purposes. 

61.

Notes

Memo

Optional text to describe the operation tasks and/or other operation notes.

62.

Qty Multiplier

Float

The operation quantity multiplier is an optional entry for an operation.  The multiplier will increase or reduce the quantity for an operation to the value stated.

63.

Original Setup Time

Float

Original setup time is an optional entry used for comparison reporting.

64.

Original Runtime

Float

Original runtime is an optional entry used for comparison reporting.

65.

Original Total Runtime

Float

Original total runtime is an optional entry used for comparison reporting.

66.

Wait Time

Float

Wait time in hours to be added to the end of the operation before the next operation can start.  If not used, set to 0.

67.

Move Time

Float

Move time in hours to be added to the end of the operation before the next operation can start.  If not used, set to 0.

68.

WT Use Capacity

Boolean

Future use.  Set to false.

69.

No Interrupt Days

Integer

Optional.  Number of days for the no interrupt options from 0 to 999.

70.

Operation Description

String 40

Optional 40 alphanumeric character description of the operation.

71.

InfiniteOp

Boolean

False for a finite loaded operation.  True if the operation's load will be infinite.

72.

Certificate

Boolean

False if the operation does not require a Security Certificate.  True if the operation requires a resource with a security certificate.


Operation User Fields

Before data can be imported into an operation user field, the user field must first be defined in DMS.  Depending on how the user field has been defined, the UF Text import would be one of the following text fields:

1.Text up to 40 characters long

2.Money (currency) value of 999999999.99

3.Integer

4.Fraction (floating point)

5.Date (YYYYMMDD)

6.Date and time (YYYYMMDD HH:MM)

7.Valid text as defined in a lookup table (maximum 40 alphanumeric characters)

8.Filename, where filename may include the location of the file (i.e. \\server-name\Op Documents\Widget Details.DOC).  The filename and its location can be up to 200 alphanumeric characters long.  The filename is used if a user field has been defined as a “Button” to execute an application.

 

The Map Reference number is defined by the user in DMS to uniquely identify a user field.  For example, an operation user field may have been defined as “Task Reference Code”.  In order to import data into “Task Reference Code” the user field must be assigned a unique map reference number which is an integer number.  So if “Task Reference Code” was given a map reference number of 3, then the import uses 3 to load the data into “Task Reference Code”.
 

No.
 

Field

Type

Comment

1.

SOU

String 3

Record identifier.  Required field.

2.

Order Number

String 25

Required field.  The job to which this user field belongs. 

3.

Operation Sequence 

Integer

Required unique to job field.

4.

Operation User ID

Big Integer

Unique identifier assigned by SQL.  It is ignored on importing.

5.

Map Reference

Integer

Defined in DMS to uniquely identify a user field.

6.

UF Text

Text

One of 8 formats as defined above.


Operation  Material Record

The Operation Material Record is an option record used to set material parameters at the operation level.
 

No.
 

Field

Type

Comment

1.

SOM

String 3

Record identifier.  Required field.

2.

Order Number

String 25

Required field.  The job to which this material information belongs. 

3.

Operation Sequence

Integer

Required.  Operation sequence number starting at 1.

4.

Material Available

Boolean

True if the material for the job is available, otherwise False.

5.

Days to Delay

Integer

Days to delay the job from the start date of the schedule run if material is not available.  0 to 999 days.

6.

Expected Delivery

Date Time

Date (YYYYMMDD) or blank.

7.

Date Received

Date Time

Date (YYYYMMDD) or blank.

 


Material Details Record

The Material Details Record is an option record used to set material requirement details for a job.
 

No.
 

Field

Type

Comment

1.

SMD

String 3

Record identifier.  Required field.

2.

Order Number

String 25

Required field.  The job to which this material information belongs. 

3.

Sequence

Integer

Blank or 1 to 500.  If blank, the material item will be added if the job’s material already exists.  If a sequence is given, the new record will replace the existing sequence material record if it exists.

4.

Operation Identification  (Ident)

String 15

Optional field.  Required if the material requirements are for a given operation, otherwise this field is blank.  Unique to the job.

5.

Inventory Abbrev

String 45

The inventory abbrev.  The inv abbrev is an optional entry and must be either set to blank or a valid inv abbrev.

6.

Item No

String 45

Required field.  The inventory Item No.  The Item No must exist in the DMS Inventory table.

7.

Job Alternate Item No

String 45

Optional field.  Either blank or a valid inventory Item No.  The Item No must exist in the DMS Inventory table.  If an Item No is given, the job can optionally use this Item No (if the required Item in field 4 above is not available).

8.

Per Piece

Boolean

True if the material requirements qty is to be multiple by the job qty.  False if the material requirements qty is the amount for the entire job (regardless of job qty).

9.

Material Available

Boolean

True if the material is available (received), otherwise False.

10.

Qty Required

Integer

The item qty required.  Must be greater than or equal to 0.

11.

Qty Available

Integer

The quantity available for the job.   Must be greater than or equal to 0.

12.

Material Scrap

Integer

Material qty scrapped during the process.

13.

Can Use Alternate In Inventory

Boolean

True if the job can use the alternate inventory item saved in the DMS inventory table if one exists.  False if it cannot be used.  This setting is in addition to the Job Alternate Item No.

14.

Floor Stock

Boolean

True if the Item is floor stock and inventory will not be allocated with pegging.  False if the requirements are to reduce the qty on hand/on order.

15.

Expected Delivery

Date Time

Date (YYYYMMDD) or blank.

16.

Date Received

Date Time

Date (YYYYMMDD) or blank.

17.

Notes

Memo

Notes/comments.


Assembly Record

If a job is part of an assembly, then the assembly structure must be defined.  The final assembly job must be specified first, with a blank parent field, as in:

SJA~Assembly-Name~Final-Assembly-Order-No~~~~~~

Each component job in the assembly must already exist (i.e. added) in the database.  The assembly structure should be loaded from the final assembly job back through to the other components.
 

No.
 

Field

Type

Comment

1.

SJA

String 3

Record identifier.  Required field.

2.

Assembly name

String 25

Required unique field. 

3.

Assembly ID

Big Integer

Unique identifier assigned by SQL.  It is ignored on importing.

4.

Order Number

String 25

Required field.  Component order number.

5.

Operation Identification (ident)

Integer

Optional.  Blank or a valid operation ident to feed into the parent.

6.

Parent Order Number

String 25

Required field.  The parent order number.  This field must be left blank for the final assembly job component.

7.

Parent Operation Identification (ident)

Integer

Optional.  Blank or a valid operation ident to receive parts from the child.

8.

Quantity to complete

Big Integer

Optional.  Quantity to complete before parent can start.

9.

Hours to complete

Float

Optional.  Hours to complete before parent can start.

10.

Secondary priority

Integer

Blank for of 50 or 1 to 99.


BOM Job Link Record

If a job is to be linked to another job, then the BOM job link structure must be defined.  Before specifying the BOM links, each BOM job must already exist (i.e. added) in the database
 

No.
 

Field

Type

Comment

1.

SJL

String 3

Record identifier.  Required field.

2.

Order Number

String 25

Required.  Order number of the job that will feed another job.

3.

Operation Identification (ident)

String 20

Optional.  The operation ident within the job that will feed another job.

4.

Feeds Order Number

String 25

Required field.  Order number of the job that will be fed.

5.

Feeds Operation Identification (ident)

String 20

Optional.  The operation ident within the job that will be fed.

6.

Quantity to Complete

Big Integer

Optional.  Quantity to complete before fed order number can start.

7.

Hours to Complete

Big Integer

Optional.  Hours to complete before fed order number can start.