Skip to main content

How do I use PI Connector for UFL to import file data?

How do I use PI Connector for UFL to import file data?

PI Connector for UFL (Universal File Loader) parses structured text files (CSV, JSON, XML) and writes values to PI Data Archive.

When to Use UFL

  • Importing data from CSV exports or lab systems
  • Receiving data via REST POST (UFL has a built-in HTTP listener)
  • Processing log files with custom formats
  • One-time historical data backfills

Configuration

1. Create a .ini Configuration File

The .ini file defines how UFL parses your data:

[FIELD]
FIELD(1).NAME = "TagName"
FIELD(1).TYPE = "String"
FIELD(2).NAME = "Timestamp"
FIELD(2).TYPE = "DateTime"
FIELD(3).NAME = "Value"
FIELD(3).TYPE = "Number"

[MSG]
MSG(1).NAME = "DataRow"

[DataRow]
DataRow.FILTER = C1=="*"

STORETRANS(TagName, Timestamp, Value)

2. For CSV Files

If your CSV looks like:

Pump1_Flow,2024-01-15 10:00:00,42.5
Pump1_Pressure,2024-01-15 10:00:00,120.3

The .ini config parses each line and maps columns to tag name, timestamp, and value.

3. For REST Input

UFL can listen on an HTTP port:

[API]
API.PORT = 5460
API.METHOD = POST

Send data via:

curl -X POST http://ufl-server:5460 -d "Pump1_Flow,2024-01-15 10:00:00,42.5"

PI Point Configuration

For auto-created tags:

  • Set PointSource to your UFL instance ID
  • UFL can create PI points on the fly if configured with AUTOADDTAG

Testing

Run UFL in interactive mode to see parsing output:

PI_UFL.exe -ini myconfig.ini -file testdata.csv

Tips

  • Use FILTER rules to skip header rows
  • Handle multiple file formats with separate MSG blocks
  • Set up a watch folder for automatic file processing
  • Check the UFL log file for parsing errors

Want to ask a follow-up?

PiChat can help with your specific PI System use case. Ask follow-up questions, get code examples, and troubleshoot issues.

Related Questions

Dive Deeper

More Questions

How do I configure PI AF templates?How do I authenticate with PI Web API from Python?What's the difference between snapshot and archive values in PI?What's the difference between PI Vision and PI ProcessBook?How do I build effective PI Vision displays?What are PI Event Frames and how do I use them?How do I write PI AF Analytics expressions?How do I use PI DataLink in Excel?Should I use PI Web API or AF SDK for my application?How do I write data to PI Data Archive?What are the main components of PI System architecture?How do I optimize PI Data Archive performance?How do I set up the PI Interface for OPC DA?How do I set up PI Data Archive high availability with collectives?What are the security best practices for PI System?How do I migrate PI Data Archive to a new server?How do I connect Power BI to PI System?How do I manage units of measure in PI System?What's the best way to learn PI System?How does PI time syntax work?What are good PI tag naming conventions?How do I access PI System data from Java or Linux?How do I set up PI AF notification rules?How do I use batch requests in PI Web API?How do I connect to PI AF Server using AF SDK in C#?How do I write VBA macros in PI ProcessBook?How does PI data compression work?How do I get real-time streaming updates from PI Web API?How do I troubleshoot PI AF Analysis errors?How do I write SQL queries against PI using PI OLEDB?What is PI interface buffering and how do I configure it?How do I search and query PI Event Frames?What is PI Integrator for Business Analytics?How do I fix the 'Point does not exist' error in PI System?What is the difference between PI ACE and AF Analytics?How do I manually enter data into PI Data Archive?What are AF hierarchy design best practices?What is a WebID in PI Web API and how does it work?How do I configure Kerberos authentication for PI System?Can I deploy PI System in the cloud?How do I calculate summaries (average, total, min, max) in PI?What are PI digital states and how do I use them?How do I connect PI System data to Grafana?How do I backup and restore PI Data Archive?How do I create custom symbols in PI Vision?How do I automate PI System tasks with PowerShell?What is AVEVA Connect and how does it relate to PI System?How do I check and handle data quality in PI System?How do I handle pagination in PI Web API responses?How does AVEVA PI System licensing work?How do I plan a PI System upgrade?