SlideShare a Scribd company logo
1 of 18
Download to read offline
Banner XE Trivia
A quick and somewhat random tour of things I’ve learned
Topics
Database changes
Git Repositories
Building from Source
Admin vs. SSB
Config Files and Security
DBEU Adds columns for Grails
USER_ID
ACTIVITY_DATE
SURROGATE_ID
VERSION
DATA_ORIGIN
VPDI_CODE
When an App is Installed
●
●
●
●
●
●

Sequence for Surrogate ID
Population of Surrogate ID and Version
Not nullable Surrogate ID and Version
Trigger for Surrogate ID and Version
Index on Surrogate ID
Unique Constraint on Surrogate ID
Git Repositories
● Available now for all apps...
○ except Catalog & Schedule

● Must request access via Support Center
○ ssh public key (search RSA Key for doc)

● See article in Banner Commons
● See video in Banner Commons
(Download screencast)
ssh git@banner-src.ellucian.com info

Repos
Notice apps
versus plugins
Git Repositories
Set up your working repositories
1. Clone bare to a workstation
2. Set origin URL
3. Push to origin
Fixing Git Repos - Apps Only
1.
2.
3.
4.
5.
6.
7.

Clone to workstation from your origin
Checkout “rel” branch
Create your own branch (fix-urls)
Update the .gitmodules urls
Commit changes
Merge to master
Push back to your origin
Source Code
App versus Plugin (git submodules)
Plugin = Reusable code
git clone pathToAppGitRepoOrigin
git submodule init
Building from Source Code
...You do not have to go this route...
1. grails package
2. grails war AppName.war
3. grails package-release
Yields “release-AppName-x.y.zip
XE Architecture
In addition to Groovy and Grails…
1. Admin uses ZK (http://www.zkoss.org/)
zul pages
2. SSB uses Javascript / AJAX
gsp and JavaScript and Libraries
Banner Admin Page commentsForFunction (GEAFCOM)
commentsForFunction.zul

CommentsForFunctionPageComposer.groovy

apply="com.sungardhe.banner.general.events.CommentsForFunctionPageComposer"

commentsForFunctionKeyBlock.zul

CommentsForFunctionKeyBlock.groovy
BannerGlobals.groovy

Block Group

Key Block is a
Custom ZK
Component !!!

Block
id = functionCommentBlock

FunctionCommentComposer.groovy

apply="com.sungardhe.banner.general.events.FunctionCommentComposer"

Child Block
id = functionSubjectCommentBlock

FunctionSubjectCommentComposer.groovy

apply="com.sungardhe.banner.general.events.FunctionSubjectCommentComposer"
Self Service Apps
Controllers
standard Grails plus AJAX actions
Views - gsp pages
“sub”Views - included gsp
JavaScript
Take a look at
Client side MVC Framework
2 way data binding
Relatively short learning curve
Config Files and Security
Admin
=
INB
=
formControllerMap
Config Files and Security
SSB
=
WebTailor
=
interceptUrlMap
Thank You!
Jim Kane
UNCG - MIS
jim.kane@uncg.edu

More Related Content

Similar to Banner XE CAUSE 2013 Part 2

Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
mfrancis
 

Similar to Banner XE CAUSE 2013 Part 2 (20)

How to debug IoT Agents
How to debug IoT AgentsHow to debug IoT Agents
How to debug IoT Agents
 
Delivering Quality at Speed with GitOps
Delivering Quality at Speed with GitOpsDelivering Quality at Speed with GitOps
Delivering Quality at Speed with GitOps
 
Introduction to git and Github
Introduction to git and GithubIntroduction to git and Github
Introduction to git and Github
 
ASP.NET MVC Workshop for Women in Technology
ASP.NET MVC Workshop for Women in TechnologyASP.NET MVC Workshop for Women in Technology
ASP.NET MVC Workshop for Women in Technology
 
Django app deployment in Azure By Saurabh Agarwal
Django app deployment in Azure By Saurabh AgarwalDjango app deployment in Azure By Saurabh Agarwal
Django app deployment in Azure By Saurabh Agarwal
 
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
 
GitPro Whitepaper
GitPro WhitepaperGitPro Whitepaper
GitPro Whitepaper
 
Django Architecture Introduction
Django Architecture IntroductionDjango Architecture Introduction
Django Architecture Introduction
 
WSO2 Product Release Webinar - WSO2 App Factory 2.1
WSO2 Product Release Webinar - WSO2 App Factory 2.1WSO2 Product Release Webinar - WSO2 App Factory 2.1
WSO2 Product Release Webinar - WSO2 App Factory 2.1
 
Implementing a build manager in Ada
Implementing a build manager in AdaImplementing a build manager in Ada
Implementing a build manager in Ada
 
Salesforce CI (Continuous Integration) - SFDX + Bitbucket Pipelines
Salesforce CI (Continuous Integration) - SFDX + Bitbucket PipelinesSalesforce CI (Continuous Integration) - SFDX + Bitbucket Pipelines
Salesforce CI (Continuous Integration) - SFDX + Bitbucket Pipelines
 
.NET Day - Continuous Deployment Showdown: Traditional CI/CD vs. GitOps
.NET Day - Continuous Deployment Showdown: Traditional CI/CD vs. GitOps.NET Day - Continuous Deployment Showdown: Traditional CI/CD vs. GitOps
.NET Day - Continuous Deployment Showdown: Traditional CI/CD vs. GitOps
 
Node.js on microsoft azure april 2014
Node.js on microsoft azure april 2014Node.js on microsoft azure april 2014
Node.js on microsoft azure april 2014
 
Deploy Application Files with Git
Deploy Application Files with GitDeploy Application Files with Git
Deploy Application Files with Git
 
C# Production Debugging Made Easy
 C# Production Debugging Made Easy C# Production Debugging Made Easy
C# Production Debugging Made Easy
 
Platform - Technical architecture
Platform - Technical architecturePlatform - Technical architecture
Platform - Technical architecture
 
Supercharging your Python Development Environment with VS Code and Dev Contai...
Supercharging your Python Development Environment with VS Code and Dev Contai...Supercharging your Python Development Environment with VS Code and Dev Contai...
Supercharging your Python Development Environment with VS Code and Dev Contai...
 
Gerrit JavaScript Plugins
Gerrit JavaScript PluginsGerrit JavaScript Plugins
Gerrit JavaScript Plugins
 
CIP Developing Curator Tool Wizards
CIP Developing Curator Tool WizardsCIP Developing Curator Tool Wizards
CIP Developing Curator Tool Wizards
 
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
Workflow for Development, Release and Versioning with OSGi / bndtools- Real W...
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Recently uploaded (20)

DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

Banner XE CAUSE 2013 Part 2

  • 1. Banner XE Trivia A quick and somewhat random tour of things I’ve learned
  • 2. Topics Database changes Git Repositories Building from Source Admin vs. SSB Config Files and Security
  • 3. DBEU Adds columns for Grails USER_ID ACTIVITY_DATE SURROGATE_ID VERSION DATA_ORIGIN VPDI_CODE
  • 4. When an App is Installed ● ● ● ● ● ● Sequence for Surrogate ID Population of Surrogate ID and Version Not nullable Surrogate ID and Version Trigger for Surrogate ID and Version Index on Surrogate ID Unique Constraint on Surrogate ID
  • 5. Git Repositories ● Available now for all apps... ○ except Catalog & Schedule ● Must request access via Support Center ○ ssh public key (search RSA Key for doc) ● See article in Banner Commons ● See video in Banner Commons (Download screencast)
  • 7. Git Repositories Set up your working repositories 1. Clone bare to a workstation 2. Set origin URL 3. Push to origin
  • 8. Fixing Git Repos - Apps Only 1. 2. 3. 4. 5. 6. 7. Clone to workstation from your origin Checkout “rel” branch Create your own branch (fix-urls) Update the .gitmodules urls Commit changes Merge to master Push back to your origin
  • 9. Source Code App versus Plugin (git submodules) Plugin = Reusable code git clone pathToAppGitRepoOrigin git submodule init
  • 10. Building from Source Code ...You do not have to go this route... 1. grails package 2. grails war AppName.war 3. grails package-release Yields “release-AppName-x.y.zip
  • 11. XE Architecture In addition to Groovy and Grails… 1. Admin uses ZK (http://www.zkoss.org/) zul pages 2. SSB uses Javascript / AJAX gsp and JavaScript and Libraries
  • 12. Banner Admin Page commentsForFunction (GEAFCOM) commentsForFunction.zul CommentsForFunctionPageComposer.groovy apply="com.sungardhe.banner.general.events.CommentsForFunctionPageComposer" commentsForFunctionKeyBlock.zul CommentsForFunctionKeyBlock.groovy BannerGlobals.groovy Block Group Key Block is a Custom ZK Component !!! Block id = functionCommentBlock FunctionCommentComposer.groovy apply="com.sungardhe.banner.general.events.FunctionCommentComposer" Child Block id = functionSubjectCommentBlock FunctionSubjectCommentComposer.groovy apply="com.sungardhe.banner.general.events.FunctionSubjectCommentComposer"
  • 13. Self Service Apps Controllers standard Grails plus AJAX actions Views - gsp pages “sub”Views - included gsp JavaScript
  • 14. Take a look at Client side MVC Framework 2 way data binding Relatively short learning curve
  • 15.
  • 16. Config Files and Security Admin = INB = formControllerMap
  • 17. Config Files and Security SSB = WebTailor = interceptUrlMap
  • 18. Thank You! Jim Kane UNCG - MIS jim.kane@uncg.edu