2006 Sep 06 2:55 PM
Hi all,
Does anyone know what the difference is between passing a table to a function module as a "changing" parameter and passing it as a "tables" parameter?
Thanks
Magnus
2006 Sep 06 3:06 PM
HI Magnus,
<b>CHANGING parameters:</b> These must be supplied with data when you call the function module, unless they are flagged as optional. They can be changed in the function module. The changed values are then returned to the calling program.
<b>Tables parameters:</b> You use these to pass internal tables. They are treated like CHANGING parameters. However, you can also pass internal tables with other parameters if you specify the parameter type appropriately.
For your information:
After CHANGING or TABLES, you must supply values to all of the non-optional CHANGING or tables parameters. When the function module has finished running, the changed values are passed back to the actual parameters. You can supply values to optional CHANGING or tables parameters if you wish.
Regards
Sudheer
HI Magnus,
<b>CHANGING parameters:</b> These must be supplied with data when you call the function module, unless they are flagged as optional. They can be changed in the function module. The changed values are then returned to the calling program.
<b>Tables parameters:</b> You use these to pass internal tables. They are treated like CHANGING parameters. However, you can also pass internal tables with other parameters if you specify the parameter type appropriately.
For your information:
After CHANGING or TABLES, you must supply values to all of the non-optional CHANGING or tables parameters. When the function module has finished running, the changed values are passed back to the actual parameters. You can supply values to optional CHANGING or tables parameters if you wish.
Regards
Sudheer
2006 Sep 06 2:58 PM
Hello,
In changing you can not pass the table, but in Table parameters you can pass the internal table.
One more thing, in changing you can change the value of that variable at the run time. In the export and Import it is not possible to change it. In table parameter, you can also change the contents.
Regards,
Naimesh
2006 Sep 06 3:02 PM
Hi,
Changing parameter can only handle parameters of structure type or single variables and not of table types(occurs n).
Regards
2006 Sep 06 3:04 PM
Hi
I don't believe there are meaningful differences except you have to use a dictionary type table in CHANGING paramenter to obtain a table parameter.
Max
2006 Sep 06 3:06 PM
HI Magnus,
<b>CHANGING parameters:</b> These must be supplied with data when you call the function module, unless they are flagged as optional. They can be changed in the function module. The changed values are then returned to the calling program.
<b>Tables parameters:</b> You use these to pass internal tables. They are treated like CHANGING parameters. However, you can also pass internal tables with other parameters if you specify the parameter type appropriately.
For your information:
After CHANGING or TABLES, you must supply values to all of the non-optional CHANGING or tables parameters. When the function module has finished running, the changed values are passed back to the actual parameters. You can supply values to optional CHANGING or tables parameters if you wish.
Regards
Sudheer
2006 Sep 06 3:20 PM
Hi!
Thanks all for your replies. But I have tried passing an internal table both as a changing and tables parameter and both ways seem to work.
Magnus
2006 Sep 07 8:24 AM
Hello Magnus,
Changing parameter can accept the internal table with out header line (declared by type or type table), but can't accept the table with header line.
And TABLE can handle both.
Regards,
Naimesh
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |