How to invoke Standard BOM form in pre-queried mode?
Hi,
I need to invoke the Standard Oracle BOM form from a custom form developed.
I have the Bill Sequence ID, Inventory Item ID and the Organization ID available in the custom form.
Currently this is how I am trying:
fnd_function.EXECUTE
(function_name => 'BOM_BOMFDBOM',
open_flag => 'Y',
session_flag => 'N',
other_params => 'BILL_SEQ_ID="'
|| l_num_bill_seq_id
|| '" INV_ITEM_ID="'
|| l_num_inv_item_id
|| '" ITEM_ID="'
|| l_num_inv_item_id
|| '" ORG_ID="'
|| :parameter.org_id
|| '" G_QUERY_FIND= "'
|| 'TRUE'
|| '"'
The form does open up. But not pre-queried for the Bill Sequence I pass to it.
Can anyone please let me know if I am missing something.
Thanks a bunch,
Vinay.
This might help
If :b_bill_of_matls.Assembly_Item_Id is not null then
X_Parameters :=
' ASSEMBLY_ITEM_ID='||to_char(:b_bill_of_matls.Assembly_Item_id);
If :b_bill_of_matls.Alternate_bom_Designator is not null then
X_Parameters := X_Parameters ||
' ALTERNATE='||:b_bill_of_matls.Alternate_bom_Designator;
End if; -- alternate
X_Parameters := X_Parameters ||
' ORG_ID='||to_char(:Parameter.Org_Id)||
' ORG_CODE='||:Parameter.Org_Code;
End if; -- specific routing
Fnd_Function.Execute(
function_name => X_Function,
open_flag => 'Y',
session_flag => 'Y',
other_params => X_Parameters);
Similar Messages
-
How to use standard Smart forms
hi All,
Pls give me the detail for smartform ie how to use standard smart forms and how to modify them in SAP 4.7EE
Thanks,
NitinHi,
first u copy the standrad smartform to z and then modify it,
SOME STANDARD SMARTFORMS
SF_EXAMPLE_01,
SF_EXAMPLE_02,
SF_EXAMPLE_03,
LB_BILL_INVOICE,
ENETR SMARTFORMS TCODE
PRESS F4 HERE U FIND ALL STANDARD SMARTFORMS
OR
U GO TO TRANSACTION CODE NACE
SAMPLE PROGRAM FOR SMARTFORM,
. Create a new smartforms
Transaction code SMARTFORMS
Create new smartforms call ZSMART
2. Define looping process for internal table
Pages and windows
First Page -> Header Window (Cursor at First Page then click Edit -> Node -> Create)
Here, you can specify your title and page numbering
&SFSY-PAGE& (Page 1) of &SFSY-FORMPAGES(Z4.0)& (Total Page)
Main windows -> TABLE -> DATA
In the Loop section, tick Internal table and fill in
ITAB1 (table in ABAP SMARTFORM calling function) INTO ITAB2
3. Define table in smartforms
Global settings :
Form interface
Variable name Type assignment Reference type
ITAB1 TYPE Table Structure
Global definitions
Variable name Type assignment Reference type
ITAB2 TYPE Table Structure
4. To display the data in the form
Make used of the Table Painter and declare the Line Type in Tabstrips Table
e.g. HD_GEN for printing header details,
IT_GEN for printing data details.
You have to specify the Line Type in your Text elements in the Tabstrips Output options.
Tick the New Line and specify the Line Type for outputting the data.
Declare your output fields in Text elements
Tabstrips - Output Options
For different fonts use this Style : IDWTCERTSTYLE
For Quantity or Amout you can used this variable &GS_ITAB-AMOUNT(12.2)&
5. Calling SMARTFORMS from your ABAP program
REPORT ZSMARTFORM.
Calling SMARTFORMS from your ABAP program.
Collecting all the table data in your program, and pass once to SMARTFORMS
SMARTFORMS
Declare your table type in :-
Global Settings -> Form Interface
Global Definintions -> Global Data
Main Window -> Table -> DATA
Written by : SAP Hints and Tips on Configuration and ABAP/4 Programming
http://sapr3.tripod.com
TABLES: MKPF.
DATA: FM_NAME TYPE RS38L_FNAM.
DATA: BEGIN OF INT_MKPF OCCURS 0.
INCLUDE STRUCTURE MKPF.
DATA: END OF INT_MKPF.
SELECT-OPTIONS S_MBLNR FOR MKPF-MBLNR MEMORY ID 001.
SELECT * FROM MKPF WHERE MBLNR IN S_MBLNR.
MOVE-CORRESPONDING MKPF TO INT_MKPF.
APPEND INT_MKPF.
ENDSELECT.
At the end of your program.
Passing data to SMARTFORMS
call function 'SSF_FUNCTION_MODULE_NAME'
exporting
formname = 'ZSMARTFORM'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = FM_NAME
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3.
if sy-subrc <> 0.
WRITE: / 'ERROR 1'.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
call function FM_NAME
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS =
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS =
USER_SETTINGS = 'X'
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO =
JOB_OUTPUT_OPTIONS =
TABLES
GS_MKPF = INT_MKPF
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5.
if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
Thanks&Regards,
Phani
POINTS HELPFUL -
How do I set form automatically in query mode
Hi !
I have to pass value of one field as parameter from one form to
another form and then execute the query on the next form based
on the passed value of the parameter. (all this should happen as
soon as I press one button on the first form).
My problem is that unless I put the second form in the enter
query mode before accepting the value of the field, whatever
value I pass on from the first form will not be of any use.
How do I set the mode of the form to query mode. Since
system.mode is the read only variable and no value can be
assigned to it, so how can I handle this situation ?
Thanks in advance,
Shobhit
nullHi Shobhit,
Try ENTER_QUERY command in the PRE-FORM trigger of second form.
EXECUTE_QUERY in WHEN-NEW-FORM-INSTANCE and set the parameter
values to the respective fields in PRE-QUERY trigger.
Lalit
Shobhit Kumar (guest) wrote:
: Hi Steve !
: Thanks for the answer. but I want a bit different
functionality.
: I have already tried using execute-query (built in) in the when-
: new-form-instance and passed the value of the parameter in the
: field. But all that is happening is that the value is just
: sitting in the field and query is not getting executed
: automatically. I am using forms 5.0 and to enter a query we
need
: to change the mode of the form in the query mode (by clicking
: the enter->query button) and then enter the values in the
fields
: that would be used to build the query and the as soon as I say
: execute query it executes the query and displays the results.
: What I want is that as soon as I press a button in a form,
value
: of one field should go to another field in a second form and
: then the query should get executed automatically in the second
: form and the results should be displayed in that form.
: Any suggestions ?
: Regards,
: Shobhit
: Steve (guest) wrote:
: : You might want to try placing the builtin EXECUTE_QUERY
: : in the WHEN-NEW-FORM-INSTANCE trigger to auto query the form.
: You
: : may also want to use the SET_BLOCK_PROPERTY(DEFAULT_WHERE,
: : '.......'); to restrict queried records or set :block.item
: values
: : in a PRE-QUERY Trigger.
: : Shobhit Kumar (guest) wrote:
: : : Hi !
: : : I have to pass value of one field as parameter from one
form
: to
: : : another form and then execute the query on the next form
: based
: : : on the passed value of the parameter. (all this should
: happen
: : as
: : : soon as I press one button on the first form).
: : : My problem is that unless I put the second form in the
enter
: : : query mode before accepting the value of the field,
whatever
: : : value I pass on from the first form will not be of any use.
: : : How do I set the mode of the form to query mode. Since
: : : system.mode is the read only variable and no value can be
: : : assigned to it, so how can I handle this situation ?
: : : Thanks in advance,
: : : Shobhit
null -
Calling form in Enter-Query mode
Hi
how can i Have a form called from the menu (generated with
headstart) start in Enter-Query mode ?
Is there any method to do this easily ??
TIA
Olivier
nullOlivier,
Look in the Headstart Template Package users guide. In the
Runtime Behaviors chpt, under Inter-Form Navigation, Named Passed
Values and Argument Passed Values, you will find an explanation
of how to start a form in Enter-Query mode.
Regards,
Lauri
Olivier GIBERT (guest) wrote:
: Hi
: how can i Have a form called from the menu (generated with
: headstart) start in Enter-Query mode ?
: Is there any method to do this easily ??
: TIA
: Olivier
null -
Set search text when form is in query mode
Hi forum members,
is it possible to set the value of a textfield when a form is in query mode?
In our form you can enter query mode with F7 and execute the query with F8.
When you go back to query mode with F7 and then press F7 again, the search criteria of the past query appears.
Now in our form there is an alternativ search, that can be executed in query mode with F9. A different search canvas appears then with a more detailed search.
When I go back from that canvas to the initial canvas, change to query mode with F7 and try to get the last search criteria with F7, not the last search criteria (from F9 search) appears, but the first one (F8 search).
I have tried to copy the search value into an invisible textfield and then copy it back to the search field when F7 is pressed after the alternative search canvas was closed.
Instead of appearing in the search field, a new record is created in background.
Is there any other way to set the value of a textfield in query mode?
Thanks,
MarcoHi Craig,
thank you for this hint.
Unfortunately it does not solve my problem.
My goal is to fill the search fields with values when they are in query mode.
I try to explain it step by step:
Step 1
- In my Form I change to query mode with F7.
- I fill a search field, e.g. Name: TIGER.
- Then I execute the search with F8.
- Record is displayed in the block
Step 2
- I press the F7 Button to change to query mode again
- Now when I press F7 again, the search values from the last search (TIGER) appear (I think it is a standard forms functionality, isn't it?)
- I execute the search with F8
- Record is displayed
Step 3
- Again I change to query mode with F7
- I fill the search field (this time Name: SCOTT)
- Now advanced search is executed with F9
- A special search canvas opens over the form with result records and more detailed information to the result
- I close the search canvas
Step 4
- Again I change to query mode by pressing F7
- I want to get the search value from the last search (SCOTT) by pressing F7 again
- Value from the first search appears (TIGER)
My goal is to save the search value from step 3 anywhere (in a variable or copy field or something) and get it back in step 4 when the form is in query mode.
It seems to me that it is not possible to fill fields that are in query mode, is that right?
Thanks a lot!
Marco -
GETTING FORM OUT OF QUERY MODE (URGENT)
I have a form which start in Query mode, user enter in say employee ID. If that employee exists than user bring its record else create a new record.
What I did is start in query mode, when user enter employee ID, I check to see if record exist, if it does then I just use EXECUTE_QUERY. Now I don't know what to do for new record. If I use CREATE_RECORD that doesn't work because form is in query mode. How can I make form come out of query mode programmically?
I am using Form 5. Trigger I am using is KEY_NEXT_ITEM in Employee ID field.
Need urgent reply
ThanksWell Faisal, I have tried this code on the EMP table in the user Scott. I think it will solve your problem
use the key-next-item trigger
declare
empid emp.empno%type;
begin
select empno into empid
from emp
where empno = :empno;
clear_block(no_validate);
set_block_property('emp', default_where, 'empno=' | | empid);
execute_query;
set_block_property('emp', default_where, '');
next_item;
exception
when no_data_found then
next_item;
end; -
FRM:41361 Cannot navigate out of form in 'Enter Query Mode'
Hi,
I am using a master - detail block in my form.When I query the master block I am getting this error message
FRM:41361 Cannot navigate out of form in 'Enter Query Mode'
I have given DO_KEY('ENTER-QUERY') in WHEN-NEW-BLOCK-INSTANCE trigger of master block.
and in property palette of Master block I have given the next navigation block as Detail block.
According to the value which is queried in Master Block the Detail block should be populated.
My form should open in 'Enter Query Mode'.This problem always happens from second time onwards
I open the form.When I open the form first time this problem is not occuring.
Can anyone suggest a solution for this
Thanks,
NasiyaHave you written a Key-EntQuery trigger at the Master block or the form level,
If yes, then can you put that code here.
The NEXT-NAVIGATION-BLOCK is only used for navigation when you use a next-block built-in on a key-trigger.
Have you written a ENTER-QUERY command on any trigger that fires prior to the said WHEN-NEW-BLOCK-INSTANCE trigger?
If yes, then thats the reason that the first time you run the form, your form is in ENTER-QUERY mode.
Also, maybe execute on enter-query fails and hence the blocks are not getting populated.
Also, ENTER-QUERY is always on a single block. And while the block is in enter-query mode, navigation out of that block is prohibited.
you have to either have a successful EXECUTE-QUERY or use:
EXIT_FORM(NO_VALIDATE) to come out of ENTER-QUERY mode. -
How to Call Standard PO Form in my Z program
Hi All,
Could you please tell me, How to Call the Standard PO form in my Z program for print priview and printing.
My requirement is :
Create Z program with PO Number as Selection screen.When we give the PO Number and Press execute it will show the print priview with printer option.
Thanks & Regards
MuraliPlz refer this.
REPORT ZPPR_BOM1.
TABLES
TABLES : MAST. " Material to BOM Link
*& Internal tables Begin with it_
DATA : IT_MAST TYPE MAST OCCURS 0 WITH HEADER LINE.
DATA: fm_name TYPE rs38l_fnam.
CLEAR : IT_MAST.
REFRESH : IT_MAST.
*& Parameters Begin with pr_
*& Select-options Begin with so_
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: PR_MATNR LIKE MAST-MATNR OBLIGATORY,
PR_WERKS LIKE MAST-WERKS OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1.
SELECT * FROM MAST INTO TABLE IT_MAST " Get BOM number
WHERE MATNR = PR_MATNR
AND WERKS = PR_WERKS.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZPPS_BOM1'
IMPORTING
fm_name = fm_name.
CALL FUNCTION fm_name "'/1BCDWB/SF00000079'
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS =
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS =
USER_SETTINGS = 'X'
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO =
JOB_OUTPUT_OPTIONS =
TABLES
IT_MAST = it_mast
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF. -
How 2 invoke an oracle form from a database procedure?
I have a procedure.When i run the procedure itt invokes an oracle form. This procedure is a database procedure.
Is this possible? if possible how?I have the url to launch the forms application...
can that url be invoked by a procedure? -
How To Remove Standard CheckIn Form in CheckIn menu option list
Hi to all.
I need To Remove Standard CheckIn Form in CheckIn menu option list.
I want to use only my customized profiles.
Is there any doc or sample related.
Thanks in advance,
SoniUnfortuantely, you must create your own custom component. I'm not going to explain how to do that since that requires a lot of typing, but if/when you decide to tackle that, you will need to include this in your resource file:
<@dynamichtml custom_finish_layout_init@>
<$include super.custom_finish_layout_init$>
navBuilder.deleteItem('MY_PERSONAL_CHECKINS_'+pneCheckinDocProfiles.length);
<@end@>
However, keep in mind this is what I use for my content server (10gR3 with CS10gR3CoreUpdate component, build 186). I have no idea what future patches may or may not have done with profile naming conventions or changes. I'm confident this will still work, but cannot be for certain.
Good luck.
PS. Please award points if deemed necessary -
How to find Standard Output forms
Hi,
How to find the standard output forms for the following:
1. Purchase Requesition
2. RFQ
3. Inventory Records
4. Goods Receipt Note
I want to access these outputs and add the company logo.
Thanks in advance.
Regards,
SriramHi,
Go to Nace Transaction code and then in the Left you will find Application and Description and there select ME for inventory and then click on output types.There select an output type in the list of output types given and then click the Processing Routines where you will get the complete details. For RFQ and Purchase Requisition check the Application EA.
Coming to the uploading of the Logo. Go to Tcode se78 there below Form Graphics select Graphics and inside that you will find Bit map images . Select that one and click on import button which is present left to the delete button and there in the file name give the logo which is stored on your desktop and then select the type as Black and white or Colour Image as per your requirement.In the name give a meaningful for the logo in SAP system.Then click enter.
Hope this will help you.
Regards,
Venkat. -
How to display LOV on web in ENTER-QUERY mode with form or block query only.
Hello all
How can I display lov automatic on the web in from enter-query
mode in form or block query only mode.
thankxIf I understand correctly your explanation, your called form
fails to activate the LOV in enter-query mode when it is deployed
and test on the browser.
So lets proceeed like this, to make it work in all environments,
let us programetically activate the LOV.
HOW?
In the called form, write in the WHEN-NEW-ITEM-INSTANCE TRIGGER
at block level (if have more than one LOV)
IF :SYSTEM.MODE = 'ENTER-QUERY' THEN
IF get_item_property(:system.cursor_item,lov_name) IN ('YOUR
LOV1', 'LOV2' etc) THEN
IF SHOW_LOV(get_item_property(:system.cursor_item,lov_name))
THEN
NULL;
END IF;
END IF;
END IF;
The above code maybe tweak to suite your need and condition.
This way, we explicitly make the LOV appear in ENTER-QUERY mode
whenever the user clicks on an item with an attached LOV.
Hope this helps.
Mohammed R.Qurashi -
Form * search in query mode
in enter-query mode, i want the form has to return in
the field of name [fra* ]. means it has to
return all the names started in fra. i need in the form6i at query mode. is there any one solve it pls.
-nasarThe standard forms behaviour would be to use % instead of a *.
If you like to change this behaviour you can write a pre-query trigger where you replace the * by a #, so that Oracle is able to execute the correct query.
eg.
:BLOCK.ITEM := REPLACE ( :BLOCK.ITEM, '*', '#' );
Patrick -
Calling another form when current form is in query mode
I have a form that is in query mode. When I select a menu option that calls another form through new_form, I get the error 'FRM-41009: Function key not allowed. Press Ctrl+F1 for list of valid keys.'
I would like trap this error, cancel the query and invoke the new form. I have tried to do this by code similar to this:
if :system.mode = 'enter-query' then
exit_form ;
end if ;
new_form('someform') ;
(since exit_form in query mode is supposed to cancel the query).
But in this case, the trigger ends with the execution of the 'exit_form' statement.
Any help would be greatly appreciated.
Thanks and regards,
Rajesh Jayaprakash
[email protected]I think the following will work:
When you call the EXIT_FORM builtin, Forms cancels out of Query Mode but also stops the current PL/SQ execution - which is annoying.
I believe, though, that the WHEN-WINDOW-ACTIVATED trigger will fire on your Form. Therefore, you can:
1) Set a Global Variable or PL/SQL packaged variable just before you call the EXIT_FORM builtin then
2) Test the value of the Global Variable in the WHEN-WINDOW-ACTIVATED trigger and perform the CALL_FORM there.
3) Even better, put the CALL_FORM and associated parameters into a Program Unit on the Form - then you can call it from either the original trigger or the WWA trigger as necessary.
If this does not work, you could resort to:
1) Set a Global Variable just before you call the EXIT_FORM builtin
2) Initiate a TIMER
3) Call the EXIT_FORM builtin
4) In a WHEN-TIMER-EXPIRED trigger, check the value of the Global variable. If it's set, Call the Form you want to call
5) Again, put the actual CALL_FORM in a Program Unit so it can easily be called with the correct parameters from wherever you need to call it.
It's annoying that you need to go to these lengths to perform what seems to be such an easy task!
If anyone knows any better ways of achieving this, please add another reply! -
Starting form in Enter-Query mode disables some buttons on Smartbar
Whenn I run a form (on the Web) which starts in Enter-Query mode, the buttons "Execute Query" and "Enter Query" are disabled on the Smartbar. Also the corresponding menu options are disabled. Besides, it is psossible to use the appropiate keys (in my case: F7 and F8).
Has anyone experienced the same problem and is there a solution?
Let me know.
ThanxFrank: Thats what i thought too -but i saw (in other Sources) that it could be done, but how..
Eugeniy I Duzhinskiy:
So, many Thanks to you. It works fine !!!!
(Its great to see there are some other Forms Users out there :) )
Maybe you are looking for
-
Can you opening multiple albums at the same time in Photo (not iPhoto)?
When converting the iPhoto library to Photo most of the albums that were in place in iPhoto converted to albums in Photo . . . .but not all. Some were retained as events mainly those that were folders within an album. In order to move them to the rig
-
Display prob: Suddenly the display (menus, etc.) is magnified so much I can't see the whole screen, too big to be able to scroll side to side, can't un-zoom. Assume I'm doing something to make it happen. Any ideas to prevent? or to fix short of powe
-
Binary to Voltage Conversion of encoder data on cRio 9073 using FPGA
I am using FPGA with a cRio 9073 to acquire torque and absolute quadrature encoder values. It says in the FPGA instructions that the documentation for the 9073 should include the binary to voltage conversion, but when I looked at the documentation, i
-
Wondering if anyone here has seen this before, it's got me scratching my head at present: We have a working CWA implementation in a central site with APs in local mode, clients are redirected to ISE guest portal using MAB, can register & log in as ex
-
Anyone else had this problem? What should I do? Thanks