Patch level : 10.0

Files correlati     : lv3
Ricompilazione Demo : [ ]
Commento            :
Ridefiniti metodi rewrite e write delle TMotore_application in modo da evitare la scrittura - rirscrittura di righe documento con quantità di consegnato e ritirato entrambe nulle


git-svn-id: svn://10.65.10.50/trunk@17897 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca83 2008-12-15 10:43:35 +00:00
parent 662a00e424
commit 761260d8e6

View File

@ -239,6 +239,8 @@ bool TGestione_bolle_msk::lv_bolla_handler(TMask_field& f, KEY k)
if (f->is_edit()) if (f->is_edit())
f->on_hit(); f->on_hit();
} }
sheet.set_focus();
sheet.select(0);
} }
return ok; return ok;
} }
@ -269,12 +271,16 @@ class TGestione_bolle_app : public TMotore_application
protected: protected:
virtual TMask* get_mask( int mode ); virtual TMask* get_mask( int mode );
virtual int write( const TMask& m );
virtual int rewrite( const TMask& m );
public: public:
TGestione_bolle_app() {} TGestione_bolle_app() {}
}; };
inline TGestione_bolle_app& gbapp() { return (TGestione_bolle_app &) main_app(); }; inline TGestione_bolle_app& gbapp() { return (TGestione_bolle_app &) main_app(); };
//ridefinisco il metodo get_mask delle TMotore_application
TMask* TGestione_bolle_app::get_mask( int mode ) TMask* TGestione_bolle_app::get_mask( int mode )
{ {
if (mode == MODE_INS || mode == MODE_MOD) if (mode == MODE_INS || mode == MODE_MOD)
@ -295,10 +301,45 @@ TMask* TGestione_bolle_app::get_mask( int mode )
m->user_set_handler( row->get_int( 0 ), row->get_int( 1 ) ); m->user_set_handler( row->get_int( 0 ), row->get_int( 1 ) );
} }
} }
} }
return TMotore_application::get_mask(mode); return TMotore_application::get_mask(mode);
} }
//ridefinisco il metodo write delle TMotore_application
int TGestione_bolle_app::write( const TMask& m )
{
TDocumento_mask& mask = (TDocumento_mask&) m;
TDocumento& d = mask.doc();
for (int r = d.rows() ; r > 0 ; r--)
{
const TRiga_documento& dr = d[r];
if (dr.get_int(RDOC_QTA) == 0 && dr.get_int(RDOC_QTAGG1) == 0)
d.destroy_row(r,true);
}
return TMotore_application::write(m);
}
//ridefinisco il metodo rewrite delle TMotore_application
int TGestione_bolle_app::rewrite( const TMask& m )
{
TDocumento_mask& mask = (TDocumento_mask&) m;
TDocumento& d = mask.doc();
for (int r = d.rows() ; r > 0 ; r--)
{
const TRiga_documento& dr = d[r];
if (dr.get_int(RDOC_QTA) == 0 && dr.get_int(RDOC_QTAGG1) == 0)
d.destroy_row(r,true);
}
return TMotore_application::rewrite(m);
}
int lv3100( int argc, char* argv[]) int lv3100( int argc, char* argv[])
{ {
TGestione_bolle_app a; TGestione_bolle_app a;