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: 

How to make copies of delivered class/function module.

Former Member
0 Kudos

Hello All,

Can anybody tell me how/where should I go, to make copies of delivered class "CL_HRMSS_RECRUITING_WF" and the function module "HRWPC_EREC_CREATE_EREC_OBJECT".

Also if I am renaming with Z<my-class-name>, and using the method "CREATENBOBJECT" in my renamed class, will there be a problem with naming conflicts as "CL_HRMSS_RECRUITING_WF" already has the same method "CREATENBOBJECT".

Kind Regards

Srinivas.

1 ACCEPTED SOLUTION

ferry_lianto
Active Contributor
0 Kudos

Hi,

Let say you want to copy FM HRWPC_EREC_CREATE_EREC_OBJECT to custom one.

- Run the transaction SE80 and choose function group option.

- Type HRWPC_EREC_UTILITIES and press enter.

- Do right click on function group HRWPC_EREC_UTILITIES and select copy.

- Enter custom functino group (i.e. ZHRWPC_EREC_UTILITIES).

- Create new transport request.

- After copying function group the system will ask you which fm you want to copy: choose your function FM HRWPC_EREC_CREATE_EREC_OBJECT and rename to ZHRWPC_EREC_CREATE_EREC_OBJECT (for example).

Regards,

Ferry Lianto

14 REPLIES 14

ferry_lianto
Active Contributor
0 Kudos

Hi,

You can use SE80 to copy delivered class/function module.

Regards,

Ferry Lianto

0 Kudos

Hi there!,

Thanks for your reply. Could you also please tell me, what should I do after going to se80. Bear with me as I am new to workbench.

Kind regards.

Srinivas.

0 Kudos

Srini,

First of all:

You'll have to make a copy of the Function Group since it includes global definitions etc.

In SE80 push the "Edit object" button, type in the FUGR you want to copy and then click on the copy icon. Specify the new name and it should prompt you for the function modules inside the FUGR which you'll have to rename as well.

Thanks,

Guenther

0 Kudos

Srinivas,

Go to SE80:

and select the Class or Function Group Type and pass the name of the Class or Function Group .....

then right click on the Class or Function Group and selct <b>Copy</b>...

Regards.

ferry_lianto
Active Contributor
0 Kudos

Hi,

Let say you want to copy FM HRWPC_EREC_CREATE_EREC_OBJECT to custom one.

- Run the transaction SE80 and choose function group option.

- Type HRWPC_EREC_UTILITIES and press enter.

- Do right click on function group HRWPC_EREC_UTILITIES and select copy.

- Enter custom functino group (i.e. ZHRWPC_EREC_UTILITIES).

- Create new transport request.

- After copying function group the system will ask you which fm you want to copy: choose your function FM HRWPC_EREC_CREATE_EREC_OBJECT and rename to ZHRWPC_EREC_CREATE_EREC_OBJECT (for example).

Regards,

Ferry Lianto

0 Kudos

Thanks a lot all of you!,

I didn't understand the sequence of steps Ferry,

"

- Enter custom functino group (i.e. ZHRWPC_EREC_UTILITIES).

- Create new transport request.

"

I was able to rename the function group to ZHRWPC_EREC_UTILITIES, but its prompting me to "create object directory entry".

What should I enter in the package. To be more specific, how should I create a new transport request.

Thanks in advance!

Srinivas.

0 Kudos

Srini,

You normally create your package first - you can use it to bundle your development objects.

After you created it, you can specify it when you are prompted for a transport request and then create a transport for your object (there should be a button for "new" transport or "create" transport). As a beginner, I would stick with the proposed TR# and/or consult someone with more experience in how to structure your transports.

Guenther

0 Kudos

Hi Guenther,

Thanks for being patient with me. I been saving all my development in local objects.

But I need to create a package so that I can organize my development.

Can you tell me how I should create a package, so that I can put that to rename the function group/module/class.

Kind Regards.

Srinivas

0 Kudos

hi Srinivas,

Can you tell me how I should create a package:

<i>Ans:

1-> GOTO transaction <b>SE80</b>

2->Choose <b>Package</b> from the first drop down box

3->enter a name starting with Z or Y, press ENTER

4-> you will be prompted for confirmation to create a PACKAGE..Click YES..</i>

Thats it.. package is created...

<b>

now go to attributes of each objects, which you had created as local, and change the package name from $TMP to the name of the package that you have created...you will be prompted for Transport request..create a request by clicking on the create button...save...</b>

Hope this helps,

Sajan Joseph.

0 Kudos

Hi Sajan,

Thanks for your elaborate reply. I appreciate it. I have created a package. Now when I am trying to assign the package to the workflows that I created I am getting this error message.

I am right clicking on the workflow and selecting "change package assignment" and then giving my new package. But I am getting this error:

"Package <my-package-name> does not exist.

Kindly help me here.

Regards

Srinivas

0 Kudos

I have created the package <my-package>. But when i try to display it every time it prompts, "the package doesn't exist, create it?" . How can I create a package so that I can organize my workflows and classes, instead of creating them as local objects.

Your help is appreciated

Kind regards.

Srinivas.

0 Kudos

Srinivas,

Go to SE80 and select the Package..

and enter the package name ex: zpackage

then system will prompt asking for to create a new package then click on yes... and pass the text for the package and click on Create...

Once you create package then add all your classes and module to zpackage...

Chandra.

Former Member
0 Kudos

Oops, sorry didn't realize in my previous answer that you were asking for classes as well.

Pretty much the same process, just select Class instead of Function Group within "Edit object". Since method names are not unique (they always belong to a class which makes them unique), you won't have to rename them.

Guenther

ferry_lianto
Active Contributor
0 Kudos

Hi Srinivas,

To create a development class/package are as follows:

- Goto SE80.

- Give as "package" in the first blank and also enter the "name of the package" <eg: zxxx> you want to create in the second blank.

- Now click enter.

- The system by itslef wil ask for creating the package. now give "yes".

- Now give the short description and the transport layer as "HOME" in the window that pops up. and click "save" icon down below in that window.

- Now your package is created (with a unique transport request)

and you can put in all your objects in this package you created.

To view what all have been put into you package, you can go to SE01 - transport organiser and view the package contents.

Regards,

Ferry Lianto