poLayer = poDS.GetLayer( 0 )
+ fieldNameList = []
+ layerDefinition = poLayer.GetLayerDefn()
+ for i in range(layerDefinition.GetFieldCount()):
+ fieldNameList.append(layerDefinition.GetFieldDefn(i).GetName())
+ # sys.stderr.write(",".join(fieldNameList))
+
poLayer.ResetReading()
ret = []
if tags["highway"] != "primary":
tags["highway"] = "secondary"
- divroad = poFeature.GetField("DIVROAD")
- if divroad != None:
- if divroad == "Y" and "highway" in tags and tags["highway"] == "residential":
- tags["highway"] = "tertiary"
- tags["tiger:separated"] = divroad
+ # TIGER 2017 no longer contains this field
+ if 'DIVROAD' in fieldNameList:
+ divroad = poFeature.GetField("DIVROAD")
+ if divroad != None:
+ if divroad == "Y" and "highway" in tags and tags["highway"] == "residential":
+ tags["highway"] = "tertiary"
+ tags["tiger:separated"] = divroad
statefp = poFeature.GetField("STATEFP")
countyfp = poFeature.GetField("COUNTYFP")
# ret.append( "<tag k=\"source\" v=\"%s_import_v%s_%s\" />" % (iSource, VERSION, import_guid) )
# ret.append( "<tag k=\"attribution\" v=\"%s\" />" % (iAttrib) )
# ret.append( "</way>" )
-
- ret.append( "select tigger_create_interpolation(ST_GeomFromText('LINESTRING(%s)',4326), '%s', '%s', '%s', '%s', '%s', '%s');" %
+ # call new tiger_line_import function to save the lines in the DB.
+ ret.append( "select tiger_line_import(ST_GeomFromText('LINESTRING(%s)',4326), '%s', '%s', '%s', '%s', '%s', '%s');" %
( ",".join(rlinestring), rfromadd.replace("'", "''"), rtoadd.replace("'", "''"), interpolationtype.replace("'", "''"), name.replace("'", "''"), county.replace("'", "''"), zipr.replace("'", "''") ) )
if left:
interpolationtype = "all";
else:
interpolationtype = "all";
- ret.append( "select tigger_create_interpolation(ST_GeomFromText('LINESTRING(%s)',4326), '%s', '%s', '%s', '%s', '%s', '%s');" %
+ ret.append( "select tiger_line_import(ST_GeomFromText('LINESTRING(%s)',4326), '%s', '%s', '%s', '%s', '%s', '%s');" %
( ",".join(llinestring), lfromadd.replace("'", "''"), ltoadd.replace("'", "''"), interpolationtype.replace("'", "''"), name.replace("'", "''"), county.replace("'", "''"), zipl.replace("'", "''") ) )
return ret