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: 

Structure of hash table for FM

Former Member
0 Kudos

Hi,

I was wondering if you could help me with this. I have a FM that has the following parameters in the source code:

FUNCTION zzzzz.

*"----


""Local Interface:

*" IMPORTING

*" REFERENCE(I_AREA) TYPE UPC_Y_AREA

*" REFERENCE(I_PLEVEL) TYPE UPC_Y_PLEVEL

*" REFERENCE(I_METHOD) TYPE UPC_Y_METHOD

*" REFERENCE(I_PARAM) TYPE UPC_Y_PARAM

*" REFERENCE(I_PACKAGE) TYPE UPC_Y_PACKAGE

*" REFERENCE(IT_EXITP) TYPE UPF_YT_EXITP

*" REFERENCE(ITO_CHASEL) TYPE UPC_YTO_CHASEL

*" REFERENCE(ITO_CHA) TYPE UPC_YTO_CHA

*" REFERENCE(ITO_KYF) TYPE UPC_YTO_KYF

*" EXPORTING

*" REFERENCE(ET_MESG) TYPE UPC_YT_MESG

*" CHANGING

*" REFERENCE(XTH_DATA) TYPE HASHED TABLE

*"----


Exactly what is the structure of XTH_DATA. I have data in the transparent table and ready to move to XTH_DATA. I tried to create a similar hash table with the required field and move using [], but it keeps complaining about tables are not compatible.

What should I define my hash table to be to move the results to XTH_DATA? Does it have to be the same structure with that of UPC_YTO_CHASEL?

Thanks,

RT

Message was edited by: Rob Thomas

1 ACCEPTED SOLUTION

RichHeilman
Developer Advocate
Developer Advocate
0 Kudos

Does your interal table that you are moving from, have a header line defined? If so, try defining with a header line, and use a work area instead.

Regards,

Rich Heilman

5 REPLIES 5

RichHeilman
Developer Advocate
Developer Advocate
0 Kudos

Does your interal table that you are moving from, have a header line defined? If so, try defining with a header line, and use a work area instead.

Regards,

Rich Heilman

0 Kudos

Hi,

Yes I defined the internal table with the header line. Maybe what I am doing is incorrect anyway. I am not sure what it is looking for in terms of the structure. Would you be able to tell from the parameters here?

Thanks,

RT

0 Kudos

Try NOT defining your internal table with a header line, and see if you are able to move the contents. What is the name of this function module?

REgards,

Rich Heilman

0 Kudos

Hi,

I am actually working in BW/BPS and the FM that I working with has been copied from the template FM TEMPLATE_EXIT.

Here is the template:

FUNCTION TEMPLATE_EXIT.

*"----


""Lokale Schnittstelle:

*" IMPORTING

*" REFERENCE(I_AREA) TYPE UPC_Y_AREA

*" REFERENCE(I_PLEVEL) TYPE UPC_Y_PLEVEL

*" REFERENCE(I_METHOD) TYPE UPC_Y_METHOD

*" REFERENCE(I_PARAM) TYPE UPC_Y_PARAM

*" REFERENCE(I_PACKAGE) TYPE UPC_Y_PACKAGE

*" REFERENCE(IT_EXITP) TYPE UPF_YT_EXITP

*" REFERENCE(ITO_CHASEL) TYPE UPC_YTO_CHASEL

*" REFERENCE(ITO_CHA) TYPE UPC_YTO_CHA

*" REFERENCE(ITO_KYF) TYPE UPC_YTO_KYF

*" EXPORTING

*" REFERENCE(ET_MESG) TYPE UPC_YT_MESG

*" CHANGING

*" REFERENCE(XTH_DATA) TYPE HASHED TABLE

*"----


ENDFUNCTION.

The function module that changes the data has the following parameters:

1. I_AREA = the planning area (Type UPC_Y_AREA ).

2. I_PLEVEL = the planning level (Type UPC_Y_PLEVEL ).

3. I_PACKAGE = the planning package (Type UPC_Y_PACKAGE ).

4. I_METHOD = the planning function (Type UPC_Y_METHOD ).

5. I_PARAM = the parameter group of the planning function (Type UPC_Y_PARA).

6. IT_EXITP = the table of parameter values (Type UPC_YT_EXITP ).

7. ITO_CHASEL = the selection for the package (Type UPC_YTO_CHASEL ).

Note: This parameter differs from the parameter for the initialization module. The selection conditions are transferred here that describe the current object.

8. ITO_CHA = the characteristics of the planning level (Type UPC_YTO_CHA).

9. ITO_KYF = the key figures of the planning level (Type UPC_YTO_KYF ).

The function module returns the following information:

1. ET_MESG = error messages or messages for the end user (Type UPC_YT_MESG ).

The function module changes the following table:

1. XTH_DATA = the transaction data records that are to be changed. The structure of the table can also be determined using the global class CL_SEM_PLANAREA_ATTRIBUTES. The name of the type is stored in the attribute TYPENAME_TH_DATA. The type is stored in the Data Dictionary.

Thanks,

RT

0 Kudos

Is TYPENAME_TH_DATA a table type?

Regards,

Rich Heilman