Presentation is loading. Please wait.

Presentation is loading. Please wait.

Implementation of EIDE Gateway using ACES Callouts

Similar presentations


Presentation on theme: "Implementation of EIDE Gateway using ACES Callouts"— Presentation transcript:

1 Implementation of EIDE Gateway using ACES Callouts
WECC DEWG EIDE Training

2 Leveraging ACES You can “leverage” your ACES investment using callouts and the multi-platform Forte high level language

3 Leveraging Leverage is power or advantage that can be used to achieve a purpose (Webster’s Dictionary) ACES provides you with the power to easily build your own custom software to meet your company’s needs with an extremely powerful high level, multi platform language called FORTE This is an advantage that provides all companies who use ACES the capability to quickly act and to quickly react.

4 About Forte Forte is a high level (4th generation level) transactional object oriented language High level means that, unlike visual studio C++ and other 3rd generation level languages, few of the implementation details are forced onto the developer. The programming speed ratio is about 3 to 1. Software written in Forte can be split between different types of hardware and different operating systems with no software changes.

5 ACES Plug-In Libraries
ACES provides plug in library functionality isolated by method interfaces to underlying ACES methods. Callouts, AKA dynamic equations, are methods associated with specific provisions called on schedule, adjust, delete, reschedule. Named Input/Output Processor (niop) libraries also use callbacks and allow customized ACES gateways and other FORTE applications to be built such as EIDE.

6 NIOPs Named Input/Output Processors are separate event handler programs that are passed events/reports of a specific type. They can run initialization methods using a startup report. Reports of the type assigned to the niop are passed to it by ACES. The reports can be triggered in a variety of ways, including periodic, manually, and based on event. Many reports, with variant parameters can be set to the type handled by the niop. Similar to the report handler. in order to enter the code, a startup report can be run. Types can be created in ACES that are subtypes of other types such as dynamic event. Reports of your type can then be created and you are now calling your code with parameters.

7

8 Database Modeling for Export Data
For moving data out of ACES, create filters that contain the schedules or nets that you want delivered to your niop or, pass parameters that allow identification of the target data. Create export reports that reference these filters. Create new report subtypes of type Dynamic Event. The report subtype name and niop must match as this is how the niop finds the code it needs to run. Create reports based on these subtypes.

9 Report Types for EIDE

10 Database Modeling for Export Data Cont.
The dynamic reports that you create have a few additional fields that you need to fill in.

11 Disposition, Report Type, Check Export

12

13

14 Dynamic Report Fields With the export and upload fields checked, on data export, the niop receives the report request from the AP servers and runs the export and upload methods (in that order). The order of method execution if all boxes are checked is export, upload, download, and import. The Disposition is an additional report parameter that can be used in the export and upload methods.

15 The interface to your class
A report list of type iReportList is passed to the Export method in your class. Your method then typically loops through the report list and loops through the filters.

16

17 Method used by EIDE Report has no entries in the iReportList
Report passes disposition Mix of EMS and Scheduling data can be in a data set Filters serial numbers are read from database entries

18 EIDE Database EIDE_DataSetDesc(EID,DS:PID,ListID,Direction)
EIDE_DataSet(EID,DS,Item:System,AccountCode,Negate) EIDE_EMSItem(EID,DS,Item:Table,B1,B2,B3,elem,info) EIDE_ACESItem(EID,DS,Item:SerialNumber) EIDE_ScheduleDesc(EID,DS,Item:DeliveryPoint_SN, Receiver_SN, ScheduleWith_SN, Sender_SN, Transaction_SN) EIDE_Partner(Name, EID) EIDE_URL(EID,URL)

19 Database Modeling for Initialization
Create a dynamic report as before except there are no sub-reports associated with it and select export. Set the ap_niop_startup_report environment variable to the object ID of your startup report. Also set ap_niop_startup_company. Then create a class in your niop library with an export method that does whatever you need to do at startup. You could start a timer loop task, listener, initialize variables, etc.

20 # Note, the startup report is the serial number of the report
ACES_NIOP_STARTUP_REPORT=EIDEStartupReport ACES_NIOP_NAME=EIDE ## XML Version ACES_XML_W3C_SCHEMA_VERSION_DATE= ACES_NIOP_STARTUP_COMPANY= ACES_EIDE_SOURCE_COMPANY_NUMBER='764‘ ACES_EIDE_SOURCE_COMPANY='SCLM‘ ftexec -fi bt:/forte/userapp/ap_named/cl0/eide_niop -fl "%stdout(err:sh:* prf:user3 aud:user3)" -fm "(x:256000)" -ftsvr 0&

21 Startup Report Object

22 Database Modeling for Notify
In this context, notify event is the report that lets you know there is something to import. The notify report is kicked off in the EIDE gateway after data has been received by the listener. Create a dynamic event report as before but check the download and import boxes. The download and import methods are used in the Notify class in your niop.

23 The Listener Class Listens on a defined port for inbound internet traffic from your internet server. The process method is invoked when data is received. In the standard niop model, the data coming in on the listener is validated at some level, then written to the import directory. The listener then kicks off a notify report.

24 The listener class is started by just instantiating the class as an object in a persistent task, then calling the setup method. Listener : ListenerClass = new(); Listener.Setup(self.ACESServer, self.DefaultDBSession, self.TZMgr);

25 The User “Interface” CS_EIDE
Allows user interface to be built and customized Plug-in library on client system

26

27 XML classes Sungard has an XML Schema Processor that will take a schema and turn it into a set of classes in FORTE. These classes have attributes and methods associated with them that automatically perform many of the functions you will need. These include reading, validating, and writing XML documents.

28

29 IIS server configuration
Create an eide web directory Copy the foreisapi.dll file to the IIS cluster Create a fortecgi.dat file containing ip addresses and port to forward xml documents to Set FORTE_CGI_REG_FILE to point to this file Create Web Service Extension to allow forteisapi

30


Download ppt "Implementation of EIDE Gateway using ACES Callouts"

Similar presentations


Ads by Google