cancel
Showing results for 
Search instead for 
Did you mean: 

Application terminated with short dump

Former Member
0 Kudos

Experts,

I'm trying to create a sample FPM application using the Guided Activity Floorplan. I have followed the instructions from the Floorplan Manager for ABAP - Developer's Guide. I have implemented all the steps provided. When I tested the application it terminated with the short dump - MESSAGE_STATE_X. Could you please help me to get rid of this error?

Thanks in advance

Regards

Saravanan K

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

>

> Experts,

>

> I'm trying to create a sample FPM application using the Guided Activity Floorplan. I have followed the instructions from the Floorplan Manager for ABAP - Developer's Guide. I have implemented all the steps provided. When I tested the application it terminated with the short dump - MESSAGE_STATE_X. Could you please help me to get rid of this error?

>

> Thanks in advance

>

> Regards

> Saravanan K

Hallo Saravanan,

This information is not enough to judge the error. Please post the stack trace piece of code where it is getting.

I assume that you have started the application with either the configurationID parameter supplied or by selecting the application configuration and pressing test button.

Former Member
0 Kudos

Hi

Sorry for the delayed reply.

Here the piece of code where the error is occurring

IF lo_usage_group IS INITIAL.

MESSAGE x103(apb_fpm_core) WITH iv_component_name.

ENDIF.

and in the error analysis I'm getting the following info

Error analysis

Short text of error message:

Component does not implement a valid interface

Long text of error message:

Technical information about the message:

Message class....... "APB_FPM_CORE"

Number.............. 103

Variable 1.......... " "

Variable 2.......... " "

Variable 3.......... " "

Variable 4.......... " "

Thanks in advance

Regards

Saravanan K

Former Member
0 Kudos

>

> IF lo_usage_group IS INITIAL.

> MESSAGE x103(apb_fpm_core) WITH iv_component_name.

> ENDIF.

>

Hallo Saravanan,

I think there are two things happening here.

lo_usage_group is initial

message_state_x problem.

Some how you are using a component which is not yet intialized in FPM.

  • ------------------------------------------------------------------------

  • attach shared data component

  • ------------------------------------------------------------------------

  • Usually the FPM takes care of instanciating and attaching the shared

  • data component automatically. But in this case it is necessary to attach

  • it manually. The reason for this is that later within this method it is necessary

  • to access node data of the shared data component (e. g. node progress). By accessing data of the

  • shared data component, the WD runtime checks whether an instance of the

  • SD component already exists. The point is that in that point of time, the FPM

  • runtime did not create an instance and therefore the WD runtime creates an

  • instance of it. But at a later point of the time the FPM creates automatically

  • an instance of the SD and attaches is to the usage. Therefore two instances

  • of the SD would exist. This is why here an instance of the SD is created and

  • attached to the usage. Later the FPM will check wether and instance was already

  • created and attached to the usage and if yes will not create a second instance of it.

  • So we let the FPM do it, before the WD runtime does it. If you don't need access

  • to the SD compoment during startup-methods (such as WDDOINIT) you don't need to do this.

data lo_componentinterface type ref to if_wd_component_usage.
  lo_componentinterface = wd_this->wd_cpuse_usage_vh_persoon( ).
  call method wd_this->go_fpm->attach_component_to_usage
    exporting
      iv_component_name  = 'ZMOCK_IZRM_ZOEKEN'
      io_component_usage = lo_componentinterface.

About the message_state_x , i have not come across this one. I shall find out some info on that and let you know.

regards

Senthi

Former Member
0 Kudos

Hi,

Thanks for your reply.

Could you please let me know where should I write the code?

data lo_componentinterface type ref to if_wd_component_usage.

lo_componentinterface = wd_this->wd_cpuse_usage_vh_persoon( ).

call method wd_this->go_fpm->attach_component_to_usage

exporting

iv_component_name = 'ZMOCK_IZRM_ZOEKEN'

io_component_usage = lo_componentinterface.

And the application works fine when I test it from the Configuration editor and producing short dump when I tested the application

Thanks and Regards

Saravanan K

Edited by: Saravanan K on Dec 20, 2010 10:45 AM

Former Member
0 Kudos

>

> Hi,

>

> Thanks for your reply.

>

> Could you please let me know where should I write the code?

>

> data lo_componentinterface type ref to if_wd_component_usage.

> lo_componentinterface = wd_this->wd_cpuse_usage_vh_persoon( ).

> call method wd_this->go_fpm->attach_component_to_usage

> exporting

> iv_component_name = 'ZMOCK_IZRM_ZOEKEN'

> io_component_usage = lo_componentinterface.

>

> Thanks and Regards

> Saravanan K

Hallo Saravanan,

The code snippet was an example which i copied from my WDA.

I use it in the doinit method of the component controller. As i earlier said that you probably use a Shared component which is initialized in your WDA first than the FPM.

So replace your Shared component with the above code snippet.

Former Member
0 Kudos

Hi

Thanks for your reply,

I understand 'ZMOCK_IZRM_ZOEKEN' is a component name and I don't understand lo_componentinterface = wd_this->wd_cpuse_usage_vh_persoon( ). Could you please explain on this? Should I create any attribute?

Kind regards

Saravanan K

Former Member
0 Kudos

>

> Hi

>

> Thanks for your reply,

>

> I understand 'ZMOCK_IZRM_ZOEKEN' is a component name and I don't understand lo_componentinterface = wd_this->wd_cpuse_usage_vh_persoon( ). Could you please explain on this? Should I create any attribute?

>

> Kind regards

>

> Saravanan K

Saravanan,

I have a used component defined in my components. Usage name is usage_vh_persoon.

in the controller properties i select this interface controller and its usuage as required controllers. That is why i am able to refer that with wd_this->

The template is like this wd_this->wd_cpuse_[usage name]

wd_this->wd_cpuse_usage_vh_persoon()

Former Member
0 Kudos

Hi,

Suppose, If I don't use any other component( No Used Component), Shall I left that parameter?

Thanks and regards

Saravanan K

Former Member
0 Kudos

Hi,

if you do not have any component usage then you do not need that whole thing. You need that construction only when you have component usage in your component and you have UIBB embedded in your FPM based on this component usage.

I am begin to doubt that my understanding of your problem is different than you have.

So explain the flow.

what example or tutorial are you following ?

What is your component do ?

how many views/windows you have in this view ?

how many main steps you have in GAF?

all these interfaceviews (windows) from one component ?

post one again the entire method where you get this error?

if you do not have any component usuage why do you test for if component usage is initial ?

is the error from the framework?

Edited by: Baskaran Senthivel on Dec 20, 2010 11:17 AM

Former Member
0 Kudos

Hi,

I'm using the sample application from the 'Floorplan Manager ABAP - Developeru2019s Guide' . I have implemented all the steps mentioned in the above document. I'm having two views one to enter data and another to review the entered data ( Two Roadmap steps). The two windows are available from the same component. When I test it from the configuration editor it is working fine. When I test the application in Workbench it is producing the said error.

Here you find the complete stack trace

Termination occurred in the ABAP program "CL_FPM_COMPONENT_MANAGER======CP" -

in "ADD_COMPONENT".

The main program was "SAPMHTTP ".

In the source code you have the termination point in line 56

of the (Include) program "CL_FPM_COMPONENT_MANAGER======CM003".

Source Code Extract

Line SourceCde

26 ls_managed_component-is_transaction = abap_true.

27 lv_releasable = abap_false.

28 WHEN 'IF_FPM_RESOURCE_MANAGER'.

29 ls_managed_component-is_resource_manager = abap_true.

30 WHEN 'IF_FPM_WORK_PROTECTION'.

31 ls_managed_component-is_work_protection = abap_true.

32 WHEN 'IF_FPM_OIF_CONF_EXIT'.

33 lo_usage_group = mo_usage_group_conf_oif.

34 ls_managed_component-is_conf_exit_oif = abap_true.

35 lv_releasable = abap_false.

36 WHEN 'IF_FPM_GAF_CONF_EXIT'.

37 lo_usage_group = mo_usage_group_conf_gaf.

38 ls_managed_component-is_conf_exit_gaf = abap_true.

39 lv_releasable = abap_false.

40 WHEN 'IF_FPM_TABBED_CONF_EXIT'.

41 lo_usage_group = mo_usage_group_conf_tab.

42 ls_managed_component-is_conf_exit_tab = abap_true.

43 lv_releasable = abap_false.

44 WHEN 'IF_FPM_APP_CONTROLLER'.

45 lo_usage_group = mo_usage_group_app_ctrl.

46 ls_managed_component-is_app_ctrl = abap_true.

47 lv_releasable = abap_false.

48 ENDCASE.

49 "Once the component has other interfaces to be defined it can not be released.

50 IF lv_releasable = abap_false. "Do not set to true if we get a true after the false in t

51 ls_managed_component-is_releaseable = abap_false.

52 ENDIF.

53 ENDLOOP.

46 ls_managed_component-is_app_ctrl = abap_true.

47 lv_releasable = abap_false.

48 ENDCASE.

49 "Once the component has other interfaces to be defined it can not be released.

50 IF lv_releasable = abap_false. "Do not set to true if we get a true after the false in t

51 ls_managed_component-is_releaseable = abap_false.

52 ENDIF.

53 ENDLOOP.

54

55 IF lo_usage_group IS INITIAL.

>>>>> MESSAGE x103(apb_fpm_core) WITH iv_component_name.

57 ENDIF.

58

59 * Add usage

60 lv_usage_name = get_usage_name(

61 iv_component_name = iv_component_name

Thanks and regards

Saravanan K

Former Member
0 Kudos

>

> Hi,

>

> I'm using the sample application from the 'Floorplan Manager ABAP - Developeru2019s Guide' . I have implemented all the steps mentioned in the above document. I'm having two views one to enter data and another to review the entered data ( Two Roadmap steps). The two windows are available from the same component. When I test it from the configuration editor it is working fine. When I test the application in Workbench it is producing the said error.

>

> Saravanan K

Hi Saravanan,

Problem is that you start a application with out the configuration.

you can solve it by 2 ways.

1. instead of application, open the application node and open the application configuration and richtclick and test.

2. Add WDCONFIGURATIONID parameter to your application.

Double click your application, right side you see properties and parameters.

Open the parameters tab.

here select a parameter WDCONFIGURATIONID and supply your application configuration.

Former Member
0 Kudos

Hi Baskaran,

Thanks for your help. It is working fine.

Thanks and regards

Saravanan K

Answers (0)