#include #include "mglib.h" #include "mg3500.h" #include "mg3frm.h" // mg3500 Stampa class TStampa_storgiac : public TSkeleton_application { TArray * _files; TStampemg_mask * _mask; TCursor * _cur; TForm_stampemg * _form; // to be moved into TPrint_application protected: virtual bool create(); virtual bool destroy(); virtual void main_loop(); void setprint_permagazzini(); void setprint_perarticoli(); public: TStampa_storgiac() {} virtual ~TStampa_storgiac() {} }; bool TStampa_storgiac::create() { _mask = new TStampemg_mask("mg3500"); _files = new TArray(); _files->add(new TLocalisamfile(LF_STOMAG)); return TSkeleton_application::create(); } bool TStampa_storgiac::destroy() { delete _mask; delete _files; return TSkeleton_application::destroy(); } // ORDINAMENTO void TStampa_storgiac::main_loop() { while (_mask->run() == K_ENTER) { if (_mask->magazz_ini().gestmag(TRUE)) { TRectype darec(LF_ANAMAG),arec(LF_ANAMAG); TString cfilter,filter,joinexp; joinexp << "ANNOESRIF==" << _mask->get(F_ANNOES) << "|CODART==CODART"; _form = new TForm_stampemg("mg3500", ""); _cur = _form->cursor(); switch (*_mask->get(F_ORDINE)) { case 'C': _cur->setkey(1); darec.put("CODART",_mask->get(F_DAART)); arec.put("CODART",_mask->get(F_AART)); break; case 'D': _cur->setkey(2); darec.put("DESCR",_mask->get(F_DADES)); arec.put("DESCR",_mask->get(F_ADES)); break; } _cur->relation()->replace(new TLocalisamfile(LF_STOMAG),1,joinexp); _cur->setfilter(cfilter); _cur->setregion(darec,arec); _form->print(); delete _form; } } // while true return ; } int mg3500(int argc, char* argv[]) { TStampa_storgiac a; a.run(argc,argv,"Stampa storico rimanenze"); return 0; }