commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnue] r7983 - in trunk/gnue-forms/src: . GFObjects


From: reinhard
Subject: [gnue] r7983 - in trunk/gnue-forms/src: . GFObjects
Date: Wed, 28 Sep 2005 12:35:40 -0500 (CDT)

Author: reinhard
Date: 2005-09-24 04:52:49 -0500 (Sat, 24 Sep 2005)
New Revision: 7983

Modified:
   trunk/gnue-forms/src/GFForm.py
   trunk/gnue-forms/src/GFObjects/GFBlock.py
Log:
If requery is done after unsuccessful commit, remember to do it again after the
next successful one.


Modified: trunk/gnue-forms/src/GFForm.py
===================================================================
--- trunk/gnue-forms/src/GFForm.py      2005-09-24 07:27:14 UTC (rev 7982)
+++ trunk/gnue-forms/src/GFForm.py      2005-09-24 09:52:49 UTC (rev 7983)
@@ -704,13 +704,17 @@
           for conn in self.__getConnections ().values ():
             conn.commit ()
 
-        finally:
+        except:
           # Make sure the block is in consistent state again; this has to be
           # done in any case if the processCommit was successful, even if the
-          # connection commit failed - thus the "finally" here.
+          # connection commit failed!
           for block in self._logic._blockList:            
-            block.finalizeCommit ()
+            block.finalizeCommit (False)
+          raise
 
+        for block in self._logic._blockList:            
+          block.finalizeCommit (True)
+
         # Execute Post-Commit-Trigger for each block
         for block in self._logic._blockList:
           block.processTrigger ('Post-Commit')

Modified: trunk/gnue-forms/src/GFObjects/GFBlock.py
===================================================================
--- trunk/gnue-forms/src/GFObjects/GFBlock.py   2005-09-24 07:27:14 UTC (rev 
7982)
+++ trunk/gnue-forms/src/GFObjects/GFBlock.py   2005-09-24 09:52:49 UTC (rev 
7983)
@@ -638,11 +638,11 @@
   #
   # Called after the commit on the backend is through.
   #
-  def finalizeCommit (self):
+  def finalizeCommit (self, commit):
 
     # Synchronize backend -> resultset -> UI
     if self._getMasterBlock () is None:
-      self._dataSourceLink.requeryAll (True)
+      self._dataSourceLink.requeryAll (commit)
 
     # Our recordCount might have changed if records were deleted
     self._recordCount = self._resultSet.getRecordCount()





reply via email to

[Prev in Thread] Current Thread [Next in Thread]