Changeset 8776


Ignore:
Timestamp:
Dec 4, 2019, 1:23:38 PM (12 months ago)
Author:
jrpelegrina
Message:

Fixed script to convert mdb with failed records

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lliurex-abies2pmb/trunk/fuentes/lliurex-abies2pmb.install/usr/share/lliurex-abies2pmb/abies2pmb.py

    r7481 r8776  
    313313                pmbColumn=0
    314314                strInsertValues=''
     315                processRow=True
    315316                for index in self.pmb_tables[destTable]:
    316                         if index!='':
    317                                 if transformDict:
    318                                         if index in transformDict.keys():
    319                                                 strTransform=transformDict[index]
    320                                                 self._debug("Transforming value "+str(line[index])+" index "+str(index)+" with "+strTransform)
    321                                                 line[index]=eval(strTransform)
    322                                 tmp=str(line[index]).strip("\n")
    323                                 #Clean tmp field
    324                                 tmp=tmp.replace('"',' ')
    325                                 chkFormat=True
    326                                 if (destTable in self.formatPmbColumns):
    327                                         if index in self.formatPmbColumns[destTable]:
    328                                                 chkFormat=False
    329                                                 if self.formatPmbColumns[destTable][index]=='string':
    330                                                         tmp=str(tmp)
    331                                                         tmp=tmp.lstrip(' ')
    332                                                         tmp=tmp.rstrip(' ')
    333                                                         tmp='"'+tmp+'"'
    334                                                 elif self.formatPmbColumns[destTable][index]=='int':
    335                                                         tmp=int(tmp)
    336 
    337                                 if chkFormat:
    338                                         try:
    339                                                 int(tmp)
    340                                         except:
    341                                                 tmp=tmp.lstrip(' ')
    342                                                 tmp=tmp.rstrip(' ')
    343                                                 tmp='"'+tmp+'"'
    344                                                 pass
    345                         else:
    346                                 if (destTable in self.defaultPmbValues):
    347                                         if pmbColumn in self.defaultPmbValues[destTable]:
    348                                                 tmp=self.defaultPmbValues[destTable][pmbColumn]
     317                        try:
     318                                if index!='':
     319                                        if transformDict:
     320                                                if index in transformDict.keys():
     321                                                        if index==5:
     322                                                                if line[3]=='':
     323                                                                        line[3]=1
     324                                                        if index==13:
     325                                                                if len(line)==13:
     326                                                                        line.append("")
     327                                                                        line.append("")
     328                                                                        line.append("")
     329                                                                else:
     330                                                                        if len(line)<13:
     331                                                                                processRow=False
     332                                                        if processRow:                 
     333                                                                strTransform=transformDict[index]
     334                                                                self._debug("Transforming value "+str(line[index])+" index "+str(index)+" with "+strTransform)
     335                                                                line[index]=eval(strTransform)
     336                                        if processRow:
     337                                                tmp=str(line[index]).strip("\n")
     338                                                #Clean tmp field
     339                                                tmp=tmp.replace('"',' ')
     340                                                chkFormat=True
     341                                                if (destTable in self.formatPmbColumns):
     342                                                        if index in self.formatPmbColumns[destTable]:
     343                                                                chkFormat=False
     344                                                                if self.formatPmbColumns[destTable][index]=='string':
     345                                                                        tmp=str(tmp)
     346                                                                        tmp=tmp.lstrip(' ')
     347                                                                        tmp=tmp.rstrip(' ')
     348                                                                        tmp='"'+tmp+'"'
     349                                                                elif self.formatPmbColumns[destTable][index]=='int':
     350                                                                        tmp=int(tmp)
     351
     352                                                if chkFormat:
     353                                                        try:
     354                                                                int(tmp)
     355                                                        except:
     356                                                                tmp=tmp.lstrip(' ')
     357                                                                tmp=tmp.rstrip(' ')
     358                                                                tmp='"'+tmp+'"'
     359                                                                pass
     360                                else:
     361                                        if (destTable in self.defaultPmbValues):
     362                                                if pmbColumn in self.defaultPmbValues[destTable]:
     363                                                        tmp=self.defaultPmbValues[destTable][pmbColumn]
     364                                                else:
     365                                                        tmp='""'       
    349366                                        else:
    350                                                 tmp='""'       
    351                                 else:
    352                                         tmp='""'
     367                                                tmp='""'
     368                        except Exception as e:
     369                                tmp='""'
     370                                pass
    353371                               
    354372                        strInsertValues=strInsertValues+tmp+','
     
    643661        def _funcGetValueFromQuery(self,abiesTable,sourceTable,valueFrom,fieldTo,reqFieldIndex):
    644662                returnValue=''
    645                 valueFrom=valueFrom.strip("\n")
    646                 if sourceTable not in self.tableValuesDict:
    647                         self._loadTable(sourceTable)
    648                 for row in self.tableValuesDict[sourceTable]:
    649                                 #                       print ("Comparing "+str(valueFrom)+" with "+str(row[fieldTo]))
    650                         if valueFrom==str(row[fieldTo]).strip("\n"):
    651                                 returnValue=row[reqFieldIndex]
    652                                 break
    653                 return returnValue
     663                try:
     664                        valueFrom=valueFrom.strip("\n")
     665                        if sourceTable not in self.tableValuesDict:
     666                                self._loadTable(sourceTable)
     667                        for row in self.tableValuesDict[sourceTable]:
     668                                        #                       print ("Comparing "+str(valueFrom)+" with "+str(row[fieldTo]))
     669                                if valueFrom==str(row[fieldTo]).strip("\n"):
     670                                        returnValue=row[reqFieldIndex]
     671                                        break
     672                        return returnValue
     673                except Exception as e:
     674                        returnValue=''
     675                        return Value
    654676        #Transform fields functions
    655677
Note: See TracChangeset for help on using the changeset viewer.