on 11-27-2008 2:45 PM
Hi,
We are developing the HCM forms. Our requirement is populating the Country values in one dropdown list and based on the country we need to populate the city's in other dropdown list. The city values will come from the backed (BADI logic). The event is triggering and the city values also getting but the complete form getting refreshing when ever event is triggering, i don't want to refresh all the form, only related fields need to refresh.
The below events are added to my Country dropdown exit event
$record.CONTROL_PARAM.ISR_EVENT = "USER_EVENT_INITIALIZE"
app.eval("event.target.SAPSubmit();");
Please can any one help me on this.
Thanks
Nag
Naga... still waiting for your reply ;-(
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Actually, there are a laundry list of why the "ASSERT" error happens. ST22 will lead you in the right direction.
For me, it usually happens because I have changed the incoming service_dataset in some way that the dispatcher does not like (ie. "old" does not match "new" structure).
But yeh.....you will figure it out.
Answered
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
One more clarification that you are mentioned that
xfa.record.CONTROL_PARAM.ISR_EVENT.value = "CHECK";
ContainerFoundation_JS.SendMessageToContainer(event.target, "submit", "", "", "", "");
(variables)
|-----ContainerFoundation_JS
This contains the code needed to make reference to your operation in the DO_OPERATION method of your BAdI.
Can you give one example scenario
I need to pass the country code to the badi and need to get the city list.
if i implemented the badi Z_XX in which shall i need implement on IF_HRASR00GEN_SERVICE~DO_OPERATIONS method.
OR
shall i need to implement for our own operation (Ex: GET_EMP_DETAILS)
What variable need to pass from the form (|-----ContainerFoundation_JS)
If you send any sample code for this that will be great help for me.
Thanks
Nag
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Kevin Schmidt
Thanks for the help and one more thing is that for to add the insert webdynpro script from Utilities is disable for me, i don't know how can i enable that one.
The below steps i followed.
1) SFP Transaction
2) Form Layout
3) From SAP GUI Utilities
Please can you tell me is there any other option to add the Webdynpro scripts to the form.
Thanks
Nag
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey Nag,
Are you using the ZCI format for the forms, because if you are, you are using the wrong dropdown list box. The list box you are using is for the ACF style of form.
I'd first suggest downloading the ISR ZCI library from the Service Marketplace
[Note 1104060 - Adobe LiveCycle Designer - ZCI template update|https://service.sap.com/sap/support/notes/1104060]
[Note 947675 - ISR/Adobe: Layout category ZCI (composite SAP note)|https://service.sap.com/sap/support/notes/947675]
[Note 947633 - Current ISR Control libraries|https://service.sap.com/sap/support/notes/947633]
[Note 973170 - New library for "SAP Interactive Forms by Adobe"|https://service.sap.com/sap/support/notes/973170]
The last one has the dropdown that has the correct code for use within the ZCI form template usage.
This is what the code is to look like, and can only be executed when the event language is Javascript:
xfa.record.CONTROL_PARAM.ISR_EVENT.value = "CHECK";
ContainerFoundation_JS.SendMessageToContainer(event.target, "submit", "", "", "", "");
You have to replace CHECK with the name of the operation in the backend that you want to call. Also, another thing that you have to do is Insert Web Dynpro Script when using ZCI form template. This can be done by selecting the Utilities option from the SAP GUI menu bar, not the form designer menu bar, and it should be right above the Versioning option. After selecting this, you will notice that you have an addition to your Hierarchy tab in the Form Designer that says
(variables)
|-----ContainerFoundation_JS
This contains the code needed to make reference to your operation in the DO_OPERATION method of your BAdI.
Hope this helps...
Cheers,
Kevin
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey Nagaraju,
For your first post, inside t-code SFP, if you click on the properties tab,the Layout Type should be ZCI Layout. I'd imagine right now it is xACF Layout. If you need to change this, run t-code SFP_ZCI_UPDATE.
Second, for passing the country code to the backend, make sure that when you configure your operation in R/3, that the Field Group attached to your Operation contains the field you have defined for your country code. Make a case statement in the BAdI to check for the operation, then execute the code needed to retrieve the the city list. You don't need to change anything in the ContainerFoundation_JS call... what I have listed is what you need, you just need to replace CHECK with the name of the operation you have defined in your scenario (IMG) so your code will get exectued.
xfa.record.CONTROL_PARAM.ISR_EVENT.value = "CHECK";
ContainerFoundation_JS.SendMessageToContainer(event.target, "submit", "", "", "", "");
Cheers,
Kevin
Hi,
I implemented according you are suggestions, but the below error getting when i am executing the events.
Note
The following error text was processed in the system DEV : The ASSERT condition was violated.
The error occurred on the application server eu321_DEV_10 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: PROCESS_DATA_CONTAINER of program CL_HRASR00_DISPATCHER=========CP
Method: IF_HRASR00_DISPATCHER~EXECUTE_OPERATION of program CL_HRASR00_DISPATCHER=========CP
Method: IF_EX_QISR1~SCENARIO_PROCESS_USER_COMMAND of program CL_IM_HRASR00ISR==============CP
Method: IF_EX_QISR1~SCENARIO_PROCESS_USER_COMMAND of program CL_EX_QISR1===================CP
Method: PROCESS_USER_COMMAND of program SAPLQISR9
Function: ISR_PROCESS_EVENT_INTERNAL of program SAPLQISR9
Function: ISR_PROCESS_EVENT of program SAPLMPO_46CFF_ISR_SERVICE
Function: ISR_PROCESS_EVENT_WD of program SAPLMPO_46CFF_ISR_SERVICE
Method: IF_QISR_UI_DATA_MODEL~EXECUTE of program CL_QISR_UI_PROCESS_EVENT_MODELCP
Method: CALL_RFC_ISR_PROCESS_EVENT of program /1BCWDY/8ZR5DN614P5L0KBN3L79==CP
Hi Nagaraju,
Most times when I have hit an ASSERT condition, it means that something in my definition is not defined properly, or it's defined in one place, but not another... Set a breakpoint inside the method PROCESS_DATA_CONTAINER of class CL_HRASR00_DISPATCHER and start from there... It's too hard to tell what is failing by reading the abend. You might have a ST22 record that you can view as well.
One last thing I can think of is that it could be that if your portal is connected to a different client then your config, then you have to copy your config to the other client.
Cheers,
Kevin
Hi Kevin Schmidt
At last i solved the Assert Condition failed error, but now i am getting different problem. I assigned some PA info type values like employee name,
When the first time form opening i am getting employee name and countries in the country dropdown. If i select one country from dropdown the event is triggering but after that the in the form the employee name is disappearing and nothing showing in the two dropdowns.
Do you have any idea why i am getting like this.
Thanks
Nag
Hey Nag,
Where are you populating the information for the dropdown list boxes? I've had something similar to this, and I've had to populate the dropdowns inside the method GET_VALUE_HELP, in my BAdI. If the information for them is not being populated, you have to repopulate the dropdowns everytime the screen loads, which is what happens in the help method. I'm not sure why the employee name would be disappearing... it could be something like you don't have the technical name in the correct field group. I would try debugging your operation to see why it's being erased...
Hope this helps...
Cheers,
Kevin
User | Count |
---|---|
84 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.