‎2009 Apr 02 8:05 AM
Hello All,
In UCCHECK we come accross error message "MESSAGEG@E". And the message is " "FLD1" must be a character-type field (data type C, N, D, or T). an open control structure introduced by "INTERFACE" ".
Here we were trying to use FLD1 of type decimal/pack variable in string related operations so this message encountered.
But is anybody aware what this phrase "an open control structure introduced by "INTERFACE"" of message mean?
Thanks in advance.
‎2009 Apr 02 8:15 AM
‎2009 Apr 02 8:36 AM
Dear Prabhu Gachhi
Wellcome to SDN.
In move or m ove-corresponding statements that 'FLD1' is not a chareter type for this what u need to do is use a class cl_abap_char_utilities declare a character variable with some length and assign the variable
CALL METHOD CL_ABAP_CONTAINER_UTILITIES=>FILL_CONTAINER_C
EXPORTING
IM_VALUE = fld1
IMPORTING
EX_CONTAINER = v_temp
EXCEPTIONS
ILLEGAL_PARAMETER_TYPE = 1
others = 2.
and place the v_temp i nstead of 'FLD1'
if fld1 is using after the move statmenet again u have to use the same class to reassign the value
CALL METHOD CL_ABAP_CONTAINER_UTILITIES=>READ_CONTAINER_C
EXPORTING
IM_CONTAINER = V_TEMP
IMPORTING
EX_VALUE = fld1
EXCEPTIONS
ILLEGAL_PARAMETER_TYPE = 1
others = 2.
Then u can use the 'fld1' as usual
‎2009 Apr 02 11:55 AM
Hi Krish,
Thanx for ur reply.
But i know this wt u explained my Q is in error message what this phrase "an open control structure introduced by "INTERFACE"" refers to?
Regards,
Prabhu
‎2009 Apr 08 1:06 PM