Forum QGIS

Pełna wersja: Qgis 1.6 Trunk, błąd Pythona
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Zaktualizowałem (trochę niechcący) QGIS do wersji 1.6. Po tej aktualizacji podczas uruchamiania programu wyskakuje błąd Pythona.
Cytat:Wystąpił błąd podczas wykonywania kodu Pythona:

Traceback (most recent call last):
File "/home/tomasz/.qgis/python/plugins/imgshowhide/imgshowhidewidget.py", line 140, in __addLayer
if lyrCatalog.init(lyr):
File "/home/tomasz/.qgis/python/plugins/imgshowhide/lyrcatalogimage.py", line 113, in init
if self.__setLayerCatalog(lyr) == False:
File "/home/tomasz/.qgis/python/plugins/imgshowhide/lyrcatalogimage.py", line 88, in __setLayerCatalog
lstIdPath = self.__getLstIdFieldPath(field_att[0], field_att[1])
File "/home/tomasz/.qgis/python/plugins/imgshowhide/lyrcatalogimage.py", line 48, in __getLstIdFieldPath
if fieldMap[id].typeName() == 'String':
KeyError: 7

Wersja Pythona:
2.6.4 (r264:75706, Dec 7 2009, 19:02:09)
[GCC 4.4.1]


Wersja QGIS:
1.6.0-Trunk Trunk, unknown

Lokalizacja Pythona: ['/usr/share/qgis/python', '/home/tomasz/.qgis/python', '/home/tomasz/.qgis/python/plugins', '/usr/share/qgis/python/plugins', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload', '/usr/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages/PIL', '/usr/lib/python2.6/dist-packages/gst-0.10', '/usr/lib/pymodules/python2.6', '/usr/lib/python2.6/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.6/gtk-2.0', '/usr/lib/python2.6/dist-packages/wx-2.8-gtk2-unicode', '/usr/local/lib/python2.6/dist-packages', '/usr/share/qgis/python/plugins/fTools/tools']

Wygląda, że problem dotyczy wtyczki imgshowhide. Co prawda nie zauważyłem problemów z działaniem programu ani tej wtyczki ale może ktoś potrafi coś z tego błędu rozszyfrować?
Tak, dokładnie, błąd jest w tej wtyczce. Nie zaglądałem w jej kod, więc trudno mi powiedzieć, czy to może być związane z nowszą wersją. Na ślepo zgaduję, że chodzi o pola w tabeli atrybutów - wtyczka próbuje dostać się do ósmego ( fieldMap[7] ), ale go nie znajduje ( KeyError: 7 ). Więc albo jest mniej pól, albo w ogóle nie może znaleźć tej warstwy - to by mogło być związane z upgrade'm, ale raczej gdala. Kiedyś gdal przedstawiał źródło jako blabla.shp, a teraz jako blabla.shp|layerid=0. Stare wtyczki nie potrafią oddzielić numeru warstwy od nazwy pliku i nie znajdują go w ogóle. Tak czy owak napisz do autora: luiz _dot_ motta _at_ sipam.gov.br .
Jak tylko znajdę chwilę to skrobnę maila. Dzięki