[GRASS-dev] [GRASS GIS] #1763: Cannot scan date: on mapinfo imported map
GRASS GIS
trac at osgeo.org
Mon Oct 15 05:46:28 PDT 2012
#1763: Cannot scan date: on mapinfo imported map
----------------------+-----------------------------------------------------
Reporter: pertusus | Owner: grass-dev@…
Type: defect | Status: new
Priority: normal | Milestone: 6.4.3
Component: Vector | Version: 6.4.2
Keywords: | Platform: Linux
Cpu: x86-64 |
----------------------+-----------------------------------------------------
I import a mapinfo .mif (with .mid) mapset, with the following command:
{{{
v.in.ogr dsn=cartorisque_departement_01/
layer=01_ATLAS_INONDATION_ZONE_INONDABLE output=zone_inondable_01
}}}
But when I do a v.db.select on the result, I get
{{{
v.db.select zone_inondable_01
cat|IDENT|DOCUMENT|AUTEUR|DATE_APPROBATION|DATE_APPROBATION_AFFICHEE|PRECISION|RISQUE|THEME|CODE_DEGRE|DEGRE|LABEL|LIEN_RAPPORT|TAILLE_RAPPORT|LIEN_REGLEMENT|TAILLE_REGLEMENT|FOURNISSEUR|DATE_IMPORT
DBMI-SQLite driver error:
Cannot scan date:
ERROR: Unable to fetch data from table <zone_inondable_01>
}}}
Reading the code, I see in db/drivers/sqlite/fetch.c, l. 167
{{{
ns = sscanf(text, "%4d-%2d-%2d", &dt->year, &dt->month,
&dt->day);
if (ns != 3) {
append_error("Cannot scan date:");
append_error(text);
report_error();
return DB_FAILED;
}
}}}
The columns with DATE type are DATE_APPROBATION and DATE_IMPORT:
{{{
v.info -c zone_inondable_01
Displaying column types/names for database connection of layer 1:
INTEGER|cat
INTEGER|IDENT
CHARACTER|DOCUMENT
CHARACTER|AUTEUR
DATE|DATE_APPROBATION
CHARACTER|DATE_APPROBATION_AFFICHEE
CHARACTER|PRECISION
CHARACTER|RISQUE
CHARACTER|THEME
CHARACTER|CODE_DEGRE
CHARACTER|DEGRE
CHARACTER|LABEL
CHARACTER|LIEN_RAPPORT
CHARACTER|TAILLE_RAPPORT
CHARACTER|LIEN_REGLEMENT
CHARACTER|TAILLE_REGLEMENT
CHARACTER|FOURNISSEUR
DATE|DATE_IMPORT
}}}
$ ogrinfo . 01_ATLAS_INONDATION_ZONE_INONDABLE DATE_IMPORT
shows that all dates as null, like
{{{
DATE_APPROBATION (Date) = (null)
DATE_IMPORT (Date) = (null)
}}}
but I am not sure it is true. To check all are null I used:
{{{
ogrinfo . 01_ATLAS_INONDATION_ZONE_INONDABLE |grep 'DATE_APPROBATION
\|DATE_IMPORT '
}}}
I have put a tar.gz to reproduce the issue at
http://pertusus.free.fr/bug_grass.tar.gz
The script is cartorisque_departement.sh you could have to edit it to find
grass.
{{{
wget http://pertusus.free.fr/bug_grass.tar.gz
tar xzvf bug_grass.tar.gz
cd bug_grass && ./cartorisque_departement.sh
}}}
Maybe the bug is somewhere in ogr, I cannot really tell.
--
Ticket URL: <http://trac.osgeo.org/grass/ticket/1763>
GRASS GIS <http://grass.osgeo.org>
More information about the grass-dev
mailing list