On Friday, March 02, 2012 10:12:55 PM Dewald Jacobs wrote: > On Mar 2, 2012, at 9:04 PM, Paul McNett wrote: > > On 3/2/12 10:55 AM, Paul McNett wrote: > >> When confronted by things like this, I like to reduce them down with > >> as few variables as possible, in a single, simple script. Please look > >> at this script and run it, which seems to prove that there isn't > >> anything obviously wrong at the Dabo layer, although you should tweak > >> the script to better match your situation, like adding the second > >> table, etc.: > >> > >> http://paulmcnett.com/test_sqlite_view.py > > > > Oh, hang on... a click on a grid header results in the traceback: > > > > {{{ > > > > Traceback (most recent call last): > > File "/home/pmcnett/dabo-full/trunk/dabo/ui/uiwx/dGrid.py", line > > 4161, in> > > __onWxHeaderMouseLeftUp > > > > self.raiseEvent(dEvents.GridHeaderMouseLeftUp, evt, col=col) > > > > File "/home/pmcnett/dabo-full/trunk/dabo/ui/uiwx/dPemMixin.py", line > > 1074, in> > > raiseEvent > > > > super(dPemMixin, self).raiseEvent(eventClass, nativeEvent, > > *args, **kwargs)> > > File "/home/pmcnett/dabo-full/trunk/dabo/lib/eventMixin.py", line > > 81, in raiseEvent> > > bindingFunction(event) > > > > File "/home/pmcnett/dabo-full/trunk/dabo/ui/uiwx/dGrid.py", line > > 3632, in> > > _onGridHeaderMouseLeftUp > > > > self.processSort(col) > > > > File "/home/pmcnett/dabo-full/trunk/dabo/ui/uiwx/dGrid.py", line > > 2894, in processSort> > > biz.sort(columnToSort, sortOrder, self.caseSensitiveSorting) > > > > File "/home/pmcnett/dabo-full/trunk/dabo/biz/dBizobj.py", line 1209, > > in sort> > > cc.sort(col, ordr, caseSensitive) > > > > File "/home/pmcnett/dabo-full/trunk/dabo/db/dCursorMixin.py", line > > 593, in sort> > > self.__sortRows(newCol, newOrd, caseSensitive) > > > > File "/home/pmcnett/dabo-full/trunk/dabo/db/dCursorMixin.py", line > > 619, in __sortRows> > > self.__unsortedRows.append(row[kf]) > > > > KeyError: u'id' > > }}} > > > > I messed up writing the script and had the KeyField defined in the > > bizobj as "id" and not "Id". Making that change makes grid sorting work > > just fine, as well as probably everything else that relies on KeyField. > > I've fixed the test script online: > > > > http://paulmcnett.com/test_sqlite_view.py > > > > Paul > > The script ran perfectly. So in theory the view should also work in my > example. The only unknown left (that I can think of) might be some rookie > mistake on my part or the classdesigner as John pointed out. > > I have now simplified my app (also, only using lowercase for column and > table/view names) and I now only have the following traceback that cycles > for all columns: > > Traceback (most recent call last): > File "C:\projects\dabo\ui\uiwx\dGrid.py", line 331, in GetValue > ret = self.getStringValue(bizobj.getFieldVal(field, row)) > File "C:\projects\dabo\biz\dBizobj.py", line 1872, in getFieldVal > ret = self._CurrentCursor.getFieldVal(fld, row, > _rowChangeCallback=changeRow NumCallback) > File "C:\projects\dabo\db\dCursorMixin.py", line 940, in getFieldVal > _("Field"), fld, _("does not exist in the data set"))) > dabo.dException.FieldNotFoundException: Field 'idnommer' does not exist in > the d ata set > > The one line in the script that stands out to me is this: > > cur.UserSQL = "select Id, FirstName from v_test" > > Might this be the property that I am missing?
You are setting your own SQL? How about posting the code http://dabo.codepad.org/\ Johnf _______________________________________________ Post Messages to: [email protected] Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users Searchable Archives: http://leafe.com/archives/search/dabo-users This message: http://leafe.com/archives/byMID/2371180.b4u5AzpSKF@linux-12
