#ifndef __777200_H #define __777200_H #ifndef __REPUTILS_H #include #endif class TRecordCU; class TTrasferimentoCU : public TRecordset { TFilename _name; TArray _data; long _cod_ditta, _codan_dic; TString8 _codatt_dic; char _tipoa_dic; TString16 _codfis_dic, _codfis_rap, _codfis_int; TString _ragsoc_dic; bool _save_headers; int _anno; TDate _data_imp; // Data impegno alla trasmissione TDate _data_tra; // Data trasmissione long _certificazione; // Sempre > 0 char _tipo_operazione; // Annullamento o sostituzione TString _identificativo; // solo per ann. o sost. TRecnotype _cur_pos; protected: virtual void requery() { _cur_pos = -1; } public: // TAS400_recordset const TRecordCU& cur_rec() const { return (const TRecordCU&)_data[_cur_pos]; } virtual TRecnotype items() const { return _data.items(); } virtual bool move_to(TRecnotype pos) { const bool done = pos >= 0 && pos < items(); if (done) _cur_pos = pos; return done; } virtual TRecnotype current_row() const { return _cur_pos; } virtual const TString& query_text() const { return _name; }; virtual unsigned int columns() const; virtual const TRecordset_column_info& column_info(unsigned int column) const; virtual const TVariant& get(unsigned int column) const; virtual const TVariant& get_var(const char* name) const; bool set_field(int n, const TVariant& var); bool set_field(const char* name, const TVariant& var); public: bool load(const char* path = ""); bool save(const char* path = ""); TTrasferimentoCU& operator<<(const TRecordCU& rec); TTrasferimentoCU& operator>>(TRecordCU& rec); bool eof() const { return _cur_pos >= items(); } const TString& read_codfis_dic(const TRectype& rec); const TString& cod_fis_dic() const { return _codfis_dic; } TRecnotype conta_certificazioni() const; bool split(const char* dest_path); void remove(); void save_headers(bool s) { _save_headers = s; } bool save_headers() const { return _save_headers; } void set_inter(const TString& interm, const TDate& dtimp, int year) { _codfis_int = interm; _data_imp = dtimp; _anno = year; } void set_operazione(char t, const TString& iden); bool append_record_b(); bool append_record_d(const TRectype& rec, TLog_report& log); bool append_record_h(const TRectype& rec, int modulo, TLog_report& log); TTrasferimentoCU(const char* name, char mode); virtual ~TTrasferimentoCU(); }; void print_cu(const TFilename& datafile, int quality, bool simple); void edit_cu(const TFilename& datafile, int quality, bool simple); #endif