diff --git a/src/sl/sl0100.cpp b/src/sl/sl0100.cpp index 69c89fb79..2aa694625 100644 --- a/src/sl/sl0100.cpp +++ b/src/sl/sl0100.cpp @@ -40,7 +40,7 @@ public: virtual TMask* get_mask(int mode) { return mode == MODE_QUERY ? _qmsk : _emsk; } virtual TRelation* get_relation() const { return _rel; } virtual bool has_filtered_cursor() const { return true; } - virtual TCursor& get_filtered_cursor() const; + virtual TCursor * get_filtered_cursor() const; virtual bool get_next_key(TToken_string& key); virtual void init_insert_mode(TMask& m); @@ -1214,11 +1214,11 @@ const char* TSAL_app::record_description(const TRelation& r) const return tmp; } -TCursor& TSAL_app::get_filtered_cursor() const +TCursor * TSAL_app::get_filtered_cursor() const { TEdit_field& f = _qmsk->efield(F_NDOC); - TCursor& cur = *f.browse()->cursor(); - if (cur.items() == 0) // A volte deve scantarsi ... + TCursor * cur = f.browse()->cursor(); + if (cur->items() == 0) // A volte deve scantarsi ... f.check(); // ... forzo ricalcolo elementi return cur; }