Patch level : 120

Files correlati     : ci1
Ricompilazione Demo : [ ]
Commento            :
Cambiato nome da "Stampa Documenti" in "Stampa Riepiloghi"


git-svn-id: svn://10.65.10.50/trunk@13177 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2005-06-07 09:26:43 +00:00
parent ec3e3658a5
commit 19f9fcc28d
3 changed files with 41 additions and 54 deletions

View File

@ -12,22 +12,22 @@
#include "../include/rdoc.h" #include "../include/rdoc.h"
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
// TMask_rdoc // TRiepiloghi_mask
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
class TMask_rdoc : public TAutomask class TRiepiloghi_mask : public TAutomask
{ {
protected: protected:
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
int create_sheet_fields(int lf, int& y, short& dlg, bool required); int create_sheet_fields(int lf, int& y, short& dlg, bool required = false);
void create_sheet(); void create_sheet();
public: public:
TMask_rdoc(); TRiepiloghi_mask();
}; };
int TMask_rdoc::create_sheet_fields(int lf, int& y, short& dlg, bool required) int TRiepiloghi_mask::create_sheet_fields(int lf, int& y, short& dlg, bool required)
{ {
TSheet_field& sf = sfield(F_COMMESSE); TSheet_field& sf = sfield(F_COMMESSE);
TMask& sm = sf.sheet_mask(); TMask& sm = sf.sheet_mask();
@ -37,18 +37,6 @@ int TMask_rdoc::create_sheet_fields(int lf, int& y, short& dlg, bool required)
for (int i = 0; i < h; i++) for (int i = 0; i < h; i++)
{ {
TEdit_field& fld = sm.efield(dlg+i); TEdit_field& fld = sm.efield(dlg+i);
int logic = lf;
if (logic == LF_FASI)
{
const TMultilevel_code_info& fasinfo = ca_multilevel_code_info(LF_FASI);
if (fasinfo.parent() != 0)
{
const TMultilevel_code_info& parinfo = ca_multilevel_code_info(fasinfo.parent());
if (i < parinfo.levels())
logic = fasinfo.parent();
}
}
fld.check_type(required ? CHECK_REQUIRED : CHECK_NORMAL); fld.check_type(required ? CHECK_REQUIRED : CHECK_NORMAL);
TEdit_field& dfld = sm.efield(dlg+50+i); TEdit_field& dfld = sm.efield(dlg+50+i);
@ -61,7 +49,7 @@ int TMask_rdoc::create_sheet_fields(int lf, int& y, short& dlg, bool required)
return h; return h;
} }
void TMask_rdoc::create_sheet() void TRiepiloghi_mask::create_sheet()
{ {
TSheet_field& sf = sfield(F_COMMESSE); TSheet_field& sf = sfield(F_COMMESSE);
TMask& sm = sf.sheet_mask(); TMask& sm = sf.sheet_mask();
@ -70,7 +58,6 @@ void TMask_rdoc::create_sheet()
const TMultilevel_code_info& fasinfo = ca_multilevel_code_info(LF_FASI); const TMultilevel_code_info& fasinfo = ca_multilevel_code_info(LF_FASI);
TConfig_anal ini; TConfig_anal ini;
const bool fsc_req = ini.get_bool("FscRequired");
int y = 1; int y = 1;
short dlg = S_CDC1 + 100; // id del primo campo da generare short dlg = S_CDC1 + 100; // id del primo campo da generare
@ -81,27 +68,26 @@ void TMask_rdoc::create_sheet()
if (level == "CDC") // Crea centro di costo if (level == "CDC") // Crea centro di costo
{ {
if (fasinfo.parent() == LF_CDC) if (fasinfo.parent() == LF_CDC)
create_sheet_fields(LF_FASI, y, dlg, fsc_req); create_sheet_fields(LF_FASI, y, dlg);
else else
{ {
const bool cdc_req = ini.get_bool("CdcRequired"); const bool cdc_req = ini.get_bool("CdcRequired");
create_sheet_fields(LF_CDC, y, dlg, cdc_req); create_sheet_fields(LF_CDC, y, dlg);
} }
} else } else
if (level == "CMS") // Crea commessa if (level == "CMS") // Crea commessa
{ {
if (fasinfo.parent() == LF_COMMESSE) if (fasinfo.parent() == LF_COMMESSE)
create_sheet_fields(LF_FASI, y, dlg, fsc_req); create_sheet_fields(LF_FASI, y, dlg);
else else
{ {
const bool cms_req = ini.get_bool("CmsRequired"); create_sheet_fields(LF_COMMESSE, y, dlg);
create_sheet_fields(LF_COMMESSE, y, dlg, cms_req);
} }
} }
} }
if (fasinfo.levels() > 0 && fasinfo.parent() <= 0) if (fasinfo.levels() > 0 && fasinfo.parent() <= 0)
create_sheet_fields(LF_FASI, y, dlg, fsc_req); create_sheet_fields(LF_FASI, y, dlg);
for (short id = S_CDC12; id >= S_CDC1; id--) for (short id = S_CDC12; id >= S_CDC1; id--)
{ {
@ -121,21 +107,21 @@ void TMask_rdoc::create_sheet()
} }
} }
bool TMask_rdoc::on_field_event(TOperable_field& o, TField_event e, long jolly) bool TRiepiloghi_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
{ {
return true; return true;
} }
TMask_rdoc::TMask_rdoc() : TAutomask("ci1200") TRiepiloghi_mask::TRiepiloghi_mask() : TAutomask("ci1200")
{ {
create_sheet(); create_sheet();
} }
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
// TRecordset_rdoc // TRiepiloghi_recordset
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
class TRecordset_rdoc : public TDocument_recordset class TRiepiloghi_recordset : public TDocument_recordset
{ {
TDate _da_data, _a_data; TDate _da_data, _a_data;
long _da_clifo, _a_clifo; long _da_clifo, _a_clifo;
@ -150,13 +136,13 @@ protected:
virtual void set_custom_filter(TCursor& cur) const; virtual void set_custom_filter(TCursor& cur) const;
public: public:
void set_filter(const TMask_rdoc& msk, int cms_row); void set_filter(const TRiepiloghi_mask& msk, int cms_row);
TRecordset_rdoc(const TString& sql) : TDocument_recordset(sql) { } TRiepiloghi_recordset(const TString& sql) : TDocument_recordset(sql) { }
}; };
static const TRecordset_rdoc* myself = NULL; static const TRiepiloghi_recordset* myself = NULL;
bool TRecordset_rdoc::valid_record(const TRelation& rel) const bool TRiepiloghi_recordset::valid_record(const TRelation& rel) const
{ {
const TRectype& doc = rel.curr(LF_DOC); const TRectype& doc = rel.curr(LF_DOC);
@ -173,7 +159,7 @@ bool TRecordset_rdoc::valid_record(const TRelation& rel) const
if (codart < _da_codart || (_a_codart.not_empty() && codart.compare(_a_codart, _a_codart.len()) > 0)) if (codart < _da_codart || (_a_codart.not_empty() && codart.compare(_a_codart, _a_codart.len()) > 0))
return false; return false;
if (_tipidoc.items() > 0) if (!_tipidoc.empty())
{ {
const TString4 codnum = doc.get(DOC_CODNUM); const TString4 codnum = doc.get(DOC_CODNUM);
const TString4 tipodoc = doc.get(DOC_TIPODOC); const TString4 tipodoc = doc.get(DOC_TIPODOC);
@ -214,18 +200,18 @@ bool TRecordset_rdoc::valid_record(const TRelation& rel) const
return true; return true;
} }
bool TRecordset_rdoc::rdoc_filter(const TRelation* rel) bool TRiepiloghi_recordset::rdoc_filter(const TRelation* rel)
{ {
return myself->valid_record(*rel); return myself->valid_record(*rel);
} }
void TRecordset_rdoc::set_custom_filter(TCursor& cur) const void TRiepiloghi_recordset::set_custom_filter(TCursor& cur) const
{ {
myself = this; myself = this;
cur.set_filterfunction(rdoc_filter, true); cur.set_filterfunction(rdoc_filter, true);
} }
void TRecordset_rdoc::set_filter(const TMask_rdoc& msk, int cms_row) void TRiepiloghi_recordset::set_filter(const TRiepiloghi_mask& msk, int cms_row)
{ {
_codcosto = _codcms = _codfas = ""; _codcosto = _codcms = _codfas = "";
if (cms_row >= 0) if (cms_row >= 0)
@ -264,48 +250,48 @@ void TRecordset_rdoc::set_filter(const TMask_rdoc& msk, int cms_row)
} }
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
// TReport_rdoc // TRiepiloghi_report
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
class TReport_rdoc : public TReport class TRiepiloghi_report : public TReport
{ {
protected: protected:
virtual bool set_recordset(const TString& sql); virtual bool set_recordset(const TString& sql);
public: public:
void set_filter(const TMask_rdoc& msk, int cms_row); void set_filter(const TRiepiloghi_mask& msk, int cms_row);
TReport_rdoc() { } TRiepiloghi_report() { }
}; };
bool TReport_rdoc::set_recordset(const TString& sql) bool TRiepiloghi_report::set_recordset(const TString& sql)
{ {
TRecordset_rdoc* rs = new TRecordset_rdoc(sql); TRiepiloghi_recordset* rs = new TRiepiloghi_recordset(sql);
return TReport::set_recordset(rs); return TReport::set_recordset(rs);
} }
void TReport_rdoc::set_filter(const TMask_rdoc& msk, int cms_row) void TRiepiloghi_report::set_filter(const TRiepiloghi_mask& msk, int cms_row)
{ {
TRecordset_rdoc* rs = (TRecordset_rdoc*)recordset(); TRiepiloghi_recordset* rs = (TRiepiloghi_recordset*)recordset();
rs->set_filter(msk, cms_row); rs->set_filter(msk, cms_row);
} }
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
// TStampa_rdoc // TRiepiloghi_app
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
class TStampa_rdoc : public TSkeleton_application class TRiepiloghi_app : public TSkeleton_application
{ {
protected: protected:
virtual void main_loop(); virtual void main_loop();
}; };
void TStampa_rdoc::main_loop() void TRiepiloghi_app::main_loop()
{ {
TMask_rdoc m; TRiepiloghi_mask m;
while (m.run() != K_QUIT) while (m.run() != K_QUIT)
{ {
TReport_book book; TReport_book book;
TReport_rdoc rep; TRiepiloghi_report rep;
const TString& repname = m.get(F_REPORT); const TString& repname = m.get(F_REPORT);
rep.load(repname); rep.load(repname);
@ -324,7 +310,7 @@ void TStampa_rdoc::main_loop()
int ci1200(int argc, char* argv[]) int ci1200(int argc, char* argv[])
{ {
TStampa_rdoc sd; TRiepiloghi_app sd;
sd.run(argc, argv, "Stampa documenti"); sd.run(argc, argv, "Stampa riepiloghi");
return 0; return 0;
} }

View File

@ -20,7 +20,7 @@ END
ENDPAGE ENDPAGE
PAGE "Documenti" 0 0 0 -3 PAGE "Riepiloghi" 0 0 0 -3
STRING F_REPORT 32 STRING F_REPORT 32
BEGIN BEGIN

View File

@ -1,10 +1,11 @@
[CIMENU_001] [CIMENU_001]
Caption = "Contabilita' Industriale" Caption = "Contabilita' Industriale"
Picture = <cg01> Picture = <ve01>
Module = 8 Module = 8
Flags = "F" Flags = "F"
Item_01 = "Configurazione modulo", [CIMENU_002] Item_01 = "Configurazione modulo", [CIMENU_002]
Item_02 = "Immissione documenti", "ci0 -3", "F" Item_02 = "Immissione documenti", "ci0 -3", "F"
Item_03 = "Stampa riepiloghi", "ci1 -1", "F"
[CIMENU_002] [CIMENU_002]
Caption = "Parametri Contabilita' Industriale" Caption = "Parametri Contabilita' Industriale"