When user returns to previous canvas - oracle

I’m new to Oracle Form 12c. I’m trying to get the cursor to return back to the location it was when the user returns to that canvas from another canvas. How would I achieve this?

That "location" is, basically, the item.
It means that you'll first have to "remember" where you were; to do so, use :SYSTEM.TRIGGER_ITEM system variable and store its value into a parameter or a global variable.
Then do whatever you're doing and - once you're done - navigate back to item you saved using the GO_ITEM built-in.

Related

Oracle Apex 5.1 Interactive grid save issue

I have an interactive grid that intermittently fails to save changed data properly.
I have a changed the default save process into a PL/SQL process to allow me to do some lookups before the data is saved back to the table. I have some PL/SQL logging in the save procedure, so I can see when the process starts & ends and what a number of the variable values are.
This process works fine, most of the time. However every now and again 1 in 20 or so, the process fires but I can see that one of the new values is actually the old value, so the update works with the wrong data. I can not see any pattern to how I'm updating the cell when it doesn't work.
I have created a button with a dynamic action to Submit the page on button click, which fires the update whenever a change is made. I also have a branch on the button at "After Processing".
I'm not sure the branch is relevant as I can see that the save procedure fires before it's redirected, but sometimes without using the updated values.
Any ideas or suggestions on how to track down my issue?
Cheers
Pav
The debug didn't show anything. However I believe I found the cause.
The page had some javascript lifted from the IG Cookbook to calculate a column total.
When I removed one command it stopped the issue. I also tracked the issue to a model change that wasn't saved, then navigated off page and then back. Then the first changed made and saved would save original value and not the changed value.
Code removed was:
// just in case fetch all the data. Model notifications will
// cause calls to update so nothing to do in the callback function.
// can remove if data will always be less than 50 records
model.fetchAll(function() {});
Cheers
Pav

Changing Xpath for Data Input

Hi I am trying to use Power Automate to enter some menial data, however I am having problems with the Xpath.
The website is set up so that I must click a button in order to add an ingredient. The for loop I used keeps referring back to the original x-path in ingredient 1. I was wondering if there was someway to keep the xpath changing with the loop.
This is what I attempted:
I figured out a solution. Instead of using the x-path, I sent key strokes. So, if the field I wanted to enter was two tabs away, I would do {tab}{tab}, then again send the key strokes of the variable.

After a form is filled once, I blank out the form before filling it the next time (new conversation), but the borders remain red

I have used webshims for html5 form validation in a single page app with multiple pagelets(divs). The forms are not submitted but local javascript is invoked after each conversation and collected data is posted .
Next I iterate over all the fields and reset the values.
Then I take the new user back to the first pagelet having first form for the new conversation. This time even after filling the correct values the border does not turn green.
Note:
However when we select the field and click outside the field without filling it. and then after filling the correct data border turns green.
However when we tried to achieve it programmatically iterating over each field resetting it and using javascript focus method, that did not do the trick.
I am sure I must be missing some thing. would be able to point out what.
Regards
Barman
I'm not sure, what you want to achieve. I would need to see some code. If you change the value programmatically you can update the validation ui with the event refreshvalidityui on the form field. If you want to reset the ui, you can either trigger a reset event on the form or resetvalidityui on the form field
$('input').val('foo').trigger('refreshvalidityui');
or
$('input').val('foo').trigger('resetvalidityui');
or
$('form').trigger('reset');
Please let me know, if this helps.

Closed Windows Retaining Their Values/Choices

I have an application that has a few different forms. From the main form I can open a number of other forms, I use the following command to display the chosen window:
frmConversions.ShowModal;
Once the user has completed what they need to do in that window and they close that window I close the window using the following:
frmConversions.Close;
However if the user then goes back to frmConversions, the settings that they had previously chosen will still be selected/entered. Am I handling multiple windows correctly and if so how do I stop the retention of data?
It depends on how you create the form. If you auto-create the form, then it will exist for the lifetime of the program and so will retain any values stored in the form's variables. If, however, you create modal forms whenever needed and free them afterwards (as is the custom), then values will not be stored. This is done thus
with TFrmConversions.Create(nil) do
try
ShowModal;
finally
Free;
end;
IN the FormClose event, you can choose what happens to the form when you call Close (see the documentation and here. If the Action is for example caHide, the form is hidden, not freed. And thereby it will mantain the settings.
There are two basic approaches:
1) create the form each time before it is shown and free it when it is closed.
2) in the form's OnShow event, set all the variables the user might change to their initial values.
A way to accomplish #1 is to put a function in the form's unit file to create it, showmodal, then free it.

How do you switch backing bean objects in JSF?

Suppose I several tags, text input, radios, etc referencing one instance object. I would like to use a dropdown on that page to switch the references mentioned before to another instance of the object.
This part is pretty easy with change listener. However, the problem I have is the values currently displayed on the screen are getting set into the new, second instance.
I would like the current values to be stored in the current instance, and then the when the page refreshes I would like the new values to come from the new instance and be displayed on the screen.
Is there was way to do this? Does my question make any sense?
Grae
A value change listener is exactly the wrong tool for this, because it gets called before the values are set.
What you want is an action listener, which will get call after the values from the page are validated and set.

Resources