Oracle InterConnect - Pagoni files -

Post on 25-Jan-2016

54 views 0 download

description

Oracle InterConnect - Pagoni files -. KC Server Development & Programming Languages 11 mei 2006 Harm Verschuren. Agenda. Business Case Pagoni Process Flows Application Integration Architecture InterConnect The Components Repository Adapters Development Kit  iStudio Messaging - PowerPoint PPT Presentation

transcript

1

OracleOracle

InterConnectInterConnect- Pagoni files -- Pagoni files -

KC Server Development & Programming Languages11 mei 2006Harm Verschuren

2

Agenda

• Business Case Pagoni• Process Flows• Application Integration• Architecture InterConnect• The Components

– Repository– Adapters– Development Kit iStudio

• Messaging– Publish/subscribe paradigm

• Questions & Answers

3

Business Case Pagoni

Pagoni:Boekhouding rondom grondexploitatie bij gemeenten.

Module Budgetbewaking:Fin. beheer rondom offerte-trajecten:- aanvragen machtigingen- toetsen (goedkeuren) machtigingen- verwerken boekingen

Machtingingen en boekingen uitwisselen naar resp. van externe applicatie. (Finance module Oracle e-Business Suite)

4

Goedkeuren

Toetsen Machtigingen

Validatie

Update machtigingenSet = status = ‘G’ …

enqueue

AQ-adapter IC

pks_mtg_consumer

dequeue

IC HUBBudget-aanvragen

e-Business Suite

Process FlowToetsen machtigingen

1. Geautoriseerde gebruiker toetst een machtiging enkeurt deze goed (transactie).

2. Business rule valideert of demachtiging uitgewisseld(gepublished) moet worden met extern systeem.

3. Update Machtiging en plaatsde machtiging op een queuevoor uitgaande berichten.

Indien de transactie fout loopt,wordt de update en de enqueueterug gedraaid.

4. Published berichten worden opgepakt door de IC hub en doorgestuurd naar allesubscribing applicaties.

5

Process FlowVerwerken boekingen

E-Business Suite IC Hub

AQ Adapter

pks_bkg_consumer

enqueue

dequeue

Boeking

Verwerken boekingin PKS

Verwerkte enonverwerkteBoekingen

PKS

Onverwerkteboekingen

email

1. Eerder gepubliceerde budgetaanvraag (machtiging) wordt behandelt(?) door externeapplicatie en resulteert in een(of meerdere) boekingen.

2. Boekingen worden uitgewisseld met extern systeem.

3. Published berichten worden opgepakt door de IC hub en doorgestuurd naar Pagoni(subscriber).

4. Pagoni verwerkt boekingen:- Gebruiker krijgt email indien boekingen niet verwerkt kunnen worden (notification).- alle boekingen opslaan in database.- verwerkte boekingen te raad- plegen in overzichten (Oracle Reports)- onverwerkte boekingen te raadplegen via Discoverer.

6

Application Integration

Means of interfacing data between applications

A1

A2

A3

A4

7

Application Integration

Means of interfacing data between applications: point-to-point

A1

A2

A3

A4

Examples:- Database links,- UTL_FILE FTP/SMTP,- External tables

8

Application Integration

Means of interfacing data between applications: point-to-point

A1

A2

A3

A4

9

Application Integration

Means of interfacing data between applications: Central Hub - Spokes

HUBA1

A2

A3

A4

10

ArchitectureInterConnect

Key features:• Event-based distributed messaging system• Integral component Oracle iAS• Integrates heterogeneous systems• Loosely coupled integration via common view, not direct• Easily extended for new spoke application• Reusability of common view

11

ArchitectureInterConnect

Design timecomponent

Spoke

IC Hub

IC Manager

XML XML

12

ArchitectureInterConnect

Hardware:1. iAS midtier

- Repository, IC Hub, Adapters, IC Manager

2. Central RDBMS- Repository (schema: ichub, oai)

3. Application/spoke RDBMS- Adapters (appl. schema)

13

InterConnecting Pagoni

Hardware:– RDBMS 9.2.0.5– Webforms & Reports v. 10.1.2.0.2(+ Headstart v. 6.5.3)

– iAS Infra + midtier v. 10.1.2.0.2– IC hub (iAS midtier) v. 10.1.2.0.0– IC database RDBMS 10g rel 1

14

InterConnecting Pagoni

• Exchange data in XML format via Advanced Queuing

• Queue table : multi-consumer : raw payload

• Outbound Queue : ags.mtg_queueconsumer : pks_mtg_consumer

• Inbound Queue : ags.bkg_queueconsumer : pks_bkg_consumer

15

Goedkeuren

Toetsen Machtigingen

Validatie

Update machtigingenSet = status = ‘G’ …

enqueue

AQ-adapter IC

pks_mtg_consumer

dequeue

IC HUBBudget-aanvragen

e-Business Suite

Process FlowToetsen machtigingen

1. Geautoriseerde gebruiker toetst een machtiging enkeurt deze goed (transactie).

2. Business rule valideert of demachtiging uitgewisseld(gepublished) moet worden met extern systeem.

3. Update Machtiging en plaatsde machtiging op een queuevoor uitgaande berichten.

Indien de transactie fout loopt,wordt de update en de enqueueterug gedraaid.

4. Published berichten worden opgepakt door de IC hub en doorgestuurd naar allesubscribing applicaties.

16

InterConnectingPagoni

• Process “Uitwisselen machtigingen”– Query payload mbv XMLElementpayload wordt impliciet geparsed doorsys.XMLType

– Enqueue per machtigingsregel als raw payload mbv utl_raw.cast_to_rawraw: geen encoding problemenconsumer = pks_mtg_consumer (default)

zie procedure ags_intf_eos.enqueue_mtg

17

Process FlowVerwerken boekingen

E-Business Suite IC Hub

AQ Adapter

pks_bkg_consumer

enqueue

dequeue

Boeking

Verwerken boekingin PKS

Verwerkte enonverwerkteBoekingen

PKS

Onverwerkteboekingen

email

1. Eerder gepubliceerde budgetaanvraag (machtiging) wordt behandelt(?) door externeapplicatie en resulteert in een(of meerdere) boekingen.

2. Boekingen worden uitgewisseld met extern systeem.

3. Published berichten worden opgepakt door de IC hub en doorgestuurd naar Pagoni(subscriber).

4. Pagoni verwerkt boekingen:- Gebruiker krijgt email indien boekingen niet verwerkt kunnen worden (notification).- alle boekingen opslaan in database.- verwerkte boekingen te raad- plegen in overzichten (Oracle Reports)- onverwerkte boekingen te raadplegen via Discoverer.

18

InterConnectingPagoni

• Process “Verwerking boekingen”– Register PL/SQL procedure for events on bkg_queue:pks_bkg_consumerNotification/callback mechanism.No need for self-written dequeue-job zie register.sql

– Dequeue notified message

– Process payload (XMLType functions) and merge into boekingen table or insert into onvw_boekingen table & send email to Pagoni-admin.

– Commit transaction zie procedure ags_intf_eos.dequeue_bkg

19

InterConnectingPagoni

• InterConnect integrates between two applications:Pagoni and … e-BS simulation appl.http://vamisux12:7779/forms/frmservlet?config=eoso

• Subscribes for machtigingen as budgetaanvragen

• Publishes boekingen

20

Adapters

IC Manager

21

Adapters- Connect to application to transfer data between

application & hub: bridge- Transform data to and from application view to common

view- Adapter (message) types

database, generic, XML, FTP, SMTP, HTTP, MQAQ (raw payload), BPEL, JCA adapters

- Contains no codemetadata is in repository database (ichub schema)

- Statelesswhen adapter goes down, message is eitherin application or in Hub

Configuration- adapter.ini

Cloning- copyAdapter.sh <old> <new>

22

Adapters

23

Adapters

24

iStudio

Design timecomponent

IC Hub

IC Manager

25

iStudio

Integration methodology• Integration Point event that triggers communication between applications (create customer)

• Common View = list of integr. Points

• Applications: participate by binding to >1 integ. Points

26

iStudio

• Demo

27

iStudio1.Create project2.Create common view BusinessObject “grootste gemene veelvoud”

3.Create Business Object events choose publish/subscribe or request/replyApplication view object created automatically

28

iStudio

4.Create applications instance of an adapter communicating with an application

5.Create (external) publish events map application view to common view

6.Deploy Process bundle (sync adapters)

7.Export and Install PL/SQL code if database adapter is used.

Questions & Answers

Workshop

31

32

RepositoryIC Hub 2 components

– Repository Serverjava (RMI) application outside database. iStudio & adapters RMI clients

– Repository DatabaseStores metadata.provide messaging via AQ.

Configuration– hub.ini– repository.ini

33

Adapter