Skip to Content
0

specified field )" ") has the right type, but its length is incorrect

May 03, 2017 at 08:50 AM

248

avatar image

I am trying to pass an internal table to a SmartForm and show it's contents, but I am getting the error in the title.

I declared the table in the Smartfom in the Form Interface==>Tables like this

I_DRAD LIKE DRAD

In the calling program I created a type like this

BEGIN OF gts_drad,
 doknr TYPE doknr,
 dokvr TYPE dokvr,
 END OF gts_drad,

and an internal table like so

git_drad TYPE STANDARD TABLE OF gts_drad.

and fill it

SELECT doknr dokvr FROM drad INTO TABLE git_drad WHERE dokob = 'MARA' AND objky = gwa_qals-matnr.

after that I call the smartform but it dumps

CALL FUNCTION gv_fname
 EXPORTING
 control_parameters = gwa_control
 output_options = gwa_output
 user_settings = gc_space
 i_qals = gwa_qals
 i_sernr = gv_sernr
 i_name1 = gv_name1
 IMPORTING
 job_output_info = gwa_job_output
 job_output_options = gwa_job_options
 TABLES
 i_qase = git_qase
 i_coplpo = git_plpo
 i_qamr = git_qamr
 i_drad = git_drad
 EXCEPTIONS
 formatting_error = 1
 internal_error = 2
 send_error = 3
 user_canceled = 4
 OTHERS = 5.
10 |10000 characters needed characters left characters exceeded

Could you attach the short dump as a zipped text file? Thanks.

0
* Please Login or Register to Answer, Follow or Comment.

3 Answers

Best Answer
mike senikoglou May 03, 2017 at 09:24 AM
-1

This is what I am doing. please read at the top. Plus I am not getting which field is causing the issue in the dump. it says field " ) )"

Share
10 |10000 characters needed characters left characters exceeded
Evgeny Gubenko May 03, 2017 at 09:18 AM
1

Hi!

Please see, that you declared table type DRAD in your interface and trying to put table with only three fields from the DRAD, so you should declare your table with the same structure as in the form interface to avoid this error

Evgeny

Show 4 Share
10 |10000 characters needed characters left characters exceeded

Hi Evgeny. This is what I am doing I am declaring a table in the table interface like DRAD and I am passing it my 2 field table. Please read the initial post. I am not getting which field is causing the issue. It says field " ) )"

0

It's an evidence that there's a type mismatch between the argument passed (2 components) and the parameter (many more components), so please just ignore the badly written message in the short dump.

The type must match at both sides, so modify the program or smart form accordingly.

0

Table DRAD is a built in table

0

in this code you should set not gts_drad but drad

git_drad TYPE STANDARD TABLE OF gts_drad.
0
mike senikoglou May 03, 2017 at 09:11 AM
-1

this is the dump

 An exception has occurred which is explained in more detail below. The
 exception is assigned to class 'CX_SY_DYN_CALL_ILLEGAL_TYPE' and was not
  caught in procedure
 "SUB_INSPECTION_INSTRUCTIONS" "(FORM)", nor was it propagated by a RAISIN
  clause.
 Since the caller of the procedure could not have anticipated this
 exception, the current program was terminated.
 The reason for the exception is:
 The call to function module "/1BCDWB/SF00000144" is incorrect:


 In the function module interface, it was stipulated that only fields of
 a specific type and length can be specified under "I_DRAD". The currently
 specified field )" ") has the right type, but its length is incorrect.
Share
10 |10000 characters needed characters left characters exceeded