@@ -3263,12 +3263,14 @@ def record(
32633263 self .__dbfRecord (record )
32643264
32653265 @staticmethod
3266- def _dbf_missing_placeholder (value : RecordValue , type : FieldType , size : int ) -> str :
3267- if type in {FieldType .N , FieldType .F }:
3266+ def _dbf_missing_placeholder (
3267+ value : RecordValue , field_type : FieldType , size : int
3268+ ) -> str :
3269+ if field_type in {FieldType .N , FieldType .F }:
32683270 return "*" * size # QGIS NULL
3269- if type is FieldType .D :
3271+ if field_type is FieldType .D :
32703272 return "0" * 8 # QGIS NULL for date type
3271- if type is FieldType .L :
3273+ if field_type is FieldType .L :
32723274 return " "
32733275 return str (value )
32743276
@@ -3345,18 +3347,18 @@ def __dbfRecord(self, record: list[RecordValue]) -> None:
33453347 fields = (
33463348 field for field in self .fields if field [0 ] != "DeletionFlag"
33473349 ) # ignore deletionflag field in case it was specified
3348- for (fieldName , type , size , decimal ), value in zip (fields , record ):
3350+ for (fieldName , type_ , size , decimal ), value in zip (fields , record ):
33493351 # write
33503352 size = int (size )
33513353 str_val : str
33523354
33533355 if value in MISSING :
3354- str_val = self ._dbf_missing_placeholder (value , type , size )
3355- elif type in {FieldType .N , FieldType .F }:
3356+ str_val = self ._dbf_missing_placeholder (value , type_ , size )
3357+ elif type_ in {FieldType .N , FieldType .F }:
33563358 str_val = self ._try_coerce_to_numeric_str (value , size , decimal )
3357- elif type is FieldType .D :
3359+ elif type_ is FieldType .D :
33583360 str_val = self ._try_coerce_to_date_str (value )
3359- elif type is FieldType .L :
3361+ elif type_ is FieldType .L :
33603362 str_val = self ._try_coerce_to_logical_str (value )
33613363 else :
33623364 if isinstance (value , bytes ):
0 commit comments