Data migration
Load data from Excel into SyteLine with Paste Rows Append (without breaking anything)
Applies to: SyteLine 8, 9 and 10, and CloudSuite Industrial (WinStudio / Mongoose grid forms)
Short answer
To add many records at once, copy the rows from Excel (without the header), click inside a field in the form's grid, and choose Edit > Paste Rows Append. To replace existing rows, use Edit > Paste Rows Overwrite. The spreadsheet's columns must match the grid's visible columns in exactly the same order, because column 1 goes into column 1 and so on. Hidden columns don't count. Don't use Ctrl+V, which pastes the whole row into one cell. Answer No to validation prompts during the paste and fix the fields afterwards, then save, because pasted rows only exist in memory until you do. Paste large sets in batches.
Why use it
Typing 300 new item prices or 150 vendor contacts by hand is slow and error-prone. Paste Rows goes through the form, so the same validation runs as if someone typed each record in. That's the big advantage over loading data straight into tables with SQL, which skips SyteLine's business logic entirely.
It's the right tool for:
- new records with the same shape, such as price lines, contacts or simple master data
- corrections across many rows where each row gets a different value. If every row gets the same value, use Replace Value in Collection instead
Step 1: Build the spreadsheet to match the grid
This is the step that decides whether it works.
- Open the form and look at its grid. Note the visible columns in order, left to right.
- Arrange the spreadsheet columns in exactly that order. Column 1 of the spreadsheet goes into column 1 of the grid, column 2 into column 2, and so on.
- Ignore hidden grid columns. They aren't part of the mapping.
- If you exported from the grid and then the column order changed, re-order the spreadsheet to match the grid as it is now.
The easiest way to get the layout right is to export a few existing rows from the same grid to Excel, then use that as your template.
Blank cells and defaults
If a spreadsheet cell is empty, the form may fill that field with its default value. If you want a field left truly empty rather than defaulted, Infor's documentation describes a placeholder value you can put in the cell instead of leaving it blank. Check the exact placeholder in the "Pasting Selected Records (Rows) from a Spreadsheet" topic for your version before relying on it.
Watch calculated columns
If one column's value causes the form to calculate a later column, such as a unit of measure driving a conversion, the value in your spreadsheet for that later column can overwrite the calculated result. Leave calculated columns out of the paste, or make sure your values are right.
Step 2: Get the form ready
- To add new records into an empty grid: run a Filter-in-Place query that returns no records. That puts the form into "new" mode.
- Don't add a new blank row first. The paste creates rows for you.
Step 3: Paste
- In Excel, select the data rows, without the header row, and press Ctrl+C.
- In the SyteLine grid, click inside a field, not on the row label: - To append: click a field in the row below which the new rows should go. - To overwrite: click a field in the first row you want to replace.
- Choose Edit > Paste Rows Append or Edit > Paste Rows Overwrite.
Don't use Ctrl+V. It pastes the entire copied row into a single cell.
Overwrite only changes editable fields. Read-only fields keep their current values. If those need changing too, that has to be done another way.
Step 4: Handle validation prompts
As rows are pasted, the form may validate each cell and stop on invalid data or empty required fields.
Answer No to the prompts while the paste is running. If you start editing a cell in response to a prompt, the paste stops at that record. Let the paste finish, then go back and fix the fields that were flagged.
Step 5: Save, and check
- Save. Pasted rows stay in memory until you do. Close the form without saving and they're gone.
- Check the result: filter on what you just loaded and compare the count with your spreadsheet. Spot-check a few records field by field, especially the first and last rows and any with unusual values.
Batches, not one giant paste
The number of rows you can paste at once depends on the memory of the computer you're using. To avoid out-of-memory errors, paste and save in smaller batches, for example 100–200 rows at a time. Batches also make it much easier to find the row that caused a problem.
The mistakes that cause trouble
| Mistake | What happens | Prevention |
|---|---|---|
| Columns in a different order from the grid | Data lands in the wrong fields, or errors | Build the template from an export of the same grid |
| Header row copied | Column titles pasted as a record | Copy data rows only |
| Ctrl+V instead of Paste Rows | Whole row in one cell | Use Edit > Paste Rows Append / Overwrite |
| Editing during prompts | Paste stops part-way | Answer No, fix afterwards |
| Not saving | Everything lost on close | Save after each batch |
| One huge paste | Out-of-memory error | Batches of 100–200 |
Good habits
- Test the whole load in a test environment first, with the same spreadsheet.
- Keep the spreadsheet as a record of what was loaded, when and by whom.
- Load at a quiet time if the records are ones other people are working on, to avoid "row has been modified by another user" errors.
- For very large or repeated loads, such as a migration or a nightly feed, use SyteLine's import tools or the IDO REST API instead of copy and paste. See SyteLine data migration.
FAQ
How do I paste rows from Excel into SyteLine?
Copy the data rows (no header) in Excel, click a field in the SyteLine grid, and choose Edit > Paste Rows Append. The spreadsheet columns must match the grid's visible columns in order.
Why did my pasted data end up in the wrong columns?
The spreadsheet's column order didn't match the grid's visible column order. Hidden columns aren't counted. Re-order the spreadsheet to match the grid.
Why did Paste Rows Append stop part-way?
Usually because a validation prompt was answered by editing a cell. Answer No during the paste and fix the flagged fields afterwards.
How many rows can I paste into SyteLine at once?
It depends on your computer's memory. Paste and save in batches of 100–200 rows to avoid out-of-memory errors.