Best Practices for Handling Delimited Data Imports into Business Central
This post explains how to import comma-separated values (CSV) customer data into Business Central by parsing delimited files into a temporary staging table and then creating customer records. It demonstrates best practices for handling unstructured, flat file formats through code examples and provides a complete workflow from file upload to database insertion.

post Aardvark Labs
Key points
- CSV is an unstructured flat file format where data is separated by delimiters; columns must be static and consistent across file loads
- Use a temporary staging table as an intermediary to import data first, enabling validation, correction, and retry before creating actual records
- Parse CSV files using UploadIntoStream to read the file, split text by line breaks, then split each line by the delimiter character
- Map parsed values to staging table fields using CopyStr to enforce field length limits, and use Evaluate for type conversion like decimals
- Convert validated staging records to actual Business Central records in a separate procedure after successful import
AL objects mentioned
As named in the post. A name that matches one object page by exact type and name links to it; the others stay as named.
- table “ARD_CustomerStaging”
- page “ARDCustomerImport”
- table 18 “Customer”
Not found in BC28-30: table “ARD_CustomerStaging”, page “ARDCustomerImport”.
Context
- Features: File upload dialog, CSV parsing, Temporary staging tables, Text splitting and string manipulation, Data validation and error handling, Automatic record numbering, Field length enforcement
Source: Aardvark Labs, community blog. Summary, key points and quotes are derived (CONTENT-NOTICE.md); read the original for the full text.