cancel
Showing results for 
Search instead for 
Did you mean: 

Value entered in the Runtime is not reflect in the backend after enhance

Former Member
0 Kudos

Standard View CRMCMP_CND/ScaleSetEditView i.e it is not enhanced in the component CRMCMP_CND. I need to include a validation in do_finish_input method.

I select Enhance view and choose redefine on the method do_finish_input.

Value entered in the Runtime is not reflected when checked in the method. But, value entered is shown in the standard.

Therefore after enhancement, in runtime entered value is never accepted. After deleting the Enhance view and reverting it back to original entered value is accepted.

Accepted Solutions (1)

Accepted Solutions (1)

0 Kudos

Hi,

You have to call the super method when you redefine this method in order to reflect the values.

Add the codelines

CALL METHOD super->do_finish_input 
        EXPORTING 
          global_event    = global_event 
          global_messages = global_messages.

Regards,

Leon

Former Member
0 Kudos

I did put the super method. Also, tried modify the core which should be done in eh_onsubmitonenter.

both the options did not work.

After I enhance the view, system does not accept any value in the input. The next event after I enter the value that occurs is eh_onsubmitonenter.

But, the entered value is not reflected in the entity to try modify core etc.. which anyways is there in the super method as part of standard.

Please advice how to resolve this and help understand what could have gone wrong.

Edited by: crmdevelopers on Feb 9, 2012 5:41 AM

0 Kudos

Can you provide the code that you have put inside the redefined method?

Regards,

Leon

Former Member
0 Kudos

In eh_onsubmitonenter,

METHOD eh_onsubmitonenter.

CALL METHOD super->eh_onsubmitonenter

EXPORTING

htmlb_event = htmlb_event

htmlb_event_ex = htmlb_event_ex.

ENDMETHOD.

In do_finish_input,

METHOD do_finish_input.

CALL METHOD super->do_finish_input

EXPORTING

global_event = global_event

global_messages = global_messages.

ENDMETHOD.

In debug of eh_onsubmitonenter, after I enter the value 10 in amount,

Structure:

/SAPCND/LIN_ID_01 0001

/SAPCND/LIN_VALUE_01_001 0.00

/SAPCND/LIN_ID_02 0000

/SAPCND/LIN_VALUE_02_001

KBETR_PRT 0.00

KPEIN 0

KMEIN

KONWA USD

EVAL_TYPE B

DBACTION I

CND_ALV_CELLTAB [0x6(80)]Sorted Table

MNT_IL_LINE_FCAT [12x8(74)]Sorted Table

Value of KBETR_PRT should be 10 but it shows 0.00.

Edited by: crmdevelopers on Feb 9, 2012 6:13 AM

Edited by: crmdevelopers on Feb 9, 2012 6:18 AM

Former Member
0 Kudos

Also one more small question,

Without redefining any methods, if I just right click on the view and choose enhance.

Then test the application, should it not work as standard?? but the behaviour changed by not retaining the value.

0 Kudos

Hi,

Just check if the enhanced view is bound to the custom controller.

Regards,

Leon

Former Member
0 Kudos

Yes it is bound to custom controller. This looks very weird...

Could there be anything with code in .HTM?

Please help.

Edited by: crmdevelopers on Feb 9, 2012 7:42 AM

Edited by: crmdevelopers on Feb 9, 2012 7:55 AM

kavindra_joshi
Active Contributor
0 Kudos

Check the DO_HANDLE_DATA( called before DO_HANDLE_EVENT) method of the Controller class. It contains a parameter called FORM_FIELDS. ALl the values changed on the UI are present here. After this you can debug to find out where the value is getting lost.

It is interesting to know where the value is getting lost.

Did you change DO_FINISH_INPUT ?

Regards

Kavindra

Edited by: joshi_kavindra on Feb 9, 2012 1:16 PM

Edited by: joshi_kavindra on Feb 9, 2012 1:28 PM

Former Member
0 Kudos

Yes kavindra... I' ve been through this all day!!

I'm seriously wondering what went wrong...

I don't see the data in do_handle_data as well.,.

has it got anything to check with SPRO customization maitenance when we enhance a view??

kavindra_joshi
Active Contributor
0 Kudos

Though I am clue less yet I also want to know whats the issue, so I am just throwing some pointers in hope that they would work.

There is a method in the controller called SET_MODELS. Check that this added by wizard thing is there.


method SET_MODELS.
    super->set_models( view ).

* Added by wizard
    view->set_attribute(
          name = 'SuppOptions'                              "#EC NOTEXT
          value  = ztyped_context->SuppOptions ).
endmethod.

Regards

Kavindra

Former Member
0 Kudos

I already checked on it too kavindra.. no luck..

Issue is this. there is a validation I need to make against the scale level and amount with the values entered.

I figured in standard that the method do_finish_input is the place I need to include the validation.

So I choose right click & Enhance view and redefined the method and noticed that the value entered in runtime did not reflect.

Thereby, the value I enter in the amount or scale is not set at all.

If I right click on the view and delete the enhancement, Standard view works fine.

One more thing I noticed is, I'm able to enhance in 2007 version system, it works fine. Meaning, after I enhance the view and enter values it works as expected. Issue occurs only in 7.0 system.

Thanks alot to both of your continuous support, time, interest & contribution.

Totally appreciate it. Please let me know if there could be something else associated to it.

Edited by: crmdevelopers on Feb 9, 2012 5:27 PM

Edited by: crmdevelopers on Feb 9, 2012 6:47 PM

Former Member
0 Kudos

Used an alternative to achieve the functionality in the event BACK.

Answers (1)

Answers (1)

kavindra_joshi
Active Contributor
0 Kudos

Since you can enter the values , the field is editable in the UI. And since there is no change in the GENIL , that means it is also editable in the backend. Therefore I would suggest you check the coding.

Perform these four steps

a) SET_PROPERTY to the field , which I guess you are doing

b) CALL the modify on the BOL CORE

c) Get the Transaction context

d) Commit would happen automaically in the framework on the save.From the UI you would be calling a save button.

Regards

Kavindra