Index: trunk/ippToPsps/jython/stackbatch.py
===================================================================
--- trunk/ippToPsps/jython/stackbatch.py	(revision 39062)
+++ trunk/ippToPsps/jython/stackbatch.py	(revision 39068)
@@ -184,4 +184,5 @@
 
        self.dropTableVerbose("StackToImage")
+       self.dropTableVerbose("StackToFrame")
 
 
@@ -1076,4 +1077,54 @@
         self.tablesToExport.append("StackToImage")
 
+    '''
+    Populates the StackToFrame table
+    '''
+    def populateStackToFrame(self):
+
+        self.logger.infoPair("Procesing table", "StackToFrame")
+
+        for filter in self.filters:
+            
+            header = self.headerSet[filter]
+
+            stackImageID = self.stackIDs[filter]
+            if stackImageID == 0: continue
+    
+            nInputs = self.getKeyInt(header, 0, 'NINPUTS')
+
+            for input in range(nInputs):
+                
+                field = "INP_%04d" % input
+                inputName = self.getKeyValue(header, field)
+                
+                # split inputName of form o5745g0406o.356782.wrp.1199763.skycell.1315.090.fits
+                # to get the expID (second block)
+                words = inputName.split('.')
+                frameID = words[1]
+                
+                field = "SCL_%04d" % input
+                scaleFactor = self.getKeyFloat(header, "%9.5f", field)
+                
+                field = "ZPT_%04d" % input
+                zeroPoint = self.getKeyFloat(header, "%9.5f", field)
+                
+                field = "EXP_%04d" % input
+                expTime = self.getKeyFloat(header, "%6.3f", field)
+                
+                field = "AIR_%04d" % input
+                airMass = self.getKeyFloat(header, "%6.3f", field)
+                
+                sql = "INSERT INTO StackToFrame "
+                sql += " (stackImageID, frameID, scaleFactor, zp, expTime, airMass) VALUES ( "
+                sql += str(stackImageID) + ", "
+                sql += str(frameID) + ", "
+                sql += str(scaleFactor) + ", "
+                sql += str(zeroPoint) + ", "
+                sql += str(expTime) + ", "
+                sql += str(airMass) + ")"
+                self.scratchDb.execute(sql)
+
+        self.tablesToExport.append("StackToFrame")
+
     ''' 
     Populate StackDetEffMeta
@@ -1373,4 +1424,7 @@
         self.logger.infoPair("populating","StackToImage") 
         self.populateStackToImage()
+        
+        self.logger.infoPair("populating","StackToFrame") 
+        self.populateStackToFrame()
         
         self.setMinMaxObjID(["StackObjectThin"])
