SlideShare a Scribd company logo
TRAX technical highlights
Bob Nemec
TRAX
TRAX is a web based ERP application used by HTS
• Port of VW / GS fat client system started in 2012
• Deployed in 2015
• Used by 450+ people (out of the 650+ people in HTS)
• Includes sales, project management and accounting
• Multi-year plan for future features and growth
• Based in Toronto
Seaside views from VW window spec
#(#{UI.LabelSpec}
#layout: #(#{Core.Point}
20 25) #name:
#uiDescription_L #label:
#uiDescription)
RepWebLabel new name:
#uiDescription_L;
label: #uiDescription;
left: 20; top: 25;
width: -1; height: -1;
finishWidgetSetup;
yourself
Web server interface to GS using XML
GemStone
Browser
VW Seaside
Remote perform
XML String
Result Canvas
XML Parser
Data
RESTful
call
Multiple VW web servers
using Polycephaly
Web server interface to GS using strings
GemStone
Browser
VW Seaside
Request String
Result String
Result Canvas
Evaluate String
Data
Evaluate String
GS Seaside
GemStone Seaside
Browser
Commit on each
interaction
No need to
‘package’ result
Pending updates with data wrappers
GemStone
Browser
Updates held in
data wrapper
Seaside session
handler engages a
‘context’ of data
wrappers
Context
PDF reports
Report display
allows for edit
Layout User Interface
self renderPartList: (
OrderedCollection new
add: self loginIdPart;
add: self firstNamePart;
add: self surnamePart;
add: self emailAddressPart;
add: self defaultCompanyPart;
RepPartNestedTable
newForParent: self
webObject: self webObject
get: [:layout | layout filteredSubJobs] do: [:each | self subJobNestedRowPartFor: each ]
get: #sections do: [:each | self sectionNestedRowPartFor: each]
get: #items do: [:each | self sectionItemNestedRowPartFor: each ]
Seaside code
has access to
domain
Develop in VW / Deploy in GS
Small ‘in-memory’ model for
development and testing
Supervisor for batch & control
Real-time monitoring
Next
• Parts and Inventory System
• Mobile Interface
• Disconnected Application
• Outlook / CRM Integration

More Related Content

PDF
AppeX and JavaScript Support Enhancements in Cincom Smalltalk
ESUG
 
PDF
Towards Modularity in Live Visual Modeling: A case-study with OpenPonk and Ke...
ESUG
 
PDF
AN EXERCISE IN CLEANER CODE - FROM LEGACY TO MAINTAINABLE
Gavin Pickin
 
PDF
Stencil the time for vanilla web components has arrived
Gil Fink
 
PDF
Let's Graph
Fabien de Maestri
 
PDF
Mini-Training: NDepend
Betclic Everest Group Tech Team
 
PPTX
Blazor
Ed Charbeneau
 
PPTX
Building Reliable Applications Using React, .NET & Azure
Maurice De Beijer [MVP]
 
AppeX and JavaScript Support Enhancements in Cincom Smalltalk
ESUG
 
Towards Modularity in Live Visual Modeling: A case-study with OpenPonk and Ke...
ESUG
 
AN EXERCISE IN CLEANER CODE - FROM LEGACY TO MAINTAINABLE
Gavin Pickin
 
Stencil the time for vanilla web components has arrived
Gil Fink
 
Let's Graph
Fabien de Maestri
 
Mini-Training: NDepend
Betclic Everest Group Tech Team
 
Building Reliable Applications Using React, .NET & Azure
Maurice De Beijer [MVP]
 

What's hot (20)

PPTX
Building reliable applications with React, C#, and Azure
Maurice De Beijer [MVP]
 
PPTX
Goodbye JavaScript Hello Blazor
Ed Charbeneau
 
PPTX
Building large and scalable mission critical applications with React
Maurice De Beijer [MVP]
 
PPTX
JavaScript Toolkit
Robert MacLean
 
PPTX
Razor into the Razor'verse
Ed Charbeneau
 
PPTX
Vue micro frontend implementation patterns
Albert Brand
 
PDF
Bodin - Hullin & Potencier - Magento Performance Profiling and Best Practices
Meet Magento Italy
 
PPT
A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …
goodfriday
 
PPTX
Visual Studio: The best tool for web developers.
Robert MacLean
 
PDF
Lessons Learned from Revamping Our Doc Site
Pronovix
 
PPTX
Alex Frank, FCP euro, case study @ open commerce conference 2016
Spark Solutions
 
PPTX
Discuss About ASP.NET MVC 6 and ASP.NET MVC 5
Aaron Jacobson
 
PPTX
Controle do ciclo de vida do desenvolvimento de software com tfs vsts
Rodrigo Kono
 
PDF
Magento 2 Community Project - Moving from LESS to SASS
Bartek Igielski
 
PDF
End-to-end HTML5 APIs - The Geek Gathering 2013
Alexandre Morgaut
 
PPTX
SoftServe - "ASP.NET MVC як наступний крок у розвитку технології розробки Web...
SoftServe
 
PPTX
What’s new in LightSwitch 2013?
Robert MacLean
 
PDF
High Productivity Web Development Workflow
Vũ Nguyễn
 
PPTX
Next.js vs React | what to choose for frontend development_
ForceBolt
 
PDF
GraphQL Bangkok Meetup 6.0
Tobias Meixner
 
Building reliable applications with React, C#, and Azure
Maurice De Beijer [MVP]
 
Goodbye JavaScript Hello Blazor
Ed Charbeneau
 
Building large and scalable mission critical applications with React
Maurice De Beijer [MVP]
 
JavaScript Toolkit
Robert MacLean
 
Razor into the Razor'verse
Ed Charbeneau
 
Vue micro frontend implementation patterns
Albert Brand
 
Bodin - Hullin & Potencier - Magento Performance Profiling and Best Practices
Meet Magento Italy
 
A First Look at Windows Presentation Foundation Everywhere (WPF/E): a Cross …
goodfriday
 
Visual Studio: The best tool for web developers.
Robert MacLean
 
Lessons Learned from Revamping Our Doc Site
Pronovix
 
Alex Frank, FCP euro, case study @ open commerce conference 2016
Spark Solutions
 
Discuss About ASP.NET MVC 6 and ASP.NET MVC 5
Aaron Jacobson
 
Controle do ciclo de vida do desenvolvimento de software com tfs vsts
Rodrigo Kono
 
Magento 2 Community Project - Moving from LESS to SASS
Bartek Igielski
 
End-to-end HTML5 APIs - The Geek Gathering 2013
Alexandre Morgaut
 
SoftServe - "ASP.NET MVC як наступний крок у розвитку технології розробки Web...
SoftServe
 
What’s new in LightSwitch 2013?
Robert MacLean
 
High Productivity Web Development Workflow
Vũ Nguyễn
 
Next.js vs React | what to choose for frontend development_
ForceBolt
 
GraphQL Bangkok Meetup 6.0
Tobias Meixner
 
Ad

Similar to TRAX technical highlights (20)

PDF
IBM - Developing portlets using Script portlet in WP 8001
Vinayak Tavargeri
 
DOCX
Resume Partha Roy
Partha Roy
 
DOCX
8 years of experience in .Net web technologies
Partha Roy
 
PPTX
Hybrid Integration with SAP
BizTalk360
 
PPT
Flex In Dot Net
pradeepfdo
 
PPTX
Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)
Codit
 
DOCX
Charles harper Resume
Charles Harper
 
DOC
Samarendra - CV
Samarendra Sahoo
 
DOC
Saraswathi K_Resume
Saraswathi K
 
PDF
The Current And Future State Of Service Mesh
Ram Vennam
 
PDF
Developex_presentation_v2
Olga Rusu
 
DOCX
Harmeet singh
Harmeet Singh
 
PDF
RGProfile
Rajesh Ganapathy
 
PPTX
fiu-cloud-hackathon-lec1-v6
Kirill Osipov
 
PDF
HostBridge Blue Prism mainframe automation
HostBridge Technology
 
PPTX
"Why Micro Services adoption is crucial for SaaS companies?"
Vignesh Manivannan
 
PDF
Discover How Volvo Cars Uses a Time Series Database to Become Data-Driven
DevOps.com
 
PDF
JAVA J2EE LEAD coming out of CITI
vravi123
 
DOC
Abdul_Kareem_Resume
Abdul Kareem
 
PDF
Customer story - NAC - The journey from Microsoft hybrid cloud to Microsoft n...
Peter Selch Dahl
 
IBM - Developing portlets using Script portlet in WP 8001
Vinayak Tavargeri
 
Resume Partha Roy
Partha Roy
 
8 years of experience in .Net web technologies
Partha Roy
 
Hybrid Integration with SAP
BizTalk360
 
Flex In Dot Net
pradeepfdo
 
Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)
Codit
 
Charles harper Resume
Charles Harper
 
Samarendra - CV
Samarendra Sahoo
 
Saraswathi K_Resume
Saraswathi K
 
The Current And Future State Of Service Mesh
Ram Vennam
 
Developex_presentation_v2
Olga Rusu
 
Harmeet singh
Harmeet Singh
 
RGProfile
Rajesh Ganapathy
 
fiu-cloud-hackathon-lec1-v6
Kirill Osipov
 
HostBridge Blue Prism mainframe automation
HostBridge Technology
 
"Why Micro Services adoption is crucial for SaaS companies?"
Vignesh Manivannan
 
Discover How Volvo Cars Uses a Time Series Database to Become Data-Driven
DevOps.com
 
JAVA J2EE LEAD coming out of CITI
vravi123
 
Abdul_Kareem_Resume
Abdul Kareem
 
Customer story - NAC - The journey from Microsoft hybrid cloud to Microsoft n...
Peter Selch Dahl
 
Ad

More from ESUG (20)

PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
PDF
Micromaid: A simple Mermaid-like chart generator for Pharo
ESUG
 
PDF
Directing Generative AI for Pharo Documentation
ESUG
 
PDF
Even Lighter Than Lightweiht: Augmenting Type Inference with Primitive Heuris...
ESUG
 
PDF
Integrating Executable Requirements in Prototyping
ESUG
 
PDF
Composing and Performing Electronic Music on-the-Fly with Pharo and Coypu
ESUG
 
PDF
Gamifying Agent-Based Models in Cormas: Towards the Playable Architecture for...
ESUG
 
PDF
Analysing Python Machine Learning Notebooks with Moose
ESUG
 
PDF
FASTTypeScript metamodel generation using FAST traits and TreeSitter project
ESUG
 
PDF
Migrating Katalon Studio Tests to Playwright with Model Driven Engineering
ESUG
 
PDF
Package-Aware Approach for Repository-Level Code Completion in Pharo
ESUG
 
PDF
Evaluating Benchmark Quality: a Mutation-Testing- Based Methodology
ESUG
 
PDF
An Analysis of Inline Method Refactoring
ESUG
 
PDF
Identification of unnecessary object allocations using static escape analysis
ESUG
 
PDF
Control flow-sensitive optimizations In the Druid Meta-Compiler
ESUG
 
PDF
Clean Blocks (IWST 2025, Gdansk, Poland)
ESUG
 
PDF
Encoding for Objects Matters (IWST 2025)
ESUG
 
PDF
Challenges of Transpiling Smalltalk to JavaScript
ESUG
 
PDF
Immersive experiences: what Pharo users do!
ESUG
 
PDF
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
ESUG
 
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
Micromaid: A simple Mermaid-like chart generator for Pharo
ESUG
 
Directing Generative AI for Pharo Documentation
ESUG
 
Even Lighter Than Lightweiht: Augmenting Type Inference with Primitive Heuris...
ESUG
 
Integrating Executable Requirements in Prototyping
ESUG
 
Composing and Performing Electronic Music on-the-Fly with Pharo and Coypu
ESUG
 
Gamifying Agent-Based Models in Cormas: Towards the Playable Architecture for...
ESUG
 
Analysing Python Machine Learning Notebooks with Moose
ESUG
 
FASTTypeScript metamodel generation using FAST traits and TreeSitter project
ESUG
 
Migrating Katalon Studio Tests to Playwright with Model Driven Engineering
ESUG
 
Package-Aware Approach for Repository-Level Code Completion in Pharo
ESUG
 
Evaluating Benchmark Quality: a Mutation-Testing- Based Methodology
ESUG
 
An Analysis of Inline Method Refactoring
ESUG
 
Identification of unnecessary object allocations using static escape analysis
ESUG
 
Control flow-sensitive optimizations In the Druid Meta-Compiler
ESUG
 
Clean Blocks (IWST 2025, Gdansk, Poland)
ESUG
 
Encoding for Objects Matters (IWST 2025)
ESUG
 
Challenges of Transpiling Smalltalk to JavaScript
ESUG
 
Immersive experiences: what Pharo users do!
ESUG
 
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
ESUG
 

Recently uploaded (20)

PPTX
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
PDF
vAdobe Premiere Pro 2025 (v25.2.3.004) Crack Pre-Activated Latest
imang66g
 
PPTX
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
PDF
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
PPT
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
PDF
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
PDF
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
PPTX
GALILEO CRS SYSTEM | GALILEO TRAVEL SOFTWARE
philipnathen82
 
PPTX
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
PPTX
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
PDF
Summary Of Odoo 18.1 to 18.4 : The Way For Odoo 19
CandidRoot Solutions Private Limited
 
PPTX
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
PDF
Bandai Playdia The Book - David Glotz
BluePanther6
 
PDF
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
PDF
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
DOCX
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PDF
Exploring AI Agents in Process Industries
amoreira6
 
PPTX
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
PDF
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
vAdobe Premiere Pro 2025 (v25.2.3.004) Crack Pre-Activated Latest
imang66g
 
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
GALILEO CRS SYSTEM | GALILEO TRAVEL SOFTWARE
philipnathen82
 
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
Summary Of Odoo 18.1 to 18.4 : The Way For Odoo 19
CandidRoot Solutions Private Limited
 
Odoo Integration Services by Candidroot Solutions
CandidRoot Solutions Private Limited
 
Bandai Playdia The Book - David Glotz
BluePanther6
 
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
Exploring AI Agents in Process Industries
amoreira6
 
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
Applitools Platform Pulse: What's New and What's Coming - July 2025
Applitools
 

TRAX technical highlights

  • 2. TRAX TRAX is a web based ERP application used by HTS • Port of VW / GS fat client system started in 2012 • Deployed in 2015 • Used by 450+ people (out of the 650+ people in HTS) • Includes sales, project management and accounting • Multi-year plan for future features and growth • Based in Toronto
  • 3. Seaside views from VW window spec #(#{UI.LabelSpec} #layout: #(#{Core.Point} 20 25) #name: #uiDescription_L #label: #uiDescription) RepWebLabel new name: #uiDescription_L; label: #uiDescription; left: 20; top: 25; width: -1; height: -1; finishWidgetSetup; yourself
  • 4. Web server interface to GS using XML GemStone Browser VW Seaside Remote perform XML String Result Canvas XML Parser Data RESTful call Multiple VW web servers using Polycephaly
  • 5. Web server interface to GS using strings GemStone Browser VW Seaside Request String Result String Result Canvas Evaluate String Data Evaluate String
  • 6. GS Seaside GemStone Seaside Browser Commit on each interaction No need to ‘package’ result
  • 7. Pending updates with data wrappers GemStone Browser Updates held in data wrapper Seaside session handler engages a ‘context’ of data wrappers Context
  • 9. Layout User Interface self renderPartList: ( OrderedCollection new add: self loginIdPart; add: self firstNamePart; add: self surnamePart; add: self emailAddressPart; add: self defaultCompanyPart; RepPartNestedTable newForParent: self webObject: self webObject get: [:layout | layout filteredSubJobs] do: [:each | self subJobNestedRowPartFor: each ] get: #sections do: [:each | self sectionNestedRowPartFor: each] get: #items do: [:each | self sectionItemNestedRowPartFor: each ] Seaside code has access to domain
  • 10. Develop in VW / Deploy in GS Small ‘in-memory’ model for development and testing
  • 11. Supervisor for batch & control
  • 13. Next • Parts and Inventory System • Mobile Interface • Disconnected Application • Outlook / CRM Integration