爀䄀氀眀愀礀猀 甀猀攀 琀栀攀 猀椀琀攀 愀渀搀 氀愀渀搀猀挀愀瀀 … · When making the powerpoint: \爀䴀愀欀攀 琀栀攀 椀洀愀最攀猀 愀猀 氀愀爀最攀
WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside...
Transcript of WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside...
![Page 1: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/1.jpg)
© 2019
WEB ENABLING SIMCORPDIMENSIONDYALOG ’19, ELSINORE
STIG NIELSEN, LEAD DEVELOPER, SIMCORP
![Page 2: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/2.jpg)
© 2019© 2019
AGENDA
2
![Page 3: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/3.jpg)
© 2019© 2019
AGENDA
2
• Why WEB/Cloud?
![Page 4: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/4.jpg)
© 2019© 2019
AGENDA
2
• Why WEB/Cloud?
• The solution #1
![Page 5: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/5.jpg)
© 2019© 2019
AGENDA
2
• Why WEB/Cloud?
• The solution #1
• The solution #2
![Page 6: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/6.jpg)
© 2019© 2019
AGENDA
2
• Why WEB/Cloud?
• The solution #1
• The solution #2
• Model driven UI
![Page 7: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/7.jpg)
© 2019© 2019
WHY WEB/CLOUD
3
![Page 8: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/8.jpg)
© 20194
KEY DRIVERS FOR CLOUD ADOPTION
REDUCED RISKHedge risk by transferring data to the cloud
BUSINESS CONTINUITYFault-tolerant approach to continuous delivery
COLLABORATIONIncreased synergies for Business, IT &Operations
COST SAVINGSCapital expensesconverted tooperating expenses
SCALABILITYScale-up or down on-demand, as configuredor scheduled
TIME TO MARKETShortened considerably, including time toprovision/deploy
![Page 9: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/9.jpg)
© 2019AZ
UR
E S
ER
VIC
ES
![Page 10: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/10.jpg)
© 20196
FROM 2-TIER TO 3-TIERTRANSFORMING
Server/Service transformation = Business Logic runs here
Typical 2-tier deployment. Typical 3-tier solution
Powerful PC Powerful PC Powerful PC
Database
Powerful PC
Automated batch job(One job at a time)
Client
X 999
Device/Service
X 999
Powerful Server Database
Automated batch job
X 999
Protected
Unsafe
![Page 11: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/11.jpg)
© 2019© 2019
THE SOLUTION #1
7
![Page 12: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/12.jpg)
© 20198
LAYERED APPLICATION ARCHITECTURE - APL COMPONENTS
GUI Business
Application Business
Internal Application Framework
Internal GUI FrameworkGUI Framework
Application Framework
Core Business Core Framework
• APL functions nicely ordered in modules
• Enforced rules on how modules can callbetween each other
![Page 13: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/13.jpg)
© 20198
LAYERED APPLICATION ARCHITECTURE - APL COMPONENTS
GUI Business
Application Business
Internal Application Framework
Internal GUI FrameworkGUI Framework
Application Framework
Core Business Core Framework
• APL functions nicely ordered in modules
• Enforced rules on how modules can callbetween each other
• Should be rather easy to turn groups of modules into micro services
![Page 14: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/14.jpg)
© 20199
LAYERED APPLICATION ARCHITECTURE - APL COMPONENTS
• Well, a few more arrows have beenadded over time…
![Page 15: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/15.jpg)
© 2019
SOME FIGURES
• 2,500,000 lines of APL code
• 86,800 (trad) functions
• Organised in 5,500 modules
10
![Page 16: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/16.jpg)
© 2019
APL MODULES – DEPENDENCY GRAPH;-!
11
![Page 17: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/17.jpg)
© 2019© 2019
THE SOLUTION #2
12
![Page 18: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/18.jpg)
© 2019© 2019
THE SOLUTION #2
12
WELCOME TO THE REAL WORLD
![Page 19: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/19.jpg)
© 201913
LIFT AND SHIFT - UNIFIED PLATFORMSIMCORP DIMENSION - ENABLEMENT
• We will enable SimCorp Dimension (SCD) to become a 3-tier Cloud Service (SaaS), using a traditional Lift and Shift pattern.
• We will carry along all current business logic and current functionality
• We will enable new scenarios using Cloud Services
UNIFIED PLATFORM
User Authentication
Session / State Management
ManagedDatabase API…Certificate
Secret StoreUI / ClientConnector
RefactoredCode
C# Code
APLCode
SimCorp Dimension
…
![Page 20: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/20.jpg)
© 201914
THE APL PART OF THE SYSTEM AS OF TODAYONE PROCESS CONTROLLED FROM APL
Launch.exe
![Page 21: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/21.jpg)
© 201914
THE APL PART OF THE SYSTEM AS OF TODAYONE PROCESS CONTROLLED FROM APL
Launch.exe
APL (dyalog.exe)
C#External
![Page 22: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/22.jpg)
© 201914
THE APL PART OF THE SYSTEM AS OF TODAYONE PROCESS CONTROLLED FROM APL
Launch.exe
APL (dyalog.exe)
C#External
Auxiliary Processor
![Page 23: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/23.jpg)
© 201914
THE APL PART OF THE SYSTEM AS OF TODAYONE PROCESS CONTROLLED FROM APL
Launch.exe
APL (dyalog.exe)
C#External
Auxiliary Processor
C#Marshaller
![Page 24: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/24.jpg)
© 201915
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – APL HOSTED INSIDE .NET
.NET CLR
APL (dyalog.dll)
In-proces
![Page 25: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/25.jpg)
© 201915
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – APL HOSTED INSIDE .NET
.NET CLR
APL (dyalog.dll)
Generic .NET API
In-proces
![Page 26: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/26.jpg)
© 201915
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – APL HOSTED INSIDE .NET
.NET CLR
APL (dyalog.dll)
Generic .NET API
APL Bootstrapper
In-proces
![Page 27: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/27.jpg)
© 201915
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – APL HOSTED INSIDE .NET
.NET CLR
APL (dyalog.dll)
Generic .NET API
APL Bootstrapper
Bootstrapper• ⎕CY ”dws”• Attach to shared code file• Inject .NET managers• Setup conf. reader (as
there are no configurationsin registry!)
• Run ⎕LX!
In-proces
![Page 28: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/28.jpg)
© 201915
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – APL HOSTED INSIDE .NET
.NET CLR
APL (dyalog.dll)
Generic .NET API
Application .NETAPL Bootstrapper
Bootstrapper• ⎕CY ”dws”• Attach to shared code file• Inject .NET managers• Setup conf. reader (as
there are no configurationsin registry!)
• Run ⎕LX!
In-proces
![Page 29: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/29.jpg)
© 201915
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – APL HOSTED INSIDE .NET
.NET CLR
APL (dyalog.dll)
Generic .NET API
Application .NETAPL Bootstrapper
Bootstrapper• ⎕CY ”dws”• Attach to shared code file• Inject .NET managers• Setup conf. reader (as
there are no configurationsin registry!)
• Run ⎕LX!APL Application API
In-proces
![Page 30: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/30.jpg)
© 201915
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – APL HOSTED INSIDE .NET
.NET CLR
APL (dyalog.dll)
Generic .NET API
Application .NETAPL Bootstrapper
Bootstrapper• ⎕CY ”dws”• Attach to shared code file• Inject .NET managers• Setup conf. reader (as
there are no configurationsin registry!)
• Run ⎕LX!
Application• Launch APL application• Set/get data• Execute commands• Get IU layout• Get data schema
APL Application API
In-proces
![Page 31: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/31.jpg)
© 201916
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – MULTIPLE APL INSTANCES
C#APL Application .NET API
APL
![Page 32: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/32.jpg)
© 201916
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – MULTIPLE APL INSTANCES
C#APL Application .NET API
APL APL APL
![Page 33: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/33.jpg)
© 201916
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – MULTIPLE APL INSTANCES
C#APL Application .NET API
APL APL APLAPL Shared
![Page 34: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/34.jpg)
© 201916
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – MULTIPLE APL INSTANCES
C#APL Application .NET API
APL APL APL
APL Shared
![Page 35: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/35.jpg)
© 201916
THE SYSTEM AS OF TOMORROW3-TIER APL STACK – MULTIPLE APL INSTANCES
C#APL Application .NET API
APL APL APL
APL Shared• Dyalog engaged in hosting
multiple in-proces APL instances.• One user session per APL
instance.• We expect to do significant work
on performance and memory footprint.
• Where possible, also share between APL and C# (e.g. data dictionary and other static information)
![Page 36: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/36.jpg)
© 201917
TARGET SERVICE ARCHITECTURE
UNIFIED PLATFORM
Session Management
User Authentication
State Management
ManagedDatabase API…Certificate
Secret Store
C#New
Applications
UIClient API
C#Framework
Editorlist
”Native”C#
Applications
SHARED APL
WS1
SCDAPLCode
WS2
SCDAPLCode
API API
Bridge to C#
C#RefactoredApplications
Service Platform version 2Platform
Infrastructure(Azure /
OnPrem)
![Page 37: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/37.jpg)
© 201918
3-TIER ARCHITECTURE – APL PART
Good old APL FW(Native APL)
APL OO
P(Bootstrapper)
Client API Service (C#)
APL Application API
APL interface .NET interface
![Page 38: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/38.jpg)
© 201918
3-TIER ARCHITECTURE – APL PART
Good old APL FW(Native APL)
APL OO
P(Bootstrapper)
Client API Service (C#)
APL Application API
APL interface .NET interface
You can still develop the 2-tier
![Page 39: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/39.jpg)
© 2019© 2019
LET’S SEE SOME CODE!
19
![Page 40: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/40.jpg)
© 2019© 2019
MODEL DRIVEN UI
20
![Page 41: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/41.jpg)
© 2019
MODEL DRIVEN UI
• On the APL side, we are so lucky that all our forms are described in a descriptive “language”, or rather as a model
• So the transformation from APL UI to models is rather straight forward
• We have chosen JSONForms (https://jsonforms.io/) as our reference, but probably not our target platform
21
![Page 42: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/42.jpg)
© 201922
LAYOUT
![Page 43: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/43.jpg)
© 201923
LAYOUT
• Layout (called UI schema)
• How the data schema elements are positioned on screen
• Absolute positions on existing APL forms are transformed into relative positions on the fly
• Each control refer to an element in the DataSchema
• DataSchema holds further information, e.g. data type, max length, etc.
![Page 44: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/44.jpg)
© 2019© 2019
LET’S SEE AN EXAMPLE!
24
![Page 45: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/45.jpg)
© 2019
Tel:Mobile:
Email:www.simcorp.com
WANT TO KNOW MORE?
25
Stig NielsenLead Developer
+45 20747509
![Page 46: WEB ENABLING SIMCORP DIMENSION - Dyalog - …...SimCorp Dimension … Incapsulate our APL IP inside a new platform \ 挀漀搀攀搀 椀渀 䌀 愀猀礀渀挀 愀眀愀椀琀尩,](https://reader033.fdocuments.us/reader033/viewer/2022050105/5f43d38eaa9da91ea4679abe/html5/thumbnails/46.jpg)
© 2019
LEGAL NOTICEThe contents of this publication are for general information and illustrative purposes only and are used at the reader’s own risk. SimCorp uses all reasonable endeavors to ensure the accuracy of the information. However, SimCorp does not guarantee or warrant the accuracy, completeness, factual correctness, or reliability of any information in this publication and does not accept liability for errors, omissions, inaccuracies, or typographical errors. The views and opinions expressed in this publication are not necessarilythose of SimCorp. © 2019 SimCorp A/S. All rights reserved. Without limiting rights under copyright, no part of this document may be reproduced, stored in, or introduced into a retrieval system, or transmitted in any form, by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose without the express written permission of SimCorp A/S. SimCorp, the SimCorp logo, SimCorp ®, and SimCorp Services are either registered trademarks or trademarks of SimCorp A/S in Denmark and/or other countries. Refer to www.simcorp.com/trademarks for a full list of SimCorp A/S trademarks. Other trademarks referred to in this document are the property of their respective owners.