import com.im.commons.db.ddl.GenericColumnType // These imports are not necessary in 5.9 and later import com.im.commons.progress.* import com.im.df.api.capabilities.* import com.im.df.api.util.*; import com.im.df.api.ddl.*; import com.im.commons.db.ddl.*; import com.im.df.api.support.*; def ety = dataTree.rootVertex.entity ety.schema.lockable.withLock('Create a new dynamic URL field'){ envRW -> // In IJC 5.11 and earlier def Class[] req = [ DFFieldURLCapability.class ] def Class[] excl = [ DBFieldCapability.class ] def nt = DIFUtilities.findFirstAppropriateNewType(ety.getFields().getNewTypes(), false, req, excl) nt.options.newDFItemNameSafe = "Search formula in google" def DFField[] params = [ ety.fields.items.find { it.name == "Formula" } ] nt.options.calcTemplate = CalcTemplate.create('http://www.google.com/search?q="{0}"', params) nt.create(envRW) // End of code for 5.11 // In IJC 5.12 and later //def DFField[] params = [ ety.fields.items.find { it.name == "Formula" } ] //DFFields.createDynamicURLField(ety, "Search formula in google", "text/html", 'http://www.google.com/search?q="{0}"', params, envRW) // End of code for 5.12+ }
Versions: This script has been tested on IJC version 6.0