cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with a method.

Former Member
0 Kudos

Hi!!

I create a server proxy but into the method I want to loop an internal table and the system present to me this error:

"T_BSIS" is neither specified under "TABLES" nor is it defined as an internal table.

Any body can help me!!

This is my code:

METHOD zcm_ii_interface_bal_info~execute_asynchronous.

DATA: date TYPE zbalanceint-zdate.

DATA: company_code TYPE zbalanceint-zcode.

DATA: gl_account TYPE zbalanceint-zaccount.

DATA: profit_center TYPE zbalanceint-zcenter.

DATA: subsidiary_balance TYPE zbalanceint-zbalance.

DATA: BEGIN OF t_bsis,

bukrs TYPE bsis-bukrs,

kunnr TYPE kna1-kunnr,

END OF t_bsis.

  • Convert Input Parameters

date = '01/12/05'.

company_code = '0101'.

gl_account = '014000202'.

profit_center = '0220'.

subsidiary_balance = '500.00'.

BREAK-POINT.

SELECT kunnr INTO t_bsis

FROM kna1.

ENDSELECT.

LOOP AT t_bsis.

WRITE: t_bsis-kunnr.

ENDLOOP.

ENDMETHOD.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Carlos,

if you want use it as an internal table then..

use occurs 0 addition as shown below

DATA: BEGIN OF t_bsis occurs 0,

bukrs TYPE bsis-bukrs,

kunnr TYPE kna1-kunnr,

END OF t_bsis.

Also use TBALE addition in the select statement..

SELECT kunnr INTO TABLE t_bsis

FROM kna1.

Regards

Anand

Former Member
0 Kudos

Hi Carlos,

The Methods in OO ABAP do not recommend the Occurs 0. Using this may give a Syntax error. The recommended way is to have internal tables without header lines.

This code should work:

METHOD zcm_ii_interface_bal_info~execute_asynchronous.

DATA: date TYPE zbalanceint-zdate.

DATA: company_code TYPE zbalanceint-zcode.

DATA: gl_account TYPE zbalanceint-zaccount.

DATA: profit_center TYPE zbalanceint-zcenter.

DATA: subsidiary_balance TYPE zbalanceint-zbalance.

DATA: BEGIN OF ls_bsis,

bukrs TYPE bsis-bukrs,

kunnr TYPE kna1-kunnr,

END OF ls_bsis.

data: lt_bsis like table of ls_bsis.

  • Convert Input Parameters

date = '01/12/05'.

company_code = '0101'.

gl_account = '014000202'.

profit_center = '0220'.

subsidiary_balance = '500.00'.

BREAK-POINT.

SELECT kunnr INTO table lt_bsis FROM kna1.

LOOP AT lt_bsis into ls_bsis.

*WRITE:/ ls_bsis-kunnr.

*Or other desired coding

ENDLOOP.

ENDMETHOD.

Answers (1)

Answers (1)

Former Member
0 Kudos

Thanks very much to both, the problem is resolved with your codes.

The code of Anand help me with the table into the select and the code of Bhanumurthy help me with the occurs.

Thanks very much. I dont know how bring points to both, but I think that the system only permit points for one person.

If exist the form to give points to both tell me please.

Thanks again!!!

Former Member
0 Kudos

Hi Carlos,

Glad to know that your problem was solved..

You can give points to multiple persons.

You can assign points for

Solved My Problem - 10 points - 1 assignment per post

Very Helpful - 6 points - multiple assingnment per post

Helpful - 2 points - unlimited

Just choose the points you want assign against each persons post.

Regards

Anand