ODBC Service
Contents
Introduction
Open Database Connectivity (ODBC) is a standard API for access database. It design independent of database systems and operating systems.
ODBC service can become multi-module interface. User just store data in csv file or SQL Server, then ODBC handler can upload data to Cloud.
ODBC Service currently support database:
- CSV file
- Microsoft SQL Server
Notice:
- ODBC service only support one database at the same time. CAN NOT be configured to support multiple databases.
ODBC Service
ODBC service can easily upload data to the cloud. It will be load the config file and the last data of system record when the service does initialization. The last recorded data Compare with data of database (CSV file) to decide whether to retain index value or not. Every time new data is detected from database, the service will upload new data to cloud and record the last data that is prevent repeat to upload when the service is restarted.
How to
Software Requirements
- MQTT broker V1.0.4
- RMM Agent
Installation
1.Double click Agent_ODBC_Handler_X.X.X.exe to install.
2.Click "Next" to continue the setup wizard.
3.Select installation folder then click "Next"
4.Click "Next" to begin the installation
5. complete the installation, click "Finish" to exit the setup wizard
Edit Config file
In Windows
- Use file explorer to open ODBC Service folder.(Default: C:\Program Files (x86)\Advantech\Agent_ODBC_Handler).
- Edit the file ODBC_Handler.ini
- Once config is changed, please using Windows Services Manager to restart Agent_ODBC_Handler service.
Configuration for support CSV file
1.Config the [Text] session.
FilePath: Set path of the database file (CSV file) location.
FieldName & FieldDataType: Define the data type of field name. FieldName is according to database (CSV file) to set. User arrangement according to "FieldName" item to give data type in "FieldDataType" item. Both of the maximum length of character refer Release.
Note:
- The maximum number of fields is 255.
- The maximum number of records is 10000 in single CSV file. If more than 10000 records, please recycle the CSV file, write data from start position.
Support data type: timestamp, string, double, boolean.
Example :
Attention: Database must have field of timestamp and set it in the first column. Every row of data which maximum length refer Limitation.
Database (CSV file)
ODBC_Handler.ini
[Text] FilePath=D:\txt FieldName=TIME,No#1EC,No#1ph,No#2EC FieldDataType=timestamp,double,double,string
2. Copy CSV file to "FilePath" folder.
Attention: Support to load amount of CSV files at a time please refer Limitation.
3.Restart service of Agent_ODBC_handler.
4. Login Cloud site and turn on auto-report.
Recommend usage
1. Name of CSV file, field name & data in CSV file don't include blank and symbol (e.g. + - * =.....).
2. Auto report interval is close to the update data to CSV interval.
3. Please follow this data format in CSV.
The first row puts field name and insert comma between each name, maximum number of fields is 255. ( Note! Don't include newline in field name row)
The first column puts timastamp.
TIME,No.1EC,No.1ph,No.2EC 2017/10/9 00:18,1.52,5.93,2.26 2017/10/9 00:38,1.52,5.93,2.29 2017/10/9 00:58,1.52,5.93,2.26 2017/10/9 01:18,1.52,5.93,2.25 2017/10/9 01:38,1.52,5.93,2.3
4. If field is for double format, even though data is integer format, please add decimal point. For example, put 0.0 , 2.0 , 3.0 in double format field..
Write CSV file
User need observe the following points:
1.Append data to database: User write data to database (CSV file) please add data after the last index.
2.Add database (CSV file) is invalid at runtime service.
3.Have need of timestamp item and put in the fisrt column about data of database.
4.Don't prohibit reading permission when user write data to database.
5. Please follow the time format yyyy/MM/dd hh:mm:ss:fff. If you don't need millisecond yyyy/MM/dd hh:mm:ss.
NOTE: Time format must be consistency to include millisecond or not in CSV.
Recycle:
Please remove all of the data (keep field name row) in csv file.
User should add data from the first row (after field name row) and one by one way to csv file after removing data. Don't add multiple row data at a time.
Configuration for support Microsoft SQL Server
1. Please make sure SQL Server driver is installed in your Windows System.
2. Edit setting file (ODBC_Handler.ini) as below:
[Setting]
[MSSQL] |
ODBCDriver
- use "SQL Server" , don't need to change.
Server
- Assign Microsoft SQL Server ip
Port
- Assign Microsoft SQL Server port
DataBase
- Assign database name
Uid
- Assign login account for accessing database
Pwd
- Assign login password for accessing database
FieldName
- Assign field name for ODBC Service to monitor.
FieldDataType
- Assign data type for ODBC Service to recognize the field.
- Support data type: timestamp, string, double, boolean.
Notice:
- Attention: Database must have a field of timestamp and set it in the first column in setting file.
Our Sample database as below picture
- database name is advdb
- have 1 table , table name is ProductTable
- have 4 fields: ts, name, price, qty
Service control
In Windows
Check if Agent_ODBC_Handler service is running:
- Use Service to check status of Agent_ODBC_Handler service
Restart Agent_ODBC_Handler service:
- Use Service to restart Agent_ODBC_Handler service
Start Agent_ODBC_Handler service:
- Use Service start Agent_ODBC_Handler service
Stop Agent_ODBC_Handler service:
- Use Service stop Agent_ODBC_Handler service
Json Data Format
{ "ODBC_Handler": { "info": { "bn": "info", "e": [ { "n": "name", "sv": "ODBC_Handler" }, { "n": "description", "sv": "This service is ODBC Service" }, { "n": "version", "sv": "1.1.0" } ] }, "Setting": { "bn": "Setting", "e": [ { "n": "ODBCDriver", "sv": "Microsoft Text Driver (*.txt; *.csv)" }, { "n": "ReadOnly", "bv": false } ] }, "Tables": { "bn": "Tables", "histdata": { "bn": "histdata", "e": [ { "n": "TIME", "sv": "2017-10-09 03:18:00" }, { "n": "No#1EC", "v": 1 }, { "n": "No#1ph", "v": 5.930000 }, { "n": "No#2EC", "sv": "2.26" } ] } }, "opTS": { "$date": 1507490280000 } } }
Use Case
Release
Index | Version |
Date |
Platform |
OS |
Release Note |
Limitation | Download |
1 | 1.1.1 | 2018/06/07 | x86_64 CPU |
Windows |
ODBC_Handler_Release_note.pdf |
1. "FieldName" & "FieldDataType" item maximum length of character is 1024. 2. In CSV file, Every row of data which maximum length of character is 1024. 3. Load 64 CSV files at a time. |
Above files are available at local server, please paste file's url in File Explorer to copy file. |
2 | 1.1.2 | 2019/01/18 | x86_64 CPU | Windows | ODBC_releasenote.pdf |
1. "FieldName" & "FieldDataType" item maximum length of character is 4096. 2. In CSV file, Every row of data which maximum length of character is 4096. 3. Load 256 CSV files at a time. |
Above files are available at local server, please paste file's url in File Explorer to copy file. |
3 | 1.1.3 | 2019/7/12 | x86_64 CPU |
Windows |
|
|
Above files are available at local server, please paste file's url in File Explorer to copy file. |