0% found this document useful (0 votes)
43 views

Data Sync 2023 Manual

Uploaded by

jordan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views

Data Sync 2023 Manual

Uploaded by

jordan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 119

Data Sync 2023

User Manual
15.0.1 | Revision 05/2022 | English

For use with:


Data Sync 2023 Manual

TABLE OF CONTENTS

WELCOME TO DATA SYNC 4

INSTALLING DATA SYNC 5

SETTING UP DATA SYNC 16

THE MAIN DATA SYNC MANAGER WINDOW 22

ABOUT TASKS 24

IMPORT TASKS 25

IMPORT TASK - GENERAL TAB 28

DATA SYNC TASK - DATA SOURCE TAB 30

DATA SYNC TASK - DATA SOURCE TAB - CSV 31

DATA SOURCE - REGIONAL FORMATTING FOR CSV 33

DATA SYNC TASK - DATA SOURCE TAB - XLS 35

DATA SYNC TASK - DATA SOURCE TAB - ADO 36

DATA SYNC TASK - DATA SOURCE TAB - XML 37

DATA SYNC TASK - COLUMNS TAB 39

USING GRID FILTERS 43

DATA SYNC TASK - DATA MAPPING TAB 45

DATA SYNC TASK - EMAIL OPTIONS TAB 48

IMPORTING METRIC DATA 49

IMPORTING PLATES BY TOTAL WEIGHT OR AREA 54

EXPORT TASKS 56

EXPORT TASK - GENERAL TAB 58

EXPORT TASK - QUERY TAB 59

VISUAL QUERY BUILDER 61

SAMPLE QUERIES FOR EXPORT TASKS 63

EXPORT TASK - EXPORT TAB 81

-2-
Data Sync 2023 Manual

DATA SYNC TASK - EMAIL OPTIONS TAB 83

USING THE PRONEST HISTORY DATABASE 84

HISTORY TABLES AND VIEWS 87

EXECUTING TASKS ON DEMAND 103

LOGGING 106

DEFAULT FOLDERS 108

COULD NOT CONNECT TO PRONEST SERVER 109

DATA SYNC DIAGRAM 111

ABOUT OPTIONS 112

OPTIONS - GENERAL 113

OPTIONS - EMAIL (SMTP) 115

INDEX 117

-3-
Data Sync 2023 Manual

WELCOME TO DATA SYNC


15.0.1 | Revision 07/2022
Data Sync delivers the ability to synchronize work order and/or plate inventory data between your MRP/ERP sys-
tem and the ProNest Work Orders database or the ProNest Plate Inventory. Initial setup, including data field-map-
ping and integration, is fast and easy.

Getting started
l Installing Data Sync
l Setting up Data Sync
l The main Data Sync Manager window

Import tasks
l Import tasks
l Executing tasks on demand
l Importing metric data

Export tasks and history data


l Export tasks
l Export Task - Query tab
l Sample queries for export tasks
l History tables and views

-4-
Data Sync 2023 Manual

INSTALLING DATA SYNC

Background
Before installing Data Sync, determine the network configuration that will be used. Data Sync involves several com-
ponents that work together, including:

l Data Sync Service


Windows service that controls the execution of tasks; importing and exporting data between the ERP system
and the ProNest database.
l Data Sync Manager
This is the GUI for the Data Sync service - so it must be installed and used on the PC where the service runs.
With this interface, users can build and test their Data Sync tasks. This application also provides access to
generic Data Sync options (like logging level and email settings).
l Data Sync Command
Executable that runs tasks on demand, using the Data Sync service. Requires network access to the ProNest
database and the Data Sync service in order to work.
l Data Sync Log (not in the diagram in Figure 1)
Executable that opens the default Internet browser to the correct URL for today's data sync log. Requires net-
work access to the ProNest database and the Data Sync service in order to work.
l ProNest Server / ProNest Database
The REST API and target database from which ERP and nesting data will be imported and exported.

There are many ways to set up Data Sync components on a network. You may decide to run Data Sync on a sep-
arate machine from your ERP/MRP software and from the ProNest database server. You may also decide to install
Data Sync alongside the ERP/MRP software or on the same machine as the database.

Network configurations
The topology diagram in Figure 1 shows a Data Sync configuration at its most complicated level - where each com-
ponent is installed on a different PC/server.

-5-
Data Sync 2023 Manual

PC - A
This machine is designated as the Data Sync Host. The full version of Data Sync, which includes the
Data Sync Manager interface and Data Sync Service, has been installed. The URL.ini database con-
nection file is pointed to ProNest Server on PC-D. On this machine, users can:

l Create and edit tasks


l Schedule tasks
l Run a task
l View logs

PC - B
This machine has ERP software installed. The express version of Data Sync is installed, so users can
execute tasks on demand or view logs via Data Sync CMD. The URL.ini file is pointed to ProNest
Server on PC-D. The Data Sync CMD application looks in the ProNest database to determine where
the service is located (PC-A), so that it can trigger a task on that PC. Note that the Data Sync Service
on PC-A must be reachable from PC-B. On this machine, users can:

l Run a task
l View logs

PC - C

-6-
Data Sync 2023 Manual

A ProNest client, with the URL.ini database connection file pointed to PC-D. In this case, the ProNest
client can't execute any Data Sync tasks. On this machine, users can:

l View and interact with synced items via the Work Orders or Plate Inventory database editors in
ProNest

PC - D
This is the ProNest database server. The ProNest Server installer is used to install ProNest Server and
the SQL Server Express ProNest database on this machine. All ProNest clients, the Data Sync host, and
the Data Sync CMD point to ProNest Server on this machine.

You will need to determine the best configuration for the specific installation you are doing. Some other example
configurations are discussed below.

In these examples, the ProNest Database is hosted on the same server/PC that is running ProNest Server.
Sometimes, these are configured so that ProNest Server runs on a different server/PN than the ProNest Data-
base. Even if the database is hosted on a different machine than ProNest Server, the general setup for Data
Sync does not change.

Shared network ProNest database


For a typical setup, you will first need to identify the location of the host ProNest database (PC-D in Figure 1) and
make sure that there are sufficient permissions to connect to that database from the other machines that will be
used for this setup. Each client will need to point to this common ProNest Server database using their local URL.ini
file.

Data Sync must be connected to ProNest Server in order to work. Use the ProNest Server installer to install
ProNest Server and the host ProNest database if this is a new setup.

Data Sync Host - full version


Next, identify a host PC for Data Sync. This could be on the same PC/server as ProNest Server and the ProNest
database or it could be on a separate PC/server (as pictured with PC-A in Figure 1). The full version of Data Sync
will be installed on this host PC. This version includes:

l Data Sync Service


l Data Sync Manager interface
l Data Sync CMD (executable for running tasks on demand)
l Data Sync log viewer

-7-
Data Sync 2023 Manual

The host should be a PC/server that will remain on and is reachable from the other PCs that will run Data Sync. The
Data Sync Service executable (DataSyncSvc.exe) runs as a Windows service on this host. The Data Sync installer
registers this as Data Sync.

Install the full version of Data Sync on the host


1. Run the Data Sync installer on the PC that you've designated as the Data Sync host.
2. Select a language.
3. When prompted to select the setup type to install, select Complete.

4. Click Next then Install.

Verifying that the Data Sync Service is correctly set up


After installation, open Windows Services (Run > Services.msc) on the host and inspect the Data Sync service.
Make sure its Status is Started (not Starting) and its Startup Type is Automatic (Delayed Start).

-8-
Data Sync 2023 Manual

Connecting the Data Sync host to the database


Once installed, you will need to modify Data Sync's URL.ini file on the host to point to ProNest Server (which is
connected to the shared database).
Data Sync's URL.ini file is located in:

C:\ProgramData\Hypertherm CAM\Data Sync

If a ProNest client is already connected to a remote shared ProNest database, you can just copy the URL.ini file
from that ProNest client into the Data Sync program folder.

Data Sync client - express version


If you have more than one PC where you want to use Data Sync, an express version of Data Sync can be installed
on any number of clients. The express install is a limited version of Data Sync that can be used to view logs or run a
task on demand. Note that the Data Sync host (which runs the Data Sync Service) must have the full version
installed and that PC must be reachable over the network from any express client.
Files included with express version:

l Log viewer (DataSyncLog.exe)


l Executable for running tasks on demand (DataSyncCmd.exe)

Not included in express version:

l Data Sync Manager (DataSyncMgr.exe)


l Data Sync service is not created on the client PC

Install the express version of Data Sync on clients


1. Run the Data Sync installer on the client PC.
2. When prompted to select the setup type to install, select Custom.
3. Clear the box for Data Sync Server.
4. Make sure the box for Data Sync CMD is selected.

-9-
Data Sync 2023 Manual

5. Click Next, then Install.


6. Repeat steps 1-5 for each Data Sync client you want to set up.

Connecting Data Sync clients to the database


Once installed, you will need to modify the URL.ini file on each Data Sync client to point to the remote ProNest
database that the host is using.
Data Sync's URL.ini file is located in:

C:\ProgramData\Hypertherm CAM\Data Sync

If a ProNest client is already connected to a remote shared ProNest database, you can just copy the URL.ini file
from that ProNest client into the Data Sync program folder.

- 10 -
Data Sync 2023 Manual

Setting up tasks on the host


Once everything is installed and configured, Data Sync tasks (established procedures for importing data from a
given data source) would then be set up using the Data Sync Manager on the host. Please refer to Setting up Data
Sync, About tasks, and Creating tasks for more details.

Additional example configurations


Other less complicated setups may involve fewer machines than the diagram in Figure 1. The following examples
cover several common setups and may help you decide how to set up the integration.

Example 1: Enterprise software, Data Sync Service, and ProNest Shared Database on same PC/server

PC - A
This machine has been designated as the Data Sync Host as well as the ProNest Database Server.
The full version of Data Sync and ProNest Server are both installed. Users on this machine can:

l Create and edit tasks


l Schedule tasks

- 11 -
Data Sync 2023 Manual

l Run a task
l View logs

PC - B
A ProNest client, where users can:

l View and interact with synced items via the Work Orders or Plate Inventory database editors

Installation procedure:

l Run ProNest Server installer on PC-A


l Run Data Sync installer on PC-A (select "Complete" setup type)
l Run ProNest installer on PC-B

Connecting to the database:

l Modify URL.ini database connection files on PC-A and PC-B to point to ProNest Server on PC-A.
l On PC-A, Data Sync's URL.ini file is located in C:\ProgramData\Hypertherm CAM\Data Sync. Because Data Sync
and ProNest Server are on the same machine, you can simply leave the Data Sync URL.ini file pointed to the
local ProNest Server.
l On PC-B, ProNest's URL.ini file is located in C:\ProgramData\Hypertherm CAM\ProNest 2023

Example 2: Data Sync service and ProNest shared database on same PC/server, enterprise software installed on dif-
ferent machine

- 12 -
Data Sync 2023 Manual

PC - A
This machine has been designated as the Data Sync Host as well as the ProNest Database Server.
The full version of Data Sync and ProNest Server are both installed. Users on this machine can:

l Create and edit tasks


l Schedule tasks
l Run a task
l View logs

PC - B
This machine has ERP software installed. The "express" version of Data Sync is installed. Users can
execute tasks on demand using the Data Sync CMD application or view logs. The Data Sync CMD
application looks in the ProNest database to determine where the service is located (PC-A), so that it
can trigger a task on that PC. For this reason, the Data Sync Service on PC-A must be reachable from
PC-B. Users on this PC can:

l Run tasks
l View logs

PC - C
A ProNest client, where users can:

l View and interact with synced items via the Work Orders or Plate Inventory database editors

Installation procedure:

l Run ProNest Server installer on PC-A


l Run Data Sync installer on PC-A (select "Complete" setup type)
l Run Data Sync installer on PC-B (select "Custom" setup type, clear "Data Sync Server" box)
l Run ProNest installer on PC-C

Connecting to the database:

l Modify URL.ini database connection files on PC-A, PC-B, and PC-C to point to ProNest Server on PC-A

Example 3: Data Sync service and enterprise software on same PC/server, ProNest shared database installed on dif-
ferent machine

- 13 -
Data Sync 2023 Manual

PC - A
This machine has been designated as the Data Sync Host. The full version of Data Sync has been
installed. Users on this machine can:

l Create and edit tasks


l Schedule tasks
l Run a task
l View logs

PC - B
The ProNest database server.
PC - C
A ProNest client, where users can:

l View and interact with synced items via the Work Orders or Plate Inventory database editors

Installation procedure:

- 14 -
Data Sync 2023 Manual

l Run ProNest Server installer on PC-B


l Run Data Sync installer on PC-A (select "Complete" setup type)
l Run ProNest installer on PC-C

Connecting to the database:

l Modify URL.ini database connection files on PC-A and PC-C to point to the ProNest Server on PC-B

- 15 -
Data Sync 2023 Manual

SETTING UP DATA SYNC


Once Data Sync installation is complete, the program must be set up and integrated with your ERP/MRP system.

Database connection
Make sure that Data Sync is connecting to the same database as ProNest. See Installing Data Sync for more details.

Network connectivity
If Data Sync is connecting to a database over a network (i.e. the ProNest database is located elsewhere on the net-
work), make sure that there are sufficient permissions to connect to that network location.
Logs are also saved on the Data Sync host. To view these logs from other PCs, those PCs will need to be able to see
the host PC on the network.

Licensing
Data Sync is authorized via the ProNest license key. Data Sync must be connected to a ProNest database which is
connected to a ProNest client containing the Data Sync license feature.

Set up with Data Sync Manager


The Data Sync Manager should be used to create tasks, configure notification emails, enter host/port information
and set logging options.

1. If you've not already done so, open DataSyncMgr.exe C:\Program Files\Hypertherm CAM\Data Sync.
2. In the Options dialog, set Host and Port options. The host would be the PC that Data Sync was installed on.
3. Set up Email SMTP options. This enables logging notification emails to be sent.
4. Add import tasks for your source data. Tasks can be configured for either Plate Inventory or Work Orders
source data. You can select either a flat format file (CSV, XLS, XLSX, XML) or use an ADO connection as a
data source. You will also need to map ERP/MRP fields to available ProNest data fields.
5. Add export tasks for sending data from ProNest back to your ERP/MRP system. The ProNest History data-
base must be activated for this step.

Once Data Sync is fully set up on the host computer, the Data Sync service on that PC will execute tasks.

Set up work orders preferences in ProNest


For work orders, you will need to set up work orders preferences.

- 16 -
Data Sync 2023 Manual

1. Open ProNest.
2. On the File tab, click Preferences.
3. Click the Work Orders tab.

Unique key
Specify a combination of fields that creates a unique identifier for each Work Order record. This is the criteria used
to identify a work order item when updating the Work Orders database in ProNest.
Points to consider:

l You cannot enter a unique key that includes fields that are blank for existing work orders.
l Be sure that each field listed here is mapped in the Data Sync import task.
l This combination becomes the UniqueID field in history.WorkOrderParts.

Example 1:

Suppose each work order item (part) has a unique work order number:

- 17 -
Data Sync 2023 Manual

Work Order Number: A30178, Part Name = Flange


Work Order Number: A30179, Part Name = Trap

You could simply select Work Order Number as a unique key.

Example 2:

Suppose multiple work order items have the same work order number but each part name is different:
Work Order Number: A30178, Part Name = Flange
Work Order Number: A30178, Part Name = Trap

You would select Work Order Number + Part Name as a unique key.

Miscellaneous fields
You can map miscellaneous fields in the work order to available part property fields in ProNest. In this way, part
information such as initial rotation, priority, grain restraint, etc. can be specified in the work order using text fields.
The Misc # field and Caption are used for matching.
For instance, if a work order contains a field called "Rotation Limit" and is mapped to the ProNest part property
"Grain Restraint" in preferences, when that work order part is added to the part list, it will automatically use the
grain restraint specified in the work order.
For any caption Misc 1 - Misc 10) that is mapped in ProNest preferences, an ERP column should be mapped to the
appropriate ProNest column Misc1 - Misc10 in the Data Sync import task.

Example

Suppose there are three ERP work order columns that can't be directly mapped to ProNest columns in the Data
Sync import task:

l Restrict_Rotation
l Priority
l No_Fill

In Data Sync, in the Import Task dialog, on the Data Mapping column, you would enter the following in the map-
ping table:

ProNest columns:

Misc1 %Restrict_Rotation%

Misc2 %Priority%

- 18 -
Data Sync 2023 Manual

Misc3 %No_Fill%

Next, in ProNest, on the Work Orders preferences page, you would enter:

Misc fields:

Misc Caption Assign to Part Property


#

1 Misc 1 Grain Restraint

2 Misc 2 Priority

3 Misc 3 Prohibit Filling

Set up material aliases in ProNest


This may be useful if your materials are named differently in your ERP data compared to the format used by
ProNest. With aliases set up, material information in ERP source data can be automatically identified and matched
to the right ProNest material during import.
Aliases are set up in the ProNest Materials editor. To open the Aliases list:

1. Open the ProNest Materials editor (Data tab > Materials ).


-or-
Start > All Programs/All Apps > Hypertherm CAM > Materials.
2. On the File menu, click Aliases.

The Aliases list will appear, with three tabs at the top.

Method 1: Map to full material


This method works for both inventory plates and work order tasks. In Data Sync, the ERP/MRP field that is mapped
to Material Description (in the Data Mapping tab of the Data Sync Manager) will be brought in as the ProNest
material. The Material Description corresponds to a single material record in ProNest (e.g. "MS 0.25 in. A36"). Dur-
ing import of work orders or inventory plates, if there are new materials in the work order or list of plates that
aren't in the ProNest Materials database, those materials will automatically be added as aliases on the Material tab
of the Aliases list.

- 19 -
Data Sync 2023 Manual

Initially, the Material column displaying corresponding ProNest materials is blank, because these aliases haven't
been assigned to ProNest materials yet. You would then need to select a full ProNest material (type, thickness, and
optionally grade) to each alias.

- 20 -
Data Sync 2023 Manual

With this method, each thickness for a given type/grade must be mapped in a separate row.

Method 2: Map Material Name, Thickness and Grade separately


This method only works for inventory plate tasks. If the source data contains separate columns for Material type,
Thickness, (and Grade if applicable), you can map those fields (in the Data Mapping tab of the Data Sync Manager).
This is useful if the Material types or Grades listed in the ERP import don't match the names used in ProNest.
In the Aliases list, on the Material Name and/or Grade tabs, enter the aliases used in the ERP source data and then
assign ProNest material names or grades to them. During import, ProNest will try to match an existing material
using the Material Name and Thickness, and optionally Grade (if in use).
With this method, the following rules apply for matching a ProNest material during an import:

l Thickness is required and must be mapped on the Data Mapping tab. Note that the stated thickness must
be ±0.001 in. (±0.0254 mm) of the thickness listed in the Materials editor.
l If a material record has a Grade in the Materials editor, the grade must also be specified in ERP source data
in order to make a match. In this case, material type is not required in the source data; a match can be made
using Grade and Thickness.

- 21 -
Data Sync 2023 Manual

THE MAIN DATA SYNC MANAGER WINDOW


The main window contains a central view showing database connection, service status, options, and task man-
agement.

The main Data Sync Manager window

Options
See About Options to learn more.

Service
The Data Sync service, which controls the execution of Data Sync tasks, is shown here. See About tasks to learn
more.
You can start, stop or restart the service using this button.

Manage Tasks
See About tasks to learn more.

- 22 -
Data Sync 2023 Manual

Product Information
The version number of Data Sync and license modules authorized are shown here. These licensed modules are the
ones that are on the same key used by Data Sync.

ProNest Server
This is the version number of the ProNest Server data server. Also shown is the host, IP address, and port of the
machine that has ProNest Server installed.

Instance
Server name (Machine Name\Instance) to which ProNest Server is connected.
Typical instance for a local database:

(local)\PRONEST

Typical instance for a remote database:

MachineName\PRONEST

Database
Name of the ProNest production database that Data Sync is connected to.

- 23 -
Data Sync 2023 Manual

ABOUT TASKS
There are two types of tasks in Data Sync: import tasks and export tasks.
Import tasks are established procedures for importing data from a given data source into ProNest. Typically one
task correlates to a single data source and target. For instance, if you want to import a CSV file containing a list of
inventory plates (the source) into the ProNest Plate Inventory (the target), you would set up a task for that. If you
have multiple data source types, you would need to create a new task for each type of source.
Export tasks are procedures for sending nest data from ProNest back to the ERP/MRP system. Typically export data
includes plate inventory used or created and/or work order parts nested.
Tasks are saved as XML files in the following directory:
C:\ProgramData\Hypertherm CAM\Data Sync\Tasks

How are tasks executed?


When Data Sync is installed, a service called Hypertherm CAM Data Sync service is created. This service controls
the execution of import and export tasks.

Note that the service is configured to start automatically by default.

- 24 -
Data Sync 2023 Manual

IMPORT TASKS
Import tasks are established procedures for importing data from a given data source into ProNest. Typically one
task correlates to a single data source and target. For instance, if you want to import a CSV file containing a list of
inventory plates (the source) into the ProNest Plate Inventory (the target), you would set up a task for that. If you
have multiple data source types, you would need to create a new task for each type of source.

What type of data is included in an import source file?


Plate inventory
For inventory plates originating from an ERP/MRP system, the source file/data typically consists of at least:

l ERPPlateNumber (unique identifier used by your ERP system)


l MaterialAlias (formerly MaterialDescription)
l Thickness
l Width
l Length
l Quantity

Remnants are only passed from ERP/MRP to ProNest in order to update existing remnants with ERP tracking num-
bers, not to import new remnants into inventory.
Work orders
Work order information in a batch typically includes the latest list of work orders.
Recommended Work Order fields:

l WorkOrderNumber
l PartName
l QtyRequired
l CADFileName (only if not using the Part Library to store part geometry)

- 25 -
Data Sync 2023 Manual
l DateRequired
l MaterialAlias (formerly MaterialDescription)

The other fields can be used as reference to help sort and track the work order items.

How are updates made?


Rules for work orders
If an existing item is in the current batch, it will be updated with the latest information from the batch file. For
instance, suppose an existing work order has a quantity of 10 in the ProNest database. If that same work order is lis-
ted in a batch with a quantity of 15, the work order in ProNest will be updated to have a quantity of 15.
For status, how work orders are updated depends on whether the Auto-close items option is on or off.
Auto-close items: ON
Action: Import Work Order batch via import task

Status Item in current batch? Result

New work order n/a Yes Status = Active

Existing work order Active Yes Status = Active

Existing work order Closed Yes Status = Active

Existing work order Canceled Yes Status = Active

Existing work order Active No Status = Closed

Existing work order Closed No Status = Closed

Existing work order Canceled No Status = Canceled

Auto-close items: OFF


Action: Import Work Order batch via import task

Status Item in current batch? Result

New work order n/a Yes Status = Active

Existing work order Active Yes Status = Active

Existing work order Closed Yes Status = Active

Existing work order Canceled Yes Status = Active

Existing work order Active No Status = Active

Existing work order Closed No Status = Closed

Existing work order Canceled No Status = Canceled

- 26 -
Data Sync 2023 Manual

Rules for plates

l Any plates that are in the batch but aren't yet listed in the ProNest database will be added as new plates.
l If an existing plate is in the current batch, it will be updated with the latest information from the batch file.
This includes all plate properties such as length, width, material, heat number, and so on.
l If an import batch contains both the ProNest PlateID and the ErpPlateNumber, an existing plate's
ErpPlateNumber can be updated.
l By enabling the Only update quantity if new value is smaller option, stock quantity in the ProNest Plate
Inventory will be updated only if the new value in the source data is less than the existing value.

Create a new import task in Data Sync

1. On the main Data Sync window, click Manage Tasks.


2. Click New > Import task.
3. Fill out the information in the Data Sync Task dialog.
4. Click OK to save your task.

- 27 -
Data Sync 2023 Manual

IMPORT TASK - GENERAL TAB


Task name
Enter a name for your task.

Source type
Set the format of the ERP source data.
Choices: CSV (Comma Separated Values), XLS, XLSX, XML and ADO

The source type you select will determine what is visible in the File name (or mask) browser.

File name (or mask)


For CSV, XLS, XLSX, or XML source types, you can enter a full path (which includes a specific file name) that data
will be pulled from or enter a file mask (a string that specifies the location and type of file, but is not limited to a
single source file).
File masks can use asterisks (*) as wildcards for folders and/or file names, multiple masks can be separated by a
semi-colon(;).

Example

If you wanted to use all CSV files in a given folder for a task, you could enter a file mask:
C:\Documents\*.csv

All source files with the CSV extension in that folder would be processed for that Data Sync task.

Move source files before processing


When selected, source ERP data files will be moved to the MovedFiles folder prior to being processed by Data
Sync. The moved files are renamed with a unique GUID number. Both the original source file name and the cor-
responding GUID file name are referenced in the log files.
When cleared, source files will not be moved.

Target
Set the target ProNest database that your ERP data should be imported into. If you are importing work orders with
this task, select "Work Orders"; if you are importing plates, select "Plate Inventory".

Auto-close items

- 28 -
Data Sync 2023 Manual

This option is available when "Work Orders" is selected as the target. When enabled, existing work order items
in the Work Orders database that are not listed in the current batch will be set to "Closed" status. The only
exception to this is work order items that were edited manually in the Work Orders editor.
When cleared, "Active" work orders not listed in the current batch will remain "Active" when the batch is impor-
ted.
Refer to Import tasks for more information on how updates are made.

Only update quantity if the new value is smaller


For "Plate Inventory" targets, as long as quantity is mapped (or can be otherwise calculated), you can configure
how updates to quantity for existing plates should be made.
When selected, stock quantity in the ProNest Plate Inventory will be updated only if the new value in the source
data is less than the existing value.
When cleared, stock quantity will be updated whether the new value in the source data is greater than or less
than the existing value.

Trigger
Set the frequency with which the task should be executed. The Hypertherm CAM Data Sync Service will run the
task at the specified interval.

- 29 -
Data Sync 2023 Manual

DATA SYNC TASK - DATA SOURCE TAB


Based on the Source type that is selected, you can enter details about the source ERP data.
Read about setting up the Data Source for a specific format:

l Data Source - CSV


l Data Source - XLS
l Data Source - ADO
l Data Source - XML

Raw data
This grid displays the information found in the data source file, providing an easy way of previewing the inform-
ation in the source.
Refreshing raw data is useful if the source data has changed and you want to view those changes in Data Sync.

- 30 -
Data Sync 2023 Manual

DATA SYNC TASK - DATA SOURCE TAB - CSV


File name
Browse to the CSV (Comma Separated Values) file that the task will use as a data source.

If you are using a file mask (on the General tab) to point to data source files, you will still need to select a spe-
cific file here so that your task can be formatted properly.

Comma
This should match the delimiter or separator used in the CSV data source file. Choices include:
Comma (,)
Semicolon (;)
TAB
SPACE

Quote
Indicate whether single or double quotation marks are used in the CSV file data fields. This helps Data Sync
identify quotation marks so that they're not used improperly in code later on.

Skip first rows


If the source CSV file contains information that should not be processed in the first several rows, enter the rows
that should be ignored.
0 = will not ignore any rows
1= will skip the first row only
2 = will skip rows 1 and 2
(etc.)

Headers
First row contains headers
When selected, the column headers found in the file will automatically be available in the Data Mapping table.
When cleared, Data Sync will process data without bringing in any column header information.
It is assumed that the column header row will begin directly after the "Skip first rows" selection.

Example 1

- 31 -
Data Sync 2023 Manual

In a CSV file, rows 1 - 3 are blank, there are column headers in row 4 and data records beginning in row 5.
You would set Skip first rows to "3" and select First row contains column headers.

Example 2

In a CSV file, there are no column headers and data records begin in row 1.
You would set Skip first rows to "0" and clear the First row contains column headers.

Encoding
If necessary, select the character encoding used by the data source. By default this is set to "ctWinDefined", which
will use the Windows default encoding on your PC (this is recommended in most cases).

Regional Formatting
Localized formatting options can be set, read Data Source - Regional Formatting for CSV for more information.

- 32 -
Data Sync 2023 Manual

DATA SOURCE - REGIONAL FORMATTING FOR CSV


Because CSV files do not contain any formatting information, regional formatting can be set for CSV data sources.
Note that altering these options is usually only necessary with formats that differ from the defaults used for Eng-
lish (United States).

Open Regional Formatting options


1. With Source Type set to "CSV", click the Data Source tab.
2. Click the Regional Formatting button.

The Format Options dialog will open.

Format Options

Numbers
Decimal symbol
Enter the separator used to denote decimals in floating point numbers.

Choices: Period (.) or Comma (,)

Thousand separator
Enter the separator used to denote groups of thousands in numbers.

Choices: Period (.) or Comma (,) or Blank space ( )

Boolean
Enter the characters that are used to indicate True or False. Multiple entries can be separated by a comma with no
space in between.
By default, boolean true/false switches are as follows:
True: true,t,yes,y,1
False: false,f,no,n,0

DateTime
Date separator
The separator used between day, month, and year.
Time separator
The separator used between hours, minutes, and seconds.

- 33 -
Data Sync 2023 Manual

Date format
Select a format from the list or type in a custom format.
Time format
Select a format from the list or type in a custom format.

- 34 -
Data Sync 2023 Manual

DATA SYNC TASK - DATA SOURCE TAB - XLS


File name
Browse to the XLS or XLSX file that the task will use as a data source.

If you are using a file mask (on the General tab) to point to data source files, you will still need to select a spe-
cific file here so that your task can be formatted properly.

Skip first rows


If the source XLS or XLSX file contains information that should not be processed in the first several rows, enter the
rows that should be ignored.
0 = will not ignore any rows
1= will skip the first row only
2 = will skip rows 1 and 2
(etc.)

Headers
First row contains headers
When selected, the column headers found in the file will automatically be available in the Data Mapping table.
When cleared, Data Sync will process data without bringing in any column header information.
It is assumed that the column header row will begin directly after the "Skip first rows" selection.

Example 1

In an XLS table, rows 1 - 3 are blank, there are column headers in row 4 and data records beginning in row 5.
You would set Skip first rows to "3" and select the First row contains column headers checkbox.

Example 2

In an XLS table, there are no column headers and data records begin in row 1.
You would set Skip first rows to "0" and clear the First row contains column headers checkbox.

- 35 -
Data Sync 2023 Manual

DATA SYNC TASK - DATA SOURCE TAB - ADO


In order for Data Sync to use an ADO (ActiveX Data Objects) record set, a database connection has to be estab-
lished.

Connection String
Click the Browse button ( ) to open the Microsoft Data Link Properties dialog and configure the database con-
nection.

You can click F1 while this dialog is open to view help topics for getting connected.

Table
Once connection parameters have been entered, select the table that you want import data from.

- 36 -
Data Sync 2023 Manual

DATA SYNC TASK - DATA SOURCE TAB - XML


File name
Required. Browse to an XML file containing the raw data that the task will use as a data source. This file is will be
used in later steps when configuring the task.

If you are using a file mask (on the General tab) to point to data source files, you will still need to select a spe-
cific file here so that your task can be formatted properly.

Apply XSL transformation (XSLT)


Optional. Specify an XLST file to transform XML data to the result needed for Data Sync. The transformed results
file will be used in later steps when configuring the task.
Data Sync XML import tasks must have a tabular section with work order or plate information. Rows of data where
each row corresponds to an individual work order item or inventory plate.

XPATH
Required. Use XPath to select elements or attributes in the XML file. If an XSLT file is used, the XPath would be
applied to the XSLT result.

XML tags are case sensitive.

Example: XML plate data (no XSLT)

Suppose the source XML file contains the following plate information:
<?xml version="1.0" encoding="UTF-8"?>
<plates>
<plate>
<erpplateid>12345678</erpplateid>
<length>48</length>
<width>72</width>
<material>A36</material>
<thickness>0.25</thickness>
<heatnumber>H727622R1.0</heatnumber>
</plate>
<plate>
<erpplateid>98765432</erpplateid>

- 37 -
Data Sync 2023 Manual

<length>48</length>
<width>96</width>
<material>A36</material>
<thickness>0.25</thickness>
<heatnumber>H727622R1.0</heatnumber>
</plate>
</plates>
The XML tags are organized such that the root <plates> node corresponds top to the table name (e.g Plate
Inventory) and the child <plate> node corresponds to a single record in that table. Every child element under the
<plate> node is a plate property.
You could then enter an XPath statement as follows:

/plates/plate

The XML data would be in a format that is usable by Data Sync.

Use data from XML node attributes


This will either use child data from the node when off OR use attribute data from the node when on.

- 38 -
Data Sync 2023 Manual

DATA SYNC TASK - COLUMNS TAB


Columns from data source
The columns found in the data source are listed in this grid.
Field name
If "First row contains column headers" is selected (on the Data Source tab), Field name will show the actual ERP
column header names. Otherwise, generic field names will be used.
You can edit field names and they will be saved with the task.
Data type
By default, all data fields will be set to "String". Use this column to set the data type for each row in the grid.
Choices include:

String
Text or combinations of text and numbers
Integer
Whole numbers
Float
Single precision floating-point values
DateTime
Use for dates and times. For CSV files, date and time are configurable from the Regional Formatting dialog.
Boolean
True/false (1/0) values. For CSV files, true/false switches are configurable from the Regional Formatting dialog.

Size
The maximum character size of a String data field. By default this is set to 128.

Errors and Final source data


The grid in the lower section of the window shows the source data as it would be processed into ProNest, with
data validation (warnings and errors) displayed.
Fields that are displayed in yellow indicate a warning. With warnings, typically data will still be imported, but it may
not be correct or may require some attention.
Fields that are displayed in red indicate an error, most commonly due to incorrect formatting of data or missing
fields. Typically, these errors occur if there is a mismatch of data types (for instance, a String data field is set to

- 39 -
Data Sync 2023 Manual

Integer). Errors are also displayed in the Errors pane in the upper right. It is recommended that you correct any
errors with the Data Sync client (or in the source data, if applicable) before running a task.
If you have Options - Email (SMTP) set up, error notification emails will be sent to the email addresses entered on
the Email Options tab.

Reference Information
ProNest Plate Inventory - Data Format

Max
Field name Data type Notes
size
ErpPlateNumber string 128

MaterialAlias string 128

(formerly Mater-
ialDescription)

Material string 40

Grade string 40

Thickness float

MaterialID integer

Quantity integer

Weight float

Area float in.2

PlateType integer 0 = Rectangular

1= Circular

2 = Remnant

3 = Skeleton

Length float

Width float

UnitPrice float

PlateUnits integer 0 = inch

1 = mm

(Defaults to inch if blank)

CreateDate datetime2

- 40 -
Data Sync 2023 Manual

Max
Field name Data type Notes
size
(7)

Name string 40 formerly called Description


StockNo string 30 Stock number
Supplier string 60

HeatNumber string 30

Location string 60

ReorderLimit integer

ReorderQty integer

Rotation float

Misc1 string 60

Misc2 string 60

Misc3 string 60

PlateID integer ID number assigned by ProNest. Used to map to existing plates in


ProNest inventory.

ProNest Work Orders - Data Format

Field name Data type Max size


WorkOrderNumber string 128

PartNumber string 255

QtyRequired integer

MaterialAlias string 128

(formerly MaterialDescription)

DateRequired datetime2(7)

Revision string 20

CADFileName string 255

Location string 128

WorkCenter string 128

Machine string 128

- 41 -
Data Sync 2023 Manual

Field name Data type Max size


PONumber string 128

CustomerAlias string 60

(formerly CustomerReference)

Misc1 string 128

Misc2 string 128

Misc3 string 128

Misc4 string 128

Misc5 string 128

Misc6 string 128

Misc7 string 128

Misc8 string 128

Misc9 string 128

Misc10 string 128

- 42 -
Data Sync 2023 Manual

USING GRID FILTERS


Grid filters let you choose which items to show in a grid based on the criteria that you specify. When you apply a fil-
ter to a grid, the items that meet the conditions specified will remain visible, while all other items will be hidden.
This can make it easier to find specific records or organize items in the grid.

Filter by values in a column


This enables you to filter by existing values in a given column. Only rows that match the selected values in the filter
will be shown.

1. On the column header that you want to use for filtering, click the down arrow ( ).
A drop down box will appear. Each value found in that column will be listed with its own box.
2. Select the boxes for the values that you want to show. Values that are not selected will be hidden in the grid.

Create a custom column filter


Custom column filters work like normal column filters, but they allow you to specify more complex operators (such
as greater than, less than, not equal to, etc.) in the filter for a given category.

1. On the column header that you want to use for filtering, click the down arrow ( ).
2. From the drop down list, select (Custom...).
The Custom Filter dialog will open.
3. Enter conditions for the selected category.
4. Click OK.

You can apply a column filter to as many different columns as you want. Data Sync will then filter the entire
grid based on the column filters that are applied.

Modify a filter

1. On the column header that is being used for filtering, click the down arrow ( ).
2. If you are using checkboxes for filtering, you can check or remove the selection from values in the list.
3. If you want to modify the Custom Filter, select (Custom...) from the list and adjust the Custom Filter as
needed.

- 43 -
Data Sync 2023 Manual

Delete a filter

l Click the Close button ( ) on the gray band at the bottom of the grid.
or
l Right-click inside the grid and remove the Filter selection.

- 44 -
Data Sync 2023 Manual

DATA SYNC TASK - DATA MAPPING TAB


ProNest columns
In Mapping grid, data fields found in the selected ERP/MRP data source can be mapped to available ProNest Work
Orders or Plate Inventory data fields.
ProNest data fields are listed in the left column. The right column contains corresponding ERP/MRP fields. By
default, the right column is blank. Variables and functions can be used in conjunction with ERP field names
(Columns) in the right column.

Available columns
Columns
ERP fields are listed on the Columns tab. Click and drag an ERP column over to the Mapping grid to assign it to a
ProNest field.

Column names must be surrounded by percent signs (%) in the Mapping grid.

Columns that aren't mapped to available ProNest fields will not be included during data import.

Variables

- 45 -
Data Sync 2023 Manual

You can also drag variables onto the Mapping grid. The variables only serve as a placeholder. During data import,
actual data will be included for that field.
Choices: Import File Name, TodaysDate

Functions
Functions can be used to build expressions in the Mapping grid.
Commonly used functions include:

l Trunc : Integer
Removes the fractional part of the number. For instance, "7.9" becomes "7".
l Round : Integer
Rounds a number to the nearest whole number. For instance, "7.9" becomes "8", while "7.2" becomes "7".
l Int : Integer
Rounds a number down to the nearest whole number. For instance, "7.9" becomes "7", and "7.2" becomes
"7".

Int and Trunc are different only when using negative numbers: =TRUNC(-4.3) returns -4, but =INT(-4.3)
returns -5 because -5 is the lower number.

Example: Getting a rounded integer from floating point value

Let's suppose that an ERP/MRP field called "QuantityRequired" is a floating point value, but you need to convert
that to an integer for ProNest.
You could use the Mathematical function to do this:

1. On the Data Mapping tab, click the Function tab.


2. From the Mathematical node, drag the Round : Integer function to the right column across from
"Quantity".

Quantity =Round()

3. Click the Columns tab.


4. Drag and place the ERP/MRP column "QuantityRequired" into the right column, between the parentheses
in the expression.

Quantity =Round(%QuantityRequired%)

When QuantityRequired is imported into ProNest, it will be expressed correctly as a rounded integer in the data-
base.

- 46 -
Data Sync 2023 Manual

Example: Converting source data in millimeters to inches

Suppose your source ERP/MRP data for plate length and width is in millimeters. You can divide by 25.4 to convert
this to inches.

PlateLength =Length/25.4

See Importing metric data to learn more.

Recommended fields
Recommended Work Order fields:

l WorkOrderNumber
l PartName
l QtyRequired
l CADFileName (only if not using the Part Library to store part geometry)
l DateRequired
l MaterialDescription (maps to a "full material" using material alias)

The other fields can be used as reference to help sort and track the work order items.
Recommended Plate Inventory fields:

l ERPPlateNumber (unique identifier used by your ERP system)


l MaterialDescription or Material/Thickness/Grade
l PlateWidth
l PlateLength
l Quantity

For plates, you can use MaterialDescription to attempt to match a single material record (e.g. "MS 0.25 in. A36")
using full material alias, or you can try mapping Material, Thickness, and (optionally) Grade to make a match. See
Setting up Data Sync for more information on setting up material.
For plate inventory import tasks, PlateUnits can be used to specify the measurement units of the source data,
where 0 = imperial and 1 = metric (if this data is missing, inch is assumed by default). For more information, see
Metric data import.

- 47 -
Data Sync 2023 Manual

DATA SYNC TASK - EMAIL OPTIONS TAB


Send email when error occurs
Automatic messaging is a feature that can be used to notify one or more users in the event of an error (which
would result in a problem with data import). When selected, Data Sync will automatically create and send an email
to the addresses listed in the Recipients list, indicating that there was an error.
You must configure Email options in order for automatic emails to be sent out.

- 48 -
Data Sync 2023 Manual

IMPORTING METRIC DATA


Data is stored in imperial units in the ProNest database. This means that metric source data must be converted to
imperial (inch) units during import. If you have metric source data in a Data Sync import task, there are a few ways
to do this in Data Sync.

Measurement units
Data is stored in the ProNest database in the following imperial units:

ProNest data field Units Used with


Material Thickness inch work orders

plate inventory

Plate Length inch plate inventory

Plate Width inch plate inventory

Total Weight pounds plate inventory

Total Area square inches plate inventory

If source data for these columns is in metric, it will need to be converted, even if your PC uses a Metric meas-
urement system.
Note that there are a few different ways of handling Material Thickness, some of which don't require a conversion
in Data Sync.

Regional settings
Most types of source data, such as XLS, XLSX, ADO, XML, don't require any regional set up on the Data Source tab.
However, CSV source data does because CSV files do not contain formatting information.
For instance, if your region uses comma as a decimal separator and you have a CSV file that is delimited with a
semi-colon, on the Data Source tab, you would set the delimiter (called "Comma") to semi-colon (;) and the
Regional Formatting > Decimal Symbol to comma (,).

- 49 -
Data Sync 2023 Manual

Plate Inventory
Method 1: Entering mathematical conversions in data mapping fields
For plate inventory import tasks, you can convert the values using formulas. For instance, if your lengths are in mil-
limeters, you can divide by 25.4 to convert to inches.
Suppose your source data contained columns called Length and Width, with values in millimeters. You might enter
this in the Data Mapping tab as follows:

- 50 -
Data Sync 2023 Manual

Here, PlateLength is entered as =%Length%/25.4 and PlateWidth is entered as =%Width%/25.4.

For material thickness, if you are individually mapping to Material and Thickness, the thickness will be inter-
preted as though it is in inches. So, if you have source thickness in millimeters, be sure to divide by 25.4 (for
example, Thickness=%Thickness%/25.4). If you are mapping to MaterialDescription (using Alias), you can just
map the full material later on in the Materials editor.
Method 2: Using PlateUnits column in source import data
For plate inventory import tasks, PlateUnits can be used to specify the measurement units of the source data,
where 0 = imperial and 1 = metric. If possible, you can include a Units column and then leave all of your metric
data as is. This option is typically only used when all source data is in metric.

- 51 -
Data Sync 2023 Manual

Then, map your column header that contains your units to the PlateUnits ProNest column.

- 52 -
Data Sync 2023 Manual

During import, Data Sync will automatically covert any metric values to inches, square inches, or pounds when
adding the plates to the database.
For material thickness, if you are individually mapping to Material and Thickness, the thickness will be inter-
preted as though it is in millimeters. If you are mapping to MaterialDescription (using Alias), you can just map
the full material later on in the Materials editor. See Setting up Data Sync for more info on setting up material map-
pings.

If PlateUnits is missing from source inventory data, inch is assumed by default.

Work Orders
For work orders, simply leave the metric source data as is. Then map the materials to full materials in the ProNest
material alias table (Data > Materials > File > Aliases).

- 53 -
Data Sync 2023 Manual

IMPORTING PLATES BY TOTAL WEIGHT OR AREA


Certain ERP systems use area or weight as a means of specifying plate quantity. In these scenarios, Quantity is not
specified in the ERP source data directly. In order for ProNest and Data Sync to correctly recognize and assign
quantity to these inventory plates, certain conditions must be met.

Specifying quantity by Total Area


Required ERP fields:

l Total Area
l Length
l Width

Upon import, ProNest will automatically calculate the quantity a long as those fields are present.

Example

In the ERP source file, lets say that a given record contains the following info:
Total Area = 13,824 in.2

Length = 96 in.
Width = 48 in.

ProNest would calculate the area of a single plate (96 × 48 = 4,608 in.2), then divide the Total Area by the area of
a single plate to get the quantity (13,824 in.2/ 4,608 in.2= 3).
The Stock Quantity would automatically be set to "3" when the plate is imported.

Specifying quantity by Total Weight


Required ERP fields:

l Total Weight
l Length
l Width
l Material and Thickness or Material ID or Material Description

A material and thickness must be able to be matched in the ProNest Material Database. The matched material
record must have an accurate Density value.

Example

- 54 -
Data Sync 2023 Manual

In the ERP source file, lets say that a given record contains the following info:
Total Weight = 967.68 lbs.
Length = 96 in.
Width = 48 in.
Material = MS
Thickness = 0.25 in.

Assume that in the ProNest Material Database, MS 0.25 has a density of 0.28 lb/in.3 Because the density, thick-
ness, and area (length × width) are known, ProNest can calculate a single plate's weight (based on its volume).
First, the volume of a single plate is calculated based on area × thickness (4,608 in.2 × 0.25 in.= 1,152 in.3). The
weight of a single plate is then figured based on density × volume (0.28 lb/in.3 × 1,152 in.3 = 322.56 lbs.).
ProNest then divides the Total Weight by the weight of a single plate to get the quantity (967.68 lbs. / 322.56 lbs.
= 3).
The Stock Quantity would automatically be set to "3" when the plate is imported.

- 55 -
Data Sync 2023 Manual

EXPORT TASKS
Once your work orders or inventory plates have been added to jobs, nested, and output, you may need to report
data back to your ERP/MRP system. There are several methods of hooking up round trip communication between
your ERP/MRP software and ProNest. The easiest and most flexible way of doing this is to set up export tasks.

How it works
When a Data Sync export task is run, a SQL query is executed on the ProNest History database and the results are
written to one or more files in CSV, XLS, XLSX, or XML format. These files would then be read in by your ERP/MRP
system.
A Data Sync export task can contain one or more files, each containing their own unique set of information. For
instance, you may want to set up a single export task that creates two separate files - one for work orders nested
and another for inventory plates used and/or created. When the task is executed, both files would be created and
returned to the ERP/MRP system.

Requirements
l The ProNest History database must be activated in ProNest. See Using the ProNest History database for
more information.
l File format required by the ERP/MRP system must be known.
l Nest Cut event enabled in Data Sync Options.

When are export tasks executed?


The Data Sync service ultimately controls the execution of any Data Sync task.
Export tasks can be set up to run every time an event in ProNest occurs. Typically this is when the Nest Cut event
occurs - when a nest's status changes to Complete during output.
Using a task scheduler, you can also run an export task at a regular time interval.

- 56 -
Data Sync 2023 Manual

Creating export tasks

1. On the main Data Sync window, click Manage Tasks.


2. Click New > Export Task.
3. On the General tab, enter a Task Name, then use the Add button [+] to select the number of files needed.
You can then set the file type on the Export tab.
4. Fill out the other information in the Data Sync Task dialog.
5. Click OK to save your task.

Using ProNest reports for data retrieval


The other method of getting job data from ProNest is using reports. With ProNest reports (In ProNest, go to Home
tab > Reports ), you can view and retrieve detailed work order and plate inventory information for parts, nests, and
jobs. Custom reports are available for Data Sync users who require this information. Please contact Hypertherm for
more information.

- 57 -
Data Sync 2023 Manual

EXPORT TASK - GENERAL TAB


Task name
Enter a unique name for your task.

Event
A ProNest event must be selected for all Data Sync export tasks. The list of available events comes from the
events selected in the Options dialog.

Nest Cut
When a nest's status changes to Complete in ProNest, the nest cut event occurs. Keep this selected for all export
tasks.

Files
These files will be created when the export task is executed. Use the [+] and [-] buttons to add or remove files
from the list. Once the correct number of files is specified, you can select a file type (CSV, XLS, XLSX, or XML) for
each file on the Export tab.

Trigger
Select this to run the export task at a regular time interval. When selected, the Hypertherm CAM Data Sync Ser-
vice will run the task at the specified interval. At that point, all Events (e.g. Nest Cut) that have occurred and were
recorded in the history database will be eligible to be included in export data.
A Trigger value must be set in order for Data Sync to automatically run any export task.
When cleared, the export task will only be executed when you manually run the task.

- 58 -
Data Sync 2023 Manual

EXPORT TASK - QUERY TAB


The Query tab contains a pane where you can enter SQL queries to execute on the ProNest History database. The
results are then included the Results pane.

File
If there is more than one file to be created by your export task, you can select an individual file in this box. Queries
are file-specific; the query in the editor always applies to selected export file.

SQL pane
Enter SQL statements in this pane.

l History tables and views contains a comprehensive list of all ProNest history data available for export.
l Sample SQL queries can help you get started writing queries for your export task.

This editor is designed for reading data, not modifying data. Statements such as SET, UPDATE, or DELETE are not
permitted.

- 59 -
Data Sync 2023 Manual

SenderID
The SenderID, in dbo.DataSyncEvents, is a number automatically assigned when a nest is cut, which is recorded in
the database by ProNest. This number increments with each copy of a nest that is cut. A field called NestCutID,
found in the dbo.NestCuts table, is equal to the SenderID. These numbers are both stored in production database
tables, but can be used to link to history records using history.Nests.TrackedNestID.
The %SenderID% is a variable that can be used in place of a value. Simply drag and drop %SenderID% to insert it
into the query.
The Example SenderID for testing box at the bottom of the screen lets you preview data in the Results table.
Enter a known SenderID to see the results.

Visual Query Builder


An optional tool you can use to help write SQL queries. See Visual Query Builder for more information.

Results
A tabular view of the data that will be included in the export file. You can click Refresh to update the results in the
grid.

- 60 -
Data Sync 2023 Manual

VISUAL QUERY BUILDER


The Visual Query Builder is included to help you write SQL queries.

Open the query builder


l In the Export task dialog, on the Query tab, click Visual Query Builder.

Available data sets are listed on the right side. For a detailed description of this data, see History database tables
and views .

Adding data to the query builder

1. In the pane on the right, double-click or click and drag to add tables in Model tab.
2. Select columns to include.

- 61 -
Data Sync 2023 Manual

Link tables with INNER JOIN


Drag a column from one table over another column in a different table. This will link the tables by the column.

In most cases, the best field to use for joining two tables is NestID.
When finished, click the checkmark ( ) to return to the Data Sync Query tab.

The SQL query in the Query Builder will overwrite any pre-existing query in the SQL pane.

- 62 -
Data Sync 2023 Manual

SAMPLE QUERIES FOR EXPORT TASKS


The following example SQL queries use the tables and views in the ProNest History database. You can use these as
a starting point for building your own queries to get ProNest data in the format that you need.

The lines beginning with two dashes (--) are commented out, meaning that they won't be executed.

Basic samples
These sample queries show some different ways of querying the ProNest database. These return a subset of data
from a given view or combination of views.

--Example 1 - View work orders by completed nest


SELECT U.NestID, U.CNCFile, U.WorkOrderNumber, U.WorkOrderItemID, U.PartName, U.QtyNested, N.TimesCut,
N.TimesCut * U.QtyNested AS 'TotalQtyAllNests', N.PlateInvID, N.Material, N.Thickness, N.TrackedNestID
FROM history.Nests N
INNER JOIN history.UniqueNestParts U ON (N.NestID=U.NestID)
ORDER BY U.WorkOrderNumber
--Example 2 - View all work orders with a status of Active, sorted by Date Required
SELECT * FROM ProNest.history.WorkOrderParts
WHERE Status = 0
ORDER BY DateRequired
--Example 3 - View simple part information about parts that were cut
SELECT *
FROM history.UniqueNestParts WHERE
CNCFile like '%\Job01.CNC'
--Example 4 - View work order part information about parts that were cut
SELECT U.*, WP.*
FROM history.UniqueNestParts U, history.WorkOrderParts WP
WHERE
U.WorkOrderItemID = WP.WorkOrderItemID
AND
U.CNCFile like '%\Job01.CNC'
--Example 5 - Find the inventory plate used for a given nest / CNC file

- 63 -
Data Sync 2023 Manual

SELECT PlateInvID, ERPPlateNumber, CNCFile, JobName


FROM history.PlatesUsed
WHERE CNCFile like'%\Job01.CNC'
--Example 6 - Find all parts nested on inventory plates with a specific Heat Number
SELECT PU.HeatNumber, UN.WorkOrderNumber, UN.PartName, PU.CNCFile, PU.ERPPlateNumber, PU.PlateInvID,
PU.JobName
FROM history.PlatesUsed PU
INNER JOIN ProNest.dbo.InventoryPlates PI
ON PU.PlateInvID = PI.InventoryPlateID
INNER JOIN history.UniqueNestParts UN
ON PU.NestID = UN.NestID
WHERE PU.HeatNumber = '202907'
ORDER BY WorkOrderNumber
--Example 7 - Show basic information about remnant or skeleton plates created
SELECT *
FROM history.PlatesCreated
WHERE CNCFile like '%\Job01.CNC'

Full query samples


These queries offer comprehensive information on parts cut, inventory, and operator activity from ProNest. You
can copy and paste one of these samples into the query editor for a given export task. Then, edit or remove
columns from the SELECT statement as needed.

Parts cut
Copy and paste the following query into the query editor for part level data.

SELECT
/* List of Parts cut in Nest */
/* ProNest.history.UniqueNestParts U */
u.NestID
,u.JobPartID
,u.JobID

- 64 -
Data Sync 2023 Manual

,u.JobName as u_JobName
,u.PartName as Partname
,u.QtyNested as u_QtyNested
,u.QtyRequired
,u.WorkOrderItemID
,u.WorkOrderNumber as u_WorkOrderNumber
,u.CNCFile as u_CNCFile
,u.PlateInvID
,u.NestedExteriorProfileArea
,u.PlateArea
,u.AllocatedArea
/* ProNest.history.PlatesUsed pu*/
,pu.JobID
,pu.JobName
,pu.NestID
,pu.PlateInvID
,pu.TimesCut as pu_CutNumTimes
,pu.StackQuantity as pu_StackQty
,pu.Material as pu_Material
,pu.PlateType
/* Inch */
,round(pu.Thickness,2) as pu_Plate_Thickness
,round(pu.PlateLength,2) as pu_Plate_Length
,round(pu.PlateWidth,2) as pu_Plate_Width
/* Metric */
,round(pu.Thickness*25.4,2) as Plate_Thickness_mm
,round(pu.PlateLength*25.4,2) as Plate_Length_mm
,round(pu.PlateWidth*25.4,2) as Plate_Width_mm
,pu.PlateName as pu_PlateName
,pu.PlateWeight as pu_PlateWeight

- 65 -
Data Sync 2023 Manual

,pu.UnitPrice as pu_UnitPrice
,pu.CNCFile as pu_CNCFile
,pu.ERPPlateNumber as pu_ERPPlateNumber
,pu.HeatNumber as pu_HeatNumber
/* ProNest.history.PlatesCreated pc */
,pc.JobID
,pc.JobName
,pc.NestID
,pc.InventoryPlateID
,pc.MaterialID
,pc.MaterialName as pc_MaterialName
,pc.PlateUnits
,pc.PlateType
/* Inch */
,round(pc.thickness,2) as pc_Rem_Thickness
,round(pc.Width,2) as pc_Rem_Width
,round(pc.length,2) as pc_Rem_Length
/* Metric */
,round(pc.thickness*25.4,2) as pc_Rem_Thickness_mm
,round(pc.Width*25.4,2) as pc_Rem_Width_mm
,round(pc.length*25.4,2) as pc_Rem_Length_mm
,pc.QuantityInStock
,pc.QuantityAllocated
,pc.Name
,pc.Location
,pc.StockNumber as pc_StockNumber
,round(pc.Area,2) as pc_Rem_Area
,round(pc.Weight,2) as pc_Rem_Weight
,pc.Rotation
,pc.CreateDate as pc_CreateDate

- 66 -
Data Sync 2023 Manual

,pc.FileType
,pc.Filename
,pc.ReorderLimit
,pc.ReorderQty
,pc.Supplier
,pc.HeatNumber as pc_HeatNumber
,pc.UnitPrice
,pc.CreatedByJob
,pc.MaterialAlias
,pc.ERPPlateNumber
,pc.TotalValue
,round(pc.TotalWeight,2) as pc_Rem_TotalWeight
,pc.ParentID
,pc.RootID
,pc.CNCFile
/* ProNest.dbo.VIEW_InventoryPlates */
,p.InventoryPlateID
,p.MaterialID
,p.ParentId
,p.stocknumber
,p.Name
,p.Location
,p.PlateType
,p.FileType
,p.FileName
,p.Length
,p.Width
,p.Area
,p.PlateUnits
,p.Rotation

- 67 -
Data Sync 2023 Manual

,p.Weight
,p.CreateDate
,p.ReorderLimit
,p.ReorderQty
,p.Supplier
,p.HeatNumber as p_HeatNumber
,p.UnitPrice
,p.MaterialCost
,p.CreatedByJob
,p.MaterialAlias
,p.ERPPlateNumber
,p.RootId
,p.QuantityReceived
,p.NestId
,p.TotalValue
,p.TotalWeight as p_TotalWeight
,p.QuantityCut
,p.QuantityAllocated
,p.QuantityInStock
,p.QuantityAvailable
,p.QuantityReserved
--dbo.WorkOrderParts
,w.WorkOrderItemID
,w.WorkOrderNumber
,w.UniqueID
,w.LibraryPartID
,w.PartNumber
,w.Revision
,w.QtyRequired as w_QtyRequired
,w.QtyAllocated as w_QtyAllocated

- 68 -
Data Sync 2023 Manual

,w.DateRequired as w_DateRequired
,w.MaterialAlias
,w.WorkCenter
,w.CustomerAlias
,w.PONumber
,w.Misc1
,w.Machine
,w.CADFileName
,w.Status
,w.MaterialID
,w.MaterialName
,w.Thickness
--ProNest.History.Jobs J
,j.JobID
,j.EngineGuid
,j.JobName
,j.FilePath
,j.Description
,j.NumNests
,j.NumParts
,j.CncCreated
,j.MachineName
--ProNest.history.JobParts JP
,jp.JobPartID
,jp.JobID
,jp.JobPartID
,jp.JobID
,jp.QuantityRequired as jp_QuantityRequired
,jp.QuantityNested
,jp.PartName

- 69 -
Data Sync 2023 Manual

,jp.PartLength
,jp.ProductionCost
,jp.MaterialCost
,jp.ProductionTime
,jp.AllocProdTime
,round(jp.AllocProdCost,2) as jp_AllocProdCost
,round(jp.AllocMatlCost,2) as jp_AllocMatlCost
,jp.AllocatedRectangularCost
,jp.AllocatedScrapCost
,jp.PartClass
,jp.ExteriorProfileArea
,jp.WorkOrderItemID
,jp.Revision
,jp.DueDate as jp_DueDate
/* ProNest.history.Nests n */
,n.NestID
,n.TimesCut
,n.CNCFile
,n.PlateInvID
,n.Material
,n.Thickness
,n.UnitPrice
,n.PlateLength
,n.PlateWidth
,n.PlateType
,n.PlateName
,n.StackQuantity
,n.NumberOfParts as n_NumParts
,n.MaxTorches
,n.NumberOfRemnantsCreated

- 70 -
Data Sync 2023 Manual

,n.NumberOfSkeletonsCreated
,n.CutUpUsed
,n.PartArea
,n.PlateWeight
,n.TotalPartWeight
,n.ProdTime
,n.FeedTime
,n.RapidTime
,n.ScribeTime
,n.PunchTime
,n.TorchActivationTime
,n.ScribeActivationTime
,n.LoadUnloadTime
,n.TrackedNestID as n_TrackedNestID
,n.PlateArea
,n.JobID
,n.DateModified
,n.ModifiedBy
--ProNest.dbo.NestCuts NC
,nc.NestCutId
,nc.Status
,nc.DateBeginUtc
,nc.DateEndUtc
,nc.NestId
,nc.DateModified
,nc.PhysicalMachineId
,nc.ActualTime
--ProNest.dbo.NestCutOperators O
,o.NestCutId
,o.OperatorID

- 71 -
Data Sync 2023 Manual

,o.DateModified
,o.ModifiedBy
,o.Actualtime
,o.Online
FROM ProNest.History.Nests N
INNER JOIN ProNest.history.UniqueNestParts U ON (n.NestID=U.NestID)
INNER JOIN ProNest.history.JobParts JP ON (U.JobPartID=JP.JobPartID)
INNER JOIN ProNest.history.PlatesUsed PU ON (N.NestID=PU.NestID)
LEFT JOIN ProNest.History.PlatesCreated PC ON (N.NestID=PC.NestID)
LEFT JOIN ProNest.dbo.VIEW_InventoryPlates P ON (PU.PlateInvID=p.InventoryPlateID)
LEFT JOIN ProNest.History.WorkOrderParts W ON (U.WorkOrderItemID=W.WorkOrderItemID)
LEFT JOIN ProNest.History.Jobs J ON (N.JobID=j.JobID)
LEFT JOIN ProNest.dbo.NestCuts NC ON (N.TrackedNestID=NC.NestID)
LEFT JOIN ProNest.dbo.NestCutOperators O ON (NC.NestCutID=O.NestCutID)
Where NC.NestCutID = %SenderID%

Plate inventory
Copy and paste the following query into the query editor for plate level data.

SELECT
/* Inventory - one Inventory record per nest */
/* ProNest.history.PlatesUsed pu*/
pu.JobID,
pu.JobName,
pu.NestID,
pu.PlateInvID,
pu.TimesCut as pu_CutNumTimes,
pu.StackQuantity as pu_StackQty,
pu.Material as pu_Material,
pu.PlateType,
/* Inch */

- 72 -
Data Sync 2023 Manual

round(pu.Thickness,2) as pu_Plate_Thickness,
round(pu.PlateLength,2) as pu_Plate_Length,
round(pu.PlateWidth,2) as pu_Plate_Width,
/* Metric */
round(pu.Thickness*25.4,2) as Plate_Thickness_mm,
round(pu.PlateLength*25.4,2) as Plate_Length_mm,
round(pu.PlateWidth*25.4,2) as Plate_Width_mm,
pu.PlateName as pu_PlateName,
pu.PlateWeight as pu_PlateWeight,
pu.UnitPrice as pu_UnitPrice,
pu.CNCFile as pu_CNCFile,
pu.ERPPlateNumber as pu_ERPPlateNumber,
pu.HeatNumber as pu_HeatNumber,
/* ProNest.history.PlatesCreated pc */
pc.JobID,
pc.JobName,
pc.NestID,
pc.InventoryPlateID,
pc.MaterialID,
pc.MaterialName as pc_MaterialName,
pc.PlateUnits,
pc.PlateType,
/* Inch */
round(pc.thickness,2) as pc_Rem_Thickness,
round(pc.Width,2) as pc_Rem_Width,
round(pc.length,2) as pc_Rem_Length,
/* Metric */
round(pc.thickness*25.4,2) as pc_Rem_Thickness_mm,
round(pc.Width*25.4,2) as pc_Rem_Width_mm,
round(pc.length*25.4,2) as pc_Rem_Length_mm,

- 73 -
Data Sync 2023 Manual

pc.QuantityInStock,
pc.QuantityAllocated,
pc.Name,
pc.Location,
pc.StockNumber as pc_StockNumber,
round(pc.Area,2) as pc_Rem_Area,
round(pc.Weight,2) as pc_Rem_Weight,
pc.Rotation,
pc.CreateDate as pc_CreateDate,
pc.FileType,
pc.Filename,
pc.ReorderLimit,
pc.ReorderQty,
pc.Supplier,
pc.HeatNumber as pc_HeatNumber,
pc.UnitPrice,
pc.MaterialCost,
pc.Misc1,
pc.Misc2,
pc.Misc3,
pc.CreatedByJob,
pc.MaterialAlias,
pc.ERPPlateNumber,
pc.TotalValue,
round(pc.TotalWeight,2) as pc_Rem_TotalWeight,
pc.ParentID,
pc.RootID,
pc.CNCFile,
/* ProNest.dbo.VIEW_InventoryPlates */
p.InventoryPlateID,

- 74 -
Data Sync 2023 Manual

p.MaterialID,
p.ParentId,
p.stocknumber,
p.Name,
p.location,
p.PlateType,
p.FileType,
p.filename,
p.Length,
p.Width,
p.Area,
p.PlateUnits,
p.Rotation,
p.Weight,
p.CreateDate,
p.ReorderLimit,
p.ReorderQty,
p.Supplier,
p.HeatNumber as p_HeatNumber,
p.UnitPrice,
p.MaterialCost,
p.Misc1,
p.Misc2,
p.Misc3,
p.CreatedByJob,
p.MaterialAlias,
p.ERPPlateNumber,
p.RootId,
p.QuantityReceived,
p.NestId,

- 75 -
Data Sync 2023 Manual

p.EngineGuid,
p.DateModified,
p.ModifiedBy,
p.TotalValue,
p.TotalWeight as p_TotalWeight,
p.QuantityCut,
p.QuantityAllocated,
p.QuantityInStock,
p.QuantityAvailable,
p.QuantityReserved,
/* ProNest.history.Nests n */
n.NestID,
n.TimesCut,
n.CNCFile,
n.PlateInvID,
n.Material,
n.Thickness,
n.UnitPrice,
n.PlateLength,
n.PlateWidth,
n.PlateType,
n.PlateName,
n.StackQuantity,
n.NumberOfParts as n_NumParts,
n.MaxTorches,
n.NumberOfRemnantsCreated,
n.NumberOfSkeletonsCreated,
n.CutUpUsed,
n.PartArea,
n.PlateWeight,

- 76 -
Data Sync 2023 Manual

n.TotalPartWeight,
n.RegionMinX,
n.RegionMinY,
n.RegionMaxX,
n.RegionMaxY,
n.LengthUsed,
n.WidthUsed,
n.TrueUtil,
n.CropUtil,
n.PlateUsedUtil,
n.RectUtil,
n.CutProcesses,
n.ScribeProcesses,
n.PunchProcesses,
n.Feedrate,
n.Kerf,
n.InitCurrent,
n.InitVoltage,
n.C1Current,
n.C2Current,
n.C3Current,
n.C1Voltage,
n.C2Voltage,
n.C3Voltage,
n.TotalCutLength,
n.TotalScribeLength,
n.NumPierces,
n.NumScribes,
n.NumPunches,
n.NumKL,

- 77 -
Data Sync 2023 Manual

n.NumKR,
n.NumKOff,
n.MaterialCost,
n.ScrapValue,
n.ProdCost,
n.FeedCost,
n.TorchIgnitCost,
n.MachineCost,
n.LaborCost,
n.LoadUnloadCost,
n.ProdTime,
n.FeedTime,
n.RapidTime,
n.ScribeTime,
n.PunchTime,
n.TorchActivationTime,
n.ScribeActivationTime,
n.LoadUnloadTime,
n.TrackedNestID as n_TrackedNestID,
n.plateArea,
n.JobID,
n.DateModified,
n.ModifiedBy
FROM ProNest.history.PlatesUsed pu
LEFT JOIN ProNest.history.PlatesCreated pc on pu.NestID = pc.NestID
LEFT JOIN ProNest.dbo.VIEW_InventoryPlates p on pu.PlateInvID=p.InventoryPlateID
LEFT JOIN ProNest.history.Nests n on pu.NestID=n.NestID
INNER JOIN ProNest.dbo.NestCuts nc on nc.NestId=n.TrackedNestID
Where nc.NestCutId = %SenderID%

- 78 -
Data Sync 2023 Manual

Operators
Copy and paste the following query into the query editor for operator data. This may be useful for Production
Kiosk.

SELECT
/* List of Operators on Nest */
/*ProNest.dbo.NestCutOperators NCO */
nco.NestCutId,
nco.OperatorId,
nco.ActualTime as OperatorTime,
/*ProNest.dbo.ProNestUser PNU */
pnu.UserName,
pnu.DisplayName,
/*ProNest.History.Nests n*/
n.CNCFile,
/* ProNest.History.Jobs J */
--j.JobID,
j.JobName,
j.NumParts,
j.MachineName,
/*ProNest.dbo.NestCuts NC */
nc.NestCutId,
nc.DateBeginUtc,
nc.DateEndUtc,
nc.ActualTime as ActualMachineTime,
/*ProNest.dbo.PhysicalMachines PM */
pm.PhysicalMachineId,
pm.Name
FROM ProNest.History.Nests n
LEFT JOIN ProNest.History.Jobs j ON (N.JobID=J.JobID)
LEFT JOIN ProNest.dbo.NestCuts nc ON (N.TrackedNestID=NC.NestID)

- 79 -
Data Sync 2023 Manual

LEFT JOIN ProNest.dbo.NestCutOperators NCO ON (NC.NestCutID=NCO.NestCutID)


LEFT JOIN ProNest.dbo.ProNestUsers PNU ON (PNU.ProNestUserId=NCO.OperatorId)
LEFT JOIN ProNest.dbo.PhysicalMachines PM ON (PM.PhysicalMachineId=NC.PhysicalMachineId)
where nc.NestCutId = %SenderID%

View the schema for a History data view


Execute the following statement on ProNest:
SELECT column_name, data_type FROM INFORMATION_SCHEMA.columns WHERE table_name =
'PlatesCreated'

The entire list of available columns in the "PlatesCreated" view, with their data type, will be displayed. Substitute
any other view name for "PlatesCreated" in the statement above to see the schema for a different view.

- 80 -
Data Sync 2023 Manual

EXPORT TASK - EXPORT TAB


File
Select the export file you want to configure.

File type
Select a file type for the selected file.
Choices: CSV, XLS, XLSX, XML

Encoding
Character encoding for CSV files. This should match the encoding needed by your ERP/MRP software.
Choices: ANSI, Unicode, Unicode big endian, UTF-8

Folder
Pick a folder in which to save the selected export file.

File name
Enter a name for the selected export file.

File name variables


The variables shown here can be used in the file name. Click and drag a variable into the File name box to
include it in the name. You can also type the variable directly in the box.

%SenderID% The SenderID is a unique number automatically assigned when a nest is cut. This number incre-
ments with each copy of a nest that is cut. We recommend that you use %SenderID% in the file name, so that
the file name is unique for each "nest cut".
%OutputFileName% Name of the NC output file associated with that nest.

%Date% Date the export file was created. The Date format box in this section applies only to file naming.

%JobID% ID of the job (from dbo.Jobs.JobId).

%JobFileName% Name of the NIF job file.

Example:
Suppose you have a nest that is cut three times with an output file name of N1500.txt. The SenderIDs recorded
internally by ProNest for each copy of this nest are 1611, 1612, and 1613.
Let's say the export task File name scheme is as follows:

- 81 -
Data Sync 2023 Manual

MyExports_%OutputFileName%_%SenderID%.xlsx

When the export task is run for each "nest cut" of this nest, three files will be created:

MyExports_N1500_1611.xlsx
MyExports_N1500_1612.xlsx
MyExports_N1500_1613.xlsx

Overwrite existing file


If a file with the same name already exists in that folder, it will be overwritten.

Include header row


When selected, row 1 will contain column headers.

Comma
Delimiter or separator character used for CSV files.

Quote
Select single (') or double quotes (") for CSV data. You can also turn this off by leaving the box blank. This will be
used to surround values that contain reserved characters, such as a comma. For example, if the CSV delimiter is
set to comma (,) and quote is set to double quotes ("), the value F003, A2 would appear in the CSV file as "F003,
A2".

Other CSV formatting options


Choose boolean (true/false) values as well as number and date format for CSV data.

- 82 -
Data Sync 2023 Manual

DATA SYNC TASK - EMAIL OPTIONS TAB


Send email when error occurs
Automatic messaging is a feature that can be used to notify one or more users in the event of an error (which
would result in a problem with data import). When selected, Data Sync will automatically create and send an email
to the addresses listed in the Recipients list, indicating that there was an error.
You must configure Email options in order for automatic emails to be sent out.

- 83 -
Data Sync 2023 Manual

USING THE PRONEST HISTORY DATABASE


The ProNest database can store archival job and nest information, which can be used for reporting and analysis.
For work orders and inventory plates, the History database can be used to retrieve data about the parts, nests, and
jobs.

It is recommended that you save job history data if you are using Data Sync and need ProNest production
data related to work orders or inventory plates. Be sure to activate the preference to save history data before
doing any work in ProNest, as archival job data is only recorded when this preference is enabled.

Activate the History Database


The History Database must be activated in Preferences on each ProNest client that is connected to the shared
ProNest database.

1. In ProNest, on the File tab, click Preferences.


2. On the General page, select After output, save job history data.

- 84 -
Data Sync 2023 Manual

With this preference enabled, historical job and nest information will be stored in the ProNest database each time
you create output for a job.

Viewing history data


Unlike other areas of the ProNest database, history data is not viewable from within ProNest. To view history data,
you must access the database using SQL Server or some other means.
You can view history data from within SQL Server Management Studio. This is software is free to download and
use. If you do not have SQL Server Management Studio installed, you will need to install it before proceeding.
Microsoft SQL Server Management Studio download:
https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view-
w=sql-server-ver15

History data and SQL Server


During installation, the following history tables are created in the ProNest database (ProNest):

l history.JobParts
l history.Jobs
l history.MultiTorchIdenticalParts
l history.NestParts
l history.Nests
l history.PlateInvCreated

In addition, there are four views that contain history data:

l history.PlatesCreated
l history.PlatesUsed
l history.UniqueNestParts
l history.WorkOrderParts

Saving nest images for job history


You can configure ProNest to save images of each nest in history data after output:

1. On the File tab, click Preferences.


2. On the General page, select After output, save an image of each nest for job history.

- 85 -
Data Sync 2023 Manual

ProNest will save an image file (.png) of each nest for job history after creating CNC output. The image file will be
named according to the NestID for a given nest (in the history tables) and will be saved to the History Nest Image
folder specified on the Miscellaneous tab of your ProNest preferences.

- 86 -
Data Sync 2023 Manual

HISTORY TABLES AND VIEWS


The ProNest database (ProNest) contains the following history tables and views:

History tables

history.JobParts
This table lists all parts and part data by job

Column Name Notes Units Data Type


JobPartID Part ID used in the job PK, int, not null

JobID ID of the job in which the part is nested FK, int, not null

EngineGuid Unique GUID assigned to a job part uniqueidentifier


QuantityRequired Total quantity required int, not null

QuantityNested Total quantity nested int, not null

PartName Part name nvarchar(255)

PartPath The full path of the part file nvarchar(255)

Material Material type and thickness inches nvarchar(50)

InitialRotation Initial rotation angle (used for nesting) degrees real, not null

Rotation Also called “Grain Restraint” within ProNest. An angle of 360 degrees real, not null
will prevent rotation by any angle except the initial ori-
entation.

Priority Part’s priority value. A priority value of 99 is reserved for filler int, not null
parts.

Mirror 0 = never mirrored int, not null

1 = always mirrored

2 = either

Cluster 0 = Do not Autocluster int, not null


1 = Autocluster

CommonLine 0 = don't auto CLC int, not null

1 = try pair CLC

2 = try quad CLC

3 = try both pair and quad CLC

- 87 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


Reference Part’s Reference field nvarchar(60)

DueDate YYYY-MM-DD HH:MM:SS.SSSSSSS datetime2(7)

Customer Valid customer name nvarchar(60)

Remarks Part ‘s Remarks field nvarchar(60)

Misc1 Miscellaneous text 1 nvarchar(60)

Misc2 Miscellaneous text 2 nvarchar(60)

Misc3 Miscellaneous text 3 nvarchar(60)

PartID ID number of inventory part (if any) int, not null

AssemblyID ID number of the assembly that the part belongs to (if any) int, not null

PartLength Part Length along the X axis, including leads inches real, not null

PartWidth Part Width along the Y axis, including leads inches real, not null

TrueArea Surface area of the part, excluding any cut-outs or holes square real, not null
inches

TrueWeight Mass of the part, calculating using True Area pounds real, not null

RectArea Rectangular Area of the part square real, not null


inches

RectWeight Rectangular Weight. Mass of the part, calculating using Rect- pounds real, not null
angular Area

RectMatlCost Rectangular Material Cost, calculated using Rectangular monetary money, not null
Weight units

ProductionCost Production Cost, calculated using True Area monetary money, not null
units

MaterialCost Material Cost, calculated using True Area monetary money, not null
units

ProductionTime Production Time of the part minutes real, not null

AllocProdTime Allocated production time apportions the time to process minutes real, not null
one or more nests proportionally to the individual part,
including traverses, crop cuts, skeleton cuts, etc.

AllocProdCost Allocated production cost apportions the cost to process monetary money, not null
one or more nests proportionally to the individual part, units
including traverses, plate loading, etc.

AllocMatlCost Allocated Material Cost, calculated using the Exterior Profile monetary money, not null

- 88 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


Area (or Enclosed Area) of the part units

AllocatedRectangularCost Similar to Allocated Material Cost, but the Rectangular Area monetary money, not null
of the part is used (minus the rectangular area of any parts units
nested inside the larger part’s interiors)

AllocatedScrapCost A portion of the total cost of the nest scrap that is allocated monetary money, not null
to the part units

C1FeedLength Total cut length for cut process 1 inches real, not null

C2FeedLength Total cut length for cut process 2 inches real, not null

C3FeedLength Total cut length for cut process 3 inches real, not null

S1FeedLength Total scribe length for scribe process 1 inches real, not null

S2FeedLength Total scribe length for scribe process 2 inches real, not null

NumC1on Number of activations (torch on) for cut process 1 int, not null

NumC2on Number of activations (torch on) for cut process 2 int, not null

NumC3on Number of activations (torch on) for cut process 3 int, not null

NumS1on Number of activations (torch on) for scribe process 1 int, not null

NumS2on Number of activations (torch on) for scribe process 2 int, not null

NumP1on Number of activations (torch on) for punch process 1 int, not null

NumP2on Number of activations (torch on) for punch process 2 int, not null

NumP3on Number of activations (torch on) for punch process 3 int, not null

NumP4on Number of activations (torch on) for punch process 4 int, not null

NumP5on Number of activations (torch on) for punch process 5 int, not null

NumP6on Number of activations (torch on) for punch process 6 int, not null

PartClass Valid part class for selected material/thickness nvarchar(260)

XDimNoLeads Length of the part, not including leads inches real, not null

YDimNoLeads Width of the part, not including leads inches real, not null

ExteriorProfileArea The area contained within a part’s exterior profile, including square real, not null
cut-outs. Also called Enclosed area. inches

ProhibitFilling Prohibit nesting inside the interior profiles of the part. int, not null

0=Do not prohibit filling, 1=Prohibit filling.

WorkOrderItemID The work order item ID (if applicable) of the part int, not null

- 89 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


Revision Revision of the work order part nvarchar(20)

DateModified Most recent time the record was modified datetime2(7), not
YYYY-MM-DD HH:MM:SS.SSSSSSS null

ModifiedBy User who most recently modified that record FK, int

history.Jobs
This table contains job-level information.

Column
Notes Data Type
Name
JobID Job ID number for history data. Job IDs are assigned chro- PK, int, not null
nologically in ascending order.

EngineGuid Unique GUID assigned to a job uniqueidentifier


JobName Name of the corresponding NIF file nvarchar(max)

FilePath Complete path for the NIF file that corresponds to the job nvarchar(max)

Description Job description (if any) nvarchar(max)

NumNests Number of nests in the job int

NumParts Number of parts in the job int

CncCreated Date NC output file was created datetime2(7)

MachineName Machine used with the job (.CFG) nvarchar(max)

DateModified Most recent time the record was modified datetime2(7), not
YYYY-MM-DD HH:MM:SS.SSSSSSS null

ModifiedBy User who most recently modified that record FK, int, null

history.MultiTorchIdenticalParts
This table contains data correctly handle multi-torch groups that contain "identical parts" that originated from dif-
ferent part files.

Column Name Notes Data Type


MultiTorchIdenticalPartID PK, int, not null
NestPartID ID of the nest part FK, int, not null

JobPartID Part ID used in the job int, not null

- 90 -
Data Sync 2023 Manual

Column Name Notes Data Type


NumTorches Total number of torches used int, not null

DateModified Most recent time the record was modified datetime2(7), not null
YYYY-MM-DD HH:MM:SS.SSSSSSS

ModifiedBy User who most recently modified that record FK, int, null

history.NestParts
This table contains part-level data by nest. Each individual part is listed in its own row.

Column Name Notes Data Type


NestID ID of the nest that the part is nested on FK, int

NestPartID ID of the instance of the part on the nest PK, int, not null
JobPartID Part ID used in the job int

PartName Part name nvarchar(255)

SequenceNumber Sequence number int

SubSequenceNumber Subsequence number int

NumberOfTorches Total number of torches used int

TorchSpace Torch spacing (if NumTorches > 1) float

CommonLineCutting Common line cut bit, not null

0 = no

1 = yes

Chained 0 = no bit, not null

1 = yes

DateModified Most recent time the record was modified datetime2(7), not null
YYYY-MM-DD HH:MM:SS.SSSSSSS

ModifiedBy User who most recently modified that record FK, int, null

history.Nests
This table contains nest-level data

Column Name Notes Units Data Type


NestID Nest IDs are assigned chronologically in ascending order PK, int, not
null

- 91 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


TimesCut Number of times to cut nest int, not null

JobID ID number for the job that contains the nest FK, int

CNCFile Full path of the NC output file or program for the nest nvarchar
(max)

PlateInvID If an inventory plate is used for that nest, the ID number for int
that plate is listed. (This used to be called “InventoryID” in
ProNest 8)

Material Material type nvarchar


(max)

Thickness Material thickness inches float

UnitPrice From Material Database or Plate Inventory (if nest is using an monetary money
inventory plate) units per
pound

PlateLength Plate length along the X axis inches float

PlateWidth Plate width along the Y axis inches float

PlateType 0 = Rectangular int, not null

1 = Circular

2 = Remnant

3 = Skeleton

PlateName Name of plate nvarchar


(max)

StackQuantity Used with real-world machines that can process multiple int
plate simultaneously

NumberOfParts Number of parts on the nest int

MaxTorches Maximum number of torches/heads used on the nest int

NumberOfRemnantsCreated Number of remnants created int

NumberOfSkeletonsCreatsed Number of skeletons created int

CutUpUsed Skeleton Cut-Up used? bit, not null

0 = no

1 = yes

PartArea Total true area of all parts square float


inches

- 92 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


PlateWeight Weight of plate pounds float

TotalPartWeight Total weight of all parts (based on true area) pounds float

RegionMinX Length along the X axis between plate edge (closest to the inches float
part home) and closest nested part

RegionMinY Width along the Y axis between plate edge (closest to the inches float
part home) and closest nested part

RegionMaxX Length along the X axis between plate edge (closest to the inches float
part home) and furthest nested part

RegionMaxY Width along the Y axis between plate edge (closest to the inches float
part home) and furthest nested part

LengthUsed Plate length used inches float

WidthUsed Plate width used inches float

TrueUtil True Utilization Percentage percentage float


expressed as
a decimal

CropUtil Crop Utilization Percentage percentage float


expressed as
a decimal

PlateUsedUtil Plate Used Utilization Percentage percentage float


expressed as
a decimal

RectUtil Rectangular Utilization Percentage percentage float


expressed as
a decimal

CutProcesses Cut processes used nvarchar


(max)

ScribeProcesses Scribe processes used nvarchar


(max)

PunchProcesses Punch processes used nvarchar


(max)

Feedrate Base Feedrate inches per float


minute

Kerf Base Kerf inches float

- 93 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


InitCurrent Initial Current ampere float

InitVoltage Initial Voltage volt float

C1Current Cut process 1 current ampere float

C2Current Cut process 2 current ampere float

C3Current Cut process 3 current ampere float

C1Voltage Cut process 1 voltage volt float

C2Voltage Cut process 2 voltage volt float

C3Voltage Cut process 3 voltage volt float

TotalCutLength Length of all cutting inches float

TotalScribeLength Length of all scribing inches float

NumPierces Total number of pierces int

NumScribes Total number of scribes int

NumPunches Total number of punches int

NumKL Number of KERF LEFT commands int

NumKR Number of KERF RIGHT commands int

NumKOff Number of KERF OFF commands int

MaterialCost The total material cost of all nested parts, based on the parts’ monetary money
True Area. Unit Price is from the Material Database or Plate units
Inventory (if nest is using an inventory plate)

ScrapValue The material scrap value of the leftover skeleton. The scrap monetary money
value rate is from the Material Database. units

ProdCost Production Cost for all parts on the nest monetary money
units

FeedCost Process Operating Cost for all parts on the nest monetary money
units

TorchIgnitCost Torch Ignition Cost, also called Activation Cost, for all parts monetary money
on the nest units

MachineCost Machine Operating Cost Per Hour monetary money


units per
hour

LaborCost Labor Cost Per Hour monetary money


units per

- 94 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


hour

LoadUnloadCost Plate Loading Cost monetary money


units

ProdTime Total Production Time minutes float

FeedTime Total Cutting Time minutes float

RapidTime Total Rapid motion time (time spent indexing / traversing) in minutes float
minutes

ScribeTime Total Scribing Time minutes float

PunchTime Total Punching Time minutes float

TorchActivationTime Total Activation Time for all cutting minutes float

ScribeActivationTime Total activation time for each scribing minutes float

LoadUnloadTime Plate Loading/Unloading Time (deprecated since ProNest


2010)

TrackedNestID This is an ID number assigned to nests in the production data- int


base, enabling nest tracking between the ProNest production
databases and the history database.

PlateArea Surface area of a single plate. in.2 float


DateModified Most recent time the record was modified datetime2
YYYY-MM-DD HH:MM:SS.SSSSSSS (7), not null

ModifiedBy User who most recently modified that record FK, int, null

history.PlateInvCreated
This table contains Nest-to-Plate Inventory information.

Column Name Notes Data Type


Id PK, int, not null
NestID ID number of the nest that the inventory plate was used for FK, int, not null

InventoryPlateID Also called Plate ID within ProNest int, not null

DateModified Most recent time the record was modified datetime2(7), not null
YYYY-MM-DD HH:MM:SS.SSSSSSS

ModifiedBy User who most recently modified that record FK, int, null

- 95 -
Data Sync 2023 Manual

History views

history.PlatesCreated
Shows remnant or skeleton plates saved from nests that used inventory plates. Each remnant or skeleton plate is
listed as a separate record, with detailed plate information as well as nest, job name, and path to the file that stores
plate geometry.

Column Name Notes Units Data Type


JobID ID of the job in which the remnant or skeleton plate was created. int, not null
This is the JobID from history.Jobs

JobName Name of the corresponding NIF file nvarchar(max)

NestID Nest IDs are assigned chronologically in ascending order int, not null

InventoryPlateID int, not null

MaterialID int

MaterialName Material type nvarchar(40)

Thickness Material thickness inches float

PlateUnits For remnant or skeleton plates, the CAD units for the source CAD file con- int
taining plate geometry.

0 = inch

1 = millimeters

PlateType 0 = Rectangular int


1 = Circular

2 = Remnant

3 = Skeleton

Length Plate length along the X axis float

Width Plate width along the Y axis float

QuantityInStock The quantity of the plate. int


QuantityAllocated int

Name nvarchar(40)

Location nvarchar(60)

StockNumber nvarchar(30)

- 96 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


Area Surface area of a single plate. in.2 float

Weight Weight of a single plate. lbs. float

Rotation float

CreateDate datetime2(7)

FileType nvarchar(30)

FileName The name of the token file, which contains the geometry for rem- nvarchar(255)
nant or skeleton plates.

ReorderLimit int

ReorderQty int

Supplier nvarchar(60)

HeatNumber Heat number of the parent plate, if applicable. nvarchar(30)

UnitPrice float

MaterialCost float

Misc1 Miscellaneous text 1 nvarchar(60)

Misc2 Miscellaneous text 2 nvarchar(60)

Misc3 Miscellaneous text 3 nvarchar(60)

CreatedByJob ID of the job in which the remnant or skeleton plate was created. nvarchar(60)
This is the JobID from the production tables (not history)

MaterialAlias For plates that originated from a Data Sync import, this is the ori- nvarchar(128)
ginal MaterialDescription that the plate was imported with.

ERPPlateNumber Used to track plate from ERP/MRP system nvarchar(128)

TotalValue Cost of a single plate × QuantityInStock float

TotalWeight Weight of a single plate × QuantityInStock float

ParentID For remnant or skeleton plates that were created from inventory int
plates, this is the ID number of the immediate parent plate. This
can be used to track an inventory plate through it's life as it is nes-
ted on, cropped, saved, and nested on again.

RootID For remnant or skeleton plates that were created from remnant or int
skeleton inventory plates, this is the ID number of the original, eld-

- 97 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


est parent plate. This can be used to track an inventory plate
through its life as it is nested on, cropped, saved, and nested on
again.

CNCFile Full path of the NC output file or program for the nest nvarchar(max)

history.PlatesUsed
Each inventory plate used is listed as a separate record, with detailed plate information and the job that the plate
was consumed by. ERP Plate Number is included for Data Sync plate tracking.

Data
Column Name Notes Units
Type
JobID ID of the job in which the inventory plate was used. This is int, not
the JobID from history.Jobs null

JobName nvarchar
(max)

NestID Nest IDs are assigned chronologically in ascending order int, not
null

PlateInvID int

TimesCut Number of times to cut nest int, not


null

StackQuantity smallint

Material Material type nvarchar


(40)

Thickness Material thickness inches float

PlateType 0 = Rectangular int, not


1 = Circular null

2 = Remnant

3 = Skeleton

PlateLength Plate length along the X axis inches float

PlateWidth Plate width along the Y axis inches float

PlateName Name of plate nvarchar


(max)

- 98 -
Data Sync 2023 Manual

Data
Column Name Notes Units
Type
PlateWeight lbs. float

UnitPrice monetary float


units/lb.

CNCFile Full path of the NC output file or program for the nest nvarchar
(max)

ERPPlateNumber Used to track plate from ERP/MRP system nvarchar


(128)

HeatNumber nvarchar
(30)

history.UniqueNestParts
Each row represents an instance of a part or work order item on a given nest, as well as the job that the part is nes-
ted in. For example if Part A is nested on both Nest 1 and Nest 2, there will be two separate rows for Part A - one
for each nest that part appears on. This view can be used to find all nests that contain a given work order.

Data
Column Name Notes Units
Type
NestID Nest IDs are assigned chronologically in ascending order int, not
null

JobPartID int

JobID ID number for the job that contains the nest. This is the JobID int, not
from history.Jobs. null

JobName Name of job (NIF) that contains the nest nvarchar


(max)

PartName nvarchar
(255)

QtyNested Quantity nested int

QtyRequired Required quantity in the part list. int, not


null

WorkOrderItemID A value of zero is a non-work order part. int, not


null

- 99 -
Data Sync 2023 Manual

Data
Column Name Notes Units
Type
WorkOrderNumber Work Order Name. nvarchar
(128)

CNCFile Full path of the NC output file or program for the nest con- nvarchar
taining that part (max)

PlateInvID Value is 0 for nests using non-inventory plates int, not


null
NestedExteriorProfileArea Enclosed area of the part × number of copies of that part on the in.2 real
nest

PlateArea Area of the plate used by the nest. in.2 float, not
null

AllocatedArea Allocated part area. To calculate this, ProNest adds the part's in.2 float
enclosed area and allocated scrap area. Refer to ProNest Help
for more information.

history.WorkOrderParts
Each work order item is listed as a separate record, with detailed work order and part information, including Quant-
ity Allocated and status (Active, Closed, Cancelled).

Column Name Notes Units Data Type


WorkOrderItemID int, not null

WorkOrderNumber Work Order Name nvarchar


(128)

UniqueID Combination of fields that creates a unique identifier for each nvarchar
Work Order record. This is configured in ProNest preferences. (128)

LibraryPartId Library ID int

PartNumber Part Name nvarchar


(255)

Revision nvarchar
(20)

QtyRequired int, not null

QtyAllocated int, not null

- 100 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


DateRequired datetime2
(7), not null

MaterialAlias For work orders that originated from a Data Sync import, this is nvarchar
the original MaterialDescription that the work order was imported (128)
with.

WorkCenter nvarchar
(128)

CustomerAlias nvarchar
(60)

PONumber nvarchar
(128)

Location nvarchar
(128)

Misc1 nvarchar
(128)

Misc2 nvarchar
(128)

Misc3 nvarchar
(128)

Misc4 nvarchar
(128)

Misc5 nvarchar
(128)

Misc6 nvarchar
(128)

Misc7 nvarchar
(128)

Misc8 nvarchar
(128)

Misc9 nvarchar
(128)

- 101 -
Data Sync 2023 Manual

Column Name Notes Units Data Type


Misc10 nvarchar
(128)

Machine Name of physical machine that should cut the work order. This nvarchar
appears for reference only if it was set in the original work order, it (128)
is not used to match to any ProNest machines.

CADFileName Full path to source CAD file. If using library parts for work orders, nvarchar
this will be NULL. (255)

Status 0 = Active int, not null


1 = Closed

2 = Cancelled

MaterialID Material ID number assigned by ProNest int

MaterialName Material type nvarchar


(40)

Thickness Material thickness inches float

- 102 -
Data Sync 2023 Manual

EXECUTING TASKS ON DEMAND


When a task is set up, a Trigger can be set to run that task at a user-specified interval. However, you may want to
run a task on demand.
There are several ways of running tasks on demand:

Run a task with Data Sync Manager


Run DataSyncCmd.exe with a batch file
Use Windows Task Scheduler to run the batch file or execute the task directly

Running a task using the Data Sync Manager

1. Open Data Sync Manager (Start > All Programs > Hypertherm CAM > Data Sync Manager).
2. Click Manage Tasks.
3. On the left pane, select the task from the list.
4. Click Run. The Run Task dialog will open.

Each row in this grid is a unique nest (a "nest cut").


5. Select the nest that you want to run the export task for.
6. To view a log immediately after running the task, select Show the log afterwards.
7. Click Run.

- 103 -
Data Sync 2023 Manual

Executing a task from a batch file

Syntax
Usage: DataSyncCmd [-w] [-d data_file_name] task_name

Options:
-d data_file_name
Full path to the data file that will be imported.

-w
Wait until the task is completed before continuing.

To create a batch file to execute a Data Sync task:

1. Open Notepad (Start menu > All Programs > Accessories).


2. In the batch file, enter the full path (in quotes) to the DataSyncCmd executable file followed by a space. Then
type the name of the task that you want to run (in quotes).
For instance:
"C:\Program Files\Hypertherm CAM\Data Sync\DataSyncCmd.exe" "ERP Plates (CSV)"
-or-
"C:\Program Files (x86)\Hypertherm CAM\Data Sync\DataSyncCmd.exe" "ERP Plates (CSV)"
3. On the File menu, select Save As.
4. Enter a file name with a .bat extension (for instance, "MyDataSyncImport.bat").
5. Set Save as type to All Files (*.*).
6. Click Save,

You can double-click the batch file to run it.


You may want to specify a particular source data file to use with an existing task (that is not already referenced in
the task). You can do this using the -d option followed by a space and then the full path to the source data file.

Example

Let's say that you want to import a source data file called "Extra ERP Plates.csv" that conforms to the data format
specified in an existing task called "ERP Plates", but that file isn't referenced in the task. Instead of modifying the
task or creating a duplicate task, you can use a batch file to run the task with a different source data file as fol-
lows:

- 104 -
Data Sync 2023 Manual

"C:\Program Files\Hypertherm CAM\Data Sync\DataSyncCmd.exe" -d "Extra ERP Plates.csv" "ERP


Plates"
-or-
"C:\Program Files (x86)\Hypertherm CAM\Data Sync\DataSyncCmd.exe" -d "Extra ERP Plates.csv" "ERP
Plates"

Executing a batch file with Windows Task Scheduler


The Windows Task Scheduler can be used to run batch files or run Data Sync directly. This is most commonly done
if you want to use different triggers (other than those provided in the Data Sync Manager interface) for importing
data.
When you create the task in Windows Task Scheduler, on the Actions tab, be sure to either specify a batch file (as
described above) that will run DataSyncCmd.exe or reference the DataSyncCmd.exe program directly.

- 105 -
Data Sync 2023 Manual

LOGGING
Data Sync will automatically create and save log files in the following directory:
C:\ProgramData\Hypertherm CAM\Data Sync\Log

A single log file will be created for each day Data Sync is running tasks. This file contains a record of Data Sync
import activity, including date and time, task name, and source data file path for each time a task is run. It also doc-
uments warnings and errors that may have occurred while executing a task.
Log files are stored in XML format.

Configure what is included in logs


You can choose what type of information to include in log files as follows:

1. On the main Data Sync window, click Options.


2. On the General tab, adjust the Log level as needed.

Accessing logs
In the event of an error, an email will be sent to the email addresses listed on the Data Sync Task - Email Options
tab. The email will contain a description of the error, as well as a link to more comprehensive log file data, which
can be viewed in HTML format.
The generic format for viewing HTML logs is as follows:
http://hostPC:port/log?date=MM-DD-YYYY

View the current day's log


l On the main Data Sync window, click Show today's log.
l -or-

l On the Start menu, go to All Programs > Hypertherm CAM > Data Sync, then select Data Sync Log.
-or-
l Run DataSyncLog.exe

The current day's log will open in your default Internet browser.

- 106 -
Data Sync 2023 Manual

You can also view the current day's log by typing the following into your browser:
http://hostPC:port/log?date

You must be able to access the host on the network in order to view HTML Data Sync logs.

- 107 -
Data Sync 2023 Manual

DEFAULT FOLDERS
By default, Data Sync files are stored in the following folders:

64-bit OS

Data Sync file File type Path


Log files .xml C:\ProgramData\Hypertherm CAM\Data Sync\Log

Tasks .xml C:\ProgramData\Hypertherm CAM\Data Sync\Tasks

DataSyncSvc .ini C:\ProgramData\Hypertherm CAM\Data Sync

(Host and port configuration file)

Moved source files .csv, .xls, .xlsx, .xml C:\ProgramData\Hypertherm CAM\Data Sync\MovedFiles

URL.ini .ini C:\Program Files (x86)\Hypertherm CAM\Data Sync

(database connection file)

DataSyncMgr .exe C:\Program Files (x86)\Hypertherm CAM\Data Sync

DataSyncCmd .exe C:\Program Files (x86)\Hypertherm CAM\Data Sync

DataSyncLog .exe C:\Program Files (x86)\Hypertherm CAM\Data Sync

32-bit OS

Data Sync file File type Path


Log files .xml C:\ProgramData\Hypertherm CAM\Data Sync\Log

Tasks .xml C:\ProgramData\Hypertherm CAM\Data Sync\Tasks

DataSyncSvc .ini C:\ProgramData\Hypertherm CAM\Data Sync

(Host and port configuration file)

Moved source files .csv, .xls, .xlsx, .xml C:\ProgramData\Hypertherm CAM\Data Sync\MovedFiles

URL.ini .ini C:\Program Files\Hypertherm CAM\Data Sync

(database connection file)

DataSyncMgr .exe C:\Program Files\Hypertherm CAM\Data Sync

DataSyncCmd .exe C:\Program Files\Hypertherm CAM\Data Sync

DataSyncLog .exe C:\Program Files\Hypertherm CAM\Data Sync

- 108 -
Data Sync 2023 Manual

COULD NOT CONNECT TO PRONEST SERVER


Data Sync must be configured so that it is connected to the ProNest database. The URL.ini file (a database con-
nection file that points to ProNest Server) for should be the same as the ProNest URL.ini file.

Where is the Data Sync URL.ini file stored?


l C:\ProgramData\Hypertherm CAM\Data Sync

For a typical Data Sync installation, you can simply copy the URL.ini file from the appropriate installation of
ProNest over to the Data Sync ProgramData directory (specified above).

About the URL.ini file


The URL.ini file is a text file which controls how ProNest or Data Sync connect to the database. The URL.ini file con-
tains a single connection setting, which points ProNest or Data Sync to the database server – the machine that is
running ProNest Server. This setting is formatted as follows:

URL=http://host:port/api

By default, this is set to:

[ProNest Server]
URL=http://localhost:1480/api

In this example:
host = localhost. This tells Data Sync to look for ProNest Server on the local machine.
port = 1480. This is the port on the local machine that ProNest Server is using.

Changing the URL


You can change the URL to point ProNest or Data Sync to a network machine that is running ProNest Server.

1. Replace the text localhost with the name of the server / PC to which you want to connect. You can also use
the IP address of that machine (of it is static).
2. Replace the text 1480 with the port on that machine that is being used by ProNest Server.

Example

Suppose ProNest Server is installed on a server on your LAN called "D1Server" and it is using the default port of
1480 on that machine. To connect ProNest or Data Sync to that database, you'd edit the URL.ini file as follows:

[ProNest Server]

- 109 -
Data Sync 2023 Manual

URL=http://D1Server:1480/api

Could not connect to ProNest Server


If you try to start Data Sync Manager and it cannot connect to the URL specified in the URL.ini file, you will see a
"Could not connect to ProNest Server" message. You can select a host and port from that window and the URL.ini
file will be updated.

- 110 -
Data Sync 2023 Manual

DATA SYNC DIAGRAM

- 111 -
Data Sync 2023 Manual

ABOUT OPTIONS

Open Data Sync Options


l On the main screen, click Options.

The Options dialog will open.


To read more about configuring Data Sync Options, see:

l Options - General
l Options - Email (SMTP)

- 112 -
Data Sync 2023 Manual

OPTIONS - GENERAL
REGIONAL

Language
Set the display language for the Data Sync Manager, automated notification emails, and logging messages.

DATA SYNC SERVER

Host
The PC that is hosting the Data Sync Manager and running the Hypertherm CAM Data Sync Service.

Port
Numbered software port that the Hypertherm CAM Data Sync Service will use to exchange information. Enter an
open port or use the default.

Default port: 1482

Log level
If the connection is successful, you can set the log level as follows:

DEBUG (All messages)


All types of messages will be included in the Data Sync activity logs - debug messages, hints, warnings, and
errors.

HINT
Hints, warnings, and errors will be included in the Data Sync activity logs.

WARNINGS
Warnings and errors will be included in the Data Sync activity logs.

ERRORS
Only errors will be included in the Data Sync activity logs.

DATA SYNC EVENTS


For export tasks, a ProNest event must be selected to set off the Data Sync export. Select a box to enable an event.

Nest Cut

- 113 -
Data Sync 2023 Manual

When a nest's status changes to Complete in ProNest, the export task will be executed. Select this if you are
using export tasks.

- 114 -
Data Sync 2023 Manual

OPTIONS - EMAIL (SMTP)


Configure your email options so that automatic messaging can be used to notify one or more users in the event of
an error.

Open the Email options dialog


1. On the main Data Sync window, click Options (in the lower left).
2. Select the Email (SMTP) tab.

SMTP HOST

Host
The address of the Simple Mail Transfer Protocol (SMTP) host/server that will be used to send Data Sync status
emails.

Port
The communications endpoint associated with the SMTP Protocol (typically 25).

AUTHENTICATION

Use SSL
This option should be checked if Secured Sockets Layer (SSL) security should be used when sending emails.

User ID
The user name that will be used to access to the SMTP host.

Password
The password that will be used to access to SMTP host.

Message Options
You can set the Return address and name for notification emails. Setting this to an invalid address will prevent
autoreply or undeliverable messages from being sent to your inbox.
If left blank, the default address from the SMTP user will be used as the return address.

Test

- 115 -
Data Sync 2023 Manual

To test whether the email options that you entered are working correctly, enter an email address in the Recip-
ient box, then click Send Test Email.

- 116 -
Index: ADO – Trigger

INDEX Grids

filter 43

H
A
History 84, 87
ADO 28
Hypertherm CAM Data Sync service 24
Aliases 19
I
Auto-close items 28
Inner Join 61
B
Installation 5
Batch file 103
Integer 39
Boolean 39
L
C
Logging 106
Columns 39, 45
M
Command 5
Material 19
Command line 5, 103
Metric 49
Connection string 36
MMKS 49
Could not connect to ProNest Server 109
Move source files before processing 28
CSV 28, 31
N
Custom Filter 43
Network 5
D
O
Data format 39
Options 115
Data Mapping 45
P
Data Source 30
plateunits 49
Data Sync Task
ProNest data format 40
columns 39
Q
data mapping 45
Query 61, 63
data source 30
R
general 28
Raw data 30
Data type 39
Regional Formatting 33
Datetime 39
S
regional settings 33
Separator 31
Decimal separator 33
Service 24
Delimiter 31
Setup email 115
E
Skip first rows 31
Encoding 32, 81
SMTP 115
ERP/MRP Columns 39, 45
Source type 28
Expressions 46
SSL 115
F
String 39
File name (or mask) 28
T
Filter 43
Table (ADO) 36
apply custom 43
Target 28
First row contains headers 31
Task name 28, 58
Float 39
Tasks 24-25
Functions 46
Thousand separator 33
G
Trigger 29, 58
General 28

- 117 -
Index: Units – XSLT

Units 49

URL.ini 5, 109

Variables 45

Visual Query Builder 61

XLS 28

XLSX 28

XML 37

XPATH 37

XSLT 37

- 118 -
© 2022 Hypertherm Inc. All rights reserved.

Hypertherm and Data Sync are trademarks of Hypertherm, Inc. and may be registered in the United States and/or
other countries. Microsoft, Windows, and Internet Explorer are registered trademarks of Microsoft Corporation in
the United States and/or other countries. Adobe and Adobe Reader are either registered trademarks or trade-
marks of Adobe Systems Incorporated in the United States and/or other countries. HASP is a registered trademark
of SafeNet, Inc. in the United States and/or other countries.

www.hypertherm.com

- 119 -

You might also like