How to create a cursor on a union select statement?
Hi,
Using Oracle 10g RAC +ASM ( RELEASE 1002000300)
What are is the proper way to create a cursor on a union select statement?
Is it possible?
code lines, Results in PLS-00201 error: sT := crsR.STATUS; sS := crsR.TIME;
Procedure listed below:
CREATE OR REPLACE PROCEDURE BUILD_SUMMARY IS
CURSOR csrO IS
SELECT
STATUS,
TIME
FROM (
SELECT
SUBSTR(DESCRIPTION,1,50) STATUS,
TO_CHAR(TIMESTAMP,'MM/DD/YY hh12:mi:ss') TIME
FROM GLOBALSALES.CUBE_STATUS
UNION ALL
SELECT
' TOTAL BUILD TIME',
TO_CHAR(TO_DATE('00:00:00','HH24:MI:SS') +(MAX(TIMESTAMP) - MIN(TIMESTAMP)), 'HH24:MI:SS')
FROM GLOBALSALES.CUBE_STATUS);
csrR csrO%ROWTYPE;
sT LONG :='';
sS LONG :='';
BEGIN
FOR csrR IN csrO
LOOP
sT := crsR.STATUS;
sS := crsR.TIME;
DBMS_OUTPUT.PUT_LINE(sT || ' ' || sS);
END LOOP;
END;
/
csrR csrO%ROWTYPE;
Declares the csrR correct? Cursor Record of Cursor Object Type?That line declares one variable CSRR with your column structure described by the cursor (CSRO) type you declared above it. It means the CSRR variable has the columns you had in the SELECT statement in that cursor.
When you run a cursor as you did you don't need to declare the record variable. Try this:
CREATE OR REPLACE PROCEDURE build_summary IS
CURSOR csro IS
SELECT status, TIME
FROM (SELECT substr(description, 1, 50) status, to_char(TIMESTAMP, 'MM/DD/YY hh12:mi:ss') TIME
FROM globalsales.cube_status
UNION ALL
SELECT ' TOTAL BUILD TIME',
to_char(to_date('00:00:00', 'HH24:MI:SS') + (MAX(TIMESTAMP) - MIN(TIMESTAMP)),
'HH24:MI:SS')
FROM globalsales.cube_status);
--csrr csro%ROWTYPE;
st LONG := '';
ss LONG := '';
BEGIN
FOR csrr IN csro
LOOP
st := csrr.status;
ss := csrr.time;
dbms_output.put_line(st || ' ' || ss);
END LOOP;
END;Also why are you using LONG? It's a deprecated data type and Oracle recommends against using it. Either pick varchar2(4000) or CLOB.
DBMS_OUTPUT.PUT_LINE will implicitly convert that LONG data type anyway.
Similar Messages
-
How to create a cursor in menu item???
Hi,
How to create a cursor in menu item??? and process data inside the SQL Editor of Menu Item>????
Regards,ok, you mean: When the form is starting you want to disable some menues.
create a WHEN-NEW-FORM-INSTANCE-trigger in your form and then do the loop over the menu-item
what is ENTITIES? The name of a table ? -
How to create a parameter to allow multiple selection
Hi,
I am developing report in Oracle EBusiness suite. I use concurrent program to develop the report. My question is how to create a parameter to allow multiple selection for such kind of report?
thanks
LeiI dont think, we have multiple selection in the parameters of Concurrent Program :).
-
How to Create a DropDown Box in a Selection Screen.
Hi,
I have a question. i.e, How to create a dropdown box in a Selection Screen. Could you please assist me.
Thanks & Regards
Sathish Kumarhi satish,
The following can assist u to create a drop down ....
Drop down list box can be created in a dialog screen(SE51) as well as selection screen.
The sap list box allows to select a value from the list but we cannot enter our own value in the list box .The value list that will be displayed consists of two
fields TEXT field of TYPE 80(C) and internal KEY field of TYPE 40(C).
In screen painter to create a input/output field into list box we use
'L" as a value for dropdown attribute for the i/o field.
In screen painter to determine the type of method that will be used to fill the value
list we use the attribute value list.
If it is blank the value list will be filled by the first column of the input help assigned to the screen field.This input help can be defined in the ABAP Dictionary, on screen using SELECT,VALUES screen statements or in event POV (PROCESS ON VALUE-REQUEST ) and the input help that will be passed to the field should consists of 2 columns ,the key column is filled automatically by the system.SAP recommends value list field should be blank.
or
The value can be 'A' meaning that the value list will be filled in the event PBO(PROCESS BEFORE OUTPUT) or before the screen is displayed.In this method we use function module VRM_SET_VALUES to fill the values and pass it to the i/o field.
If a function code is attached to the list box the selection of a value triggers a PAI
otherwise PAI will not trigger.
Example
Dropdown list boxes
REPORT DEMO_DYNPRO_DROPDOWN_LISTBOX.
TYPE-POOLS VRM.
DATA: NAME TYPE VRM_ID,
LIST TYPE VRM_VALUES,
VALUE LIKE LINE OF LIST.
DATA: WA_SPFLI TYPE SPFLI,
OK_CODE LIKE SY-UCOMM,
SAVE_OK LIKE SY-UCOMM.
TABLES DEMOF4HELP.
NAME = 'DEMOF4HELP-CONNID'.
CALL SCREEN 100.
MODULE CANCEL INPUT.
LEAVE PROGRAM.
ENDMODULE.
MODULE INIT_LISTBOX OUTPUT.
CLEAR DEMOF4HELP-CONNID.
SELECT CONNID CITYFROM CITYTO DEPTIME
FROM SPFLI
INTO CORRESPONDING FIELDS OF WA_SPFLI
WHERE CARRID = DEMOF4HELP-CARRIER2.
VALUE-KEY = WA_SPFLI-CONNID.
WRITE WA_SPFLI-DEPTIME TO VALUE-TEXT
USING EDIT MASK '__:__:__'.
CONCATENATE VALUE-TEXT
WA_SPFLI-CITYFROM
WA_SPFLI-CITYTO
INTO VALUE-TEXT SEPARATED BY SPACE.
APPEND VALUE TO LIST.
ENDSELECT.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
ID = NAME
VALUES = LIST.
ENDMODULE.
MODULE USER_COMMAND_100.
SAVE_OK = OK_CODE.
CLEAR OK_CODE.
IF SAVE_OK = 'CARRIER'
AND NOT DEMOF4HELP-CARRIER2 IS INITIAL.
LEAVE TO SCREEN 200.
ELSE.
SET SCREEN 100.
ENDIF.
ENDMODULE.
MODULE USER_COMMAND_200.
SAVE_OK = OK_CODE.
CLEAR OK_CODE.
IF SAVE_OK = 'SELECTED'.
MESSAGE I888(BCTRAIN) WITH TEXT-001 DEMOF4HELP-CARRIER2
DEMOF4HELP-CONNID.
ENDIF.
ENDMODULE.
Reward if useful.
Thank you,
Regards. -
How to create Drop down menu in the selection screen
Hi all,
How to create Drop down menu in the selection screen.
Fast answer will be highly rewarded
Regards
Bikashi ,
TYPE-POOLS : vrm.
TABLES:vbak,vbap.
DATA : v(80) TYPE c.
DATA: wa_vbak TYPE vbak,
it_vbak TYPE vbak OCCURS 0 WITH HEADER LINE,
wa_vbap TYPE vbap,
it_vbap TYPE vbap OCCURS 0 WITH HEADER LINE.
DATA: l_name TYPE vrm_id,
li_list TYPE vrm_values ,
v_count TYPE i,
l_value LIKE LINE OF li_list.
PARAMETERS: p_test(20) AS LISTBOX VISIBLE LENGTH 60 MODIF ID DAT.
INITIALIZATION.
AT SELECTION-SCREEN OUTPUT.
PERFORM get_data.
LOOP AT it_vbak.
l_value-key = it_vbak-vbeln .
l_value-text = it_vbak-vbeln .
APPEND l_value TO li_list.
ENDLOOP.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_TEST'
values = li_list
EXCEPTIONS
id_illegal_name = 1
OTHERS = 2.
AT SELECTION-SCREEN ON P_TEST.
clear : li_list , li_list[].
SELECT vbeln
matnr
meins
FROM vbap
INTO CORRESPONDING FIELDS OF TABLE it_vbap
WHERE vbeln = p_test.
START-OF-SELECTION.
SELECT vbeln
matnr
meins
FROM vbap
INTO CORRESPONDING FIELDS OF TABLE it_vbap
WHERE vbeln = p_test.
LOOP AT it_vbap.
WRITE :/ it_vbap-vbeln, it_vbap-matnr,it_vbap-meins.
ENDLOOP.
*& Form get_Data
text
--> p1 text
<-- p2 text
FORM get_data .
SELECT vbeln
FROM vbak
INTO CORRESPONDING FIELDS OF TABLE it_vbak.
ENDFORM. " get_Data
regards,
venkat. -
Can any body tell me how to create a layout variant in the selection
hi friends i would like to know how to create a layout variant in the selection screen and how to select the variant to display the ouptut using the layout using disvariant.please if possible give me example. thanks in advance.
hi,
I shall give you the code. It will definitely work.
<u><b>Declerations you need to make</b></u>
data: WK_VARIANT LIKE DISVARIANT,
WX_VARIANT LIKE DISVARIANT,
WK_REPID LIKE SY-REPID,
WK_VARIANT_SAVE(1) TYPE C,
WK_EXIT(1) TYPE C.
<b><u>Things you need to do in the initialization event:</u></b>
INITIALIZATION.
PERFORM F_INIT_VARIANT.
PERFORM F_VARIANT_DEFAULT USING PR_VARI.
*& Form f_init_variant
FORM F_INIT_VARIANT .
CLEAR WK_VARIANT.
WK_REPID = SY-REPID.
WK_VARIANT-REPORT = WK_REPID.
WK_VARIANT-USERNAME = SY-UNAME.
WK_VARIANT_SAVE = 'A'.
ENDFORM. " f_init_variant
*& Form f_variant_default
FORM F_VARIANT_DEFAULT USING P_PR_VARI.
WX_VARIANT = WK_VARIANT.
IF NOT P_PR_VARI IS INITIAL.
WX_VARIANT-VARIANT = P_PR_VARI.
ENDIF.
CALL FUNCTION 'LVC_VARIANT_DEFAULT_GET'
EXPORTING
I_SAVE = WK_VARIANT_SAVE
CHANGING
CS_VARIANT = WX_VARIANT
EXCEPTIONS
WRONG_INPUT = 1
NOT_FOUND = 2
PROGRAM_ERROR = 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.
CASE SY-SUBRC.
WHEN 0.
P_PR_VARI = WX_VARIANT-VARIANT.
WHEN 2.
CLEAR P_PR_VARI.
ENDCASE.
ENDFORM. " f_variant_default
<b><u> After this Things you need to do in the At selection screen event:</u></b>
AT SELECTION-SCREEN ON VALUE-REQUEST FOR PR_VARI.
PERFORM F_VARIANT_F4 USING PR_VARI.
*& Form f_variant_f4
FORM F_VARIANT_F4 USING P_PR_VARI.
CALL FUNCTION 'LVC_VARIANT_F4'
EXPORTING
IS_VARIANT = WK_VARIANT
I_SAVE = WK_VARIANT_SAVE
IMPORTING
E_EXIT = WK_EXIT
ES_VARIANT = WX_VARIANT
EXCEPTIONS
NOT_FOUND = 1
PROGRAM_ERROR = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IF WK_EXIT IS INITIAL.
WK_VARIANT-VARIANT = WX_VARIANT-VARIANT.
P_PR_VARI = WX_VARIANT-VARIANT.
ENDIF.
ENDFORM. " f_variant_f4
After this finally when you call the output using REUSE_ALV_GRID_DISPLAY YOU NEED TO mention this parameter in the function module
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
<i><u><b>IS_LAYOUT = WA_LAYOUT</b></u></i>
<i><u><b>I_SAVE = 'X'</b></u></i>
<u><i>I_DEFAULT = 'X'</i></u>
<u><b>IS_VARIANT = WK_VARIANT</b></u>
TABLES
T_OUTTAB = ITAB1
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
Once you do this,,, you can create a layout variant.
P.S. Mark all helpful answers for points.
JLN -
How to create tcode for modulepool program with selection screen?
hi,
How to create tcode for modulepool program with selection screen?
thanks,
sagarHi,
We need to goto SE80.
In our program we right click on object name and goto create
-> transaction. Enter the module pool program and screen number and save and activate.
Or by SE93 also we can create a transaction code for our program.
Hope ths helps.
plz reward if useful.
thanks,
dhanashri..
Edited by: Dhanashri Pawar on Jul 22, 2008 8:29 AM -
How to edit the records value fetched by select statement query in sqldever
How to edit the records value fetched by select statement query in sqldever 2.1.1.
EX-
SELECT * FROM emp WHERE ename like 'Jaga%'
Edited by: user9372056 on Aug 31, 2010 2:16 AMHi,
Although some forum members may be using that tool, there is still a dedicated forum for SQL Developer.
SQL Developer
Maybe your chances are better there.
Regards
Peter -
How to create ICon/Cursor from pdf files
I was able to create ICon from jpg file without problem but I couldn't create ICon from pdf files.
Here my code:
var myDoc = app.newDoc();
myDoc.importIcon("myIcon"); // it worked when I chose a jpeg image, but it didn't
//when chose a pdf file.
icon = myDoc.getIcon("myIcon");
oIcon = util.iconStreamFromIcon(icon);
myDoc.closeDoc(true);
app.addToolButton({
cName: "myButtoon",
oIcon: oIcon,
cExec: "app.alert('Someone pressed me!')",
cTooltext: "Push Me!",
cEnable: true,
nPos: 4
//app.removeToolButton("myButtoon");
My goal is to create buttons which have icons from a pdf file (stamp) and when user click on these buttons, the cursors become the icon . And then, when user click on the document, the iCon will be showed in the document. The point is: is there anyway to create icons/cursors/stamps from one pdf file. Because the stamp is changeable, when user changes the color/shape of the pdf file, the icons/cursors/stamps will automatically change
What kind of pdf format do I have to use?
I used the sample "SignHere.pdf" in stamps folder of Acrobat but it didn't work.
Thanks.The SDK has all the information - but certainly there are only samples for those common actions that users have been doing for years. Most developers don't recreate stuff already present in the application - such as the Stamp plugin - so we don't have samples of such things.
But all the pieces you need are present in the SDK - it's just necessary obvious. You will need to learn about the details of how the plugin APIs work to create the toolbars and toolbuttons, and then how to handle cursors. You will then need to learn about PDF details in order to be able to take an existing PDF, potentially modify it (eg. Change the color(s)) and then place it onto another PDF.
The methods you listed are from JavaScript - there are alternative methods for plugins, such as the AVConversion APIs. -
How to create custom cursor??
I want to create a new cursor using Toolkit.createCustomCursor(Image,Point,String),
but Image can only accept .gif,.jpg file,it cannot know .cur,
so if image's background's color is not equal to panel's background's,
the cursor that show in the panel looks like malformed rectangle.
so is there any better way to create a custom cursor??Create the cursor as a transparent gif if you need it to be transparent.
nes -
How to create faster cursor?
Hi all experts...
I created one cursor as below
CURSOR C1 IS SELECT CONSUMER_Number FROM xyz
in xyz table 50,000 records . at the time of creation cursor it's takes
huge time (ie. 3 to 4hrs).
Any process which creates cursor faster.Pl give me solution.
Sudhir.Hi..
Here is my procedure which takes 3 hrs or more.
CREATE OR REPLACE PROCEDURE MEDA_UPDATE AS
CURSOR C1 IS SELECT CONSUMER_NO FROM BILL_INFO;
V_CONS_0304 NUMBER;
BEGIN
FOR I IN C1
LOOP
BEGIN
V_CONS_0304:=0;
SELECT
nvl(SUM(qty),0) INTO V_CONS_0304
FROM qty_history
WHERE TO_DATE(BILL_MTH,'YYMM') BETWEEN '01-APR-2003' AND '31-MAR-2004'
AND CONSUMER_NO=I.CONSUMER_NO;
EXCEPTION WHEN OTHERS THEN NULL;
END;
END LOOP;
COMMIT;
END;
when i execute above procedure it's take time.
Thx.
Sudhir. -
How to create a condition based on a select that retrieve dynamically a LOV
Hi all, I need to create a condition based on a select that retrieve dynamically a LOV.
So, the condition have to be:
inventory_item_id NOT IN (SELECT inventory_item_id FROM apps.mtl_system_items_kfv WHERE concatenated_segments = 'GENERAL_FAULTS_IPTV')
I need to create a LOV based on this select without making any join with the folder which contains the field inventory_item_id, because otherwise I have the contradiction:
and o124757.INVENTORY_ITEM_ID = o118741.INVENTORY_ITEM_ID -- join between the main custom folder (o118741) and the LOV custom folder (o124757)
and o118741.INVENTORY_ITEM_ID NOT IN (o124757.INVENTORY_ITEM_ID) -- condition
These two condition together don't show any data, obviously....This means also, that I can't use a calculated field, because if I want to see this field, I have to create a join, another time, with the main custom folder.
I tried to create a LOV on the Administrator, but when I create the condition I have to check manually the values....and if in the future this LOV will increase I need every time to re-check all the values.....instead I need that the inventory_item_id have to be NOT IN dinamically in the list of values retrieved by the select.
Anybody has inplemented something similar ??
Thanks in advance
AlexHi alex,
SELECT incidents.INVENTORY_ITEM_ID,
pcodes.PROBLEM_NAME
FROM apps.cs_incidents_all_b incidents,apps.jtf_rs_problem_codes_v pcodes
WHERE incidents.category_id IN (SELECT category_id
FROM mtl_categories_kfv
WHERE concatenated_segments = 'IPTV')
AND incidents.PROBLEM_CODE = pcodes.PROBLEM_CODE
where incidents.INVENTORY_ITEM_ID NOT IN SELECT inventory_item_id
FROM apps.mtl_system_items_kfv
WHERE concatenated_segments = 'GENERAL_FAULTS_IPTV'
You want to add this condition to the first query it holds good for this scenerio.All the items which are NOT IN will be retrieved.Here you are selecting other than "General_faults_iptv"
But again your trying to select in the second query where you want "General_faults_iptv"
SELECT inventory_item_id
FROM apps.mtl_system_items_kfv
WHERE concatenated_segments = 'GENERAL_FAULTS_IPTV'
If you carefully go through what your doing,you will understand.In the above explantion ,there will be no records generated.First query your saying NOT IN and again your saying for the same IN,how will records retrieve its meaningless.
I dont know what you want to get from second query.I would suggest you to do is dont use the second query and just use the first query and you will get.Here is the query and this will give you result.
SELECT incidents.INVENTORY_ITEM_ID,
pcodes.PROBLEM_NAME
FROM apps.cs_incidents_all_b incidents,apps.jtf_rs_problem_codes_v pcodes
WHERE incidents.category_id IN (SELECT category_id
FROM mtl_categories_kfv
WHERE concatenated_segments = 'IPTV')
AND incidents.PROBLEM_CODE = pcodes.PROBLEM_CODE
AND incidents.INVENTORY_ITEM_ID NOT IN SELECT inventory_item_id
FROM apps.mtl_system_items_kfv
WHERE concatenated_segments = 'GENERAL_FAULTS_IPTV'
Regards,
Kranthi. -
How to created Freely Programmed F4 help in Select Options
hi,all
I have a probelm about how to created a Freely Programmed F4 help in Select Options,and put help value into select options field
Thanks and Best RegardsHi Haung,
You need to use FREE_HELP not the component name.
Modify you code as below:
LT_RANGE_TABLE_V = wd_this->m_handler_V->create_range_table( 'ZCYPHDATE' ).
wd_this->M_HANDLER_V->add_selection_field(
i_id = 'ZCYPHDATE'
it_result = LT_RANGE_TABLE_V
i_value_help_type = if_wd_value_help_handler=>CO_PREFIX_APPLDEV
i_value_help_id = 'FREE_HELP'
i_no_intervals = abap_false ).
Hope this helps you.
Regards,
Rama -
How to create a Type Object with Dynamic select query columns in a Function
Hi Every One,
I'm trying to figure out how to write a piplined function that executes a dynamic select query and construct a Type Object in order to assigned it to the pipe row.
I have tried by
SELECT a.DB_QUERY INTO actual_query FROM mytable a WHERE a.country_code = 'US';
c :=DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(c,actual_query,DBMS_SQL.NATIVE);
l_status := DBMS_SQL.EXECUTE(c);
DBMS_SQL.DESCRIBE_COLUMNS(c, col_cnt, rec_tab);
FOR j in 1..col_cnt LOOP
DBMS_SQL.DEFINE_COLUMN(c,j,v_val,2000);
END LOOP;
FOR j in 1..col_cnt LOOP
DBMS_SQL.COLUMN_VALUE(c,j,v_val);
END LOOP;
But got stuck, how to iterate the values and assign to a Type Object from the cursor. Can any one guide me how to do the process.
Thanks,
mallikj2Hi Justin,
First of thanks for your reply, and coming to my requirement, I need to report the list of items which are there in the dynamic select statement what am getting from the DB. The select statement number of columns may vary in my example for different countries the select item columns count is different. For US its '15', for UK it may be 10 ...like so, and some of the column value might be a combination or calculation part of other table columns (The select query contains more than one table in the from clause).
In order to execute the dynamic select statement and return the result i choose to write a function which will parse the cursor for dynamic query and then iterate the values and construct a Type Object and append it to the pipe row.
Am relatively very new for these sort of things, welcome in case of any suggestions to make it simple (Instead of the function what i thought to work with) also a sample narrating the new procedure will be appreciated.
Thanks in Advance,
mallikj2. -
How to create rule for repoting soa server down state in OEM12c
Hi All,
I am very new to OEM 12c. I want to monitor my weblogic server from OEM 12c. I want to configure rule such that if any of the servers viz. Admin Server, soa server, bam server or osb server goes down it send a notification mail to the administrator. I am very new to OEM 12c. I have already configured the mail server in OEM12c. I need to j=know how to create a rule with the above mentioned condition. Please guide me !!!
Thanks in advance!!
Edited by: Roshni Shankar on Aug 9, 2012 12:06 AMHi Roshni,
For most MW targets including the WebLogic Server target, you can set the thresholds by going to the target drop-down (right above the main pane, you will see a "WebLogic Server" menu) and you can the navigate to "Monitoring" from the base menu items. From there, you will see "Metric and Collection Settings" which will take you to where you can set thresholds for the target.
You then can set notifications via your chosen mechanism. For more details, we have in-product documentation. The easiest way to find out more about thresholds, incidents, notifications, and other key features related to basic monitoring and alerting like metric templates, you can navigate to "Incident Management" off the "Enterprise" top-level menu item. There you will see incidents (i.e. metric alerts, policy violations) as well as a Getting Started guide at the bottom where you can learn more about these topics. You can also use the "Help" menu of course and look through the broader set of documentation that we offer both in the product and on OTN.
Cheers,
Glen
Maybe you are looking for
-
Multiple Monitors on New Mac Pro
We cannot get more than 3 monitors operational on either of our new MacPro systems. We have contacted Tech support and they apparently agree... So we're looking for options. This is what we need: Monitor 1: Connected from HDMI port to HP LP2475
-
Can't find photoshop cc after installation
just downloaded photoshop cc from the cloud and i can't find it anywhere on my pc. i installed premier pro and after effects on the same computer without problems. any ideas? thanks.
-
Tried to move my CS4 Suite from Windows XP to new computer running Windows 8.0 and now receive Licensing for this product has stopped working, Error Message 5. I no longer have the disks for this program. Help!
-
Bluetooth Mouse Not Scrolling in Lion
Man these forums come in handy, Last night I updated my Mac from Snow Leopard to Lion. I went to bed and woke up ready to set up. The scroll window test came up, and I couldnt scroll. Yes I know that the scrolling is inverted in Lion. Either way, it
-
Hi All, There is a selection screen in which i am entreing matnr and based on the matnr i have to provide F4 help.I am using a function module to show F4 help.I need the matnr entered on the screen as input the function module.The FM is in Process-