JClient: set dirty flag after prepared stmnt to activate trans. buttons?
Hi,
I wrote a service method with a call to a prepared statement that makes a bulk insert (insert into a select ... from b).
This service method returns the number of inserted rows.
In my button action after a call my service method I refresh the ViewObject.
The new rows are displayed, I know that they are not committed but the transaction buttons are not activated.
How can I set the transaction dirty flag to true so that the transaction buttons are active?
My button action method:
private void jButton1_actionPerformed(ActionEvent e)
SiteTablesAM siteTablesAM = (SiteTablesAM)panelBinding.getDataControl().getApplicationModule();
int numOfAddedRows = ((TranslationsAM)siteTablesAM.findApplicationModule("TranslationsAM1")).createMissingCurrencyLangRows();
if (numOfAddedRows > 0)
// navBar.doExecuteButtonAction(); tested this but has same result
siteTablesAM.findViewObject("TranslationsAM1.CurrencyLangVO1").executeQuery();
panelBinding.refreshControl();
JOptionPane.showMessageDialog(this,numOfAddedRows+" rows have been added.\nTranslate the labels or delete the added rows.","Info",JOptionPane.INFORMATION_MESSAGE);
It would be more elegant to do the wole job on the server side => after call to prepared statement, refresh the ViewObject + "fire a transaction change event".
Could you help me on this one.
Thanks
Frederic
I've found a workaround:
this.setAttribute(this.getAttribute());
this makes the transaction dirty.
I would have preferred a more elegant solution.
I've noticed that when calling preparedStatement.executeUpdate() on a DBTransaction the isDirty flag stays false.
Is this normal, executeUpdate is always a DML statement?
Thanks
Frederic
Similar Messages
-
What is the best practise for setting dirty flag of a page/view?
For a page/view, normaylly there are 2 things to do for diry data:
1. when it's clean, Save button is disabled, when it's dirty, save button is enabled.
2. when it's dirty and the window is closed, a popup says "you have unsaved data, close will lose the data".
My thought is: it must be handled at client side, because not all valuechange is auto submitted. E.g., you type the 1st letter of a string in a input box, the server side does not know it, but save button should be enabled immediately.
Is it possible to capture all valueChange events in a page or a view at client side?
I'm not sure what is the best practise for setting dirty flag? If there is better solution? Does ADF provide facility for this?public void save(ActionEvent event){
boolean formValid = isFormValid();
if (formValid) {
save button is enabled.
private boolean isFormValid() {
boolean valid = true;
if (Check Condition 1) {
valid = false;
showErrorMessage1();
if (Check Condition 2) {
valid = false;
showErrorMessage1();
return valid;
private void showErrorMessage1() {
when it's dirty and the window is closed, a popup says "you have unsaved data, close will lose the data". -
Follow up action to set delete flag after UD (QS41, QS51)
Hi all,
If user give UD as 'not good' for Equipment (eg Vernier Caliper) then he has to set delete flag for maintenance plan no and Equipment no through IP02 and IE02 respectively
now he want that, above delete flag should set automatically after giving UD so particular maintenance plan or equipment should not release in future.
I got one follow up action 'QM_PM' in transaction QS51 due to this after giving UD for Inspection lot, plan get technically complete (TECHO)
so how to make changes so i'll achieve above functionality
plz tell me about catalog, follow up action, QS41
thanks....Hi all,
i got one solution on which i am working
Steps:
1.The solution is to use the User Exit namely QEVA0010 and use the logic as mentioned below.
2. Test and use the above mentioned user exit.
3. The first condition should be checked for Inspection Type - 14 and for UD code NG.
4.Logic to be used To set the deletion flag for the Equipment.
Go to Table QAPP - Pass inspection lot Number and get the Equipment no.
Go to Table EQUI - Pass Equipment no and get OBJNR
Go to Table JEST - Pass the Objnr - The value for deletion flag status is active is I0076 and the value for deletion flag inactive is I0320.
In order to set the deletion Flag,use help of FM - STATUS_CHANGE_INTERN to code.
5.Logic to be used To set the deletion flag for the Maintenance Plan.
Go to Table QALS - Pass inspection lot no and get the order no.
Go to Table AFIH - Pass order no - Get maintenance Plan.
Go to Table MPLA - Pass the maintenance plan and get the Objnr no.
JEST - Pass the Objnr - The value for deletion flag status is active is I0076 and the value for deletion flag inactive is I0320.
In order to set the deletion Flag,use help of FM - STATUS_CHANGE_INTERN to code. -
Dirty flag set for readonly file page
We are using BDB 4.8.26 transactional data store on Windows 2008 R2.
DB is logging the message "dirty flag set for readonly file page" to the error log ... this entry was logged 17 times in a 24 hr period. The system processes about 3-5 requests a second.
We also are having an incorrect "SECONDARY inconsistent with primary" error reported - this used to be very rare but has increased with increased concurrency. But the dirty flag error is recent - after we dropped a secondary and added a new one - there was no error during the secondary drop and rebuild process.
Appreciate any help on this.
Thanks
Kimman BalakrishnanHi Kimman,
I assume you are not opening your databases with the DB_RDONLY flag. This could be cause by not running recovery after a system or application failure. Make sure you run recovery correctly, single threaded, after each system or application failure; review the Architecting Transactional Data Store applications documentation section.
Regards,
Andrei -
I am using apple configerator. I am unable to prepare or supervise 1 ipad. After preparing, I get an error that says "refresh completed but with an error, unable to verify supervision state" . I have erased all content and set up as a new ipad and tried again with no success. Any help would be appreciated
Hello jaybearden,
Thanks for the question. After reviewing your post, it sounds like you are not able to restore the iOS device since you get an error 9. I would recommend that you read this article, it may be able to help the issue.
Resolve iOS update and restore errors - Apple Support
Check your security software
Related errors: 2, 4, 6, 9, 1000, 1611, 9006. Sometimes security software can prevent your device from communicating with either the Apple update server or with your device.
Check your security software and settings to make sure that they aren't preventing a connection to the Apple servers.
Thanks for using Apple Support Communities.
Have a nice day,
Mario -
How to set document "dirty" flag
Hi I wonder if there is a simple way to set document "dirty" flag.
The thing is that I am modifing layer XMP info in action script but this change is not reflected by setting the document to modified state
LukasI wonder how fast it would be to set the currect layer colour?
IE:-
layerColour('red')
function layerColour(colour) {
switch (colour.toLocaleLowerCase()){
case 'red': colour = 'Rd '; break;
case 'orange' : colour = 'Orng'; break;
case 'yellow' : colour = 'Ylw '; break;
case 'yellow' : colour = 'Ylw '; break;
case 'green' : colour = 'Grn '; break;
case 'blue' : colour = 'Bl '; break;
case 'violet' : colour = 'Vlt '; break;
case 'gray' : colour = 'Gry '; break;
case 'none' : colour = 'None'; break;
default : colour = 'None'; break;
var desc = new ActionDescriptor();
var ref = new ActionReference();
ref.putEnumerated( charIDToTypeID('Lyr '), charIDToTypeID('Ordn'), charIDToTypeID('Trgt') );
desc.putReference( charIDToTypeID('null'), ref );
var desc2 = new ActionDescriptor();
desc2.putEnumerated( charIDToTypeID('Clr '), charIDToTypeID('Clr '), charIDToTypeID(colour) );
desc.putObject( charIDToTypeID('T '), charIDToTypeID('Lyr '), desc2 );
executeAction( charIDToTypeID('setd'), desc, DialogModes.NO ); -
WBS Series break up after setting deletion flag
Hi Experts,
I was having WBS levels at 1 and 2. I have set the deletion flag at one of my level 2 WBS. Now, the WBS has disappeared. Now, when I am creating new WBS it is skipping the series like for an example:-
I was having WBS
WBS A
WBS A.1
WBS A.2 - Deletion Flag set
Now, I am creating new WBS, I think system should allow me to create WBS with A.2 but it is giving number A.3
I want to know is this is standard behavior or is there any other alternative so that I could use the same A.2 number for new WBS
Please suggest.
Thanks,
Y.KanitkarHello,
This is a standard behavior. As for setting deletion flag on the WBS element, it is not physically deleted. If you set the following indicator, you can find the deleted objects in the project structure again.
Then, there is some more information about naming the WBS element with a used number. If you have already physically deleted this WBS element but there is message CJ026 when you try to name the WBS element with a used number, you can check in table VSPRPS_CN. If there is data in this table, you still cannot use this number again. You can refer to note 529634 for more details.
Best regards,
Kim -
Query on Undo Set Stream flags.
Hi All,
I'm using AEGP_SetStreamValue to update the value of the effect parameter. The Edit menu shows Undo Set Stream flags. Now if I Undo, nothing happens. I tried AEGP_StartUndoGroup() before I set the stream value. I end the undo group after setting the stream value using AGP_EndUndoGroup(). Still Edit menu is showing Undo Set Stream Flags.
What is the issue? Any ideas?
Thanks,
Dheeraj.Sounds like the internal CoDec commands of the RED importer and in turn points to a leaky plug-in, meaning it's a bug. Short of getting an updated version of the plug-in I see no way to fix that.
Mylenium -
Set deletion flag on process order.
Hi Friends,
My requirement is i want to set deletion flag on process order.
For this system gives error as
1. System status CRCR is active (ORD 93000112)
2. System status ORRQ is active (ORD 93000112)
Here i have solve the problem number one through transaction code BS22 (i.e. under System status I0241 -CRCR , previously LKZS - Set deletion indicator & LVMS -Mark for deletion was maintain as Forbidd now i have made it under No influence )
after saving this customization system give only error two ( System status ORRQ is active (ORD 93000112)
Same way when i try to find ORRQ but here i havenu2019t found ORRQ.
Could you plz help me.
Best Regards,
Parag Save.Dear,
The system sets this status when you release the order, provided that the Order record required indicator is set in the order type-dependent parameters (see Customizing for Process Order)....
This setting is there in SPRO....
Production Planning for Process Industries - Process Order-Master Data-Order-Define Order type Dependent parameters...
In this you set the option Order record Required....
Requirements are that the process orders are settled, associated PI sheets, inspection lots and any linked purchase orders are complete.
Following are prerequisites for closing a process order
1 The order must have the status Released (REL) or Technically completed (TECO)
2 The order balance must be 0
3 There can be no open purchase requisitions, purchase orders.
4 There can be no future change records from confirmation processes.
.Now Calculate Overheads using Tcode : KGI2 - Individual Processing
CO43 - Collective Processing
Step to be follow,
1.Calculate WIP using Tcode : KKAX - Individual Processing
KKAO - Collective Processing
2.Calculate Variance by using Tcode : KKS2 - Individual Processing
KKS1 - Collective Processing
3.Finally do the settlement of Order in Tcode : KO88 - Individual Processing
CO88 - Collective Processing
Please refer this thread also,
https://forums.sdn.sap.com/click.jspa?searchID=17422319&messageID=5934846
The transaction COA5 (Archive Administration Preprocessing).
This will allow you to set the deletion flag
Hope this helps.
Regards,
R.Brahmankar -
IMAPMessage is read-only Exception while changing setting the Flag
Hi,
I am getting " IMAPMessage is read-only" Exception while setting the Flag to SEEN/DELETED but the chages are effecting in mail(gmail).
below is my code, please help me in this.
Session session = Session.getDefaultInstance(props, null);
Store store = session.getStore("imaps");
store.connect("imap.gmail.com", username, password);
Folder inbox= store.getFolder("Inbox");
inbox.open(Folder.READ_WRITE);
Message[] msgsArr = inbox.getMessages();
for (int i = msgsArr .length - 1; i >= 0; i--) {
try {
IMAPMessage msg = (IMAPMessage) msgsArr ;
msg.setFlag(Flags.Flag.DELETED, true);
msg.saveChanges();
catch (Exception e) {
e.printStackTrace();
Thanks,
ReddyYou don't need the call to saveChanges after setting the flags.
Also, you don't need to cast to IMAPMessage. -
Record dirty immediately after query
Records are dirty immediately after quering/retrieved. I find it is only a certain type of record. I am very new to Jdeveloper. How do I go about researching what may be causing this? any suggestons?
Hi,
the transaction is dirty only if you set values to attributes of a row. So if you just follow the wizards to create the AM then this should not be the case. There must be more in what you do. You can run the tester first to see if this is originated from the business service. If it is then think about what you did beyond following the wizard steps
Frank -
Setting Deletion flag or locking Workcenter.
hi,
i would like to know what difference it makes in locking the workcenter and setting deletion flag?
which one is a more prefffered method?
i have set lock for a workcenter.
after which i tried to use the same in routing, system displayed only an infomation message "workenter is locked".
it allowed me to go ahead and add the workcenter and save the routing.
Is there any way for system to prompt an error message, when a workcenter with lock is selected in a routing /production order /during confirmations?
thanks in advance
regards
lyrojHi George,
Locking a workcenter is preventing the workcenter to be used for production.
You can assign it to the routing here in this case it will show a warning. If you have any scenario wherein you don't want any production to happen in the workcenter then you can directly go to the change mode CR02 and set the lock at the workcenter, so this workcenter assigned to the routings will be affected with this change.
Setting deletion flag is related to the process wherein you don't want the workcenter anymore and you want to delete the workcenter from the system. So during the next organization run this workcenter with deletion flag will be picked for consideration to be deleted from the system and it will be deleted, if it does not have any dependency. Let's say if it is attached to a routing which is attached to a production order which still is under production then this workcenter won't be deleted.
I hope this helps you in differentiating both the process. Please let me know if you have any further queries.
Regards,
Abhijeet Guha -
Implementing Dirty Flag for a generated Model (Flex 4)
Hi there,
I try to implement a dirty flag for a model generated by a Data Binding Wizard. I tried several ways but always failed to get it work properly bounded to the 'enabled' property of a button. Is there a "best approach" to implement this in a by Flex 4 generated model?
I have all the Form elements bound to the model's properties and defined fx:Bindings on the model's property as well to get the changes back to the model as well.
-> I tried to listen to the properyChange event on the Super model but I always returned true for the Dirty flag and couldn't set it to false when I loaded the model into a Form.
-> I tried to implement a similar approach like below, instead of doing a normal 'getter' function on the isDirty flag I bounded it to the propertyChange event, it failed exactly the same way as above
I did used my own solution earlier like this:
[RemoteClass(alias="VODictionaryEntry")]
[Bindable]
public class VODictionaryEntry
private var _id:Number = 0;
private var _terminology:String;
private var _description:String;
private var _notes:String;
private var _insert_date:String;
private var _update_date:String;
private var _vendor_related:Boolean;
public var isDirty:Boolean = false;
public function get vendor_related():Boolean
return _vendor_related;
public function set vendor_related(value:Boolean):void
_vendor_related = value;
isDirty = true;
public function get update_date():String
return _update_date;
public function set update_date(value:String):void
_update_date = value;
isDirty = true;
public function get insert_date():String
return _insert_date;
public function set insert_date(value:String):void
_insert_date = value;
isDirty = true;
public function get notes():String
return _notes;
public function set notes(value:String):void
_notes = value;
isDirty = true;
public function get description():String
return _description;
public function set description(value:String):void
_description = value;
isDirty = true;
public function get terminology():String
return _terminology;
public function set terminology(value:String):void
_terminology = value;
isDirty = true;
public function get id():Number
return _id;
public function set id(value:Number):void
_id = value;
isDirty = true;
this is a very simple solution but it worked like a charm. Can somebody suggest me something else, a better solution?
thank you
r. Sandor
P.S.: I didn't include the validators to simplify the example.hi,
meanwhile I come a little bit further if you implement the isDirty flag into your remote model and let generate ( to be included in the flex model as well) a model with Flex you can listen to the propertyChange event and do implement a correctly functioning bindable property.
public function VOMessageEntry():void
addEventListener( PropertyChangeEvent.PROPERTY_CHANGE, handlePropertyChange );
private function handlePropertyChange( event:PropertyChangeEvent ):void
if ( event.property != "isDirty" )
isDirty = true;
this code must be inserted into the generated Object itself not in the _Super_objectname source code.
I hope I could helped somebody with this solution.
r. Sandor -
Yosemite Mail Sets IMAP Flags differently than earlier Mail Versions
Since converting to Yosemite, our junk mail filtering system (a copy of Thunderbird running 24/7 on our Linux server) has not worked. We get over 1,000 pieces of Spam per day and use this setup to screen the junk before reading on our iPhones.
After hours of debugging I discovered that when Yosemite Mail initially downloads a message from the IMAP server (we use HostGator), Yosemite Mail sets the IMAP Flags on the server to be NonJunk $NotJunk NotJunk
Yosemite Mail does this before any message is viewed.
This is very different than Mavericks and earlier versions of Mail. In those earlier versions, no IMAP server Flags were set when a message was downloaded. The same is for the current version of iOS on my iPhone; no IMAP server Flags are set.
The problem is that the three versions a "Not Junk" flag set by Yosemite Mail are confusing Thunderbird and probably other Mail clients.
Does anyone know a way to stop to Yosemite Mail from setting these flags? I filled a bug report with Apple, but am not optimistic...Back up all data before proceeding.
1. Triple-click anywhere in the line below on this page to select it:
~/Library/Mail/Bundles
Right-click or control-click the highlighted line and select
Services ▹ Open
from the contextual menu.* A folder may open, or you may get an error message that the item can't be found. Either result is normal. If the folder does open and has contents, move the contents to the Desktop. Relaunch Mail and test. If there's no change, put the contents of the folder back and quit Mail again.
2. Repeat with this line:
/Library/Mail/Bundles
This time you may be prompted for your administrator login password when you remove the items. Make sure they're removed from the folder and not just copied to the Desktop. If necessary, copy them first and then move the originals to the Trash.
*If you don't see the contextual menu item, copy the selected text to the Clipboard by pressing the key combination command-C. In the Finder, select
Go ▹ Go to Folder...
from the menu bar and paste into the box that opens by pressing command-V. You won't see what you pasted because a line break is included. Press return. -
STMS stuck at SET VERSION FLAGS state
Hi Expert,
We are importing TR from Dev to Qty server by stms_import tx.
When we start import one TR... it takes 15 to 20 min to import where as it should take max 1 min. as per program.
I checked import monitor which is showing stuck in phase "start of action SET VERSION FLAGS" since 15 min.
All TR stuck in same phase but after 15-20 min each TR imported fine without error.
We are using ERP 6.0 (no ecc package) on windows with MS SQL db.
I want to know what is this phase called "SET VERSION FLAGS" and why it takes long time to import.
Is I need to change any parameter setting?
How to resolve issue?
Thanks in advance.
regards,
DevHi Eric,
Find below log
ALOG:
DEVK902005
PRD.ALL L 0000 20150409121631 USERABAP
TMSADM
PRDSAPDB 20150409121631145
DVEK902005
PRD.ALL w 0000 20150409122019 USERABAP
TMSADM
PRDSAPDB 20150409121631145
ALL
PRD.ALL 6 0000 20150409122518
TMSADM
PRDSAPDB 20150409121631145
DEVK902005
PRD:666 I 0000 20150409122523 USERABAP
TMSADM
PRDSAPDB 20150409121631145
DEVK902005
PRD
< 0000 20150409122523 USERABAP
TMSADM
PRDSAPDB 20150409121631145
DEVK902005
PRD.ALL v 0000 20150409123020 USERABAP
TMSADM
SLOG:
START TRANSMIT BUFFER ENTR PRD g
20150409121556
TMSADM
PRDSAPDB
STOP TRANSMIT BUFFER ENTR PRD g 0000 20150409121556
TMSADM
PRDSAPDB
START imp single
PRD
20150409121631
TMSADM
PRDSAPDB 20150409121631145
START CMDIMPORT
PRD L
20150409121631
TMSADM
PRDSAPDB 20150409121631145
STOP CMDIMPORT
PRD L
20150409121631
TMSADM
PRDSAPDB 20150409121631145
START CREATE VERSIONS BEFO PRD w
20150409121632
TMSADM
PRDSAPDB 20150409121631145
START tp_getprots
PRD W
20150409121632
TMSADM
PRDSAPDB 20150409121631145
STOP tp_getprots
PRD W
20150409122027
TMSADM
PRDSAPDB 20150409121631145
STOP CREATE VERSIONS BEFO PRD w
20150409122027
TMSADM
PRDSAPDB 20150409121631145
INFO TBATG CONVERSION OF PRD N
not needed
TMSADM
PRDSAPDB 20150409121631145
START MOVE NAMETABS
PRD 6
20150409122027
TMSADM
PRDSAPDB 20150409121631145
START tp_getprots
PRD P
20150409122027
TMSADM
PRDSAPDB 20150409121631145
STOP tp_getprots
PRD P
20150409122522
TMSADM
PRDSAPDB 20150409121631145
STOP MOVE NAMETABS
PRD 6
20150409122522
TMSADM
PRDSAPDB 20150409121631145
START MAIN IMPORT
PRD I
20150409122522
TMSADM
PRDSAPDB 20150409121631145
STOP MAIN IMPORT
PRD I
20150409122523
TMSADM
PRDSAPDB 20150409121631145
INFO TBATG CREATION OF EN PRD n
not needed
TMSADM
PRDSAPDB 20150409121631145
START CREATE VERSIONS AFTE PRD v
20150409122524
TMSADM
PRDSAPDB 20150409121631145
START tp_getprots
PRD F
20150409122524
TMSADM
PRDSAPDB 20150409121631145
STOP tp_getprots
PRD F
20150409123029
TMSADM
PRDSAPDB 20150409121631145
STOP CREATE VERSIONS AFTE PRD v
20150409123029
TMSADM
PRDSAPDB 20150409121631145
START GENERATION OF REPORT PRD G
20150409123029
TMSADM
PRDSAPDB 20150409121631145
START tp_getprots
PRD G
20150409123029
TMSADM
PRDSAPDB 20150409121631145
STOP tp_getprots
PRD G
20150409123524
TMSADM
PRDSAPDB 20150409121631145
STOP GENERATION OF REPORT PRD G
20150409123524
TMSADM
PRDSAPDB 20150409121631145
STOP imp single
PRD 0000 20150409123524
TMSADM
PRDSAPDB 20150409121631145
Regards,
Dev
Maybe you are looking for
-
Cmd-k doesn't work with Leopard to access Win XP
With 10.5.4 on an iBook I was able to get to Win XP shared files just fine. With 10.5.6 on a new Macbook I've been unable to get this to work despite having fully researched the situation with Google and having tried all the suggestions that apparent
-
HT201210 Why can't i connect my Ipad to my Pc?
Hei, I'm having a trouble with connecting my IPAD 3 to the computer. I got a alerted message all the time.. WHYY?!?!?!?
-
Why doesn't my library folder show up in my home folder?
I suddenly realized that my library folder does not show up in my home folder. I can find items in the folder if I search for them, and if I navigate upwards I can see the Library folder. But if I do anything else, the folder disappears from my home
-
It's a 4th gen iPod touch and I need to know what apple will do for me
-
So I need to help my sister back up her phone. I've suggested she do the same for her iPad, since it's only safe. I'm concerned that if I back up her iPad after her phone, it will delete the first back up and save over that one. Is it possible to hav