Overview: Channel Data--Import and File Specifications
Channel data is time-series (interval) data, most often electric 15-minute KW interval data. But it can also be weather data, production data or almost any data excluding monthly utility bills.
EnergyCAP Enterprise supports the ability to import Interval data contained in text files, MDEF files, Modified MDEF files, and Meter Exchange files. Whatever the format, the data provider should supply files with unique vendor- and date-based names. For example, an interval data file provided by EnergyCAP, Inc. containing data for 04/06/2004 could be named ‘gss_20040406.csv’. If multiple files arrive for the same day, a suffix, such as ‘a’, ‘b’, ‘c’, etc., could be added to the filename. The imported Interval Data is stored in either a Meter Channel or a Counter Channel.
To import data into EnergyCAP, use the Import Wizard (File/Import from the Facility Manager). Please refer to Importing Meter or Counter Data for more detailed instructions.
it is not necessary to create a meter or counter channel in EnergyCAP prior to importing data. The first time the channel data is imported, a new channel will be created automatically. The user must populate the field named ImportID onthe Specific tab of Meter or Counter Properties. This is the DEVICE name that will generally appear in the first column of the import data file, and it links the imported data to the correct meter/counter and channel.
This document currently focuses on the text file specifications. Please contact EnergyCAP, Inc. for additional information about the MDEF, Modified MDEF, and Meter Exchange file specifications.
Text File Specifications
There are three text file formats available for use with EnergyCAP Enterprise. All of these formats require that the data be contained in a column based, delimited file, with a file extension of either “csv”, “dat”, “prn”, or “txt”.
Text File Format #1
- Header Row to define the columns is optional, but recommended.
- ImportID column containing the ImportID for a Meter or Counter (set this in meter or counter properties, ‘specific’ tab)
- Timestamp column containing the time when the reading occurred. The interval between the timestamps determines the channel interval. Alternatively, a column containing the Date, followed by a column containing the Time can also be used to indicate when the reading occurred. The interval between the concatenation of the Date/Time of the readings determines the channel interval.
- Data column(s) to define the Interval Data being tracked. Each data column is for a separate channel.
Sample Data for a Meter tracking 15 minute interval data in two channels (Demand in kW, and Reactive Demand in kVAR).
ImportID,Timestamp,kWValue,kVARValue
KZG002614057,07/05/2002 00:15,22.56,8.208
KZG002614057,07/05/2002 00:30,22.368,8.064
KZG002614057,07/05/2002 00:45,21.984,7.344
KZG002614057,07/05/2002 01:00,22.464,7.536
KZG002614057,07/05/2002 01:15,27.792,12.768
KZG002614057,07/05/2002 01:30,22.656,8.064
KZG002614057,07/05/2002 01:45,22.608,8.112
KZG002614057,07/05/2002 02:00,22.464,8.16
KZG002614057,07/05/2002 02:15,22.368,8.064
KZG002614057,07/05/2002 02:30,22.224,7.536
KZG002614057,07/05/2002 02:45,22.224,7.392
KZG002614057,07/05/2002 03:00,22.656,7.488
Text File Format #2
- Header Row to define the columns is optional, but recommended.
- ImportID column containing the ImportID for a Meter or Counter.
- Timestamp column containing the time when the reading occurred. The interval between the timestamps determines the channel interval. Alternatively, a column containing the Date, followed by a column containing the Time can also be used to indicate when the reading occurred. The interval between the concatenation of the Date/Time for both readings determines the channel interval.
- Unit column to define the unit for the Channel.
- Value column containing the reading value.
Sample Data for a Meter tracking 60 minute interval data in one Demand channel, with a unit of kW.
ImportID,Date/Timestamp,Unit,Value
TESTMETER,06/01/2003 00:00,KW,102
TESTMETER,06/01/2003 01:00,KW,100
TESTMETER,06/01/2003 02:00,KW,105
TESTMETER,06/01/2003 03:00,KW,110
TESTMETER,06/01/2003 04:00,KW,108
TESTMETER,06/01/2003 05:00,KW,120
TESTMETER,06/01/2003 06:00,KW,140
TESTMETER,06/01/2003 07:00,KW,160
Text File Format #3
• Header Row to define the columns is optional, but recommended.
• Timestamp column containing the time when the reading occurred. The interval between the timestamps determines the channel interval. Alternatively, a column containing the Date, followed by a column containing the Time can also be used to indicate when the reading occurred. The interval between the concatenation of the Date/Time of the readings determines the channel interval.
In the example below, note the repeated Timestamp for different units.
• ImportID column containing the ImportID for a Meter or Counter.
• Unit column to define the unit for the Channel.
• Value column containing the reading value.
Sample Data for a Meter tracking 15 minute interval data in two channels (Demand, with a unit of kW, and Reactive Demand, with a unit of kVAR).
TIMESTAMP, IMPORTID, UNIT, VALUE
01/01/2003 00:15, METER001, KW, 100.25
01/01/2003 00:15, METER001, KVAR, 20.35
01/01/2003 00:30, METER001, KW, 105.45
01/01/2003 00:30, METER001, KVAR, 22.75
Important! During the import wizard process the user will specify the ‘picture’ (i.e. format) of the timestamp. Exactly follow the pattern of the examples provided! Be sure to recognize that month is 'MM' while minutes are 'mm'.
12/31/2005 12:15 MM/dd/yyyy hh:mm
123105 0:00 MMddyy h:mm
20051231 01:30 yyyyMMdd hh:mm
2005-12-31 0130 yyyy-MM-dd hhmm
Text File Format #4
Below is a sample import file with 15-minute interval data for KVar, KW, Power Factor, KVA, and additional optional fields for Actual/Estimated (A/E OR 0/1) and Note (alphanumeric field--avoid special characters and punctuation).
ESI_ID INTV_REC_DT INTV_BEG_TM KVAR_QT KW_QT POWER_FACTR_PC KVA_QT Estimated Note
KZG0026 08/17/2007 0 796 4426 98 4497 E meter replaced
KZG0026 08/17/2007 15 816 4369 98 4445 E
KZG0026 08/17/2007 30 809 4353 98 4428 E
KZG0026 08/17/2007 45 786 4343 98 4414 A
KZG0026 08/17/2007 100 778 4291 98 4361 A
KZG0026 08/17/2007 115 792 4230 98 4304 A
KZG0026 08/17/2007 130 752 4186 98 4253 A
KZG0026 08/17/2007 145 703 4145 98 4204 A
KZG0026 08/17/2007 200 725 4153 98 4216 A
KZG0026 08/17/2007 215 731 4141 98 4205 A
KZG0026 08/17/2007 230 732 4165 98 4229 A
KZG0026 08/17/2007 245 705 4061 98 4122 A
KZG0026 08/17/2007 300 711 4026 98 4088 A
KZG0026 08/17/2007 315 718 4047 98 4110 A
KZG0026 08/17/2007 330 738 4121 98 4187 A
KZG0026 08/17/2007 345 694 3968 98 4028 E
KZG0026 08/17/2007 400 692 4043 98 4102 E
KZG0026 08/17/2007 415 715 4107 98 4169 E
MONTHLY channel data:
It is possible to import monthly data. Monthly data is usually imported into a counter that is tracking sales, occupancy or production.
The complication with monthly data is that the interval is not fixed because months have varying lengths. The first time monthly data is imported, the importer will attempt to determine an interval. You MUST have at least 13 months of data for each channel in order for the initial import to be successful. Otherwise, you will receive a message stating that the importer was Unable to Compute the Data Interval. Alternatively, add an “Interval” column of data, to the right of the Timestamp or Time column (if using both a Date and Time column), and to the left of any Data columns. For monthly data the “Interval” value should be 43200 (the number of minutes in 30 Days)
Here's an example of a successful import file for monthly occupancy data:
device,MMddyyyy H:mm,data
663592-OCC,01012006 0:00,96.0
663592-OCC,02012006 0:00,95.0
663592-OCC,03012006 0:00,94.0
663592-OCC,04012006 0:00,98.0
663592-OCC,05012006 0:00,100.0
663592-OCC,06012006 0:00,97.5
663592-OCC,07012006 0:00,95.7
663592-OCC,08012006 0:00,98.0
663592-OCC,09012006 0:00,99.0
663592-OCC,10012006 0:00,95.0
663592-OCC,11012006 0:00,95.0
663592-OCC,12012006 0:00,100.0
663592-OCC,01012007 0:00,90.0
663592-OCC,02012007 0:00,91.0
663592-OCC,03012007 0:00,92.0
663592-OCC,04012007 0:00,93.0
663592-OCC,05012007 0:00,100.0
663592-OCC,06012007 0:00,98.5
663592-OCC,07012007 0:00,92.7
You can also import interval data using the command line. Here is an example and explanation of each element:
The usage is:
imptsk -d [dsn] -u [user] -p [pwd] -c [converter] -f [path] -x -a [path] -l [path] -s [section] -v [verbose messages] -remote -t [traceID]
Where:
- -d [dsn] is the ODBC data source name
- -u [user] is the system user id
- -p [pwd] is the system password
- -c [converter] is the name of the converter
- -f [path] is the file to be imported
- -x will delete the input file after importing the data
- -a [path] will archive the data to the path specified
- -l [path] is the log file
- -s [section] is the profile section name
- -v [message text] when used, will add additional detail to the import log file.
- -remote is the command to connect to the HTTP data provider (use in conjunction with the -d switch, which identifies the Datasource from the Catalog Server (as displayed in the EnergyCAP Login window)
- -t [traceID] is the SQL server trace to initiate during verification
EXAMPLE: "c:\Program Files\EnergyCAP Enterprise\imptsk.exe" -d retailer -u kvs -p kvs -c STANDARD:SIMPLE_TEXT -f "c:\b-test\*.csv" -l "log.txt" -s MY_CHANNEL_PROFILE_NAME
- "c:\Program Files\EnergyCAP Enterprise\imptsk.exe” – This is the file path for the importer program, imptsk.exe. It is typically located in your Energy CAP Enterprise program folder. Be sure to enclose the file path in quotation marks. IMPORTANT - You must execute the command from the EnergyCAP program folder, i.e. log onto this folder before executing the imptsk.exe file. Simply pointing to the program folder from another location may cause the imptsk.exe program to be unable to run required supporting DLL files.
- –d retailer - This is the name of the database into which you wish to import the data.
- –u kvs – This is the User ID with which you wish to import the data. The User ID is the username you use to login to EnergyCAP Enterprise. Be sure adequate permissions exist to create the records.
- –p kvs - This is the password associated with User ID you are using to import the data.
- -c STANDARD:SIMPLE_TEXT – If you follow the format for the interval data in this technical bulletin, this is the converter you will use.
- -f "c:\b-test\*.csv" – This is the file path for the .csv document which you wish to import into EnergyCAP Enterprise.
- -l "log.txt" – The Importer creates a log file that tracks the changes made to EnergyCAP Enterprise. This is the file path to the location where that file will be saved.
- -s "MY_CHANNEL_PROFILE_NAME" - This is the name for the interval data profile you have created.

