Paul McNett wrote:
> Ed Leafe wrote:
>> On Aug 20, 2007, at 2:57 PM, Paul McNett wrote:
>>
>>> File "/home/pmcnett/dabo-full/trunk/dabo/db/dbSQLite.py", line 143,
>>> in getFields
>>> tempCursor.execute("pragma table_info('%s')" % tableName)
>>> pysqlite2.dbapi2.OperationalError: SQL logic error or missing database
>> Do you understand what this error means? Nothing I've changed should
>> have altered the current database in use.
>
> No, I have no idea. The only thing I can think of is that we are now in
> the middle of a transaction whereas before we wouldn't have been (I
> don't think).
Ok, I have more information. To review, here's the traceback I'm getting:
sol:~/ss pmcnett$ python shutter_studio.py
Dabo Info Log: Wed Aug 22 10:22:36 2007: 0 definición(es) de conección
del database fueron cargadas.
Dabo Info Log: Wed Aug 22 10:22:36 2007: User interface already set to
'wx', so dApp didn't touch it.
Dabo Info Log: Wed Aug 22 10:22:36 2007: wxPython Version: 2.8.4.0 wxMac
(unicode)
Traceback (most recent call last):
File "/home/pmcnett/dabo-full/trunk/dabo/ui/uiwx/dMenuItem.py", line
48, in __onWxHit
self.raiseEvent(dEvents.Hit, evt)
File "/home/pmcnett/dabo-full/trunk/dabo/ui/uiwx/dPemMixin.py", line
843, in raiseEvent
super(dPemMixin, self).raiseEvent(eventClass, nativeEvent, *args,
**kwargs)
File "/home/pmcnett/dabo-full/trunk/dabo/lib/eventMixin.py", line 92,
in raiseEvent
bindingFunction(event)
File "/home/pmcnett/dabo-full/trunk/dabo/ui/uiwx/dForm.py", line 658,
in onSave
def onSave(self, evt): self.save()
File "/home/pmcnett/dabo-full/trunk/dabo/lib/datanav2/Form.py", line
53, in save
ret = super(Form, self).save(dataSource)
File "/home/pmcnett/dabo-full/trunk/dabo/ui/uiwx/dForm.py", line 342,
in save
bizobj.saveAll()
File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 276,
in saveAll
startTransaction=False)
File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 689,
in scanChangedRows
func(*args, **kwargs)
File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 337,
in save
self._onSaveNew()
File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 1076,
in _onSaveNew
self.onSaveNew()
File
"/Users/pmcnett/py/sbs/shutter_studio/trunk/clients/shutter_studio/biz/Customers.py",
line 70, in onSaveNew
self.save()
File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 344,
in save
child.saveAll(startTransaction=False)
File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 276,
in saveAll
startTransaction=False)
File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 689,
in scanChangedRows
func(*args, **kwargs)
File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 378,
in save
self.afterSave()
File "/home/pmcnett/sst/clients/ss_common/biz/Base.py", line 20, in
afterSave
self.fillDerivedFields()
File
"/Users/pmcnett/py/sbs/shutter_studio/trunk/clients/shutter_studio/biz/ProdCust.py",
line 24, in fillDerivedFields
cur.requery()
File "/home/pmcnett/dabo-full/trunk/dabo/db/dCursorMixin.py", line
379, in requery
self.execute(self.CurrentSQL, params, _fromRequery=True)
File "/home/pmcnett/dabo-full/trunk/dabo/db/dCursorMixin.py", line
303, in execute
self._storeFieldTypes()
File "/home/pmcnett/dabo-full/trunk/dabo/db/dCursorMixin.py", line
405, in _storeFieldTypes
for field in self.DataStructure:
File "/home/pmcnett/dabo-full/trunk/dabo/db/dCursorMixin.py", line
2088, in _getDataStructure
ds = self.BackendObject.getStructureDescription(self)
File "/home/pmcnett/dabo-full/trunk/dabo/db/dBackend.py", line 458,
in getStructureDescription
standard_fields = cursor.getFields()
File "/home/pmcnett/dabo-full/trunk/dabo/db/dCursorMixin.py", line
1679, in getFields
return self.BackendObject.getFields(tableName)
File "/home/pmcnett/dabo-full/trunk/dabo/db/dbSQLite.py", line 144,
in getFields
tempCursor.execute("pragma table_info('%s')" % tableName)
sqlite3.OperationalError: SQL logic error or missing database
I've determined that dbSQLite.getFields() is receiving a tableName
argument that is an empty string. This comes from dCursorMixin.getFields
where tableName got the default arg of None, so it converts it to
self.Table, which appears to be the empty string for some reason.
--
pkm ~ http://paulmcnett.com
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
Searchable Archives: http://leafe.com/archives/search/dabo-dev
This message: http://leafe.com/archives/byMID/dabo-dev/[EMAIL PROTECTED]