@@ -50,6 +50,7 @@ class ImportIntoPostGIS(GeoAlgorithm):
50
50
CREATEINDEX = 'CREATEINDEX'
51
51
GEOMETRY_COLUMN = 'GEOMETRY_COLUMN'
52
52
LOWERCASE_NAMES = 'LOWERCASE_NAMES'
53
+ DROP_STRING_LENGTH = 'DROP_STRING_LENGTH'
53
54
54
55
def getIcon (self ):
55
56
return QIcon (os .path .dirname (__file__ ) + '/../../images/postgis.png' )
@@ -60,6 +61,7 @@ def processAlgorithm(self, progress):
60
61
overwrite = self .getParameterValue (self .OVERWRITE )
61
62
createIndex = self .getParameterValue (self .CREATEINDEX )
62
63
convertLowerCase = self .getParameterValue (self .LOWERCASE_NAMES )
64
+ dropStringLength = self .getParameterValue (self .DROP_STRING_LENGTH )
63
65
settings = QSettings ()
64
66
mySettings = '/PostgreSQL/connections/' + connection
65
67
try :
@@ -96,6 +98,8 @@ def processAlgorithm(self, progress):
96
98
options ['overwrite' ] = True
97
99
if convertLowerCase :
98
100
options ['lowercaseFieldNames' ] = True
101
+ if dropStringLength :
102
+ options ['dropStringConstraints' ] = True
99
103
layerUri = self .getParameterValue (self .INPUT )
100
104
layer = dataobjects .getObjectFromUri (layerUri )
101
105
(ret , errMsg ) = QgsVectorLayerImport .importLayer (
@@ -140,3 +144,5 @@ def defineCharacteristics(self):
140
144
'Create spatial index' , True ))
141
145
self .addParameter (ParameterBoolean (self .LOWERCASE_NAMES ,
142
146
'Convert field names to lowercase' , False ))
147
+ self .addParameter (ParameterBoolean (self .DROP_STRING_LENGTH ,
148
+ 'Drop length constraints on character fields' , False ))
0 commit comments