SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Introduction to BOL Programming
(Soon) not just for CRM developers… Roel van den Berge
31 januari 2015
Agenda
Web Client UI Framework
BOL Programming
BOL programming examples
Demo Custom GenIL objects: Project Twibap in CRM
Tips, Tricks & useful reads
Q & A
Web Client UI Framework
31 januari 2015
BSP
Presentation
Layer
Design
Layer
UI Components
View Controller CRMUIF
Model
Context Design Layer
R
R
CoreBuffer
Entities & Lookups
BOL
Business Object
Layer
GenIL
Componentset
GenIL Component
R
Root Object
Object
Object
Object
Object
Object
Generic
Interaction Layer
Business Partner
API
Business
Transaction API
…
API
RRR
Application
Programming
Interface
Business Data
Business
Logic
BOL advantages
• Uniform and easy-to-use API
• Built-in buffer that speeds up applications
• No hinder from changes in underlying business logic
• Currently optimized to work with the CRM WebUI
• Possibility to model and implement custom business
logic
31 januari 2015
BOL Programming API
31 januari 2015
Starting the BOL Core
31 januari 2015
Static Searches / Simple Searches
31 januari 2015
Advanced Searches / Dynamic Searches
31 januari 2015
Get and Set Properties of an entity
31 januari 2015
Create a BP entity using BOL programming
DEMO
31 januari 2015
Demo case
• Goal: get tweets of CiberCRM in a table in the WebUI
• API: #Twibap
• GenIL/BOL:
– Simple Object ZTwitter
– Create necessary structures
– Implement GenIL class
• Presentation Layer:
– Create custom component
– Create ZTwitter context nodes in the various parts of the component
– Initialize context nodes (read the tweets)
– Create view with a table to display tweets
31 januari 2015
Code Exchange: Project Twibap
• ABAP OO Twitter API
• OAuth
• JSON parser
• Singleton Instance
• Designed to call all available API methods of Twitter
• Created by Uwe Fetzer (SE38 consulting)
• Extendable by the SDN community
31 januari 2015
Demo Custom GenIL objects: Project Twibap in CRM
DEMO
31 januari 2015
Useful transactions
• CRMC_UI_PROFILE – Defining Business Roles
• SM34: CRMVC_GIL_SO_DEF – Custom GenIL objects
• BSP_WD_CMPWB – BSP component workbench
• SE80 BSP applications – Custom components
• GENIL_MODEL_BROWSER – GenIL relations and attr
• GENIL_BOL_BROWSER – Browse BOL entities
• SAAB – Checkpoint groups BOL* & GENIL*
31 januari 2015
Useful reads
• SAP CRM Web Client – Customizing and Development
– SAP Press – Michael Füchsle & Matthias E. Zierke
• BOL Programming & How To BOL
– To be found in SAP Marketplace (advanced search -> BOL)
• SCN Wiki: CRM Web Client UI Framework
• CRM Web Client UI Framework is available in ERP 6.0
and NetWeaver ABAP
– SDN blog by Thorsten Franz
• Twitter! Follow @thorstenster, @wolf_gregor,
@thomas_jung, @se38
31 januari 2015
Q & A
31 januari 2015
Thank you!
Roel van den Berge
Senior SAP NetWeaver Consultant
CIBER Nederland BV
Meerkollaan 15
Postbus 843
5600 AV Eindhoven
M : +31 (0)6 52 65 99 21
O : +31 (0)40 232 90 90
F : +31 (0)40 232 90 91
I : www.ciber.nl
E : roel.van.den.berge@ciber.nl
T : @roelvdberge
31 januari 2015

Weitere ähnliche Inhalte

Was ist angesagt?

abap list viewer (alv)
abap list viewer (alv)abap list viewer (alv)
abap list viewer (alv)
Kranthi Kumar
 
0106 debugging
0106 debugging0106 debugging
0106 debugging
vkyecc1
 

Was ist angesagt? (20)

Transition to SAP S/4HANA System Conversion: A step-by-step guide
Transition to SAP S/4HANA System Conversion: A step-by-step guide Transition to SAP S/4HANA System Conversion: A step-by-step guide
Transition to SAP S/4HANA System Conversion: A step-by-step guide
 
Sap fiori
Sap fioriSap fiori
Sap fiori
 
abap list viewer (alv)
abap list viewer (alv)abap list viewer (alv)
abap list viewer (alv)
 
Basic Debugging
Basic DebuggingBasic Debugging
Basic Debugging
 
Sap system landscape best practice
Sap system landscape best practiceSap system landscape best practice
Sap system landscape best practice
 
0106 debugging
0106 debugging0106 debugging
0106 debugging
 
Sap scripts
Sap scriptsSap scripts
Sap scripts
 
SAP SD Training | SAP SD Configuration Guide | SAP SD Study Material
SAP SD Training | SAP SD Configuration Guide | SAP SD Study MaterialSAP SD Training | SAP SD Configuration Guide | SAP SD Study Material
SAP SD Training | SAP SD Configuration Guide | SAP SD Study Material
 
Field symbols
Field symbolsField symbols
Field symbols
 
Sap hana tutorial
Sap hana tutorialSap hana tutorial
Sap hana tutorial
 
SAP BADI Implementation Learning for Functional Consultant
SAP BADI Implementation Learning for Functional ConsultantSAP BADI Implementation Learning for Functional Consultant
SAP BADI Implementation Learning for Functional Consultant
 
Sap Fico Configuration Material
Sap Fico Configuration MaterialSap Fico Configuration Material
Sap Fico Configuration Material
 
SAP BI/SD/MM/PP integration
SAP BI/SD/MM/PP integrationSAP BI/SD/MM/PP integration
SAP BI/SD/MM/PP integration
 
Type casting in ooabap
Type casting in ooabapType casting in ooabap
Type casting in ooabap
 
Salesforce ppt
Salesforce pptSalesforce ppt
Salesforce ppt
 
Action profiles in sap
Action profiles in sapAction profiles in sap
Action profiles in sap
 
Maximizing SAP ABAP Performance
Maximizing SAP ABAP PerformanceMaximizing SAP ABAP Performance
Maximizing SAP ABAP Performance
 
Technical Overview of CDS View – SAP HANA Part I
Technical Overview of CDS View – SAP HANA Part ITechnical Overview of CDS View – SAP HANA Part I
Technical Overview of CDS View – SAP HANA Part I
 
Subcontracting process jobwork in gst
Subcontracting process  jobwork in gstSubcontracting process  jobwork in gst
Subcontracting process jobwork in gst
 
Etm equipment and_tools management
Etm equipment and_tools managementEtm equipment and_tools management
Etm equipment and_tools management
 

Andere mochten auch

Sap crm ui cookbook
Sap crm ui  cookbookSap crm ui  cookbook
Sap crm ui cookbook
FAISALSPARTA
 
Are you ready for the screenagers #cm con12
Are you ready for the screenagers   #cm con12Are you ready for the screenagers   #cm con12
Are you ready for the screenagers #cm con12
Jamie Anderson
 
TCRM10 Pesentation
TCRM10 PesentationTCRM10 Pesentation
TCRM10 Pesentation
Ahmed Salman
 

Andere mochten auch (11)

SAP CRM OneOrder Advanced Search WebUI Component - part1
SAP CRM OneOrder Advanced Search WebUI Component - part1SAP CRM OneOrder Advanced Search WebUI Component - part1
SAP CRM OneOrder Advanced Search WebUI Component - part1
 
Crm tech (1)
Crm tech (1)Crm tech (1)
Crm tech (1)
 
SAP CRM OneOrder Advanced Search WebUI Component - part2
SAP CRM OneOrder Advanced Search WebUI Component - part2SAP CRM OneOrder Advanced Search WebUI Component - part2
SAP CRM OneOrder Advanced Search WebUI Component - part2
 
Sap crm ui cookbook
Sap crm ui  cookbookSap crm ui  cookbook
Sap crm ui cookbook
 
Java script by Act Academy
Java script by Act AcademyJava script by Act Academy
Java script by Act Academy
 
Are you ready for the screenagers #cm con12
Are you ready for the screenagers   #cm con12Are you ready for the screenagers   #cm con12
Are you ready for the screenagers #cm con12
 
TCRM10 Pesentation
TCRM10 PesentationTCRM10 Pesentation
TCRM10 Pesentation
 
Metaprogramming JavaScript
Metaprogramming  JavaScriptMetaprogramming  JavaScript
Metaprogramming JavaScript
 
SAP CRM Technical Course Content
SAP CRM Technical Course ContentSAP CRM Technical Course Content
SAP CRM Technical Course Content
 
High Performance JavaScript - WebDirections USA 2010
High Performance JavaScript - WebDirections USA 2010High Performance JavaScript - WebDirections USA 2010
High Performance JavaScript - WebDirections USA 2010
 
Javascript Best Practices
Javascript Best PracticesJavascript Best Practices
Javascript Best Practices
 

Ähnlich wie Introduction to BOL programming

Sap crm technical summary
Sap crm technical summarySap crm technical summary
Sap crm technical summary
Souptik13
 

Ähnlich wie Introduction to BOL programming (20)

Sap crm technical summary
Sap crm technical summarySap crm technical summary
Sap crm technical summary
 
Microsoft power platform
Microsoft power platformMicrosoft power platform
Microsoft power platform
 
UI5con 2019 - Keynote for Rot
UI5con 2019 - Keynote for RotUI5con 2019 - Keynote for Rot
UI5con 2019 - Keynote for Rot
 
Collaborate Canda - Microsoft Dynamics 365 (CRM) v9 new features
Collaborate Canda -  Microsoft  Dynamics 365 (CRM) v9 new featuresCollaborate Canda -  Microsoft  Dynamics 365 (CRM) v9 new features
Collaborate Canda - Microsoft Dynamics 365 (CRM) v9 new features
 
Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
 Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014 Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
Introduction to Business Process Model and Notation (BPMN) - OSSCamp 2014
 
Public v1 real world example of azure functions serverless conf london 2016
Public v1 real world example of azure functions serverless conf london 2016 Public v1 real world example of azure functions serverless conf london 2016
Public v1 real world example of azure functions serverless conf london 2016
 
SAP C4C TECHNICAL TRAINING
SAP C4C TECHNICAL TRAININGSAP C4C TECHNICAL TRAINING
SAP C4C TECHNICAL TRAINING
 
Ms dynamics 365 First Overview
Ms dynamics 365 First OverviewMs dynamics 365 First Overview
Ms dynamics 365 First Overview
 
Business Objects.new & old version
Business Objects.new & old versionBusiness Objects.new & old version
Business Objects.new & old version
 
ML with Power BI for Business and Pros
ML with Power BI for Business and ProsML with Power BI for Business and Pros
ML with Power BI for Business and Pros
 
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL COURSE
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL COURSESAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL COURSE
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL COURSE
 
SAP CRM TECHNICAL LEARN ONLINE | ONLINE SAP CRM TECHNICAL TRAINING
SAP CRM TECHNICAL LEARN ONLINE | ONLINE SAP CRM TECHNICAL TRAININGSAP CRM TECHNICAL LEARN ONLINE | ONLINE SAP CRM TECHNICAL TRAINING
SAP CRM TECHNICAL LEARN ONLINE | ONLINE SAP CRM TECHNICAL TRAINING
 
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICALSAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL
 
SAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL
SAP CRM TECHNICAL  ONLINE TRAINING  | SAP CRM TECHNICALSAP CRM TECHNICAL  ONLINE TRAINING  | SAP CRM TECHNICAL
SAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL
 
SAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL TRAINING
SAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL TRAININGSAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL TRAINING
SAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL TRAINING
 
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL CLASSES
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL CLASSESSAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL CLASSES
SAP CRM TECHNICAL TRAINING | ONLINE SAP CRM TECHNICAL CLASSES
 
SAP CRM TECHNICAL TRAINING | LEARN SAP CRM TECHNICAL
SAP CRM TECHNICAL TRAINING | LEARN SAP CRM TECHNICAL SAP CRM TECHNICAL TRAINING | LEARN SAP CRM TECHNICAL
SAP CRM TECHNICAL TRAINING | LEARN SAP CRM TECHNICAL
 
SAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL
SAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICALSAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL
SAP CRM TECHNICAL ONLINE TRAINING | SAP CRM TECHNICAL
 
SAP CRM TECHNICAL TRAINING | SAP CRM TECHNICAL ONLINE TRAINING
SAP CRM TECHNICAL TRAINING | SAP CRM TECHNICAL ONLINE TRAININGSAP CRM TECHNICAL TRAINING | SAP CRM TECHNICAL ONLINE TRAINING
SAP CRM TECHNICAL TRAINING | SAP CRM TECHNICAL ONLINE TRAINING
 
SAP CRM TECHNICAL TRAINING | LEARN SAP CRM TECHNICAL ONLINE
SAP CRM TECHNICAL TRAINING | LEARN SAP CRM TECHNICAL ONLINE SAP CRM TECHNICAL TRAINING | LEARN SAP CRM TECHNICAL ONLINE
SAP CRM TECHNICAL TRAINING | LEARN SAP CRM TECHNICAL ONLINE
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
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
 
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, ...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 

Introduction to BOL programming

  • 1. Introduction to BOL Programming (Soon) not just for CRM developers… Roel van den Berge 31 januari 2015
  • 2. Agenda Web Client UI Framework BOL Programming BOL programming examples Demo Custom GenIL objects: Project Twibap in CRM Tips, Tricks & useful reads Q & A
  • 3. Web Client UI Framework 31 januari 2015 BSP Presentation Layer Design Layer UI Components View Controller CRMUIF Model Context Design Layer R R CoreBuffer Entities & Lookups BOL Business Object Layer GenIL Componentset GenIL Component R Root Object Object Object Object Object Object Generic Interaction Layer Business Partner API Business Transaction API … API RRR Application Programming Interface Business Data Business Logic
  • 4. BOL advantages • Uniform and easy-to-use API • Built-in buffer that speeds up applications • No hinder from changes in underlying business logic • Currently optimized to work with the CRM WebUI • Possibility to model and implement custom business logic 31 januari 2015
  • 5. BOL Programming API 31 januari 2015
  • 6. Starting the BOL Core 31 januari 2015
  • 7. Static Searches / Simple Searches 31 januari 2015
  • 8. Advanced Searches / Dynamic Searches 31 januari 2015
  • 9. Get and Set Properties of an entity 31 januari 2015
  • 10. Create a BP entity using BOL programming DEMO 31 januari 2015
  • 11. Demo case • Goal: get tweets of CiberCRM in a table in the WebUI • API: #Twibap • GenIL/BOL: – Simple Object ZTwitter – Create necessary structures – Implement GenIL class • Presentation Layer: – Create custom component – Create ZTwitter context nodes in the various parts of the component – Initialize context nodes (read the tweets) – Create view with a table to display tweets 31 januari 2015
  • 12. Code Exchange: Project Twibap • ABAP OO Twitter API • OAuth • JSON parser • Singleton Instance • Designed to call all available API methods of Twitter • Created by Uwe Fetzer (SE38 consulting) • Extendable by the SDN community 31 januari 2015
  • 13. Demo Custom GenIL objects: Project Twibap in CRM DEMO 31 januari 2015
  • 14. Useful transactions • CRMC_UI_PROFILE – Defining Business Roles • SM34: CRMVC_GIL_SO_DEF – Custom GenIL objects • BSP_WD_CMPWB – BSP component workbench • SE80 BSP applications – Custom components • GENIL_MODEL_BROWSER – GenIL relations and attr • GENIL_BOL_BROWSER – Browse BOL entities • SAAB – Checkpoint groups BOL* & GENIL* 31 januari 2015
  • 15. Useful reads • SAP CRM Web Client – Customizing and Development – SAP Press – Michael Füchsle & Matthias E. Zierke • BOL Programming & How To BOL – To be found in SAP Marketplace (advanced search -> BOL) • SCN Wiki: CRM Web Client UI Framework • CRM Web Client UI Framework is available in ERP 6.0 and NetWeaver ABAP – SDN blog by Thorsten Franz • Twitter! Follow @thorstenster, @wolf_gregor, @thomas_jung, @se38 31 januari 2015
  • 16. Q & A 31 januari 2015
  • 17. Thank you! Roel van den Berge Senior SAP NetWeaver Consultant CIBER Nederland BV Meerkollaan 15 Postbus 843 5600 AV Eindhoven M : +31 (0)6 52 65 99 21 O : +31 (0)40 232 90 90 F : +31 (0)40 232 90 91 I : www.ciber.nl E : roel.van.den.berge@ciber.nl T : @roelvdberge 31 januari 2015