Upload
upendra-kumar
View
234
Download
0
Embed Size (px)
Citation preview
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
1/61
Week 2 Unit 1:
Existing Code: Is It Still Valid?
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
2/61
2014 SAP AG or an SAP affiliate company. All rights reserved 2Public
Existing Code: Is It Still Valid?Outline
Content
Code Continuity
Mandatory Adaptions
ABAP Test Cockpit
Runtime Checks
Additional
Material!
i
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
3/61
2014 SAP AG or an SAP affiliate company. All rights reserved 3Public
Existing Code: Is It Still Valid?Migration to SAP HANA
1. Detect
Functional correctness
Performance optimization potential
2. Optimize
Database-oriented programming
3. Explore
Use SAP HANA-specific features
Rethink & innovate
Explore
Optimize
Detect
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
4/61
2014 SAP AG or an SAP affiliate company. All rights reserved 4Public
Existing Code: Is It Still Valid?Code Continuity
Migration to SAP HANA is just a
database migration
Everything works as before, except
Native SQL
DB-specific hints
Implicit DB-specific behavior
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
5/61
2014 SAP AG or an SAP affiliate company. All rights reserved 5Public
Existing Code: Is It Still Valid?Mandatory Adaptations: Examples
Previous usage of Native SQL/hints
Check if Native SQL uses vendor-specific
statements and how they can be replaced
by either Open SQL or native SAP HANA
constructs.
Check if previously used hints are still
needed in adapted form or can be
removed.
" Use of native SQL
EXEC SQL.
ENDEXEC.
" Native SQL via ADBC
lo_result =
NEW cl_sql_statement(
)->execute_query(
'SELECT ROWNUM, *
&& ' FROM SNWD_BPA'
&&' ORDER BY COMPANY_NAME' ).
" Database / Database Interface Hints
SELECT * FROM snwd_soINTO wa FOR ALL ENTRIES IN fae
WHERE node_key = fae-node_key
%_HINTS MSSQLNT'&prefer_join 0&'.
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
6/61
2014 SAP AG or an SAP affiliate company. All rights reserved 6Public
Existing Code: Is It Still Valid?Mandatory Adaptations: Examples
Relying on undocumented behavior
Relying on implicit sorting
Direct access to physical pool/clusters
Checking for existence of secondary indices
" Relying on implicit sorting
SELECT * FROM my_table
INTO TABLE lt_data WHERE id < 100.
READ TABLE lt_data
WITH KEY id = 10 BINARY SEARCH.
" Access to physical pool / cluster
DELETE FROM my_cluster
WHERE timestamp < '01012000'.
" Check for secondary index
IF ( lv_index_exists = abap_true ).
...
ENDIF.
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
7/61 2014 SAP AG or an SAP affiliate company. All rights reserved 7Public
Existing Code: Is It Still Valid?ABAP Test Cockpit
Holistic tools for quality assurance of
ABAP code
Single point of entry for all static code
check tools (Code Inspector, )
Verdicts are reported with priorities Support for quality management
processes
Available with ABAP 7.02 SP12 and
above
Fully integrated into developmentenvironment and transport tools
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
8/61 2014 SAP AG or an SAP affiliate company. All rights reserved 8Public
Existing Code: Is It Still Valid?ABAP Test CockpitUsage
Developers can
Execute checks on single objects,
package hierarchies, or transport orders
Suppress verdicts using pseudo
comments to avoid false positives
Call the ATC from transaction SE80 and
ABAP Development Tools for SAP
NetWeaver
Features for quality managers
Centralexecution runs with notifications
Results of check runs can be transferred
to other systems
Integration with SAP Solution Manager
Additional
Material!i
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
9/61
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
10/61 2014 SAP AG or an SAP affiliate company. All rights reserved 10Public
Existing Code: Is It Still Valid?Runtime Check Monitor
Runtime Checks
Supplement static code checks
Executed in productive system
(negligible performance overhead)
Available for ABAP 7.4 SP2 and above
More information:
SAP Notes 1912445 & 1931870
Wait 4 weeks
select a from
into table
for all entries in
where a = -table_line.
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
11/61 2014 SAP AG or an SAP affiliate company. All rights reserved 11Public
Existing Code: Is It Still Valid?Whats Next?
Week 2 Unit 2
Existing Code: What About Performance?
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
12/61
Contact information:
Thank you
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
13/61 2014 SAP AG or an SAP affiliate company. All rights reserved 13Public
2014 SAP AG or an SAP affiliate company.
All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG or an
SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG
(or an SAP affiliate company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epxfor additional
trademark information and notices.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
National product specifications may vary.
These materials are provided by SAP AG or an SAP affiliate company for informational purposes only, without representation or warranty of any kind,
and SAP AG or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP AG or
SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and
services, if any. Nothing herein should be construed as constituting an additional warranty.
In particular, SAP AG or its aff iliated companies have no obligation to pursue any course of business outlined in this document or any related
presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation, and SAPAGs or its affiliated
companies strategy and possible future developments, products, and/or platform directions and functionality are all subject to change and may be
changed by SAP AG or its affiliated companies at any time for any reason without notice. The information in this document is not a commitment,
promise, or legal obligation to deliver any material, code, or functionality. All forward-looking statements are subject to various risks and uncertaintiesthat could cause actual results to differ materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking
statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.
http://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epx8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
14/61
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
15/61 2014 SAP AG or an SAP affiliate company. All rights reserved 2Public
Existing Code: What About Performance?Outline
Content
Performance Considerations &
Guidelines
Static Code Checks for Performance
Optimization Potential
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
16/61 2014 SAP AG or an SAP affiliate company. All rights reserved 3Public
Existing Code: What About Performance?Migration to SAP HANA
1. Detect
Functional correctness
Performance optimization
potential
2. Optimize
Database-oriented programming
3. Explore
Use SAP HANA-specific features
Rethink & innovate
Explore
Optimize
Detect
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
17/61
2014 SAP AG or an SAP affiliate company. All rights reserved 4Public
Existing Code: What About Performance?Performance Considerations
Performance!
Does SAP HANA automatically improve
performance of my ABAP coding?
Recommendations? Performance guidelines
Tool-based performance analysis
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
18/61
2014 SAP AG or an SAP affiliate company. All rights reserved 5Public
Existing Code: What About Performance?Classical Performance Guidelines and Additions
Keep result sets small
Minimize amount of transferred data
Minimize number of data transfers
Minimize search overhead
Keep unnecessary load away from DB
Even more important;
one specific aspect of
code-to-dataparadigm
Less important; but still
relevant in some cases
Dont burden the DB
with unnecessary
operations
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
19/61
2014 SAP AG or an SAP affiliate company. All rights reserved 6Public
Existing Code: What About Performance?Code Inspector Check Variant PERFORMANCE_DB
Checks ABAP code to determine
where code can most likely be
optimized, for example
SELECT statements
Nested SELECT statements (acrossmodularization units)
EXIT in SELECT loop
Data transfer
Problematic SELECT * statements
Missing WHERE condition
Other performance aspects
Statements that bypass the table buffer
Additional
Material!i
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
20/61
2014 SAP AG or an SAP affiliate company. All rights reserved 7Public
Existing Code: What About Performance?Static Code Analysis: Demo
Check for Optimization Potential
Overview of the available performance
checks
Analysis example of ABAP coding with
the ABAP Test Cockpit
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
21/61
2014 SAP AG or an SAP affiliate company. All rights reserved 8Public
Existing Code: What About Performance?Static Performance Check Coverage
Covered by Static
Checks
Eliminated by
UPL
Dynamic
Code
Unused
Code
Non-Performance-Critical
Code
Code
Relevant forOptimization
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
22/61
2014 SAP AG or an SAP affiliate company. All rights reserved 9Public
Existing Code: What About Performance?Static Performance Check Coverage
Runtime analysis using
SAT or ABAP Profiler,
for example
Dynamic
Code
Unused
Code
Non-Performance-Critical
Code
Code
Relevant forOptimization
Eliminated by
UPL
Covered by Static
Checks
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
23/61
2014 SAP AG or an SAP affiliate company. All rights reserved 10Public
Existing Code: What About Performance?Whats Next?
Week 2 Unit 3
SQL Footprints in Your Productive System
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
24/61
Contact information:
Thank you
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
25/61
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
26/61
Week 2 Unit 3: SQL Footprints in
Your Productive System
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
27/61
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
28/61
2014 SAP AG or an SAP affiliate company. All rights reserved 3Public
SQL Footprints in Your Productive SystemMigration to SAP HANA
1. Detect
Functional correctness
Performance optimization
potential
2. Optimize
Database-oriented programming
3. Explore
Use SAP HANA-specific features
Rethink & innovate
Explore
Optimize
Detect
Additional
Material!i
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
29/61
2014 SAP AG or an SAP affiliate company. All rights reserved 4Public
SQL Footprints in Your Productive SystemStatic Performance Checks
Runtime analysis using
SAT or ABAP Profiler,
for example
Dynamic
Code
Unused
Code
Code
Relevant forOptimization
Covered by Static
Checks
Eliminated by
UPL
Dynamic
Code
Unused
Code
Not performance critical
Code
Coderelevant for
optimization
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
30/61
2014 SAP AG or an SAP affiliate company. All rights reserved 5Public
SQL Footprints in Your Productive SystemExample of a Productive ERP System
Example:A productive ERP system
with 6000 concurrent users
Two weeks in this system means:
50k different business processes
130k different ABAP SQL statements(>15% in customer code)
13B SQL requests (~1B / day)
140B records (~10B / day) read/changed
Where to optimize?
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
31/61
2014 SAP AG or an SAP affiliate company. All rights reserved 6Public
SQL Footprints in Your Productive SystemSQL Monitor
Runtime Code Analysis
SQL profile of productive system
Find SQL performance optimization
potential
Available with ABAP 7.02 SP12 and
above
More information:
SAP Note 1885926
SCN Blog SQL Monitor Unleashed
http://scn.sap.com/community/abap/hana/blog/2013/11/16/sql-monitor-unleashedhttp://scn.sap.com/community/abap/hana/blog/2013/11/16/sql-monitor-unleashed8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
32/61
2014 SAP AG or an SAP affiliate company. All rights reserved 7Public
SQL Footprints in Your Productive SystemArchitecture
SQL MonitorTables
SQL Monitor
Transaction
ApplicationTables
Work Processes
Database Interface
Batch
Job
Runtime
Monitor
Data
Async.
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
33/61
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
34/61
2014 SAP AG or an SAP affiliate company. All rights reserved 9Public
SQL Footprints in Your Productive SystemAdministration of the SQL Monitor (2)
Transaction SQLMoffers simple
management of SQL Monitor
snapshots
Snapshotscan be:
Created based on local data
Imported from file (from other systems, for
example)
Exported to file
Removed
To reduce data volume, basic filter
criteria can be applied before snapshot
creation
Additional
Material!i
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
35/61
2014 SAP AG or an SAP affiliate company. All rights reserved 10Public
SQL Footprints in Your Productive SystemAnalysis of SQL Monitor Data
To display SQL Monitor data
Use transaction SQLMD or
Navigate from transaction SQLM
Specify filter criteria:
Development objects
Requests
Database tables
Choose aggregation type
Select initial sorting
Additional
Material!i
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
36/61
2014 SAP AG or an SAP affiliate company. All rights reserved 11Public
SQL Footprints in Your Productive SystemSQL Monitor: Demo
SQL Monitor
Activation / deactivation
Export / import SQL Monitor data
snapshots
Analyze SQL Monitor data
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
37/61
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
38/61
2014 SAP AG or an SAP affiliate company. All rights reserved 13Public
SQL Footprints in Your Productive SystemImproved Check Coverage
Covered by SQL
Monitor
Covered by Static
Checks
Runtime analysis
e.g. using SAT
Eliminated by
UPL
Dynamic
Code
Unused
Code
Non-Performance-Critical
Code
Code
Relevant forOptimization
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
39/61
2014 SAP AG or an SAP affiliate company. All rights reserved 14Public
SQL Footprints in Your Productive SystemWhats Next?
Week 2 Unit 4
Guided Performance Analysis
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
40/61
Contact information:
Thank you
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
41/61
2014 SAP AG or an SAP affiliate company. All rights reserved 16Public
2014 SAP AG or an SAP affiliate company.
All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG or an
SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG
(or an SAP affiliate company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epxfor additional
trademark information and notices.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
National product specifications may vary.
These materials are provided by SAP AG or an SAP affiliate company for informational purposes only, without representation or warranty of any kind,
and SAP AG or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP AG or
SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and
services, if any. Nothing herein should be construed as constituting an additional warranty.
In particular, SAP AG or its aff iliated companies have no obligation to pursue any course of business outlined in this document or any related
presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation, and SAPAGs or its affiliated
companies strategy and possible future developments, products, and/or platform directions and functionality are all subject to change and may be
changed by SAP AG or its affiliated companies at any time for any reason without notice. The information in this document is not a commitment,
promise, or legal obligation to deliver any material, code, or functionality. All forward-looking statements are subject to various risks and uncertainties
that could cause actual results to differ materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking
statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.
http://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epx8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
42/61
Week 2 Unit 4:
Guided Performance Analysis
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
43/61
2014 SAP AG or an SAP affiliate company. All rights reserved 2Public
Guided Performance AnalysisOutline
Content
Combine Static Code Checks with SQL
Monitor Runtime Data
SQL Performance Tuning Worklist
Performance AnalysisRecommendations
Additional
Material!i
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
44/61
2014 SAP AG or an SAP affiliate company. All rights reserved 3Public
Guided Performance AnalysisCombination of Code Check Results
StaticCode
Checks
RuntimeMonitoring
PrioritizedWorklist
ATC results from
development or
quality system
Combined
information inthe SQL
Performance
Tuning Worklist
(SWLT)
SQL Monitor data
from productive
system
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
45/61
2014 SAP AG or an SAP affiliate company. All rights reserved 4Public
Guided Performance AnalysisSQL Performance Tuning Worklist: Demo
SQL Performance Tuning Worklist
Activation / deactivation
Export / import SQL Monitor data
snapshots
Analyze SQL Monitor data
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
46/61
2014 SAP AG or an SAP affiliate company. All rights reserved 5Public
Guided Performance AnalysisRecommended Procedure
ATC / RTM SQLM / SWLT SQLM / SWLT
Scan forpotentialfunctional
issues
Scan for SQLperformance
hotspots
Correctfunctionalissues andmost criticalperformance
hotspots
Migrate toSAP HANA
Iterativelyrepeat
performancescans
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
47/61
2014 SAP AG or an SAP affiliate company. All rights reserved 6Public
Guided Performance AnalysisWhats Next?
Week 2 Unit 5
Quick Wins: Optimized ALV and Other Improvements
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
48/61
Contact information:
Thank you
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
49/61
2014 SAP AG or an SAP affiliate company. All rights reserved 8Public
2014 SAP AG or an SAP affiliate company.
All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG or an
SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG
(or an SAP affiliate company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epxfor additional
trademark information and notices.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
National product specifications may vary.
These materials are provided by SAP AG or an SAP affiliate company for informational purposes only, without representation or warranty of any kind,
and SAP AG or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP AG or
SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and
services, if any. Nothing herein should be construed as constituting an additional warranty.
In particular, SAP AG or its aff iliated companies have no obligation to pursue any course of business outlined in this document or any related
presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation, and SAPAGs or its affiliated
companies strategy and possible future developments, products, and/or platform directions and functionality are all subject to change and may be
changed by SAP AG or its affiliated companies at any time for any reason without notice. The information in this document is not a commitment,
promise, or legal obligation to deliver any material, code, or functionality. All forward-looking statements are subject to various risks and uncertainties
that could cause actual results to differ materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking
statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.
http://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epx8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
50/61
Week 2 Unit 5: Quick Wins:
Optimized ALV and Other
Improvements
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
51/61
2014 SAP AG or an SAP affiliate company. All rights reserved 2Public
Quick Wins: Optimized ALV and Other ImprovementsOutline
Content
Transparent Optimizations
ABAP List Viewer with Integrated
Data Access
Fault-Tolerant Search Help and Type-Ahead
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
52/61
2014 SAP AG or an SAP affiliate company. All rights reserved 3Public
Quick Wins: Optimized ALV and Other ImprovementsReminder: Transparent Optimizations
Transparent optimizations
Improved tools for performance analysis
Extensions to ABAP and Open SQL
Features for SAP HANA-oriented programming
Re-use components optimized for SAP HANA
ABAP development guidelines
AS ABAP 7.4
Guidelines
Transparent Optimizations
ABAP
applications using SAP HANA
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
53/61
2014 SAP AG or an SAP affiliate company. All rights reserved 4Public
Quick Wins: Optimized ALV and Other ImprovementsABAP List Viewer with Integrated Data Access: Demo
ABAP List Viewer with Integrated
Data Access
Performance gains
Leveraging SAP HANA capabilities
Q O O
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
54/61
2014 SAP AG or an SAP affiliate company. All rights reserved 5Public
Quick Wins: Optimized ALV and Other ImprovementsABAP List Viewer with Integrated Data Access
Optimizations
Result set minimized
Application of code-to-data paradigm
Experience:
Performance improvement
Reduced memory footprint
No truncation of selected data
More Information: http://scn.sap.com/docs/DOC-47994
ABAP Demo Programs in Package
SALV_IDA_TEST SAP
HANA
AS
ABAP
User
Interface
Classical
ALVALV on
SAP HANA
Q i k Wi O ti i d ALV d Oth I t
http://scn.sap.com/docs/DOC-47994http://scn.sap.com/docs/DOC-47994http://scn.sap.com/docs/DOC-47994http://scn.sap.com/docs/DOC-479948/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
55/61
2014 SAP AG or an SAP affiliate company. All rights reserved 6Public
Quick Wins: Optimized ALV and Other ImprovementsFault-Tolerant Search Help: Demo
SAP HANA text search for search
help
Search help & type-ahead
DynPro
FPM WebDynPro
Q i k Wi O ti i d ALV d Oth I t
http://abapci.cloud.sap.corp:50000/sap/bc/webdynpro/sap/s_epm_oia?sap-client=001&sap-language=ENhttp://abapci.cloud.sap.corp:50000/sap/bc/webdynpro/sap/s_epm_oia?sap-client=001&sap-language=ENhttp://abapci.cloud.sap.corp:50000/sap/bc/webdynpro/sap/s_epm_oia?sap-client=001&sap-language=EN8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
56/61
2014 SAP AG or an SAP affiliate company. All rights reserved 7Public
Quick Wins: Optimized ALV and Other ImprovementsSearch Help & Type-Ahead
Search help enhancements
Fault-tolerant search using SAP
HANA
Type-ahead functionality
Technical Prerequisites:
SAP GUI version 7.30 PL6 or
higher
SAP NetWeaver Application Server
ABAP 7.4 SP03 or higher
More Information in SCN:
Type Ahead in DynPro
FPM, ALV & Type Ahead
Q i k Wi O ti i d ALV d Oth Additi l
http://scn.sap.com/docs/DOC-53335http://scn.sap.com/docs/DOC-40576http://scn.sap.com/docs/DOC-40576http://scn.sap.com/docs/DOC-40576http://scn.sap.com/docs/DOC-53335http://scn.sap.com/docs/DOC-533358/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
57/61
2014 SAP AG or an SAP affiliate company. All rights reserved 8Public
Quick Wins: Optimized ALV and Other
Improvements - Search Help with Fuzzy Search (1)
Word suggestion based on the F4
value help data on any database
In addition: Cross-column full text
search based on powerful SAP
HANA Fuzzy Search
Fault-tolerance depending on
specified accuracy value
F4 Value Help and SAP HANA
search results merged in result list
Easy enabling via Search Helpoptions
Further enhancements may be
required
Type-ahead
search settings
Additional
Material!i
Quick Wins: Optimized ALV and Other Additi l
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
58/61
2014 SAP AG or an SAP affiliate company. All rights reserved 9Public
Quick Wins: Optimized ALV and Other
Improvements - Search Help with Fuzzy Search (2)
Input fields with type-ahead-
enabled search help
Field appearance changing
as soon as edited
Input help displayed in a
dropdown box as the
user enters the searchterms
Search dialog with fullresult list and additional
search options
Clickable entry
Additional
Material!i
Q i k Wi O ti i d ALV d Oth I t
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
59/61
2014 SAP AG or an SAP affiliate company. All rights reserved 10Public
Quick Wins: Optimized ALV and Other ImprovementsWhats Next?
Week 3 Unit 1
Recent Open SQL Enhancements - Part 1
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
60/61
Contact information:
Thank you
2014 SAP AG or an SAP affiliate company
8/11/2019 OpenSAP a4h1 Week 2 ABAP Coding Optimize
61/61
2014 SAP AG or an SAP affiliate company.
All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG or an
SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG
(or an SAP affiliate company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epxfor additional
trademark information and notices.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
National product specifications may vary.
These materials are provided by SAP AG or an SAP affiliate company for informational purposes only, without representation or warranty of any kind,
and SAP AG or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP AG or
SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and
services, if any. Nothing herein should be construed as constituting an additional warranty.
In particular, SAP AG or its aff iliated companies have no obligation to pursue any course of business outlined in this document or any related
presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation, and SAPAGs or its affiliated
companies strategy and possible future developments, products, and/or platform directions and functionality are all subject to change and may be
changed by SAP AG or its affiliated companies at any time for any reason without notice. The information in this document is not a commitment,
promise, or legal obligation to deliver any material, code, or functionality. All forward-looking statements are subject to various risks and uncertainties
that could cause actual results to differ materially from expectations. Readers are cautioned not to place undue reliance on these forward-lookingstatements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.
http://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epxhttp://global12.sap.com/corporate-en/legal/copyright/index.epx