ASSIGN_CASTING_ILLEGAL_CAST
Hi All,
In BW 7.40, I am getting following dump while running DTP from data source 0MATERIAL_ATTR to 0MATERIAL.
First time error...not sure, someone please shed some light on this !!!
regards,
The declarations are like below..
i_DATA TYPE TABLE OF STRING WITH HEADER LINE.
<fs> TYPE bussdi2.
bussdi2 is a structure.
If you say, the type decalarations don't match, how does it work with the unicode enabled system then? Because the declarations are exactly the same in both the systems.
Please tell me how i can avoid this dump?
Similar Messages
-
HR_INFOTYPE_OPERATION assign_casting_illegal_cast
hi!
i using HR_INFOTYPE_OPERATION to insert/delete infotype 2001 data!
when run at ASSIGN record TO <record> CASTING TYPE (tabname). "XDP UniCode
will dump out ! ASSIGN_CASTING_ILLEGAL_CAST
error analyze
An exception occurred. This exception will be dealt with in more detail
below. The exception, assigned to the class 'CX_SY_ASSIGN_CAST_ILLEGAL_CAST',
was not caught, which
led to a runtime error. The reason for this exception is:
The error occurred in an
ASSIGN f TO <fs> CASTING.
ASSIGN f TO <fs> CASTING TYPE t.
or
ASSIGN f TO <fs> CASTING LIKE f1.
statement.
This error has two possible causes:
1. Either the field type f or the target type - specified by <fs>, t, or
f1 - contains data references, object references, strings, or internal
tables as components.
The offset and type of the components in each type must match exactly.
2. Either the declared type t or the type of f1 does not match the type
so simulate this case as follow:
field-symbols:<record> type any table.
DATA TABNAME LIKE DNTAB-TABNAME VALUE 'P2001'.
data: RECORD type table of p2001 .
tables:p2001.
p2001-pernr = '11000029'.
p2001-infty = '2001'.
p2001-subty = '0300'.
p2001-begda = '20090305'.
p2001-endda = '20090305'.
p2001-awart = '0300'.
append p2001 to record.
ASSIGN record TO <record> CASTING TYPE (tabname). "XDP UniCode.
when run ASSIGN will dump too!
but i don't how to do!
how to resolue it! thank you very much!thank you!
i have update code reference with you !
but dump again,not change in result!
the source:
data:p_action type PSPAR-ACTIO.
DATA: bapipakey type bapipakey,
PP2001 TYPE TABLE OF P2001 WITH HEADER LINE.
CHECK EFLAG IS INITIAL.
CLEAR WF09_RETURN.
CASE 'X'.
WHEN R_INS.
p_action = 'INS'.
WHEN R_DEL.
p_action = 'DEL'.
ENDCASE.
APPEND WF09_P2001 TO PP2001.
CALL FUNCTION 'HR_INFOTYPE_OPERATION'
EXPORTING
infty = '2001'
subtype = WF09_P2001-SUBTY
number = WF09_P2001-pernr
validityend = WF09_P2001-ENDDA
validitybegin = WF09_P2001-begda
record = PP2001[]
operation = 'INS'
operation = P_ACTION
nocommit = 'X'
IMPORTING
return = WF09_RETURN
key = bapipakey
EXCEPTIONS
OTHERS = 0. -
ASSIGN_CASTING_ILLEGAL_CAST dump
Hi,
I get the ASSIGN_CASTING_ILLEGAL_CAST dump when i execute the statement ASSIGN i_data TO <FS> CASTING.
The statement works fine with the same data in UNICODE enabled system. But it dumps in the unicode disabled system. What could be the problem here?
The declarations are like below..
i_DATA TYPE TABLE OF STRING WITH HEADER LINE.
<fs> TYPE bussdi2.
bussdi2 is a structure.
If you say, the type decalarations don't match, how does it work with the unicode enabled system then? Because the declarations are exactly the same in both the systems.
Please tell me how i can avoid this dump?
Thanks for your answers!!Hi,
"<FS>" and "I_DATA" contain references, internal tables, or strings. In the current statement, these must occur at the same offset position and they must be compatible. But I don't know how it works in the non-unicode system.
Regards,
Ali -
Handling unexpected errors/situations in an ABAP program
Hi,
if i come across a situation where i need to handle a runtime error unexpectedly what should be my approach.
for eg. if i build a dynamic select statement and if my logic goes wrong the program flow should proceed normally as if nothing has happened 'with out giving me a short dump' . what if im not sure about the type of error thats going to show up, is there any way?
your help will be appreciated.
Regards,
ravi.Hi Ravi
Not all exceptions can be overridden. FYI, Below are a list of exceptions that can be handled:
Alphabetical Overview of Catchable Runtime Errors
Below you find an alphabetical list of all catchable runtime errors. For each runtime error, the predefined exception class assigned is specified which is used to handle the respective runtime error as of Release 6.10. If an exception class is assigned to more than one catchable runtime error, it may contain as many message texts as required which you can find in the Class Builder on the Texts tab.
Almost all of the runtime errors listed here are combined together in exception groups. These exception groups are also assigned those ABAP keywords at which the runtime errors contained can be caught.
ADDF_INT_OVERFLOW
Overflow at addition, type I ( ADD ... UNTIL / ADD ... FROM ... TO)
Exception class: CX_SY_ARITHMETIC_OVERFLOW
ASSIGN_CASTING_ILLEGAL_CAST
The components of the source field type and the target type which are strings, tables, or references do not have exactly the same offset and type.
Exception class: CX_SY_ASSIGN_CAST_ILLEGAL_CAST
ASSIGN_CASTING_UNKNOWN_TYPE
The type specified at runtime is unknown.
Exception class: CX_SY_ASSIGN_CAST_UNKNOWN_TYPE
ASSIGN_FIELD_NOT_IN_RANGE
The field is not within the RANGE specified.
Exception class: CX_SY_ASSIGN_OUT_OF_RANGE
BCD_FIELD_OVERFLOW
Overflow at conversion / arithmetic operation (type P, with specified length)
Exception class: CX_SY_CONVERSION_OVERFLOW
BCD_OVERFLOW
Overflow at conversion / arithmetic operation (type P)
Exception class: CX_SY_ARITHMETIC_OVERFLOW
BCD_ZERODIVIDE
Division by 0 (type P)
Exception class: CX_SY_ZERODIVIDE
COMPUTE_ACOS_DOMAIN
Invalid call of the mathematical function ACOS
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_ASIN_DOMAIN
Invalid call of the mathematical function ASIN
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_ATAN_DOMAIN
Invalid call of the mathematical function ATAN
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_BCD_OVERFLOW
Overflow at arithmetic operation (all operands of type P)
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_COSH_DOMAIN
Invalid call of the mathematical function COSH
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_COSH_OVERFLOW
Overflow at mathematical function COSH
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_COS_DOMAIN
Invalid call of the mathematical function COS
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_COS_LOSS
Inaccurate result of function COS
Exception class: CX_SY_PRECISION_LOSS
COMPUTE_EXP_DOMAIN
Invalid call of the mathematical function EXP
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_EXP_RANGE
Overflow or underflow at mathematical function EXP
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_FLOAT_DIV_OVERFLOW
Overflow at division (type F)
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_FLOAT_MINUS_OVERFLOW
Overflow at subtraction (type F)
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_FLOAT_PLUS_OVERFLOW
Overflow at addition (type F)
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_FLOAT_TIMES_OVERFLOW
Overflow at multiplication (type F)
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_FLOAT_ZERODIVIDE
Division by 0 (type F)
Exception class: CX_SY_ZERODIVIDE
COMPUTE_INT_ABS_OVERFLOW
Integer overflow while calculating the absolute value
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_INT_DIV_OVERFLOW
Integer overflow at division
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_INT_MINUS_OVERFLOW
Integer overflow at subtraction
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_INT_PLUS_OVERFLOW
Integer overflow at addition
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_INT_TIMES_OVERFLOW
Integer overflow at multiplication
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_INT_ZERODIVIDE
Division by 0 (type I)
Exception class: CX_SY_ZERODIVIDE
COMPUTE_LOG10_ERROR
Invalid call of the mathematical function LOG10
Exception classes: CX_SY_ARITHMETIC_OVERFLOW, CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_LOG_ERROR
Invalid call of the mathematical function LOG
Exception classes: CX_SY_ARITHMETIC_OVERFLOW, CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_MATH_DOMAIN
Invalid call of a mathematical function
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_MATH_ERROR
Error performing a mathematical function
Exception class: None since this runtime error can no longer be caught
COMPUTE_MATH_LOSS
Inaccurate result of a mathematical function
Exception class: CX_SY_PRECISION_LOSS
COMPUTE_MATH_OVERFLOW
Overflow at a mathematical function
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_MATH_UNDERFLOW
Underflow at a mathematical function
Exception class: None since exception no longer occurs
COMPUTE_POW_DOMAIN
Invalid argument when using powers
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_POW_RANGE
Overflow or underflow when using powers
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_SINH_DOMAIN
Invalid call of the mathematical function SINH
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_SINH_OVERFLOW
Overflow at mathematical function SINH
Exception class: CX_SY_ARITHMETIC_OVERFLOW
COMPUTE_SIN_DOMAIN
Invalid call of the mathematical function SIN
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_SIN_LOSS
Inaccurate result of the function SIN
Exception class: CX_SY_PRECISION_LOSS
COMPUTE_SQRT_DOMAIN
Invalid call of the mathematical function SQRT
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_TANH_DOMAIN
Invalid call of the mathematical function TANH
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_TAN_DOMAIN
Invalid call of the mathematical function TAN
Exception class: CX_SY_ARG_OUT_OF_DOMAIN
COMPUTE_TAN_LOSS
Inaccurate result of the function TAN
Exception class: CX_SY_PRECISION_LOSS
CONNE_IMPORT_WRONG_COMP_DECS
Import error; a component of a structured type in the dataset has wrong decimal places
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
CONNE_IMPORT_WRONG_COMP_LENG
Import error; a component of a structured type in the dataset has the wrong length
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
CONNE_IMPORT_WRONG_COMP_TYPE
Import error; a component of a structured type in the dataset has the wrong type
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
CONNE_IMPORT_WRONG_FIELD_DECS
Import error; a field in the dataset has wrong decimal places
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
CONNE_IMPORT_WRONG_FIELD_LENG
Import error; a field in the dataset has the wrong length
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
CONNE_IMPORT_WRONG_FIELD_TYPE
Import error; a field in the dataset has the wrong type
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
CONNE_IMPORT_WRONG_OBJECT_TYPE
Import error; type conflict between simple and structured data types
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
CONNE_IMPORT_WRONG_STRUCTURE
Import error; type conflict between structured objects
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
CONVT_CODEPAGE
Character set conversion not possible for one or more characters
Exception class: CX_SY_CONVERSION_CODEPAGE
CONVT_CODEPAGE_INIT
Conversion of texts between code pages not supported
Exception class: CX_SY_CODEPAGE_CONVERTER_INIT
CONVT_NO_NUMBER
Value to be converted cannot be interpreted as a number
Exception class: CX_SY_CONVERSION_NO_NUMBER
CONVT_OVERFLOW
Overflow at conversion (all types, not type P)
Exception class: CX_SY_CONVERSION_OVERFLOW
CREATE_DATA_ILLEGAL_DECIMALS
Invalid value for the addition DECIMALS
Exception class: CX_SY_CREATE_DATA_ERROR
CREATE_DATA_ILLEGAL_INIT_SIZE
Invalid value for the addition INITIAL SIZE
Exception class: CX_SY_CREATE_DATA_ERROR
CREATE_DATA_ILLEGAL_LENGTH
Invalid value for the addition LENGTH
Exception class: CX_SY_CREATE_DATA_ERROR
CREATE_DATA_LEN_NOT_ALLOWED
The addition LENGTH was used for a type other than C, N, X, or P
Exception class: CX_SY_CREATE_DATA_ERROR
CREATE_DATA_NOT_ALLOWED_TYPE
The type specified dynamically in the addition TYPE is not typed completely.
Exception class: CX_SY_CREATE_DATA_ERROR
CREATE_DATA_UNKNOWN_TYPE
The type specified in the addition TYPE is unknown.
Exception class: CX_SY_CREATE_DATA_ERROR
CREATE_OBJECT_CLASS_ABSTRACT
You attempted to instantiate an abstract class.
Exception class: CX_SY_CREATE_OBJECT_ERROR
CREATE_OBJECT_CLASS_NOT_FOUND
The class specified in the dynamic CREATE OBJECT was not found.
Exception class: CX_SY_CREATE_OBJECT_ERROR
CREATE_OBJECT_CREATE_PRIVATE
You attempted to create an object of a class defined as 'CREATE PRIVATE'.
Exception class: CX_SY_CREATE_OBJECT_ERROR
CREATE_OBJECT_CREATE_PROTECTED
You attempted to create an object of a class defined as 'CREATE PROTECTED'.
Exception class: CX_SY_CREATE_OBJECT_ERROR
DATA_LENGTH_NEGATIVE
Invalid subfield access: Length negative
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
DATA_LENGTH_0
Invalid subfield access: Length 0
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
DATA_LENGTH_TOO_LARGE
Invalid subfield access: Length too large
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
DATA_OFFSET_NEGATIVE
Invalid subfield access: Offset negative
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
DATA_OFFSET_LENGTH_TOO_LARGE
Invalid subfield access: Offset + length too large
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
DATA_OFFSET_LENGTH_NOT_ALLOWED
Invalid subfield access: Inadequate type
Exception class: CX_SY_OFFSET_NOT_ALLOWED
DATASET_CANT_CLOSE
File could not be closed; there might be no more space in the file system.
Exception class: CX_SY_FILE_CLOSE
DATASET_CANT_OPEN
File cannot be opened
Exception class: CX_SY_FILE_OPEN
DATASET_NO_PIPE
OPEN DATASET with the addition FILTER is not supported on the current operating system.
Exception class: CX_SY_PIPES_NOT_SUPPORTED
DATASET_NO_POSITION
Access to current read/write position of file not possible
Exception class: CX_SY_FILE_POSITION
DATASET_NOT_OPEN
File not open
Exception class: CX_SY_FILE_OPEN_MODE
DATASET_OFFSET_TO_LARGE
Offset specified exceeds the system limit
Exception class: CX_SY_FILE_POSITION
DATASET_PIPE_CLOSED
Pipe for file closed
Exception class: CX_SY_PIPE_REOPEN
DATASET_READ_ERROR
Error reading a file
Exception class: CX_SY_FILE_IO
DATASET_READ_ONLY
File opened in read-only mode
Exception class: CX_SY_FILE_OPEN_MODE
DATASET_SEEK_ERROR
Error positioning in a file
Exception class: CX_SY_FILE_POSITION
DATASET_TOO_MANY_FILES
Maximum number of open files exceeded
Exception class: CX_SY_TOO_MANY_FILES
DATASET_WRITE_ERROR
Error writing a file
Exception class: CX_SY_FILE_IO
DYN_CALL_METH_CLASSCONSTRUCTOR
You attempted to call the class constructor.
Exception class: CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_CLASS_ABSTRACT
You attempted to call an abstract method.
Exception class: CX_SY_DYN_CALL_ILLEGAL_CLASS
DYN_CALL_METH_CLASS_NOT_FOUND
You attempted to call a method of a class that does not exist.
Exception class: CX_SY_DYN_CALL_ILLEGAL_CLASS
DYN_CALL_METH_CONSTRUCTOR
You attempted to call the instance constructor.
Exception class: CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_EXCP_NOT_FOUND
You attempted to catch an unknown exception.
Exception class: CX_SY_DYN_CALL_EXCP_NOT_FOUND
DYN_CALL_METH_NOT_FOUND
You attempted to call an unknown method.
Exception class: CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_NOT_IMPLEMENTED
You attempted to call a method not yet implemented.
Exception class: CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_NO_CLASS_METHOD
You attempted to call an instance method through a class.
Exception class: CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_PARAM_KIND
You attempted to pass a parameter with a wrong parameter type.
Exception class: CX_SY_DYN_CALL_ILLEGAL_TYPE
DYN_CALL_METH_PARAM_LITL_MOVE
You attempted to pass a constant actual parameter to a formal EXPORTING, CHANGING, or RETURNING parameter.
Exception class: CX_SY_DYN_CALL_ILLEGAL_TYPE
DYN_CALL_METH_PARAM_MISSING
A required parameter was not filled.
Exception class: CX_SY_DYN_CALL_PARAM_MISSING
DYN_CALL_METH_PARAM_NOT_FOUND
You attempted to pass an unknown parameter.
Exception class: CX_SY_DYN_CALL_PARAM_NOT_FOUND
DYN_CALL_METH_PARAM_TAB_TYPE
You attempted to pass a parameter with a wrong table type.
Exception class: CX_SY_DYN_CALL_ILLEGAL_TYPE
DYN_CALL_METH_PARAM_TYPE
You attempted to pass a parameter with a wrong type.
Exception class: CX_SY_DYN_CALL_ILLEGAL_TYPE
DYN_CALL_METH_PARREF_INITIAL
An initial data reference was passed for a required parameter.
Exception class: CX_SY_DYN_CALL_PARAM_MISSING
DYN_CALL_METH_PRIVATE
You attempted to call a private method outside.
Exception class: CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_PROTECTED
You attempted to call a protected method outside.
Exception class: CX_SY_DYN_CALL_ILLEGAL_METHOD
DYN_CALL_METH_REF_IS_INITIAL
You attempted to call a method to an initial reference.
Exception class: CX_SY_REF_IS_INITIAL
EXPORT_BUFFER_NO_MEMORY
The EXPORT data cluster is too large for the application buffer.
Exception class: CX_SY_EXPORT_BUFFER_NO_MEMORY
EXPORT_DATASET_CANNOT_OPEN
The IMPORT/EXPORT statement was unable to open the file.
Exception class: CX_SY_FILE_OPEN
EXPORT_DATASET_WRITE_ERROR
The Export statement could not write the file.
Exception class: CX_SY_FILE_IO
GENERATE_SUBPOOL_DIR_FULL
The system is unable to generate another temporary subroutine pool.
Exception class: CX_SY_GENERATE_SUBPOOL_FULL
IMPORT_ALIGNMENT_MISMATCH
Import error; identical sequence of components but with type conflict or with different integration into structured data types
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
IMPORT_TYPE_MISMATCH
Import error; only at IMPORT...FROM MEMORY | FROM SHARED BUFFER...
Exception class: None since this runtime error can not longer be caught
IMPORT_WRONG_END_POS
Import error; dataset has a different length.
Exception class: CX_SY_IMPORT_MISMATCH_ERROR
MOVE_CAST_ERROR
Type conflict assigning between object and/or interface references (only MOVE...?TO... or operator ?=)
Exception class: CX_SY_MOVE_CAST_ERROR
OPEN_DATASET_NO_AUTHORITY
No authorization to access a file
Exception class: CX_SY_FILE_AUTHORITY
OPEN_PIPE_NO_AUTHORITY
No authorization to access a file (OPEN DATASET...FILTER...)
Exception class: CX_SY_FILE_AUTHORITY
PERFORM_PROGRAM_NAME_TOO_LONG
Invalid program name in the PERFORM statement
Exception class: CX_SY_PROGRAM_NOT_FOUND
REFI_WRONG_SECTION
Wrong offset/length specification in the REPLACE statement
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
REPLACE_INFINITE_LOOP
SECTION of length 0 in the REPLACE statement
Exception class: CX_SY_REPLACE_INFINITE_LOOP
RMC_COMMUNICATION_FAILURE
Communication error during Remote Method Call
Exception class: CX_SY_RMC_COMM_FAILURE
RMC_INVALID_STATUS
State error during Remote Method Call
Exception class: CX_SY_RMC_INVALID_STATUS
RMC_SYSTEM_FAILURE
System error during Remote Method Call
Exception class: CX_SY_RMC_SYSTEM_FAILURE
STRING_LENGTH_NEGATIVE
Invalid access with negative length to a string
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
STRING_LENGTH_TOO_LARGE
Invalid access to a string (length too large)
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
STRING_OFFSET_NEGATIVE
Invalid access with negative offset to a string
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
STRING_OFFSET_TOO_LARGE
Invalid access to a string (offset too large)
Exception class: CX_SY_RANGE_OUT_OF_BOUNDS
STRING_OFFSET_LENGTH_TOO_LARGE
Invalid access to a string (offset + length too large)
Exception class: CX_SY_LOCALIZATION_ERROR
TEXTENV_CODEPAGE_NOT_ALLOWED
Character set not released in the system (SET LOCALE...)
TEXTENV_INVALID
Error setting the text environment (SET LOCALE...)
Exception class: CX_SY_LOCALIZATION_ERROR -
'Z' table maintanence generator
Hi,
I am having a 'Z' table with 7 fields. In this 'Z' table I also have a field whose data type is STRING, for which I've created a 'Z' data type and a 'Z' domain.
I am not able to create:
1) Maintainence view using Tale maintanence generator for this table.
Error is get is 'Data type STRING not supported in field SMS'.
2) Neither am I able to maintain/modify entries in table using SE16N and check maintain entries, even after changing attributes as 'Display/Maintenance Allowed'.
Even if I change some entries and click SAVE I get a dump saying
Runtime errors ASSIGN_CASTING_ILLEGAL_CAST
Exception CX_SY_ASSIGN_CAST_ILLEGAL_CAST
Occurred on 10.09.2009 at 11:34:41
Error in an ASSIGN ... CASTING statement in program "SAPLSE16N".
Is it because of my data elemene string or something else?
Please help.
Regards,
AmitHi Amit,
Yes. You are right. Table maintenance generator does not support fields of type with string, raw, rawstring, internal table, object reference etc...
One solution I think is to create a maintenance transaction on your own.
Regards,
Deepika. -
Field symbols in Object Oriented ALV
Hi Friends....Can somebody explain me what is the significance of field symbols in OO ALV. Why it is assigned to Field catalog. Also explain me the basic steps to do Object Oriented ALV. Thanks in advance...
Hi Satyesh,
Field symbols are symbolic names to which a memory area can be assigned during program runtime. A field symbol can be used instead of data objects at operand positions of statements.
Please go through this following code. This uses field symbols for OO ALV.
LCL_TABLE_DISPLAY DEFINITION
CLASS lcl_table_display DEFINITION.
PUBLIC SECTION.
TYPE-POOLS: abap, slis.
CLASS-METHODS: display_list IMPORTING in_data TYPE STANDARD TABLE,
display_grid IMPORTING in_data TYPE STANDARD TABLE.
METHODS: constructor IMPORTING in_data TYPE STANDARD TABLE
EXCEPTIONS casting_error
empty_fieldcat.
METHODS: output_list,
output_grid.
METHODS: set_table_name IMPORTING in_tabname TYPE any,
set_alv_title IMPORTING in_title TYPE any,
set_alv_settings IMPORTING in_settings TYPE any,
set_alv_layout IMPORTING in_layout TYPE any,
set_alv_event IMPORTING in_name TYPE any
in_form TYPE any.
PRIVATE SECTION.
CLASS-DATA: g_table_object TYPE REF TO lcl_table_display.
TYPES: BEGIN OF ty_defin,
fieldname TYPE fieldname,
ref_tabname TYPE tabname,
ref_fieldname TYPE fieldname,
END OF ty_defin.
DATA: g_repid TYPE repid,
g_struc TYPE tabname,
g_table TYPE tabname.
DATA: gt_data TYPE REF TO data.
DATA: g_title TYPE lvc_title,
gt_fcat TYPE slis_t_fieldcat_alv,
gs_sett TYPE lvc_s_glay,
gs_layo TYPE slis_layout_alv,
gt_evnt TYPE slis_t_event.
DATA: gt_defin TYPE TABLE OF ty_defin,
g_level TYPE tabname.
METHODS: output_table IMPORTING data TYPE REF TO data
mode TYPE c,
fill_fieldcat IMPORTING repid TYPE repid
struc TYPE tabname
CHANGING fcat TYPE slis_t_fieldcat_alv
EXCEPTIONS no_definition,
get_definition IMPORTING repid TYPE repid
struc TYPE tabname
CHANGING abap TYPE rsfb_source,
recursive_definition IMPORTING repid TYPE repid
CHANGING abap TYPE rsfb_source,
map_structure IMPORTING source TYPE any
CHANGING destin TYPE any.
ENDCLASS.
LCL_TABLE_DISPLAY IMPLEMENTATION
CLASS lcl_table_display IMPLEMENTATION.
Display table in ALV list
METHOD display_list.
IF NOT g_table_object IS INITIAL.
FREE: g_table_object.
ENDIF.
CREATE OBJECT g_table_object EXPORTING in_data = in_data.
CALL METHOD g_table_object->output_list.
ENDMETHOD.
Display table in ALV grid
METHOD display_grid.
IF NOT g_table_object IS INITIAL.
FREE: g_table_object.
ENDIF.
CREATE OBJECT g_table_object EXPORTING in_data = in_data.
CALL METHOD g_table_object->output_grid.
ENDMETHOD.
Create table display
METHOD constructor.
DATA: ls_data TYPE REF TO data.
DATA: ob_desc TYPE REF TO cl_abap_structdescr.
DATA: l_absol TYPE char200,
l_repid TYPE repid,
l_struc TYPE tabname.
FIELD-SYMBOLS: <table> TYPE STANDARD TABLE,
<struc> TYPE ANY.
Get data and store it into attribute
CREATE DATA me->gt_data LIKE in_data.
ASSIGN me->gt_data->* TO <table>.
<table> = in_data.
Get global data definition
CREATE DATA ls_data LIKE LINE OF <table>.
ASSIGN ls_data->* TO <struc>.
CATCH SYSTEM-EXCEPTIONS assign_casting_illegal_cast = 1.
ob_desc ?= cl_abap_typedescr=>describe_by_data( <struc> ).
ENDCATCH.
IF sy-subrc = 1.
RAISE casting_error.
ENDIF.
Get program name and main type used to define table
l_absol = ob_desc->absolute_name.
SPLIT l_absol AT '\TYPE=' INTO l_repid l_struc.
SHIFT l_repid UP TO '='.
SHIFT l_repid.
CHECK l_struc NP '%_*'.
IF me->g_repid NE l_repid
OR me->g_struc NE l_struc.
Set attributes
me->g_repid = l_repid.
me->g_struc = l_struc.
me->g_table = l_struc.
REPLACE 'TY' WITH 'WT' INTO me->g_table.
Field catalog
CALL METHOD fill_fieldcat EXPORTING repid = l_repid
struc = l_struc
CHANGING fcat = me->gt_fcat.
IF me->gt_fcat IS INITIAL.
RAISE empty_fieldcat.
ENDIF.
ENDIF.
ENDMETHOD.
Output list
METHOD output_list.
CALL METHOD output_table EXPORTING data = me->gt_data
mode = 'L'.
ENDMETHOD.
Output grid
METHOD output_grid.
CALL METHOD output_table EXPORTING data = me->gt_data
mode = 'G'.
ENDMETHOD.
Output table
METHOD output_table.
DATA: ls_vari TYPE disvariant.
FIELD-SYMBOLS: <table> TYPE STANDARD TABLE.
ASSIGN me->gt_data->* TO <table>.
Get default user variant
ls_vari-report = me->g_repid.
ls_vari-username = sy-uname.
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
i_save = 'U'
CHANGING
cs_variant = ls_vari
EXCEPTIONS
OTHERS = 0.
Display table contents
IF mode = 'G'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = me->g_repid
i_grid_title = me->g_title
i_grid_settings = me->gs_sett
is_layout = me->gs_layo
it_fieldcat = me->gt_fcat
i_save = 'U'
is_variant = ls_vari
it_events = me->gt_evnt
TABLES
t_outtab = <table>
EXCEPTIONS
OTHERS = 0.
ELSE.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program = me->g_repid
is_layout = me->gs_layo
it_fieldcat = me->gt_fcat
i_save = 'U'
is_variant = ls_vari
it_events = me->gt_evnt
TABLES
t_outtab = <table>
EXCEPTIONS
OTHERS = 0.
ENDIF.
ENDMETHOD.
Fill field catalog
METHOD fill_fieldcat.
DATA: lt_abap TYPE TABLE OF rssource.
DATA: ls_defin TYPE ty_defin.
DATA: lt_dfies TYPE TABLE OF dfies,
ls_dfies TYPE dfies,
ls_dd04v TYPE dd04v,
ls_dd01v TYPE dd01v,
l_flong TYPE dfies-lfieldname,
l_dname TYPE dfies-domname.
DATA: ls_fcat TYPE slis_fieldcat_alv,
ls_fcat2 TYPE slis_fieldcat_alv.
DATA: l_index TYPE i,
l_nbfld TYPE i.
FREE: me->gt_defin.
Process data definition
CALL METHOD get_definition EXPORTING repid = repid
struc = struc
CHANGING abap = lt_abap.
Process sub levels if required
CALL METHOD recursive_definition EXPORTING repid = repid
CHANGING abap = lt_abap.
IF me->gt_defin IS INITIAL.
RAISE no_definition.
ENDIF.
LOOP AT me->gt_defin INTO ls_defin.
CLEAR: ls_fcat.
MOVE-CORRESPONDING ls_defin TO ls_fcat.
Retrieve info about this field
FREE: ls_dfies, ls_dd04v, ls_dd01v, l_dname.
l_flong = ls_fcat-ref_fieldname.
SET LOCALE LANGUAGE 'E'.
TRANSLATE: ls_fcat-ref_tabname TO UPPER CASE,
ls_fcat-ref_fieldname TO UPPER CASE,
l_flong TO UPPER CASE.
IF NOT ls_fcat-ref_tabname IS INITIAL.
Try to get info about field in table
CALL FUNCTION 'DDIF_FIELDINFO_GET'
EXPORTING
tabname = ls_fcat-ref_tabname
fieldname = ls_fcat-ref_fieldname
lfieldname = l_flong
IMPORTING
dfies_wa = ls_dfies
EXCEPTIONS
not_found = 1
internal_error = 2
OTHERS = 3.
IF sy-subrc = 0.
MOVE-CORRESPONDING ls_dfies TO ls_fcat.
ls_fcat-fieldname = ls_defin-fieldname.
MOVE: ls_dfies-keyflag TO ls_fcat-key,
ls_dfies-scrtext_m TO ls_fcat-seltext_l,
ls_dfies-domname TO l_dname.
ENDIF.
ELSE.
Try to get info about structure
ls_defin-ref_tabname = ls_defin-ref_fieldname.
CALL FUNCTION 'DDIF_FIELDINFO_GET'
EXPORTING
tabname = ls_defin-ref_tabname
TABLES
dfies_tab = lt_dfies
EXCEPTIONS
OTHERS = 0.
IF NOT lt_dfies IS INITIAL.
Process fields of this structure
LOOP AT lt_dfies INTO ls_dfies.
CLEAR: ls_fcat.
MOVE-CORRESPONDING ls_dfies TO ls_fcat.
CONCATENATE ls_defin-fieldname ls_fcat-fieldname
INTO ls_fcat-fieldname
SEPARATED BY '-'.
MOVE ls_dfies-keyflag TO ls_fcat-key.
MOVE ls_dfies-scrtext_m TO ls_fcat-seltext_l.
ls_fcat-tabname = me->g_table.
CLEAR: ls_fcat-col_pos,
ls_fcat-offset.
IF ls_fcat-ref_tabname IS INITIAL.
ls_fcat-ddictxt = 'L'.
ENDIF.
Display Yes/No fields as checkboxes
IF ls_dfies-domname = 'XFELD'.
ls_fcat-checkbox = 'X'.
ENDIF.
Add field to field catalog
APPEND ls_fcat TO fcat.
ENDLOOP.
ELSE.
Try to get info about data element
CALL FUNCTION 'DDIF_DTEL_GET'
EXPORTING
name = ls_fcat-ref_fieldname
langu = sy-langu
IMPORTING
dd04v_wa = ls_dd04v
EXCEPTIONS
illegal_input = 1
OTHERS = 2.
IF sy-subrc = 0.
MOVE-CORRESPONDING ls_dd04v TO ls_fcat.
MOVE: ls_dd04v-scrtext_m TO ls_fcat-seltext_l,
ls_dd04v-domname TO l_dname.
ELSE.
Finally try to get info about domain
CALL FUNCTION 'DDIF_DOMA_GET'
EXPORTING
name = ls_fcat-ref_fieldname
langu = sy-langu
IMPORTING
dd01v_wa = ls_dd01v
EXCEPTIONS
illegal_input = 1
OTHERS = 2.
IF sy-subrc = 0.
MOVE-CORRESPONDING ls_dd01v TO ls_fcat.
MOVE: ls_dd01v-ddtext TO ls_fcat-seltext_l,
ls_dd01v-domname TO l_dname.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
Table name must be internal table containing data
ls_fcat-tabname = g_table.
No offset
CLEAR: ls_fcat-offset.
Default text is stored in long text
IF ls_fcat-ref_tabname IS INITIAL.
ls_fcat-ddictxt = 'L'.
ENDIF.
Display Yes/No fields as checkboxes
IF l_dname = 'XFELD'.
ls_fcat-checkbox = 'X'.
ENDIF.
Add field to field catalog
APPEND ls_fcat TO fcat.
ENDLOOP.
Link between fields
DESCRIBE TABLE fcat LINES l_nbfld.
LOOP AT fcat INTO ls_fcat.
IF sy-tabix NE l_nbfld.
l_index = sy-tabix + 1.
READ TABLE fcat INTO ls_fcat2 INDEX l_index.
IF sy-subrc = 0.
IF ls_fcat-datatype = 'CURR'.
Currency unit
IF ls_fcat2-datatype = 'CUKY'.
ls_fcat-cfieldname = ls_fcat2-fieldname.
ls_fcat-ctabname = ls_fcat2-tabname.
MODIFY fcat FROM ls_fcat.
ELSE.
LOOP AT fcat INTO ls_fcat2
FROM l_index
WHERE datatype = 'CUKY'.
First currency unit after field
ls_fcat-cfieldname = ls_fcat2-fieldname.
ls_fcat-ctabname = ls_fcat2-tabname.
MODIFY fcat FROM ls_fcat.
EXIT.
ENDLOOP.
IF sy-subrc NE 0.
No currency unit after field, try before
READ TABLE fcat INTO ls_fcat2
WITH KEY datatype = 'CUKY'.
IF sy-subrc = 0.
ls_fcat-cfieldname = ls_fcat2-fieldname.
ls_fcat-ctabname = ls_fcat2-tabname.
MODIFY fcat FROM ls_fcat.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
IF ls_fcat-datatype = 'QUAN'.
Quantity unit
IF ls_fcat2-datatype = 'UNIT'.
ls_fcat-cfieldname = ls_fcat2-fieldname.
ls_fcat-ctabname = ls_fcat2-tabname.
MODIFY fcat FROM ls_fcat.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
ENDMETHOD.
Get definition of type from code source
METHOD get_definition.
DATA: l_strng TYPE rssource,
ls_abap TYPE rssource,
l_fdpos TYPE i,
l_first TYPE i,
l_lastr TYPE i.
DATA: lt_incl TYPE TABLE OF repid,
ls_incl TYPE repid.
Get program code
READ REPORT repid INTO abap.
CHECK sy-subrc EQ 0.
Get first line of definition
CONCATENATE 'BEGIN OF' struc INTO l_strng
SEPARATED BY space.
LOOP AT abap INTO ls_abap.
IF ls_abap CS l_strng.
l_fdpos = strlen( l_strng ) + sy-fdpos.
IF ls_abap+l_fdpos(1) CA ', "'.
l_first = sy-tabix.
EXIT.
ENDIF.
ENDIF.
ENDLOOP.
IF l_first IS INITIAL.
Table is defined in an include
CALL FUNCTION 'RS_GET_ALL_INCLUDES'
EXPORTING
program = repid
TABLES
includetab = lt_incl
EXCEPTIONS
OTHERS = 1.
IF sy-subrc = 0.
LOOP AT lt_incl INTO ls_incl.
Try to find definition in this include
READ REPORT ls_incl INTO abap.
LOOP AT abap INTO ls_abap.
IF ls_abap CS l_strng.
l_fdpos = strlen( l_strng ) + sy-fdpos.
IF ls_abap+l_fdpos(1) CA ',. "'.
l_first = sy-tabix.
EXIT.
ENDIF.
ENDIF.
ENDLOOP.
IF NOT l_first IS INITIAL.
EXIT.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
Get last line of definition
CONCATENATE 'END OF' struc INTO l_strng
SEPARATED BY space.
LOOP AT abap INTO ls_abap.
IF ls_abap CS l_strng.
l_fdpos = strlen( l_strng ) + sy-fdpos.
IF ls_abap+l_fdpos(1) CA ',. "'.
l_lastr = sy-tabix - l_first.
EXIT.
ENDIF.
ENDIF.
ENDLOOP.
Keep only relevant code lines
IF l_first LE 0
OR l_lastr LE 0.
REFRESH abap.
ELSE.
DELETE abap TO l_first.
DELETE abap FROM l_lastr.
ENDIF.
ENDMETHOD.
Get definition of type recursively
METHOD recursive_definition.
DATA: lt_token TYPE TABLE OF stokex,
ls_token TYPE stokex,
lt_state TYPE TABLE OF sstmnt,
ls_state TYPE sstmnt.
DATA: ls_defin TYPE ty_defin,
l_reffld TYPE fieldname.
DATA: lt_recu TYPE TABLE OF rssource.
Retrieve tokens
SCAN ABAP-SOURCE abap
TOKENS INTO lt_token
STATEMENTS INTO lt_state.
LOOP AT lt_state INTO ls_state.
CLEAR: ls_defin.
Field name
READ TABLE lt_token INTO ls_token
INDEX ls_state-from.
ls_defin-fieldname = ls_token-str.
Reference type
READ TABLE lt_token INTO ls_token
INDEX ls_state-to.
l_reffld = ls_token-str.
Check if this type is defined in program
FREE: lt_recu.
CALL METHOD get_definition EXPORTING repid = repid
struc = l_reffld
CHANGING abap = lt_recu.
IF lt_recu IS INITIAL.
IF NOT g_level IS INITIAL.
CONCATENATE g_level ls_defin-fieldname INTO ls_defin-fieldname
SEPARATED BY '-'.
CONDENSE ls_defin-fieldname.
ENDIF.
IF l_reffld CS '-'.
SPLIT l_reffld AT '-'
INTO ls_defin-ref_tabname
ls_defin-ref_fieldname.
IF ls_defin-ref_tabname = 'SY'.
ls_defin-ref_tabname = 'SYST'.
ENDIF.
ELSE.
ls_defin-ref_fieldname = ls_token-str.
ENDIF.
APPEND ls_defin TO me->gt_defin.
ELSE.
Process sub levels
IF me->g_level IS INITIAL.
me->g_level = ls_defin-fieldname.
ELSE.
CONCATENATE me->g_level ls_defin-fieldname INTO me->g_level
SEPARATED BY '-'.
ENDIF.
CALL METHOD recursive_definition EXPORTING repid = repid
CHANGING abap = lt_recu.
IF me->g_level CS '-'.
SHIFT me->g_level RIGHT UP TO '-'.
SHIFT me->g_level RIGHT.
SHIFT me->g_level LEFT DELETING LEADING space.
ELSE.
CLEAR: me->g_level.
ENDIF.
ENDIF.
ENDLOOP.
ENDMETHOD.
Set table name
METHOD set_table_name.
me->g_table = in_tabname.
ENDMETHOD.
Set title
METHOD set_alv_title.
me->g_title = in_title.
ENDMETHOD.
Set settings
METHOD set_alv_settings.
CALL METHOD map_structure EXPORTING source = in_settings
CHANGING destin = me->gs_sett.
ENDMETHOD.
Set layout
METHOD set_alv_layout.
CALL METHOD map_structure EXPORTING source = in_layout
CHANGING destin = me->gs_layo.
ENDMETHOD.
Add event
METHOD set_alv_event.
DATA: ls_evnt TYPE slis_alv_event.
ls_evnt-name = in_name.
ls_evnt-form = in_form.
COLLECT ls_evnt INTO gt_evnt.
ENDMETHOD.
Map fields from incoming structure into attribute
METHOD map_structure.
DATA: ob_desc TYPE REF TO cl_abap_structdescr,
ls_compo TYPE abap_compdescr.
FIELD-SYMBOLS: <field> TYPE ANY,
<struc> TYPE ANY.
ob_desc ?= cl_abap_typedescr=>describe_by_data( destin ).
LOOP AT ob_desc->components INTO ls_compo.
ASSIGN COMPONENT ls_compo-name OF STRUCTURE source TO <field>.
IF <field> IS ASSIGNED.
ASSIGN COMPONENT ls_compo-name OF STRUCTURE destin TO <struc>.
CATCH SYSTEM-EXCEPTIONS conversion_errors = 1.
MOVE <field> TO <struc>.
ENDCATCH.
UNASSIGN <field>.
ENDIF.
ENDLOOP.
ENDMETHOD.
ENDCLASS.
PLZ REWARD POINTS -
Hi
Job RWJ_ZHYP failure causing Runtime Error ASSIGN_CASTING_ILLEGAL_CAST in EPD
Need your solution ASAP..
Thanks
JhonyHi
Plese find below dump log:-
Runtime Error ASSIGN_CASTING_ILLEGAL_CAST
Except. CX_SY_ASSIGN_CAST_ILLEGAL_CAST
Date and Time 09.01.2008 07:10:11
Error in ABAP application program.
The current ABAP program "SAPFGRWE" had to be terminated because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
What can you do?
Print out the error message (using the "Print" function)
and make a note of the actions and input that caused the
error.
To resolve the problem, contact your SAP system administrator.
You can use transaction ST22 (ABAP Dump Analysis) to view and administer
termination messages, especially those beyond their normal deletion
date.
is especially useful if you want to keep a particular message.
Error analysis
An exception occurred. This exception is dealt with in more detail below
. The exception, which is assigned to the class
'CX_SY_ASSIGN_CAST_ILLEGAL_CAST', was neither
caught nor passed along using a RAISING clause, in the procedure
"MOVE_DOWNLOAD_STRUCTURE" "(FORM)"
Since the caller of the procedure could not have expected this exception
to occur, the running program was terminated.
The reason for the exception is:
The error occurred in an
ASSIGN f TO <fs> CASTING.
ASSIGN f TO <fs> CASTING TYPE t.
or
ASSIGN f TO <fs> CASTING LIKE f1.
statement.
This error has two possible causes:
1. Either the field type f or the target type - specified by <fs>, t, or
f1 - contains data references, object references, strings, or internal
tables as components.
The offset and type of the components in each type must match exactly.
2. Either the declared type t or the type of f1 does not match the type
of the field symbol <fs>.
Thanks
Jhony -
What is the problem with the code?
Hello, the following is a segment of code that I have written recently:
IF DATA+1(5) <> TEXT-035.
CATCH SYSTEM-EXCEPTIONS WEIRD_ERROR = 4
OTHERS = 8.
END CATCH.
ENDIF.
When I tried to compile the code, it says:
Unable to interpret "SYSTEM-EXCEPTIONS". Possible causes: Incorrect spelling or comma error.
May I know where is the problem with this code? Thanks a lot!
Regards,
AnyiHere is a list of the system exceptions.
Alphabetical List of Catchable Runtime Errors
,,ADDF_INT_OVERFLOW
Overflow in addition with type I ( ADD ... UNTIL / ADD ... FROM ... TO)
,,ASSIGN_CASTING_ILLEGAL_CAST
The offset and type of the source field and the target type do not match exactly in the components that are strings, tables, or references.
,,ASSIGN_CASTING_UNKNOWN_TYPE
The type specified at runtime is unknown.
,,BCD_FIELD_OVERFLOW
Overflow in conversion or arithmetic operations (type P with specified length)
,,BCD_OVERFLOW
Overflow in conversion or arithmetic operation (type P)
,,BCD_ZERODIVIDE
Division by 0 (type P)
,,CALL_METHOD_NOT_IMPLEMENTED
Call of a non-implemented interface method
,,COMPUTE_ACOS_DOMAIN
Invalid call of mathematical function ACOS
,,COMPUTE_ASIN_DOMAIN
Invalid call of mathematical function ASIN
,,COMPUTE_ATAN_DOMAIN
Invalid call of mathematical function ATAN
,,COMPUTE_BCD_OVERFLOW
Overflow in arithmetic operation (all operands type P)
,,COMPUTE_COSH_DOMAIN
Invalid call of mathematical function COSH
,,COMPUTE_COSH_OVERFLOW
Overflow in mathematical function COSH
,,COMPUTE_COS_DOMAIN
Invalid call of mathematical function COS
,,COMPUTE_COS_LOSS
Result of COS function is inexact
,,COMPUTE_EXP_DOMAIN
Invalid call of mathematical function EXP
,,COMPUTE_EXP_RANGE
Over- or underflow in mathematical function EXP
,,COMPUTE_FLOAT_DIV_OVERFLOW
Overflow in division (type F)
,,COMPUTE_FLOAT_MINUS_OVERFLOW
Overflow in subtraction (type F)
,,COMPUTE_FLOAT_PLUS_OVERFLOW
Overflow in addition (type F)
,,COMPUTE_FLOAT_TIMES_OVERFLOW
Overflow in multiplication (type F)
,,COMPUTE_FLOAT_ZERODIVIDE
Division by 0 (type F)
,,COMPUTE_INT_ABS_OVERFLOW
Integer overflow when calculating the absolute value
,,COMPUTE_INT_DIV_OVERFLOW
Integer overflow in division
,,COMPUTE_INT_MINUS_OVERFLOW
Integer overflow in subtraction
,,COMPUTE_INT_PLUS_OVERFLOW
Integer overflow in addition
,,COMPUTE_INT_TIMES_OVERFLOW
Integer overflow in multiplication
,,COMPUTE_INT_ZERODIVIDE
Division by 0 (type I)
,,COMPUTE_LOG10_ERROR
Invalid call of the mathematical function LOG10
,,COMPUTE_LOG_ERROR
Invalid call of the mathematical function LOG
,,COMPUTE_MATH_DOMAIN
Invalid call of a mathematical function
,,COMPUTE_MATH_ERROR
Error executing a mathematical function
,,COMPUTE_MATH_LOSS
Result of a mathematical function is inexact
,,COMPUTE_MATH_OVERFLOW
Overflow of a mathematical function
,,COMPUTE_MATH_UNDERFLOW
Underflow in a mathematical function
,,COMPUTE_POW_DOMAIN
Invalid argument when raising powers
,,COMPUTE_POW_RANGE
Over- or underflow when raising powers
,,COMPUTE_SINH_DOMAIN
Invalid call of the mathematical function SINH
,,COMPUTE_SINH_OVERFLOW
Overflow in the mathematical function SINH
,,COMPUTE_SIN_DOMAIN
Invalid call of the mathematical function SIN
,,COMPUTE_SIN_LOSS
Result of the function SIN is inexact
,,COMPUTE_SQRT_DOMAIN
Invalid call of the mathematical function SQRT
,,COMPUTE_TANH_DOMAIN
Invalid call of the mathematical function TANH
,,COMPUTE_TAN_DOMAIN
Invalid call of the mathematical function TAN
,,COMPUTE_TAN_LOSS
Result of the function TAN is inexact
,,CONNE_IMPORT_WRONG_COMP_LENG
Import error: A component in a structured type in the dataset has an incorrect length
,,CONNE_IMPORT_WRONG_COMP_TYPE
Import error: A component of a structured type in the dataset has an incorrect length
,,CONNE_IMPORT_WRONG_FIELD_LENG
Import error: A field in the dataset has an incorrect length
,,CONNE_IMPORT_WRONG_FIELD_TYPE
Import error: A field in a dataset has the wrong type
,,CONNE_IMPORT_OBJECT_TYPE
Import error: Type conflict between simple and structured data types
,,CONNE_IMPORT_WRONG_STRUCTURE
Import error: Type conflict between structured objects
,,CONVT_HEX_CONFLICT
Conversion conflict (Type X)
,,CONVT_NO_NUMBER
Value for conversion cannot be interpreted as a number
,,CONVT_OVERFLOW
Overflow in conversion (all types except type P)
,,CREATE_DATA_NOT_ALLOWED_TYPE
The statement CREATE DATA cannot be executed with a generic type.
,,CREATE_DATA_UNKNOWN_TYPE
The statement CREATE DATA cannot be executed with an unknown type.
,,CREATE_OBJECT_CLASS_ABSTRACT
Attempt to instantiate an abstract class.
,,CREATE_OBJECT_CLASS_NOT_FOUND
The class specified with a dynamic CREATE OBJECT was not found.
,,CREATE_OBJECT_CREATE_PRIVATE
Attempt to create an object of a class defined as 'CREATE PRIVATE'.
,,CREATE_OBJECT_CREATE_PROTECTED
Attempt to create an object of a class defined as 'CREATE PROTECTED'.
,,DATA_LENGTH_NEGATIVE
Invalid subfield access: Negative length
,,DATA_LENGTH_0
Invalid subfield access: Length 0
,,DATA_LENGTH_TOO_LARGE
Invalid subfield access: Length too large
,,DATA_OFFSET_NEGATIVE
Invalid subfield access: Negative offset
,,DATA_OFFSET_TOO_LARGE
Invalid subfield access: Offset too large
,,DATA_OFFSET_LENGTH_TOO_LARGE
Invalid subfield access: Offset + length too large
,,DATA_OFFSET_LENGTH_NOT_ALLOWED
Invalid subfield access: Type not appropriate
,,DATASET_CANT_CLOSE
Unable to close file. There may be no space left in the file system
,,DATASET_CANT_OPEN
Unable to open file
,,DATASET_NO_PIPE
The FILTER addition to the OPEN DATASET statement is not supported on the current operating system
,,DATASET_READ_ERROR
Error reading a file
,,DATASET_TOO_MANY_FILES
Maximum number of open files exceeded
,,DATASET_WRITE_ERROR
Error writing to a file
,,DYN_CALL_METH_CLASSCONSTRUCTOR
Attempt to call the class constructor
,,DYN_CALL_METH_CLASS_ABSTRACT
Attempt to call an abstract method
,,DYN_CALL_METH_CLASS_NOT_FOUND
Attempt to call a method of a non-existent class
,,DYN_CALL_METH_CONSTRUCTOR
Attempt to call the instance constructor
,,DYN_CALL_METH_EXCP_NOT_FOUND
Attempt to catch an unknown exception
,,DYN_CALL_METH_NOT_FOUND
Attempt to call an unknown method
,,DYN_CALL_METH_NOT_IMPLEMENTED
Attempt to call a method that has not been implemented yet
,,DYN_CALL_METH_NO_CLASS_METHOD
Attempt to call an instance method via a class
Attempt to pass a parameter with an incorrect parameter type
,,DYN_CALL_METH_PARAM_LITL_MOVE
Attempt to pass a constant actual parameter to a formal EXPORTING, CHANGING or RETURNING parameter
,,DYN_CALL_METH_PARAM_MISSING
An obligatory parameter was not supplied.
,,DYN_CALL_METH_PARAM_NOT_FOUND
Attempt to pass an unknown parameter
,,DYN_CALL_METH_PARAM_TAB_TYPE
Attempt to pass a parameter with an incorrect table type
,,DYN_CALL_METH_PARAM_TYPE
Attempt to pass a parameter with an incorrect type
,,DYN_CALL_METH_PARREF_INITIAL
An initial data reference was passed for an mandatory parameter.
,,DYN_CALL_METH_PRIVATE
Attempt to call a private method from outside
,,DYN_CALL_METH_PROTECTED
Attempt to call a protected method from outside
,,DYN_CALL_METH_REF_IS_INITIAL
Attempt to call a method with an initial reference
,,EXPORT_BUFFER_NO_MEMORY
The EXPORT data cluster is too large for the application buffer
,,EXPORT_DATASET_CANNOT_OPEN
The IMPORT/EXPORT statement could not open the file
,,EXPORT_DATASET_WRITE_ERROR
The EXPORT statement could not write to the file
,,GENERATE_SUBPOOL_DIR_FULL
The system cannot generate any more temporary subroutine pools
,,IMPORT_ALIGNMENT_MISMATCH
Import error: Same sequence of components, but with type conflict or different alignment in structured data types
,,IMPORT_TYPE_MISMATCH
Import error: Only with IMPORT...FROM MEMORY | FROM SHARED BUFFER...
,,MOVE_CAST_ERROR
Type conflict when assigning between object and interface references (only MOVE...?TO... or operator ?=)
,,OPEN_DATASET_NO_AUTHORITY
No authorizatino to access the file
,,OPEN_PIPE_NO_AUTHORITY
No authorization to access the file (OPEN DATASET...FILTER...).
,,PERFORM_PROGRAM_NAME_TOO_LONG
Invalid program name with PERFORM statement
,,RMC_COMMUNICATION_FAILURE
Communication error with Remote Method Call
,,RMC_INVALID_STATUS
Status error with Remote Method Call
,,RMC_SYSTEM_FAILURE
System error with Remote Method Call
,,STRING_LENGTH_NEGATIVE
Invalid access with negative length to a string
,,STRING_LENGTH_TOO_LARGE
Invalid access to a string (length too large)
,,STRING_OFFSET_NEGATIVE
Invalid access with negative offset to a string
,,STRING_OFFSET_TOO_LARGE
Invalid access to a string (offset too large)
,,STRING_OFFSET_LENGTH_TOO_LARGE
Invalid access to a string (offset + length too large)
,,TEXTENV_CODEPAGE_NOT_ALLOWED
Character set is not released in the system (SET LOCALE...)
,,TEXTENV_INVALID
Error setting the text environment (SET LOCALE...)
,,TEXTENV_KEY_INVALID
With SET LOCALE...: Value of LANGUAGE, COUNTRY or MODIFIER that is not allowed in the system.
,,TEXTENV_LANGUAGE_NOT_ALLOWED
With SET LOCALE...: Invalid value of the LANGUAGE addition.
What version of SAP are you on? If on a newer version you may be able to create your own exception class.
Regards,
Rich Heilman
Maybe you are looking for
-
Oracle 10g R2 installation problem in HP-UX Itanium 11.23 64 bit
platform desc: HP-UX 64 bit Itanium 11.23 Oracle 10.2 I fulfill all the prerequisites (environment setup, kernel parameter update properly, user/group creation properly). But while i'm starting the ./runInstaller then I got error which i cant define
-
How to rename sections in CR XI R2 Report Designer?
Hello! I have developed a number of reports with the Report Designer Component in Visual Basic. In the RDC, you can rename the report sections using the VB properites for that section. I am saving these reports as .rpt files so that I can display t
-
Sometimes I have tabs open that I only need for a short time and I don't want to bookmark them. I want my windows & tabs restored as the were and I can't get this by simply restoring session after I've had to close Firefox for an update of something
-
FV 60 document is stored in VBKPF table. I would need cost center KOSTL
When parking FI document in transaction FV 60 document is stored in VBKPF table. I would need cost center KOSTL. this is not entered in table VBKPF. Where could I find KOSTL and what is connection
-
How to make personas look a lot bigger.
Firefox 4 basically cuts the persona in half and you can't see it. I liked fire fox 4 i just want to see the full persona again not one quarter of it.