Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

giving type incomaptible

Former Member
0 Kudos

form call_transaction tables p_itab_msg like itab_msg[]

p_itab_bdc structure bdcdata

p_t_zycbt032 structure zycbt032

p_t_dados structure zycbe033<==

using value(p_tcode)

value(p_mode)

value(p_update)

value(p_msgid)

value(p_msgno)

changing p_nrmsg.

PERFORM CALL_TRANSACTION TABLES ITAB_MSG

ITAB_BDC

T_ZYCET005

T_DADOS<==

USING V_TRANSACAO

V_MODE

V_UPDATE

V_MSGID

V_MSGNO

CHANGING V_NRMSG.

Syntax error:

Here actuall parameter "t_dados" is too short for actuall paramter ( table: T_DADOS STRUCTURE ZYCEE005.)

ZYcee005 is of size 134

zycbe033 is of size 94

If we are using zycbe033 for P_T_dados in the form statement it is giving type compatibilty error .

Please help how to replace

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi,

Well use


p_t_dados structure ZYCEE005

in your form definition, no?

Kr,

m.

3 REPLIES 3

Former Member
0 Kudos

Hi,

Well use


p_t_dados structure ZYCEE005

in your form definition, no?

Kr,

m.

former_member206395
Participant
0 Kudos

All the formal and actual variables of the form should be of the same type.

Former Member
0 Kudos

Hi

You can try in this way :

replace p_t_dados structure zycbe033 with p_t_zycee005 of type zycee005 in the form interface


form call_transaction tables p_itab_msg like itab_msg[]
                                             p_itab_bdc structure bdcdata
                                             p_t_zycbt032 structure zycbt032
                                             p_t_zycee005 STRUCTURE ZYCEE005  <-----
                                             ...........
  

Then map the necessary fields of p_t_zycee005 to p_t_dados inside the subroutine..

for example inside the subroutine


  data p_t_dados type table of zycbe033 with header line.
  loop at p_t_zycee005.
  move-corresponding p_t_zycee005 to p_t_dados.
  append p_t_dados.
  endloop.
  

This is just a hint...you should do according to your program logic. All the best