cancel
Showing results for 
Search instead for 
Did you mean: 

Enhancement to 'Create Travel Request' View in ESS

Former Member
0 Kudos

Hello Experts,

I want to enhance the Create Travel Request View in ESS provided by SAP.

While creating Expense report, the I need to clear the value of cost assignment input field for the Billable and Non-Billable Schema.

General Information About the Application and Component :

Application: FITE_EXPENSES

Web Dynpro Component: FITE_VC_GENERAL_DATA

Window Information: VC_WINDOW

View Information: GENERAL_DATA_VIEW

I know I can do this via enhancement. But my concern is where do I write the code to clear this field on screen?

Kindly suggest me.

Thanks in Advance,

Prashant Jagdale

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

You can clear the field in WDDOINIT method of the view. if you are navigating to this view from other view, you can do it in the inbound plug of the view which contains this field. If this is default view ( first displayed view ) , you can do in WDDOINIT method of component controller.

basically, you need to take care of the process before choosing the place to clear the field as it might effect the application flow. make sure that it doesn't effect it negatively.

Thanks

Vishal Kapoor

Former Member
0 Kudos

Hi Vishal,

Thanks for your comment.

I am clearing the 'Cost Assignment' field in method GET_COSTASSIGNMENT_SUMMARY. This method is belongs to assistance class CL_FITV_ASSISTANCE. (This method is called by component controller method UPDATE_GENERAL_DATA_ADDON).

But one thing, which I am not able found. As this method is getting called while creating expense report as well as while changing the already available reports. I want to clear the filed only when user clicks in 'Create Expense Report' button.

Is there any flag, which indicates operation requested by user.

Any pointers towards this will be helpful.

Thanks in Advance,

Prashant

Former Member
0 Kudos

Hi,

Create one attribute say: exp_report (must be public) of type abap_bool in the attribute tab of your assistance class. As you are dealing with standard component Go to enhancement mode and add this attribute to your assistance class.

Now go to the action handler which is associated with the button "create expense report" and set this attributeat the bottom.

method <action handler linked with create exp report button>

wd_assist->exp_report = abap_true.

endmethod.

now go to your assistance class method. and if this attribute is set,only then clear the field.

method GET_COSTASSIGNMENT_SUMMARY.

if exp_report = abap_true.

clear the field.

clear exp_report. " this is must for this logic to work correctly every time.

endif.

endmethod.

Regards

Vishal Kapoor

Edited by: vishal kapoor on Oct 27, 2010 9:47 AM

Former Member
0 Kudos

Hi Vishal,

Thanks for the solution. I have created class attribute (One flag to check whether create or change operation is requested by user) in assistance class and sets that attribute to 'X' in new_expense_report method.

Now to check the same, I have created one overwrite-exit for the method UPDATE_GENERAL_DATA_ADDON and did the coding in this overwrite exit to clear the 'cost_assignment' field.

(I have tried with Post exit method as well, but control is not coming in post exit as well)

But while running through portal, The control is not coming into the overwrite method. It is still coming into the old original method.

I have checked all the objects and they are active. Still the control is not coming in overwrite exit. Is there any configuration is needed to call overwrite exit method.

Any pointers?

Thanks & Regards,

Prashant

Edited by: Prashant Jagdale (Genius) on Oct 27, 2010 6:57 PM

Former Member
0 Kudos

Hi,

I think there is some basis or some patch level issue in your system. Now you can use implicit enhancement in your method.

Create one implicit enhancement at the end of the method and clear the field based on the attribute value. Ut will be similar to post exit enhancement style.

method < your method name>

<code>

.

.

.

.

enhancement Zclear_field.

clear field on condition.

endenhancement.

endmethod.

Former Member
0 Kudos

Hi Vishal,

Thanks you very much for you help.

I solve the issue using Implicit enhancement for the method 'GET_COSTASSIGNMENT_SUMMARY'. This method is belongs to class 'CL_FITE_ASSISTANCE'.

Thanks,

Prashant

Former Member
0 Kudos

We have done a similar excersise and enhanced the standard component "FITE_VC_GENERAL_DATA*. It works fine in developement. Now when we trying to transport this to quality, we see that the enhancement component is capturing nearly 700 standard object and hence taking 6 hours to get released. I am afraid it would take time to transport as well.

Was wondering if we could transport only the enhancement part with out transporting the entire component.

Appreciate immediate reply.

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

You've already posted this same question to several other existing threads. This is NOT allowed according to the SCN Forum Rules of Engagement. If you have a question, post it as a new Forum thread once. I'm locking these threads because of this abuse.

Answers (0)