Changeset 669


Ignore:
Timestamp:
Jul 20, 2010, 4:21:50 PM (11 years ago)
Author:
tabma
Message:
  • added "Don' t import" functionality which ignores columns
Location:
trunk/grails-app
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/controllers/dbnp/importer/ImporterController.groovy

    r661 r669  
    119119            table.each { entity ->
    120120                entity.giveFields().each { field ->
    121                     print ":" + params["entity_" + entity.hashCode() + "_" + field.escapedName()]
     121                    //print ":" + params["entity_" + entity.hashCode() + "_" + field.escapedName()]
    122122                    entity.setFieldValue (field.toString(), params["entity_" + entity.hashCode() + "_" + field.escapedName()])
    123123                }               
     
    223223                // Store the selected property for this column into the column map for the ImporterService
    224224                session.importer_header[columnindex.toInteger()].property = property
     225
    225226                // Look up the template field type of the target TemplateField and store it also in the map
    226                 session.importer_header[columnindex.toInteger()].templatefieldtype = entityObj.getFieldType(property)
     227                session.importer_header[columnindex.toInteger()].templatefieldtype = entityObj.giveFieldType(property)
     228
     229                // Is a "Don't import" property assigned to the column?
     230                session.importer_header[columnindex.toInteger()].dontimport = (property=="dontimport") ? true : false
    227231
    228232                //if it's an identifier set the mapping column true or false
  • trunk/grails-app/domain/dbnp/importer/MappingColumn.groovy

    r545 r669  
    2020        String value
    2121        Boolean identifier
     22        Boolean dontimport
    2223
    2324    static constraints = {
    2425            name(unique: true)
     26            dontimport(default:false)
    2527    }
    2628
  • trunk/grails-app/services/dbnp/importer/ImporterService.groovy

    r666 r669  
    171171           
    172172            (0..header.size()-1).each { columnindex ->
    173                 def c = sheet.getRow(rowindex).getCell(columnindex, org.apache.poi.ss.usermodel.Row.CREATE_NULL_AS_BLANK)
    174                 println "DAS " + columnindex + ":" + c
     173                def c = sheet.getRow(rowindex).getCell(columnindex, org.apache.poi.ss.usermodel.Row.CREATE_NULL_AS_BLANK)               
    175174                row.add(c)
     175                //if (c.getCellType() == c.CELL_TYPE_STRING) println "STR"+c.getStringCellValue()
     176                //if (c.getCellType() == c.CELL_TYPE_NUMERIC) println "INT" +c.getNumericCellValue()
    176177            }
    177178                //row.add(df.formatCellValue(c))
     
    224225        def sheet = wb.getSheetAt(sheetindex)
    225226        def table = []
    226 
    227227       
    228228        // walk through all rows       
     
    242242        return table   
    243243    }
    244    
    245      /**
    246                      // start transaction
    247                         def transaction = sessionFactory.getCurrentSession().beginTransaction()
    248                               // persist data to the database
    249                                 try {
    250                                    // commit transaction
    251                                         println "commit"
    252                                         transaction.commit()
    253                                         success()
    254                                 } catch (Exception e) {
    255                                         // rollback
    256                                         // stacktrace in flash scope
    257                                         flash.debug = e.getStackTrace()
    258 
    259                                         println "rollback"
    260                                         transaction.rollback()
    261                                         error()
    262                                 }
    263       */
    264 
     244   
    265245    /**
    266246     * Method to store a matrix containing the entities in a record like structure. Every row in the table
     
    332312            def value
    333313
    334             try {
    335                  value = formatValue(df.formatCellValue(cell), mc.templatefieldtype)
    336             } catch (NumberFormatException nfe) {
    337                  value = ""
    338             }
     314            if (!mc.dontimport) {
     315                /*try {
     316                 value = formatValue(df.formatCellValue(cell), mc.templatefieldtype)
     317                } catch (NumberFormatException nfe) {
     318                 value = ""
     319                }*/
     320            value = df.formatCellValue(cell)
    339321
    340322            switch(mc.entity) {
     
    354336                                    break
    355337            } // end switch
    356         } // end for
     338        } // end
     339    } // end for
    357340
    358341        return record
  • trunk/grails-app/taglib/dbnp/importer/ImporterTagLib.groovy

    r632 r669  
    1616package dbnp.importer
    1717import dbnp.studycapturing.Template
     18import dbnp.studycapturing.TemplateField
    1819import dbnp.studycapturing.TemplateFieldType
    1920import org.apache.poi.hssf.usermodel.HSSFCell
     
    130131        def res = "<select style=\"font-size:10px\" name=\"${name}.index.${columnIndex}\">"
    131132
     133        res += "<option value=\"dontimport\" selected>Don't import</option>"
     134
    132135        options.each { f ->
    133136            res+= "<option value=\"${f.name}\">"
Note: See TracChangeset for help on using the changeset viewer.