DML Returning Values In Forms 6i
Hi there!
I am watching the following behavior in Forms 6i:
Whenever I set DML Returning Value to "Yes" in a data block that corresponds to a table Database (8.0.5) returns to me the updated values, but this doesnot happen with a data block that corresponds to an updatable view. What can I do about that?
George
There are many ways you could do this. One way would be to create a When-Validate-Item trigger on the USER_ID field that checks the database to see if the value already exists and raise an exception if it exists. For example:
/* When-Validate-Item trigger */
DECLARE
n_dummy NUMBER := 0;
CURSOR test_User_ID IS
SELECT count(*)
FROM YOUR_TABLE_NAME_HERE
WHERE USER_ID = :YOUR_BLOCK_NAME.USER_ID;
BEGIN
OPEN test_User_ID;
FETCH test_User_ID INTO n_dummy;
CLOSE test_User_ID;
IF ( n_dummy > 0 ) THEN
MESSAGE('User ID " '||:YOUR_BLOCK_NAME.USER_ID||' " already exists. Please enter a unique User ID.',ACKNOWLEDGE);
RAISE Form_Trigger_Failure;
END IF;
END;Please understand that this is just sample code and will need to be modified in order to work in your form. Also note, I'm not positive the "ACKNOWLEDGE" parameter to the MESSAGE built-in is valid for Forms 6i. Please confirm this before using.
Hope this helps.
Craig...
If mine or someone else's response is helpful or correct, please mark it accordingly
Similar Messages
-
Return Values to Block from Insert Procedure
I have a block with an insert operation performed by a procedure. The insert is working fine.
However, I was assuming that within the procedure I could modify a value in the record (prior to the insert) and then that new value would be returned to the item in the form so the user can see it. (The procedure allocates a unique reference number from a sequence and I would like to display it back on the screen in the reference number field.)
Can anyone help or suggest an alternative?
Thanks
Lisa Davies
Durban, South AfricaI have a block with an insert operation performed by
a procedure. The insert is working fine.
However, I was assuming that within the procedure I
could modify a value in the record (prior to the
insert) and then that new value would be returned to
the item in the form so the user can see it. (The
procedure allocates a unique reference number from a
sequence and I would like to display it back on the
screen in the reference number field.)It is really disappointing to me that Oracle cannot handle this simple need by specifying DML Return Value using built-in inserting/updating.
I had to write a post-insert trigger in the forms to update the field in the data_block with the value generated by the DB-side pre-insert trigger. -
Return values for a Form based on a procedure
Hi,
I am fairly new to Portal Applications.
I have a form based on a procedure.
The procedure has an IN OUT parameter and what happens at the moment is that once the submit button is pressed the IN OUT parameter is displayed on a new page.
My question is...
How do I display the returned value in a field on the form?
Please help
ThanksHi,
This is how it works right now. It is not possible to show it in the same form.
Thanks,
Sharmila -
Custom method return value will not pass to form
I have created a custom method in my application module that returns a integer value. I am trying to use this value to fetch a row to populate a form. I cannot seem to get the value returned to populate the methodAction binding for the form.
I have no problem displaying the returned value and have no problem populating the form if I hard code a value into the methodAction binding.
I am trying to determine if this is a timing issue on page load, or some other issue with the returned integer.Hi,
sounds like a lifecycle problem because the method call and execution of the VO iterator happen in the same phase. You can try setting the refresh conditions of the method to prepareModel and the iterator to prepareRender, but I doubt that this will solve the issue.
What is the usecase ? And can the integer be handled within the AM to restrict the query (e.g. to set a ViewCriteria or bind variable)
Frank -
Remote Object - not able to get the returned value from java method
Hi ,
I am developing one sample flex aplication that connects to the java code and displays the returned value from the
java method in flex client. Here I am able to invoke the java method but not able to collect the returned value.
lastResult is giving null . I am able to see the sysout messages in server console.
I am using flex 3.2 and blazeds server and java 1.5
Here is the code what I have written.
<?xml version="1.0" encoding="utf-8"?><mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor="#FFFFFF" initialize="initApp()">
<mx:Script><![CDATA[
import mx.controls.Alert;
import mx.binding.utils.ChangeWatcher;
import mx.rpc.events.ResultEvent;
import mx.messaging.*;
import mx.messaging.channels.*
public function initApp():void {
var cs:ChannelSet = new ChannelSet();
var customChannel:Channel = new AMFChannel("my-amf", "http://localhost:8400/blazeds/messagebroker/amf"); cs.addChannel(customChannel);
remoteObj.channelSet = cs;
public function writeToConsole():void { remoteObj.writeToConsole(
"hello from Flash client");
var returnedVal:String = remoteObj.setName().lastResult; Alert.show(returnedVal);
//[Bindable]
// private var returnedVal:String;
]]>
</mx:Script>
<mx:RemoteObject id="remoteObj" destination="sro" />
<mx:Form width="437" height="281">
<mx:FormItem>
</mx:FormItem>
<mx:Button label="Write To Server Console" click="writeToConsole()"/>
</mx:Form>
</mx:WindowedApplication>
Java code
public
public SimpleRemoteObject(){
super(); }
class SimpleRemoteObject {
public void writeToConsole(String msg) { System.out.println("SimpleRemoteObject.write: " + msg); }
public String setName(){ System.
out.println("Name changed in Java");
return "Name changed in Java";
And I have configured destination in remote-config.xml
<destination id="sro">
<properties>
<source>SimpleRemoteObject</source>
<scope>application</scope>
</properties>
</destination>
Please help me .You are not able to get the returned value because if you see the Remote object help you will realise you have to use result="resultfn()" and fault = "faultfn()"
In this you define what you wish to do.
More importantly in the remote object you need to define which method you wish to call using the method class like this
<mx:RemoteObject id="remoteObj" destination="sro" result="r1" fault="f1" >
<Method name="javaMethodName" result="r2" fault="f2"/>
<mx:RemoteObject>
r2 is the function where you get the result back from java and can use it to send the alert. -
How to pass a function with the same argument multiple times and return values in variables?
The problem I have is I created a function which really is some kind of database. Basically a bunch of:
if (a.value == "this number"){
b.value = "this expression";
Inside the form are 2 dropdown lists that return numerical values which I want to process through that function and put the return value inside separate variables.
var a = this.getField("OPE003.EVEN.1.MIP");
Mip(a);
var result1 = Mip();
I tried to overwriting *a* to process the second field
a = this.getField("OPE003.EVEN.2.MIP");
Mip(a);
var result2 = Mip();
result1 and result2 are put in an array, joined as a string.
Doing so, I always get the last processing twice as the final result.
Can I use a function as a batch processing tool that way?You are right, I changed the code to what you said but how do I pass another value through my fonction so I can get Result1 and Result2?
is it
var a = this.getField("OPE003.EVEN.1.MIP");
var b = this.getField("OPE003.EVEN.2.MIP");
var result1 = Mip(a);
var result2 = Mip(b);
var c = new Array[result1, result2] -
How to create a display value and a return value for an item
Hi! I have an item on a form. I want the default value for my item to be :":APP_USER", but the return value, to be the id of my user. I tried to create a PL/SQL Expression for the default item, but it doesn't work. What do I miss?
It should be something like this, but it's not.
begin
select first_name || ',' ||last_name as "Employee",
id_employee -- display value,return value
from employees
where id_employee = :APP_USER;
end;
Does anyone know?
Thanks!
VitalyHi VItaly,
Display value and return value concept applies very well in case of a Combo box if i am correct, I don't know what type of item is your's.
But any way, you can have a workaround like,
Create a hidden item such that it's default value should be ID of the user which can be get from db by using :APP_USER.
Use the this item for your references.
I think this will meet your requirement.
Thanks
Kumaraswamy. -
How to set the returned value of CFL in a matrix
dear all,
I got a matrix binded to a DataSource and two CFLs are in this matrix. The codes for handling AfterChooseFromList is as following. It works almost fine. But when a docoment containing more than two
rows in the matrix and I reselect the CFL cell values more than two times, an error occured sometimes, not everytime. The error message is "This entry already exists in the following tables @CYW_PRROW [Message 131-183]"
I have tried to find out what kind of situation to cause this error, but still in the mud.
Can anybody give me some suggestion? Thanks.
Public Sub OnAfterChooseFromList_Matrix(ByVal pVal As SAPbouiCOM.ItemEvent)
Dim ActionSuccess As Boolean = pVal.ActionSuccess
Dim oform As SAPbouiCOM.Form = SBO_Application.Forms.Item(pVal.FormUID)
Dim oitem As SAPbouiCOM.Item = oform.Items.Item("mtx_0")
Dim omatrix As SAPbouiCOM.Matrix = CType(oitem.Specific, SAPbouiCOM.Matrix)
Dim oDataTable As SAPbouiCOM.DataTable
oDataTable = pVal.SelectedObjects
Dim val As String
Try
val = oDataTable.GetValue(0, 0)
Catch ex As Exception
End Try
omatrix.GetLineData(pVal.Row)
oform.DataSources.DBDataSources.Item("@CYW_PRROW").Offset = pVal.Row - 1
If pVal.ColUID = "col_0" Then
Try
oform.DataSources.DBDataSources.Item("@CYW_PRROW").SetValue("U_PRItemCode", pVal.Row - 1, CStr(val))
Catch ex As Exception
SBO_Application.MessageBox(ex.Message)
End Try
Else
Try
oform.DataSources.DBDataSources.Item("@CYW_PRROW").SetValue("U_PRSupp", pVal.Row - 1, CStr(val))
Catch ex As Exception
SBO_Application.MessageBox(ex.Message)
End Try
End If
omatrix.SetLineData(pVal.Row)
If pVal.FormMode = "1" Then
oform.Mode = SAPbouiCOM.BoFormMode.fm_UPDATE_MODE
End If
End Sub
Another quesion, can I assign the returned value of CLF directly to the cell?Hello Chao-Yi Wu,
I don't have a real solution for you - just a few comments:
1. At
Try
val = oDataTable.GetValue(0, 0)
Catch ex As Exception
End Try
I would add
Try
if oDataTable Is Nothing Then Exit Sub ' If the User cancels the CFL
val = oDataTable.GetValue(0, 0)
Catch ex As Exception
End Try
2. At
If pVal.ColUID = "col_0" Then
I would make the branch by the pVal.ChooseFromListUID instead of the ColUID
and the 2nd not with "Else" but with "Else If ....."
3. It may work with EditText.String/Value of a cell but I never do that because of performance-reasons.
I always do it the same way as you in principle - I don't really know what the problem is.
4. Maybe some unique indexes on your table (although this should give an error at the update and not at CFL when "the unique-law is broken"...)?
Sorry - that's all for the moment.
Cheers,
Roland -
Assigning LOV return Value to multiple text items
Hi all
I have a custom form on which i have 10 text items
text item 1,text item 2 ....text item10
I have a table xx_querywith fields
text_item,query
i have inserted into the xx_query table
insert into xx_query(text_item,query)
values(text_item1,'select sysdate from dual');
insert into xx_query(text_item,query)
values(text_item2,'select sysdate-1 from dual');
I have created a record group dynamically and i am getting the query from the query column of the xx_query table into the record group(say test_rg)
I have created a LOV test_lov and thr set_lov_property i have populated the test_rg query into the test_LOV
is it possible for me to set the return item of the LOV dynamically so that i can get the LOV on the item which i want to ?
thanks
_Hi All
thanks for your responses
I have Created a control item and assigned the return value of the LOV to the control item
and i have assigned the LOV to the text item that i want
Currently when i navigate to the text item the LOV is visible
but when i select a value from the LOV the value is not getting populated into the text item
I have assigned the value of the control item to the text item
but i am not sure in which trigger to write the code so as when i select the value from the LOV the value should be shown on the form populating in the text item
Thanks -
Error while loading the Web template "0ANALYSIS_PATTERN" (return value "4")
I activated all 0* objects in BTMP and checked that they are all activated, but I found errors when opening the BEx Web Analyzer
Error messages :
Error while loading the Web template "0ANALYSIS_PATTERN" (return value "4")
ERROR: Command type SWITCH_AXES of object not recognized
ERROR: Parameter GENERAL_TEXT_ELEMENT not recognized; check your metadata
So I ran RS_TEMPLATE_MAINTAIN_70 (0ANALYSIS_PATTERN) version D report to check and choose validate.
Error messages :
Template Include Item HEADER_TEMPLATE unresolved or empty. Close and reopen template.
Template Include Item FOOTER_TEMPLATE unresolved or empty. Close and reopen template.
Width of object item:GROUP_ITEM:GROUP_ITEM_1 is very small (1amp;1)
Query does not exist in the BI System (Object QU )
Cannot instantiate data provider
I also ran RS_TEMPLATE_MAINTAIN_70 (0ANALYSIS_PATTERN) version A and got the following errors:
Command type SWITCH_AXES of object not recognized
Command type SWITCH_AXES of object not recognized
Command type SWITCH_AXES of object not recognized
Parameter GENERAL_TEXT_ELEMENT not recognized; check your metadata
Parameter GENERAL_TEXT_ELEMENT of object item:GROUP_ITEM:GROUP_ITEM_1 not recognized
Command type SWITCH_AXES of object item:GROUP_ITEM:GROUP_ITEM_1 not recognized
Command type SWITCH_AXES of object item:GROUP_ITEM:GROUP_ITEM_1 not recognized
Command type SWITCH_AXES of object item:GROUP_ITEM:GROUP_ITEM_1 not recognized
Command SWITCH_AXES cannot be located in parameter ACTION
Command SWITCH_AXES cannot be located in parameter ACTION
Command SWITCH_AXES cannot be located in parameter ACTION
Parameter GENERIC_TEXT_BINDING of object item:GROUP_ITEM:GROUP_ITEM_1 cannot be higher-level node of GENERAL_TEXT_ELEMENT
Item item:GROUP_ITEM:GROUP_ITEM_1 of type DROPDOWN_ITEM cannot be a parent node of DATA_PROVIDER_REF
Item item:GROUP_ITEM:GROUP_ITEM_1 of type CHART_ITEM cannot be a parent node of VISIBLE
Item item:GROUP_ITEM:GROUP_ITEM_1 of type CHART_ITEM cannot be a parent node of LEGEND_POSITION
Item item:GROUP_ITEM:GROUP_ITEM_1 of type CHART_ITEM cannot be a parent node of LEGEND_VISIBLE
Item item:GROUP_ITEM:GROUP_ITEM_1 of type CHART_ITEM cannot be a parent node of LEGEND_ONLY
Invalid parameter value for parameter ACTION in object item:GROUP_ITEM:GROUP_ITEM_1
Invalid parameter value for parameter ACTION in object item:GROUP_ITEM:GROUP_ITEM_1
Invalid parameter value for parameter ACTION in object item:GROUP_ITEM:GROUP_ITEM_1
bi-Tag bi:item has unknown attribute key. Please check your spelling
bi-Tag bi:item has unknown attribute key. Please check your spelling
bi-Tag bi:item has unknown attribute key. Please check your spelling
bi-Tag bi:item has unknown attribute key. Please check your spelling
What could be the problem?hi,
Please look into this note let me it helps...url=https://websmp202.sap-ag.de/~form/handler?_APP=01100107900000000342&_EVENT=REDIR&_NNUM=917950&_NLANG=E]Note 917950 - SAP NetWeaver 2004s: Setting Up BEx Web[/url]
check this link as well for [<a href="https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/ca6de811-0c01-0010-43b2-c64584eef943">Bex Web Configuration</a>
wht is the SP Level?
Nagesh Ganisetti. -
Setting default value for form field assoc with a table column
On a "Create Record" situation I was trying to set the default values of some form fields using a page level "Process". These form fields have Source Type = Database Column. It wasn't working, I could only set non-db assoc form field values no matter when the "Process" was set to exec. From some other posts it seems that this is by design, ie. not being able to programatically set the initial values of form fields that are sourced to db columns. I was hoping to have just one "Process" that would exec to set these initial values in one place rather than scattered about for each field that needed a default value. These particular default values come from ref tables and may be different for each user.
So, it looks like I have to use a "Default Value" plsql chunk for each field on the form itself or else set their value on the calling form's Redirect in the "Set these Items" area.
Is this correct?You could define a database function which accepts the name of the item and the user ID of the user running the application. Based on the item name and the user ID have the function return the appropriate initial value. Invoke this function in a "Default Value" PL/SQL block.
Does that help in centralizing your initial values? You could have one function per page or one function per application. I would do one function per application. -
How to get the return value of a LOV item using javascript
Hello,
I am trying to put an onchange attribute in the HTML Form Element Attributes field of a LOV item. The javascript should access the new return value of the item. How is this done ? All the methods I have tried give only the display value, not the return value. For example $v() returns the display value.
TiinaIf your item is called P1_ITEM this will give you the return value of a popup (displays description,returns key value)
alert($x('P1_ITEM_HIDDENVALUE').value)
Denes Kubicek
http://deneskubicek.blogspot.com/
http://www.opal-consulting.de/training
http://apex.oracle.com/pls/otn/f?p=31517:1
------------------------------------------------------------------- -
Returning values from one screen to another
Hi All,
I have a case where I have a person_name field on a form but want the users to get that value from a popup window that is actually a report on the people table with these columns :
First name, last name , person_id ( hidden and has a link on it to return that value back to the caller screen).
No I wrote all the code to invoke that popup from the caller form, popup the people search report, when you click on the person ID link it performs the following :
<script language="javascript">
function accept_value(val){
target1 = document.getElementById("P114_CITEM1").value; //CITEM1 holds the caller field name so dont worry about it
top.opener.document.getElementById(target1).value=val;
top.close();
</script>
and in the link properties I give this :
onClick="accept_value(#PERSON_ID#);"
and this works fine and returns the person_id to the caller form BUT
MY QUESTION IS:
is there a way to return the first name, last name to a text field in the FORM?I mean this link allows me to return only the #PERSON_ID#, but is it possible to pass the #last_name# in the same link for example ?
I tried
onClick="accept_value(#PERSON_ID#,#LAST_NAME#);" but it always fails and says invalid character !! (( after I changed the accept_value() function to have 2 parameters ))
any clue or hint?It is possilble to return multiple values to multiple items on your form. I have similar setup (popup box shows a report of employees; users clicks a report row; empid and last_name are returned to the form). I did not use #LAST_NAME# link. I created the link using SQL code. The first column of the report displayed a link called "Select", which passed empid and last name back to the form. Try creating the link using SQL.
If you need additional help, please let me know.
Thanks.
Ravi -
Call script in a workflow and get return value?
hello
I want create a workflow to check some attribute in IDM
like for the home directory, use the workflow call some script to check there is enough space in the server? and the folder is almost there or not?
then get the return value like if no enought space, call some other form let the admin input some new home directory string
So I want to know how a workflow work with scipt file?
I also use some after create action script, but it looks only can get some error message and shows in th IDM.This should help you:
http://www.devdaily.com/java/edu/pj/pj010016/pj010016.shtml
Note that the command will be executed by the application server user so check if it has sufficient rights.
Ben -
Automatic Row Processing (DML) - Return Key Into Item
Hello,
This question is on Apex 4.2:
I'm Displaying the [UNIKEY] column value after the record is inserted into the table using :
page process > process row table_name > Source: Automatic Row Processing (DML) > Return Key Into Item > "Item Name"
This works fine while inserting records, my question is why this does not respond on update / delete ?
ϯ LTLT
Check your branches.
What might be happening is that on insert and update an other branch is followed.
Where the branch of the insert either isn't clearing the cache of the page or is setting the item with it's own value.
The branch on the update on the other hand is clearing the cache of the page and not setting the item.
With a delete there is a clear cache process generate by the wizard. Check if this process is only running on the delete and not on the update.
From memory the process is called something with reset.
If the above doesn't help try to replicate the problem on apex.oracle.com and give access with a guest developer account so we can have a look.
Nicolette
Maybe you are looking for
-
How to view ALL batch job details (SM37) at one glance ?
Dear all, I am documenting all released batch job details, the information required includes the job name, client number, job frequency .. etc. In order to see that information, i go to SM37 and click on each job to see the details. I have about 60 j
-
Alert Mail configuration in Solution Manager 7.1 for Portal Runtime errors
Dear Friends, We have EP7.01 SP5 installed on windows environment with Oracle DB. Also we have SAP EHP 1 for SAP Solution Manager 7.0. Please help to provide steps to configure proactive mail alert configuration , GRMG for High availability Any por
-
0 bytes file free on curve 8320??
All, Please help, I got stuck with my 8320. Device is "thinking" very often and impact to my activities and also the battery. When I check Status on option, File free is 0 bytes.. but when i restart (take off the batt), file free is have some bytes a
-
Analytic function - max_distinct
Hi Everyone, a) I have a query tht is returning more than one row for a student b) to simplify my query, these are columns Student ID, Academic_Period, Student Status, Expected_Graduation_Date c) If a student has multiple status codes AS - active LA
-
Self-housekeeping tables?
Hi, I know, housekeeping is not so easy. But there are cases when I could image very simple delete-rules, e.g. for a logging-table. Then it would be a cool feature to have something like: - remove records from table older than 10 days (supposed the t