Index: trunk/ippToPsps/config/tables.FW.vot
===================================================================
--- trunk/ippToPsps/config/tables.FW.vot	(revision 38793)
+++ trunk/ippToPsps/config/tables.FW.vot	(revision 38794)
@@ -45,5 +45,5 @@
 	<DESCRIPTION>Number of photometric reference sources.</DESCRIPTION>
       </FIELD>
-      <FIELD name="psfModelID" arraysize="100" datatype="char" unit="dimensionless" default="">
+      <FIELD name="psfModelID" arraysize="100" datatype="int" unit="dimensionless" default="-999">
 	<DESCRIPTION>PSF model identifier.</DESCRIPTION>
       </FIELD>
Index: trunk/ippToPsps/config/tables.ST.vot
===================================================================
--- trunk/ippToPsps/config/tables.ST.vot	(revision 38793)
+++ trunk/ippToPsps/config/tables.ST.vot	(revision 38794)
@@ -59,5 +59,5 @@
         <DESCRIPTION>Number of photometric reference sources.</DESCRIPTION>
       </FIELD>
-      <FIELD name="psfModelID" arraysize="100" datatype="char" unit="dimensionless" default="">
+      <FIELD name="psfModelID" arraysize="100" datatype="int" unit="dimensionless" default="-999">
         <DESCRIPTION>PSF model identifier.</DESCRIPTION>
       </FIELD>
Index: trunk/ippToPsps/jython/detectionbatch.py
===================================================================
--- trunk/ippToPsps/jython/detectionbatch.py	(revision 38793)
+++ trunk/ippToPsps/jython/detectionbatch.py	(revision 38794)
@@ -198,4 +198,7 @@
         psfFwhm = 0.5*(float(psfFwhmMajor) + float(psfFwhmMinor))
 
+        psfmodel_name = self.getKeyValue(header, 'PSFMODEL')
+        psfmodelID    = self.scratchDb.getFitModelID(psfmodel_name)
+
         ast_cdx = self.getKeyFloat(header, "%.8f",'AST_CDX')
         ast_cdy = self.getKeyFloat(header, "%.8f",'AST_CDY')
@@ -219,4 +222,5 @@
         sqlLine.group("nx",               self.getKeyInt(header, 0, 'CNAXIS1'))
         sqlLine.group("ny",               self.getKeyInt(header, 0, 'CNAXIS2'))
+        sqlLine.group("psfModelID"        psfmodelID)
         sqlLine.group("psfFwhm",          str(psfFwhm))
         sqlLine.group("psfWidMajor",      psfFwhmMajor)
Index: trunk/ippToPsps/jython/forcedwarpbatch.py
===================================================================
--- trunk/ippToPsps/jython/forcedwarpbatch.py	(revision 38793)
+++ trunk/ippToPsps/jython/forcedwarpbatch.py	(revision 38794)
@@ -224,4 +224,7 @@
 #        photoCalID = str(self.scratchDb.getPhotoCalID(forcedWarpID))       
 
+        psfmodel_name = self.getKeyValue(header, 'PSFMODEL')
+        psfmodelID    = self.scratchDb.getFitModelID(psfmodel_name)
+
         sqlLine = sqlUtility("INSERT INTO ForcedWarpMeta_"+forcedWarpID+" (")
         #batchID (below)
@@ -249,5 +252,5 @@
 #        sqlLine.group("nAstroRef",      self.getKeyValue(header, 'NASTRO'))
 #        sqlLine.group("nPhotoRef",      self.getKeyValue(header, 'NASTRO'))
-        sqlLine.group("psfModelID",     self.getKeyValue(header, 'PSFMODEL'))
+        sqlLine.group("psfModelID",     psfmodelID)
         sqlLine.group("psfFwhm_mean",   self.getKeyFloat(header, "%.8f", 'FWHM_MAJ'))
         sqlLine.group("psfFwhm_max",    self.getKeyFloat(header, "%.8f", 'FW_MJ_UQ'))
Index: trunk/ippToPsps/jython/scratchdb.py
===================================================================
--- trunk/ippToPsps/jython/scratchdb.py	(revision 38793)
+++ trunk/ippToPsps/jython/scratchdb.py	(revision 38794)
@@ -130,4 +130,20 @@
 
         return filterID
+
+    '''
+    Get the fitModelID from FitModel table based on model name
+    '''
+    def getFitModelID(self, name):
+        
+        sql = "SELECT fitModelID FROM FitModel WHERE name = '" + name + "'"
+        try:
+            rs = self.executeQuery(sql)
+            rs.first()
+            fitModelID = rs.getInt(1)
+        except:
+            self.logger.errorPair("No fitModelID found for model name", name)
+            fitModelID = -1
+
+        return fitModelID
 
     '''
Index: trunk/ippToPsps/jython/stackbatch.py
===================================================================
--- trunk/ippToPsps/jython/stackbatch.py	(revision 38793)
+++ trunk/ippToPsps/jython/stackbatch.py	(revision 38794)
@@ -225,5 +225,6 @@
         fwhm_maj    = self.getKeyFloat(header, "%.8f", 'FWHM_MAJ')
         fwhm_maj_uq = self.getKeyFloat(header, "%.8f", 'FW_MJ_UQ')
-        psfmodel    = self.getKeyValue(header, 'PSFMODEL')
+        psfmodel_name    = self.getKeyValue(header, 'PSFMODEL')
+        psfmodelID  = self.scratchDb.getFitModelID(psfmodel_name)
 
         ast_cdx = self.getKeyFloat(header, "%.8f",'AST_CDX')
@@ -259,5 +260,5 @@
         sqlLine.group("completMag",       self.getKeyFloat(header, "%.8f", 'FLIMIT'))
         sqlLine.group("expTime",       self.getKeyFloat(header, "%.5f", 'EXPTIME'))  
-        sqlLine.group("psfModelID",    psfmodel)           
+        sqlLine.group("psfModelID",    psfmodelID)           
         sqlLine.group("psfFwhm_mean",  fwhm_maj)      
         sqlLine.group("psfFwhm_max",   fwhm_maj_uq)
