ERecruitment 6.0, single instance implementation- custom container elements
I have created custom container elements and included in the application wizard. Functionality works fine, data gets saved onto the backend custom infotype.
Issue:- In the standard delivered container elements, whenever data is saved a green check mark appears. This is not happening in the custom element.
Has anyone elese faced this issue?
Is this settings controlled through the Floor Plan manager component?
Assistance appreciated.
Regards, Sunil
Hi,
if you mean the check mark in the container sequence tab, this is determined in the check_for_data method of the controller class. It should be in the same interface like the on_container_navigation method.
If the method returns true ('X') the check mark will appear.
Best regards
Roman Weise
Similar Messages
-
Need F4 Help for custom container element based on partner type
Hi Friends
I am displaying customer details in custom container .In that custom container I have a field Partner number,Partner type etc etc..
I included F4 help for partner number field, In that I referenced the following field.Now its coming perfectly.
wa_cat1-f4availabl = 'X'.
wa_cat1-ref_table = 'KNA1'.
wa_cat1-ref_field = 'KUNNR'.
But as per my requirement, customer wants to get the different F4 help when the partner type eq "Contact Person".
Rest of the partner type(Ship to party, Sold to party,Reseller, End user) should show the above one.
So I dont know, where I have to change, because in the field catelod level there is no option to control particular type in the column.
Kindly help me on this.
Thanks
GowrishankarHi Jose
Thanks for your Input.I created Event Receiver than Defined and implemented a method to get F4 help for customer number and email id field.Already F4 help is available for Email ID.Now I want to Include the F4 help for partner number field, it will call the search help based on partner type.I can able to get the partner number field search help, but F4 help is not working for email id.
I am not sure some whee its over writing some values or I am not sure.If I comment partner number F4 help class, I can able to get the F4 help for email address.
Plz guide to me to fix the same.
Thanks
Gowrishankar -
How to have header for CL_SALV_TABLE displayed in custom container?
Hello ABAP Objects Community, I am trying to write report using CL_SALV_TABLE and using a screen created in SE51 with a custom container control in which to put ALV grid. However, when I try to put a header on the table, it does not display.
In reading the SAP help for "Display List Header and Footer", there is a grid that shows under what conditions the SET_TOP_OF_LIST can be used. eg- Classic ABAP List, FullScreen, InTheContainer. And for InTheContainer it is showing "No".
I found the demo program SALV_DEMO_TABLE_SELECTIONS. Look at form d0100_pbo. This is what I am trying to do, except that I want it to have headers/footers.
If it is not possible to have headers/footers when using CL_SALV_TABLE in a container, what would be the coding technique for achieving this?
Best Regards,
Dean Atteberry.
Edited by: Dean Atteberry on Jul 27, 2009 11:01 PM
Edited by: Dean Atteberry on Jul 27, 2009 11:03 PM
Edited by: Dean Atteberry on Jul 27, 2009 11:03 PMThank you, Marcin, for your reply.
I implemented Namish Patel's code for exercises #1 (basic program) and #5 (header/footer) in abap and ran same. It created alv grid with headers/footers. However, upon looking at his factory statement, it is using the (default) "fullscreen" display type. I am needing to put the alv grid in a container created on a screen in SE51, so am having to use the EXPORTING statement with parameters r_container (points to container object instance) and container_name (literal string name of component).
I found a description of how to use the ABAP control framework in ERPGenie that shows how to do what I was needing.
[http://www.erpgenie.com/sap-technical/abap/abap-control-framework]
Thank you again for responding to my question.
Dean Atteberry.
Edited by: Dean Atteberry on Jul 28, 2009 10:09 PM -
Changing width of a custom container dynamically
Hi,
I have an ABAP report that has 2 custom containers on a screen: CC1 on the left, showing a tree and another one (CC2) consuming the rest of the screen. Depending on what node the user selects in the tree (left CC), I would like to dynamically adjust the width of CC1 and CC2.
Is there a way to do it? I found the method SET_WIDTH of CL_GUI_CUSTOM_CONTAINER (which CC1 and CC2 are instances of), but it does not seem to work.
Any help is appreciated.
GuentherHere is a coding example that demonstrates dynamically changing the width of the container.
What you cannot see is the screen definition. Screen 100 has a single custom container that fills the entire screen and is set to be resizable. The container name is 'MY_CONTAINER'. Next screen is set to 0.
Flow logic of screen:
PROCESS BEFORE OUTPUT.
MODULE pbo.
PROCESS AFTER INPUT.
Cut and paste this program and define the screen. Run the program and keep hitting ENTER to see the size change from left to right. After 9 times, the program will end.
REPORT zcdf_docking_example.
DATA:
w_sash TYPE sy-index,
r_cstm_ctnr TYPE REF TO cl_gui_custom_container,
r_easy_splt_ctnr TYPE REF TO cl_gui_easy_splitter_container.
CLASS cl_gui_easy_splitter_container DEFINITION LOAD.
DO 9 TIMES.
w_sash = sy-index * 10.
CALL SCREEN 100.
ENDDO.
MODULE pbo OUTPUT.
IF r_cstm_ctnr IS INITIAL.
CREATE OBJECT r_cstm_ctnr
EXPORTING container_name = 'MY_CONTAINER'.
CREATE OBJECT r_easy_splt_ctnr
EXPORTING
parent = r_cstm_ctnr
orientation =
cl_gui_easy_splitter_container=>orientation_horizontal.
* Set starting sash position. Position is a percentage.
CALL METHOD r_easy_splt_ctnr->set_sash_position
EXPORTING
sash_position = w_sash.
* Put ALV in left container.
* CREATE OBJECT r_alv_grid1
* EXPORTING
* i_parent = r_easy_splt_ctnr->top_left_container.
* Put ALV in right container.
* CREATE OBJECT r_alv_grid2
* EXPORTING
* i_parent = r_easy_splt_ctnr->bottom_right_container.
ELSE.
CALL METHOD r_easy_splt_ctnr->set_sash_position
EXPORTING
sash_position = w_sash.
ENDIF.
ENDMODULE. " pbo OUTPUT
Let us know how it goes. -
Simple Tree using custom container
Hi all,
I am facing a problem, I am preparing a simple tree in a custom container of using two table such as mchb and mska, from these table i am selecting fields wearks ,matrn ,veblen, quantity , lgort (storage location) and made a internal table, for using this fields I sorted three times with werks for plant than storage location for those plant which was sorted than material comes for all sorted plant and storage location ,for all sorting I made node for all i was using CONCATENATE command using index take all values of sorting make local index for all sorting, now i want to make when i double-click on material i want all field come in my tablecontrol which is there and than I want a pop-up window comes for further processing.
plese help me.
Ankur Garg.Hi Ankur,
Refer the standard program SAPSIMPLE_TREE_CONTROL_DEMO in SE38.
Refer the following code in the include SIMPLE_TREE_CONTROL_DEMOCL1.
CLASS LCL_APPLICATION DEFINITION.
PUBLIC SECTION.
METHODS:
HANDLE_NODE_DOUBLE_CLICK
FOR EVENT NODE_DOUBLE_CLICK
OF CL_GUI_SIMPLE_TREE
IMPORTING NODE_KEY,
HANDLE_EXPAND_NO_CHILDREN
FOR EVENT EXPAND_NO_CHILDREN
OF CL_GUI_SIMPLE_TREE
IMPORTING NODE_KEY.
ENDCLASS.
CLASS LCL_APPLICATION IMPLEMENTATION.
METHOD HANDLE_NODE_DOUBLE_CLICK.
" this method handles the node double click event of the tree
" control instance
" show the key of the double clicked node in a dynpro field
G_EVENT = 'NODE_DOUBLE_CLICK'.
G_NODE_KEY = NODE_KEY.
ENDMETHOD.
<b>Reward points if it helps.</b>
Message was edited by: Amit Mishra -
Multiple DNS Domain support in Single instance of Portal
Can BEA portal support multiple DNS domains in a single instance of BEA Portal.
For example can I setup portal to respond as bothe www.xxx.com and www.yyy.com
and keep those urls as trhough the entire portal?Hi,
thanks for your quick response. You mean we should run only one copy of the package I mentioned and seperate the plants and machines by logic implemented in the package? Well, I think this is critical in case of deploying a new version, since all machines at all sites won't have the system available at the same time. At the moment we do not have things in the system that are needed to go on with production, but we have planned to implement some things that will be indispensable and in this stage we need a clear seperation of the plants to minimize the risk of a simultaneous stand at all plants.
Thanks for your suggestion and best regards,
Matthias -
Hi,
I want to reuse the same custom container screen for a different data.
First screen there will be button 1 and button 2
if I click button 1 then calculate and display data in custom container, if button 2 is clicked then calculate and display data with in the same custom container.
For this
1. Created Custom container - CONTAINER
2. In program defined and created custom container and custom alv grid
g_custom_container TYPE REF TO cl_gui_custom_container,
alv_grid TYPE REF TO cl_gui_alv_grid.
IF g_custom_container IS INITIAL.
CREATE OBJECT g_custom_container
EXPORTING
container_name = 'CONTAINER'.
CREATE OBJECT alv_grid
EXPORTING
i_parent = g_custom_container.
ENDIF.
3. Display data using CALL METHOD alv_grid->set_table_for_first_display
every thing works great for button 1
4. when button 2 is clicked then calculate and display different set of data in same custom container which is used earlier.
5. here I used
call method alv_grid->free.
call method g_custom_container->free.
6. create above objects once again and tried to use
call method alv_grid->set_table_for_first_display
, to reuse the same custom container 'CONTAINER' again for a different set of data and getting ABAP dump.
In debug mode, when I used the above method FREE for both ALV_GRID and G_CUSTOM_CONTAINER objects are not clearing.
Please let me know how can I reuse the same container for a different set of data when button2 is pressed.
Thanks in advance,
Krishna
Please use code tags to format your code and post in the correct forum
Edited by: Rob Burbank on Oct 1, 2010 2:37 PMHello Krishna
I would recommend to use a different approach instead of trying to initialize your container instances:
DATA:
go_container_1 TYPE REF TO cl_gui_custom_container,
go_container_2 TYPE REF TO cl_gui_custom_container,
go_grid_1 TYPE REF TO cl_gui_alv_grid,
go_grid_2 TYPE REF TO cl_gui_alv_grid.
" NOTE: Do this coding BEFORE calling the screen
* (1) Create 2 containers
CREATE OBJECT g_container_1
EXPORTING
container_name = 'CONTAINER'.
CREATE OBJECT g_container_2
EXPORTING
container_name = 'CONTAINER'.
" NOTE: If it is not possible to use the same container name then either create an additional
" dummy screen having a second CUSTOM_CONTROL element or replace
" the customer containers with docking containers -> here you do not need to give a container name
* (2) Create 2 grid instances using a different container
* (3) Link the first container to the screen using its LINK method:
CALL METHOD go_container_1
EXPORTING
repid = <...>
dynnr = <...>.
* (4) Perhaps you need to define a second dummy screen to which you link the second container
* (5) Display first grid instance (as default)
Now when the user pushes button 2 (to display the second grid) link container_1 to the dummy screen
and link container_2 to your main screen.
Regards
Uwe -
The Unifier environment
contains two single-instance project shells, INF and PBS, and two multiple-instance child project shells, INFS and
PB. There is a single instance, non-workflow
business process, ‘Project Information’ that contains a data element in the
upper form definition, Project ID. The Project ID is set to auto-populate from the multi-instance “INFS”
project shell attribute, which is populated manually.
Issue: The auto-populate functionality for the
Project ID ‘Shell_shellName_shell’ data element within the single-instance
Project Information BP only functions within one of the shells, either
INFS or PB, but not both. The INF and INFS shells are currently deployed
to production, PB and PBS shell are not.
It is critical that Project ID ‘Shell_shellname_shell’ data element is populated correctly in the
Project Information upper form of both shells, INFS and PB,
because that data element is referenced by multiple business processes and
integrations.
The attribute form definitions for both single and multiple instance project shells are identical. The Project ID utilizes the same data
element ‘SHELL_shellName_shell’ as is defined in both shell attribute forms
(INFS and PB).
The data definition source is a Unifier system-level variable, SYS Shell
Name (String, 128, Text Box)
Potential Solutions:
1. Create a Project ID DE of another data type which can
be successfully auto-populated from either shell. Drawback: all BPs and integrations which
reference Shell_Shellname_shell will need to be rewritten.
2. Investigate converting the Project Information single-instance
to a multi-instance BP, and create a
separate instance for each single-instance shell type. Same Drawback as Option #1, but with additional
rework. Most likely Project Information
would have to be recreated as a new BP.
Not sure that this option would even work.
3. Create a separate Project Information BP for PB. Drawback: Two separate BPs for Project Information would
need to be created. All existing BPs
refer to Project Information, so this option could potentially invalidate the
ability to use the existing BPs in the PB shell.Was it really necessary to post the whole API description?!?
Locale[] locales = Locale.ENGLISH();ENGLISH is not a method in class Locale, so do not add the braces "( );".
Also, the constant ENGLISH is not an array, but just a single Locale object.
You didn't say what your problem was. What do you want to achieve with your program and what is it that you don't understand? -
Help Regarding a Picture Display in Customer Container.
Hi,
I am generating a ALV report output with an ICON in every line to show the corresponding picture of the material in a Pop-up window.
Now for displaying the picture at usercommand from ALV ,
HTML browser is placed on the custom container screen and the URL is passed to the variable EDURL which helps in processing the material picture on the screen.
The issues that in this process is.. Picture pop-up currently shows briefly the previous picture before retrieving requested image .
Please help me to solve this,
Thanks
Priyanka.Hi,
While calling the pop up clear, refresh all the variables and pass the new values.
I guess when you are calling the Image for first time you are not getting any delay or previous image.
So basically see the variables when calling for the first time and implement for the rest of times also.
BR
Dep -
Hi all,
I have read that you use Custom container class for oops alv. But i have not found an answer as to why do we have to use the class.
Can't we just use ALV class only (Cl_gui_alv_grid) ?.
Regards
VarunYou can only create a grid display in a container...while creating the object for grid contol you have to pass the object reference of the custom container...check out the following for details...
*& Report ZTEST_DEMO_ALV
report ztest_demo_alv.
class cl_event_reciever definition deferred.
data:
wa_vbak type vbak.
data:
i_vbak type standard table of vbak,
i_vbap type standard table of vbap.
data:
v_container1 type scrfname value 'CONT1',
v_grid1 type ref to cl_gui_alv_grid,
v_custom_container1 type ref to cl_gui_custom_container,
v_container2 type scrfname value 'CONT2',
v_grid2 type ref to cl_gui_alv_grid,
v_custom_container2 type ref to cl_gui_custom_container,
ok_code type syucomm,
v_event_reciever type ref to cl_event_reciever.
* CLASS cl_event_reciever DEFINITION
class cl_event_reciever definition.
public section.
methods:
handle_double_click for event double_click of cl_gui_alv_grid
importing e_row e_column.
endclass. "cl_event_reciever DEFINITION
* CLASS cl_event_reciever IMPLEMENTATION
class cl_event_reciever implementation.
method handle_double_click.
read table i_vbak
into wa_vbak
index e_row.
if sy-subrc = 0.
select * from vbap
into table i_vbap
where vbeln = wa_vbak-vbeln.
if sy-subrc = 0.
set screen 00.
leave to screen 100.
endif.
endif.
endmethod. "handle_double_click
endclass. "cl_event_reciever IMPLEMENTATION
select-options:
s_vbeln for wa_vbak-vbeln.
start-of-selection.
select * from vbak
into table i_vbak
up to 50 rows
where vbeln in s_vbeln.
if sy-subrc <> 0.
message i000(z_zzz_ca_messages) with 'No data found!'.
leave list-processing.
endif.
end-of-selection.
call screen 100.
*& Module STATUS_0100 OUTPUT
* text
module status_0100 output.
set pf-status '100'.
* SET TITLEBAR 'xxx'.
if v_custom_container1 is not bound.
create object v_custom_container1
exporting container_name = v_container1.
create object v_grid1
exporting i_parent = v_custom_container1.
call method v_grid1->set_table_for_first_display
exporting
* i_buffer_active =
* i_bypassing_buffer =
* i_consistency_check =
i_structure_name = 'VBAK'
* is_variant =
* i_save =
* i_default = 'X'
* is_layout =
* is_print =
* it_special_groups =
* it_toolbar_excluding =
* it_hyperlink =
* it_alv_graphics =
* it_except_qinfo =
* ir_salv_adapter =
changing
it_outtab = i_vbak
* it_fieldcatalog =
* it_sort =
* it_filter =
exceptions
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
others = 4
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
create object v_event_reciever.
set handler v_event_reciever->handle_double_click for v_grid1.
endif.
if v_custom_container2 is not bound
and i_vbap is not initial.
create object v_custom_container2
exporting container_name = v_container2.
create object v_grid2
exporting i_parent = v_custom_container2.
call method v_grid2->set_table_for_first_display
exporting
* i_buffer_active =
* i_bypassing_buffer =
* i_consistency_check =
i_structure_name = 'VBAP'
* is_variant =
* i_save =
* i_default = 'X'
* is_layout =
* is_print =
* it_special_groups =
* it_toolbar_excluding =
* it_hyperlink =
* it_alv_graphics =
* it_except_qinfo =
* ir_salv_adapter =
changing
it_outtab = i_vbap
* it_fieldcatalog =
* it_sort =
* it_filter =
exceptions
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
others = 4
endif.
if v_custom_container2 is bound.
call method v_grid2->refresh_table_display.
endif.
endmodule. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
* text
module user_command_0100 input.
case ok_code.
when 'BACK'.
if v_grid1 is bound.
call method v_grid1->free.
endif.
if v_grid2 is bound.
call method v_grid2->free.
endif.
set screen 00.
leave screen.
endcase.
endmodule. " USER_COMMAND_0100 INPUT -
Do we require HBA card for single instance database.
Hi All,
I have doubt that we are going to implement a single instance with ASM.
Db version will 11gR2 as it is asm. My concern HBA is required for single instance oracle database.
Please suggest.
Thanks and Regards,The question is : do you want your user to be able ti use their application offline ?
If yes, then you may provide them a local database and use a JDBC type4 driver. (The application is fetch directly from the server when first connected and then is able to lauch the applicaiton off-line) Such a network listen is allowed by the JNLP security model without any application sign !
If no, then why not having a single database and some user debedant table that store the user specific data (as usual), and using a login dialog-bon (or an auto-logon mechanism) to restric identify and access your database thru some business logic via RMI or any ligh-webservice technology.
Anyway you have plenty of solutions ..... it only depends of what are the exact needs.
Regards,
Jean-Baptiste Bugeaud
WWW.UP2GO.NET - The JNLP Applications Repository -
Handle "Enter" inside Custom Container
Hi all,
I am having 4 to 5 fields in my module pool screen and at the same time i am having a custom container wherein, there is editable ALV.
Here in editable ALV, i am having an editable field called dealer code.When i enter dealer code in editable ALV and press enter
my dealer name and dealer address in editable ALV [inside Custom Container] should get populated.
But when the cursor is inside the custom container [in that editable field] none of my screen events[Module pool events]
are getting triggered [Hence my values are not getting populated.When the cursor is outside the custom container all my module pool events are working fine, hence values are getting populated....
Is there anyway to handle this???
I am using OOPS Editable ALV inside a custom container...
Waiting for your repiles...Hello,
You have to implement events in order to handle your ALV, take a llok to this PDF:
http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e8a1d690-0201-0010-b7ad-d9719a415907
Take a look on section EVENT BASED ADDITIONAL FUNCTIONALITIES->Making ALV Grid Editable
Bye!!
Gabriel P- -
Does Oracle RAC improve performance over single-instance db
Hallo!i am running a single instance db that seems to be overwhelmed by workload as CPU is constantly 100% utilized despite code and instance tuning and users persistently complain of system slowness.
It is our plan to uprgade to more powerful servers but would also like to implement load balancing to have 2 instances and 2 servers share workload via RAC solution.
Some of peers state that RAC mostly a High Availability solution to enable continuity should one instance fail.I would like to know if db performance would improve on RAC as load balancing between 2 or more instances occurs in a RAC setup.
Thanks.4joey1 wrote:
Some of peers state that RAC mostly a High Availability solution to enable continuity should one instance fail.I would like to know if db performance would improve on RAC as load balancing between 2 or more instances occurs in a RAC setup.RAC also provides scalability - as you have additional servers and database instances to deal with the workload. It is not a mere high availability and redundancy architecture.
BTW, a 2 node RAC is IMO not a "real" RAC... We also have one of those and I regret not insisting that it be, at minimum, a 4 node RAC - from both a redundancy/availability and performance/scalability viewpoints.
Simple example - on our bigger RAC we are dealing with about 37000+ row inserts every second (3+ billion rows per day). This workload is only handled (on smallish dual 2-core CPU servers) due to RAC. No way that a single one of these servers would alone (as a single non-RAC instance) be capable to deal with that workload.
So yeah - RAC is most definitely also about performance and scalability too. (but that does not mean it's a magic wand for solving your performance problems either). -
I try to follow the steps 1-3, as it shows. After it downloads, after step 2, a dialog box pops up saying “Open Executable File? Then it says it may contain viruses or malicious code and to be careful when opening file. So I click OK, then step 3 occurs, file name lists as: install_flashplayer11x32_mssd_aih(2).exe. So then I hit “Run”. Then another dialog box pops up titling “UI_FlashPlayerInstaller”, and it says “Only a single instance of this application can run”, “OK”. I’ve checked to see if there is another version installed, but I don’t see any. I am operating a Windows 32 Bit, FireFox,
Download the full installer from this FAQ http://forums.adobe.com/thread/909550
Save it to disk, then close all browser windows and run the downloaded installer. -
Single instance app with native packaging
Is there any way to allow only one instance of the app to run with javafx2 native packaging? Like an attribute in the build.xml or something?
I'm using the .exe for windows and the .dmg for mac.
Appreciate your help.There is no simple deployment build switch that I know of for achieving a single instance app.
A couple of ideas (none of which I have tried).
Perhaps you could use the SingleInstanceService:
http://www.oracle.com/technetwork/articles/java/fxbest-1583679.html "Ensuring Only One Instance of the Application Is Started"
http://docs.oracle.com/javase/7/docs/technotes/guides/javaws/developersguide/examples.html#SingleInstanceService "SingleInstanceService"
It is a jnlp api based service though and I'm not sure if such a service would be available to a packaged app (maybe it would require including the jre/lib/javaws.jar file with your app or something like that).
You could write out a lock file when the app starts.
On unix (i.e. mac/linux) the lock could include the process pid for your app. On startup, check if there is a process with the lock pid currently running, if so, don't startup and perhaps send an interrupt signal to the existing app notifying it that the user tried to start a new instance.
On windows you could read and write the lock value value from the registry.
To get rid of the OS specific stuff surrounding this, perhaps this kind of lock logic could be implemented using the Java Preferences API:
http://docs.oracle.com/javase/7/docs/technotes/guides/preferences/index.html
Intellij Idea is open source and and seems to have this kind of functionality, so you could check how they do it.
Maybe you are looking for
-
Best buy lost my mail order package
Oct. 30 I place an order of 3x canon flashes. UPS showes it was deliverd on Nov 3. I never recieved the package when I got home from work that day. Call Best Buy on Nov. 4 at 9am to see wheres my package. Best Buy rep. then told me that it'll tak
-
I can't install itunes for windows 7 to 64bit i tried several times and at the end show up this... "apple application support was not found apple application is required to run ituneshelper please un istall itunes then install itunes again erro 2" ..
-
Install Oracle 9i(9.2.0.1) on Windows 7(Prof.)
I want to install Windows 7 (Prof. Edition ) in my P.C. Could I install Oracle 9i(Release 2, i.e. 9.2.0.1 version) on it. Please help me.
-
Surrogate Key and Map for Cube
Hi I am new to Data Warehousing and am trying to use OWB 11g. I am trying to create dimensions with multiple levels. When I create more than one level it need to have surrogate as well business key for each dimension level. But I can create only one
-
Excel problem in abstract portal component
Try below code to output Excel. OutputStream out = response.getOutputStream(); response.setContentType("application/vnd.ms-excel"); response.setHeader( "Content-disposition",