Hierarchy
⤷
⤷
Properties
| Class | CL_ABAP_DYN_PRG | |
| Short Description | Support for dynamic programming | |
| Super Class | ||
| Instantiability of a Class | 2 | Public |
| Final |
General Data
| Message Class | ||
| Program status | ||
| Category | 0 | |
| Package | SABP | ABAP Runtime Environment |
| Created | 20100706 | SAP |
| Last change | 20140121 | SAP |
| Shared Memory-enabled | ||
| Fixed point arithmetic | ||
| Unicode checks active |
Forward declarations
| # | Type group / Object type | Type | Type Description |
|---|---|---|---|
| 1 | Type group use (TYPE-POOLS tp) | Type group use (TYPE-POOLS tp) |
Interfaces
Class CL_ABAP_DYN_PRG has no interface implemented.
Friends
Class CL_ABAP_DYN_PRG has no friend class.
Attributes
| # | Attribute | Level | Visibility | Read only | Typing | Associated Type | Initial Value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Static Attribute | Private | See coding | 20120410 | |||||
| 2 | Static Attribute | Private | See coding | 20120410 | |||||
| 3 | Constant | Private | See coding | '1' | 20120410 | ||||
| 4 | Constant | Private | See coding | '2' | 20120410 | ||||
| 5 | Constant | Private | See coding | '0' | 20120410 |
Methods
| # | Method | Level | Visibility | Method type | Description | Created on |
|---|---|---|---|---|---|---|
| 1 | Static method | Public | Method | Check whether the input is a valid type c literal | 20120720 | |
| 2 | Static method | Public | Method | Check whether the input can be a column name | 20100709 | |
| 3 | Static method | Public | Method | Check whether the input is a valid integer (optional sign) | 20100709 | |
| 4 | Static method | Public | Method | Check whether the input is a valid type string literal | 20120720 | |
| 5 | Static method | Public | Method | Check whether the input is a DB table name, check package | 20100709 | |
| 6 | Static method | Public | Method | Check whether the input is a DB table name, check package | 20100709 | |
| 7 | Static method | Public | Method | Check whether input is DB table or view name, check package | 20110617 | |
| 8 | Static method | Public | Method | Check whether input is DB table or view name, check package | 20110617 | |
| 9 | Static method | Public | Method | Check whether the input can be a variable name | 20100709 | |
| 10 | Static method | Public | Method | Check whether the input is in a whitelist (string version) | 20100709 | |
| 11 | Static method | Public | Method | Check whether the input is in a whitelist (table version) | 20100709 | |
| 12 | Static method | Public | Method | Escape single quotes | 20100709 | |
| 13 | Static method | Public | Method | Escape backquotes | 20100709 | |
| 14 | Static method | Public | Method | Escape Cascading Style Sheets string for XSS safety | 20110426 | |
| 15 | Static method | Public | Method | Escape Javascript string for XSS safety | 20110426 | |
| 16 | Static method | Public | Method | Escape URL string for XSS safety | 20110426 | |
| 17 | Static method | Public | Method | Escape XML/HTML string for XSS safety | 20110426 | |
| 18 | Static method | Public | Method | Check whether many input values are in a whitelist | 20120918 | |
| 19 | Static method | Public | Method | Check whether many input values are in a whitelist | 20120917 | |
| 20 | Static method | Public | Method | Put single quotes around the value and escape single quotes | 20100709 | |
| 21 | Static method | Public | Method | Put backquotes around the value and escape backquotes | 20100709 | |
| 22 | Static method | Public | Method | Clear the caches of check_table_[or_view]_name_* | 20120717 |
Events
Class CL_ABAP_DYN_PRG has no event.
Types
| # | Type | Visibility | Typing | Associated Type | Description | Created on | Type Source |
|---|---|---|---|---|---|---|---|
| 1 | T_TABLE_CACHE | Private | See coding | Cache for check_table_name_tab | 20120410 | BEGIN OF t_table_cache,
tabname TYPE ddobjname,
incl_sub_packages TYPE abap_bool,
packages TYPE string_hashed_table,
result TYPE c LENGTH 1, " result_okay or
" result_not_a_table or
" result_not_in_package
END OF t_table_cache
|
Method Signatures
Method CHECK_CHAR_LITERAL Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20120720 | |||
| 2 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20120720 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Value is invalid | 20120720 |
Method CHECK_COLUMN_NAME Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | STRICT | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | 20130117 | |||
| 2 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20100709 | |||
| 3 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20100709 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Name is invalid | 20100709 |
Method CHECK_INT_VALUE Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20100709 | |||
| 2 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20100709 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Not an integer | 20100709 |
Method CHECK_STRING_LITERAL Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20120720 | |||
| 2 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20120720 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Value is invalid | 20120720 |
Method CHECK_TABLE_NAME_STR Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | BYPASS_BUFFER | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Don't use the internal cache, access the DB directly | 20120717 | ||
| 2 | INCL_SUB_PACKAGES | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Check for package including sub-packages? | 20100709 | ||
| 3 | PACKAGES | Call by reference | Type reference (TYPE) | CSEQUENCE | Package to which the table shall belong | 20100709 | |||
| 4 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20100709 | |||
| 5 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20100709 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | The value is not the name of a DB table | 20100709 | ||
| 2 | The table is not in the given package | 20100709 |
Method CHECK_TABLE_NAME_TAB Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | BYPASS_BUFFER | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Don't use the internal cache, access the DB directly | 20120717 | ||
| 2 | INCL_SUB_PACKAGES | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Check for package including sub-packages? | 20100709 | ||
| 3 | PACKAGES | Call by reference | Type reference (TYPE) | STRING_HASHED_TABLE | Package to which the table shall belong | 20100709 | |||
| 4 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20100709 | |||
| 5 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20100709 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | The value is not the name of a DB table | 20100709 | ||
| 2 | The table is not in the given package | 20100709 |
Method CHECK_TABLE_OR_VIEW_NAME_STR Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | BYPASS_BUFFER | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Don't use the internal cache, access the DB directly | 20120717 | ||
| 2 | INCL_SUB_PACKAGES | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Check for package including sub-packages? | 20110617 | ||
| 3 | PACKAGES | Call by reference | Type reference (TYPE) | CSEQUENCE | Package to which the table or view shall belong | 20110617 | |||
| 4 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20110617 | |||
| 5 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20110617 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | The given name is not the name of a DB table or view | 20110617 | ||
| 2 | The table is not in the given package | 20110617 |
Method CHECK_TABLE_OR_VIEW_NAME_TAB Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | BYPASS_BUFFER | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Don't use the internal cache, access the DB directly | 20120717 | ||
| 2 | INCL_SUB_PACKAGES | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Check for package including sub-packages? | 20110617 | ||
| 3 | PACKAGES | Call by reference | Type reference (TYPE) | STRING_HASHED_TABLE | Package to which the table or view shall belong | 20110617 | |||
| 4 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20110617 | |||
| 5 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20110617 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | The given name is not the name of a DB table or view | 20110617 | ||
| 2 | The table or view is not in the given package | 20110617 |
Method CHECK_VARIABLE_NAME Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | STRICT | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | 20130117 | |||
| 2 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20100709 | |||
| 3 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20100709 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Name is invalid | 20100709 |
Method CHECK_WHITELIST_STR Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20100709 | |||
| 2 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20100709 | |||
| 3 | WHITELIST | Call by reference | Type reference (TYPE) | CSEQUENCE | Comma-separated list of allowed values | 20100709 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Value is not in the whitelist | 20100709 |
Method CHECK_WHITELIST_TAB Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Input that shall be checked | 20100709 | |||
| 2 | VAL_STR | Value transfer | Type reference (TYPE) | STRING | Same as the input | 20100709 | |||
| 3 | WHITELIST | Call by reference | Type reference (TYPE) | STRING_HASHED_TABLE | table of allowed values | 20100709 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Value is not in the whitelist | 20100709 |
Method ESCAPE_QUOTES Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | OUT | Value transfer | Type reference (TYPE) | STRING | Value in which single quotes are escaped | 20100709 | |||
| 2 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Value in which single quotes shall be escaped | 20100709 |
Method ESCAPE_QUOTES on class CL_ABAP_DYN_PRG has no exception.
Method ESCAPE_QUOTES_STR Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | OUT | Value transfer | Type reference (TYPE) | STRING | Value in which backquotes are escaped | 20100709 | |||
| 2 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Value in which backquotes shall be escaped | 20100709 |
Method ESCAPE_QUOTES_STR on class CL_ABAP_DYN_PRG has no exception.
Method ESCAPE_XSS_CSS Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | ABOVE_FF | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Escape all characters above 0xFF | 20110426 | ||
| 2 | OUT | Value transfer | Type reference (TYPE) | STRING | Escaped value | 20110426 | |||
| 3 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Value to be escaped | 20110426 |
Method ESCAPE_XSS_CSS on class CL_ABAP_DYN_PRG has no exception.
Method ESCAPE_XSS_JAVASCRIPT Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | ABOVE_FF | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Escape all characters above 0xFF | 20110426 | ||
| 2 | OUT | Value transfer | Type reference (TYPE) | STRING | Escaped value | 20110426 | |||
| 3 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Value to be escaped | 20110426 |
Method ESCAPE_XSS_JAVASCRIPT on class CL_ABAP_DYN_PRG has no exception.
Method ESCAPE_XSS_URL Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | OUT | Value transfer | Type reference (TYPE) | STRING | Escaped value | 20110426 | |||
| 2 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Value to be escaped | 20110426 |
Method ESCAPE_XSS_URL on class CL_ABAP_DYN_PRG has no exception.
Method ESCAPE_XSS_XML_HTML Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | ABOVE_FF | Call by reference | Type reference (TYPE) | ABAP_BOOL | ABAP_FALSE | Escape all characters above 0xFF | 20110426 | ||
| 2 | OUT | Value transfer | Type reference (TYPE) | STRING | Escaped value | 20110426 | |||
| 3 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Value to be escaped | 20110426 |
Method ESCAPE_XSS_XML_HTML on class CL_ABAP_DYN_PRG has no exception.
Method MASS_CHECK_WHITELIST_STR Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | VALUES | Call by reference | Type reference (TYPE) | STRING_TABLE | Input values that shall be checked | 20120918 | |||
| 2 | VALUES_RET | Value transfer | Type reference (TYPE) | STRING_TABLE | Same as the input values | 20121029 | |||
| 3 | WHITELIST | Call by reference | Type reference (TYPE) | CSEQUENCE | Comma-separated list of allowed values | 20120918 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Value is not in the whitelist | 20120918 |
Method MASS_CHECK_WHITELIST_TAB Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | VALUES | Call by reference | Type reference (TYPE) | STRING_TABLE | Input values that shall be checked | 20120917 | |||
| 2 | VALUES_RET | Value transfer | Type reference (TYPE) | STRING_TABLE | Same as the input values | 20121029 | |||
| 3 | WHITELIST | Call by reference | Type reference (TYPE) | STRING_HASHED_TABLE | Table of allowed values | 20120917 |
| # | Exception | Resumable | Description | Created on |
|---|---|---|---|---|
| 1 | Value is not in the whitelist | 20120917 |
Method QUOTE Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | OUT | Value transfer | Type reference (TYPE) | STRING | Quoted value | 20100709 | |||
| 2 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Value that shall be enclosed by quotes | 20100709 |
Method QUOTE on class CL_ABAP_DYN_PRG has no exception.
Method QUOTE_STR Signature
| # | Type | Parameter | Pass Value | Optional | Typing Method | Associated Type | Default value | Description | Created on |
|---|---|---|---|---|---|---|---|---|---|
| 1 | OUT | Value transfer | Type reference (TYPE) | STRING | Quoted value | 20100709 | |||
| 2 | VAL | Call by reference | Type reference (TYPE) | CSEQUENCE | Value that shall be enclosed by backquotes | 20100709 |
Method QUOTE_STR on class CL_ABAP_DYN_PRG has no exception.
Method REFRESH_BUFFERS Signature
Method REFRESH_BUFFERS on class CL_ABAP_DYN_PRG has no parameter.
Method REFRESH_BUFFERS on class CL_ABAP_DYN_PRG has no exception.
History
| Last changed by/on | SAP | 20140121 |
| SAP Release Created in | 732 |