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

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

Transcript of Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

Page 1: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

Implementation of EIDE Gateway using ACES Callouts

WECC DEWG EIDE Training

Page 2: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

Leveraging ACES

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

Page 3: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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 FORTEThis is an advantage that provides all companies who use ACES the capability to quickly act and to quickly react.

Page 4: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

About Forte

Forte is a high level (4th generation level) transactional object oriented languageHigh 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.

Page 5: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 6: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 7: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

IIS ServerListener Forte CGI toListener

Import

Soap UnwrappedXML Doc In

Notify

Archive Error

ReportMethod

XML DocInvalid

Import XML

Internet

Web to IIS

Soap Wrapped XML toexternal

URL

EMS

ACESScheduling

System

Get EMSData

Get ACES DataWriteEMSData

WriteACESData

Trash

ORACLE DB

URL Data

Soap Wrapped XMLSynchronous Response

Processed Error

Retry

Retry

Page 8: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 9: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

Report Types for EIDE

Page 10: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

Database Modeling for Export Data Cont.

The dynamic reports that you create have a few additional fields that you need to fill in.

Page 11: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.
Page 12: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.
Page 13: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.
Page 14: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 15: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 16: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.
Page 17: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

Method used by EIDE

Report has no entries in the iReportListReport passes dispositionMix of EMS and Scheduling data can be in a data setFilters serial numbers are read from database entries

Page 18: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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)

EIDE Database

Page 19: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 20: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

# 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=20010502

ACES_NIOP_STARTUP_COMPANY=009483629

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&

Page 21: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

Startup Report Object

Page 22: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 23: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 24: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

Listener : ListenerClass = new();

Listener.Setup(self.ACESServer, self.DefaultDBSession, self.TZMgr);

The listener class is started by just instantiating the class as an object in a persistent task, then calling the setup method.

Page 25: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

The User “Interface”

CS_EIDEAllows user interface to be built and customizedPlug-in library on client system

Page 26: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.
Page 27: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

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.

Page 28: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.
Page 29: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

IIS server configuration

Create an eide web directoryCopy the foreisapi.dll file to the IIS clusterCreate a fortecgi.dat file containing ip addresses and port to forward xml documents toSet FORTE_CGI_REG_FILE to point to this fileCreate Web Service Extension to allow forteisapi

Page 30: Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.

IIS ServerListener Forte CGI toListener

Import

Soap UnwrappedXML Doc In

Notify

Archive Error

ReportMethod

XML DocInvalid

Import XML

Internet

Web to IIS

Soap Wrapped XML toexternal

URL

EMS

ACESScheduling

System

Get EMSData

Get ACES DataWriteEMSData

WriteACESData

Trash

ORACLE DB

URL Data

Soap Wrapped XMLSynchronous Response

Processed Error

Retry

Retry