Azure Application URL: https://app.elynxtech.com/api/DataReportService/Service.asmx
(Note: To get a response from a browser you must append the url with ?wsdl: https://app.elynxtech.com/api/DataReportService/Service.asmx?wsdl)
In Visual Studio, add a web reference to this url.
In your code, create a DataReportService instance.
The DataReportService class has an ExecuteReportEx() method that takes the following 6 parameters:
Parameter Name | Data Type | Description |
CustomerCode | String |
A string representation of a GUID obtained from eLynx that uniquely identifies the web service caller. |
Username | String |
The user name of a SCADALynx user |
Password | String |
The password (cleartext) for the previously specified SCADALynx user. Note: The web service is being called via https, thus the password not transmitted across the wire in cleartext. |
ReportName | String |
The name of the preconfigured report instance (aka "SCADALynx Report Configuration Name"). This will be obtained from eLynx. |
ReportStartDate |
DateTime |
The starting contract date for the report (inclusive) |
ReportStopDate | DateTime |
The ending contract date for the report (exclusive) |
Example
In Visual Studio, add a web reference to the web service url. For this example, I have assumed that the reference is named eLynxDataReportSvc. To request a report synchronously, the following code would be used:
// Create an instance of the report service
eLynxDataReportSvc.DataReportService wsdrc = new eLynxDataReportSvc.DataReportService();
// Execute the ‘Customer Data Report’ for yesterday’s contract day
DataSet ds = wsdrc.ExecuteReportEx("23F3633E-A318-0250-B349-00F3633E", "<customer_username>", "<customer_user_password>", "Customer Data Report", DateTime.Now.AddDays(-1).Date, DateTime.Now.Date);
The result is a standard ADO.Net DataSet object. The daily report results will be contained in a single table in the dataset, but multiple data tables can be returned based on the report configuration. The data service will wait up to 5 minutes before timing out on the report.
In the case of an error or timeout, an appropriate exception will be thrown back to the caller.eLynx limits the number of concurrent report requests per customer, as well as the length (in days) that a report can span. Currently, the limits are as follows:
Max Number of Concurrent Reports: 1
Max Number of Days in a Report: 15
If the maximum number of concurrent reports is exceeded, an error will be thrown to the caller stating the reason. If a report is requested that spans more days than allowed by the maximum number of days in a report, the report will be processed, using the specified starting date, and reporting for the maximum number of days allowed.
These are adjustable limits, so we can work with you to if these limits need to be modified.
Comments
2 comments
The web service just requires a user account that has security permissions to the report configuration. Nothing special, and nothing different than a regular user account that would be used to access the website.
eLynx Development provides the "CustomerCode" GUID.
The GUID is customer specific so only one GUID is needed per customer site, and any report configurations can be accessed using the combination of the GUID and user credentials with access to the target report configuration(s).
Once a customer is migrated to the new Azure Application, the URL for web services is:
https://app.elynxtech.com/api/DataReportService/Service.asmx
Article is closed for comments.