Patch level :2.2 nopatch

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :primissima stesura stampa mastrini anali (non stampa ancora nulla!)


git-svn-id: svn://10.65.10.50/trunk@13077 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2005-05-11 17:29:14 +00:00
parent 190e16c53f
commit 312f9d883b
7 changed files with 376 additions and 1 deletions

View File

@ -7,4 +7,4 @@ int ca1500(int argc, char* argv[]);
int ca1600(int argc, char* argv[]);
int ca1700(int argc, char* argv[]);
#endif // __CA0_H
#endif // __CA1_H

View File

@ -1,3 +1,8 @@
#ifndef __CA2_H
#define __CA2_H
int ca2100(int argc, char* argv[]);
int ca2200(int argc, char* argv[]);
int ca2300(int argc, char* argv[]);
#endif // __CA2_H

15
ca/ca3.cpp Executable file
View File

@ -0,0 +1,15 @@
#include <xvt.h>
#include "ca3.h"
int main(int argc, char** argv)
{
const int r = (argc > 1) ? argv[1][1] - '0' : 0;
switch (r)
{
case 1: ca3200(argc,argv); break; // stampa mastrini
default: ca3200(argc,argv); break; // stampa movimenti
}
exit(0);
return 0;
}

7
ca/ca3.h Executable file
View File

@ -0,0 +1,7 @@
#ifndef __CA3_H
#define __CA3_H
//int ca3100(int argc, char* argv[]);
int ca3200(int argc, char* argv[]);
#endif // __CA3_H

166
ca/ca3200.cpp Executable file
View File

@ -0,0 +1,166 @@
#include <applicat.h>
#include <execp.h>
#include <reprint.h>
#include "ca3.h"
#include "ca3200a.h"
#include "calib01.h"
#include "calib02.h"
////////////////////////////////////////////////////////
// MASCHERA
////////////////////////////////////////////////////////
class TPrint_mastrini_ca_mask : public TAutomask
{
protected:
bool on_field_event(TOperable_field& o, TField_event e, long jolly) {return true;}
void create_page2();
int create_page2_fields(int lf, int& y, short& dlg, bool required);
public:
TPrint_mastrini_ca_mask();
virtual ~TPrint_mastrini_ca_mask() {}
};
int TPrint_mastrini_ca_mask::create_page2_fields(int lf, int& y, short& dlg, bool required)
{
const int cdc_des_offset = F_DES1_INI - F_CDC1_INI;
const int ini_fin_offset = F_CDC1_FIN - F_CDC1_INI;
const int h = ca_create_fields(*this, 1, lf, 1, y, dlg, dlg+cdc_des_offset);
ca_create_fields(*this, 1, lf, 1, y+12, dlg+ini_fin_offset , dlg+cdc_des_offset+ini_fin_offset);
for (int i = 0; i < h; i++)
{
TEdit_field& fld = 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();
}
}
TMask_field& da = field(dlg + i);
da.set_group(1);
TMask_field& a = field(dlg + i + ini_fin_offset);
a.set_group(2);
}
y += h;
dlg += h;
return h;
}
void TPrint_mastrini_ca_mask::create_page2()
{
const TMultilevel_code_info& fasinfo = ca_multilevel_code_info(LF_FASI);
TConfig_anal ini;
const bool fsc_req = ini.get_bool("FscRequired");
int y = 1;
short dlg = F_CDC1_INI + 100; // id del primo campo da generare
for (int i = 0; i < 2; i++)
{
const TString& level = ini.get("Level", NULL, i+1); // Legge il livello 1 o 2
if (level == "CDC") // Crea centro di costo
{
if (fasinfo.parent() == LF_CDC)
create_page2_fields(LF_FASI, y, dlg, fsc_req);
else
{
const bool cdc_req = ini.get_bool("CdcRequired");
create_page2_fields(LF_CDC, y, dlg, cdc_req);
}
} else
if (level == "CMS") // Crea commessa
{
if (fasinfo.parent() == LF_COMMESSE)
create_page2_fields(LF_FASI, y, dlg, fsc_req);
else
{
const bool cms_req = ini.get_bool("CmsRequired");
create_page2_fields(LF_COMMESSE, y, dlg, cms_req);
}
}
}
if (fasinfo.levels() > 0 && fasinfo.parent() <= 0)
create_page2_fields(LF_FASI, y, dlg, fsc_req);
}
TPrint_mastrini_ca_mask::TPrint_mastrini_ca_mask()
:TAutomask("ca3200a")
{
TConfig_anal cfg;
const bool use_pdcc = cfg.get_bool("UsePdcc");
const int logicnum = use_pdcc ? LF_PCON : LF_PCONANA;
const int nfields = ca_create_fields(*this, 0, logicnum, 2, 5, F_CDC1_INI, F_DES1_INI, 0x0, "#DACONTO");
ca_create_fields(*this, 0, logicnum, 2, 5+nfields+2, F_CDC1_FIN, F_DES1_FIN, 0x0, "#ACONTO");
for (int i = 0; i < nfields; i++)
{
TMask_field& daconto = field(F_CDC1_INI + i);
daconto.set_group(1);
daconto.check_type(CHECK_NORMAL);
TMask_field& aconto = field(F_CDC1_FIN + i);
aconto.set_group(2);
aconto.check_type(CHECK_NORMAL);
}
// creazione dei campi della seconda pagina della maschera
create_page2();
}
////////////////////////////////////////////////////////
// APPLICAZIONE
////////////////////////////////////////////////////////
class TPrint_mastrini_ca : public TSkeleton_application
{
TPrint_mastrini_ca_mask * _mask;
protected:
bool create();
bool destroy();
public:
virtual void main_loop();
};
bool TPrint_mastrini_ca::create()
{
_mask = new TPrint_mastrini_ca_mask;
return TSkeleton_application::create();
}
bool TPrint_mastrini_ca::destroy()
{
delete _mask;
return TSkeleton_application::destroy();
}
void TPrint_mastrini_ca::main_loop()
{
while (_mask->run() == K_ENTER)
{
//costruzione del ciclo di scansione principale in base ai parametri della maschera
const int anno = _mask->get_int(F_ANNO);
}
}
int ca3200(int argc, char* argv[])
{
TPrint_mastrini_ca a;
a.run(argc, argv, TR("Stampa mastrini"));
return 0;
}

31
ca/ca3200a.h Executable file
View File

@ -0,0 +1,31 @@
#ifndef __CA3200_H
#define __CA3200_H
//pag. stampa mastrini
#define F_CODDITTA 101
#define F_RAGSOC 102
#define F_DATASTAMPA 103
#define F_ANNO 104
//campi generati dal pdc
#define F_CDC1_INI 106
#define F_CDC12_INI 121
#define F_CDC1_FIN 126
#define F_CDC12_FIN 141
#define F_DES1_INI 146
#define F_DES12_INI 161
#define F_DES1_FIN 166
#define F_DES12_FIN 181
//campi sulla maschera
#define F_DATAINI 200
#define F_DATAFINE 201
#define F_STAMPA_PROG_ATT 202
#define F_STAMPA_SALDI_PROG 203
#define F_STAMPA_SALDI_SCAL 204
#define F_SELEZ_STAMPA 205
#define F_MEMORIZZA 300
#endif // __CA3200_H

151
ca/ca3200a.uml Executable file
View File

@ -0,0 +1,151 @@
#include "ca3200a.h"
TOOLBAR "" 0 -2 0 2
BUTTON DLG_PRINT 18 2
BEGIN
PROMPT -13 -11 "~Stampa"
MESSAGE EXIT,K_ENTER
END
BUTTON F_MEMORIZZA 18 2
BEGIN
PROMPT -23 -11 "~Memorizza scelte"
END
BUTTON DLG_QUIT 18 2
BEGIN
PROMPT -33 -11 ""
END
ENDPAGE
PAGE "Pagina 1" -1 -1 78 20
NUMBER F_CODDITTA 5
BEGIN
PROMPT 1 1 "Ditta "
FLAGS "FRD"
USE LF_NDITTE KEY 1
CHECKTYPE REQUIRED
INPUT CODDITTA F_CODDITTA
DISPLAY "Codice" CODDITTA
DISPLAY "Ragione sociale @50" RAGSOC
OUTPUT F_CODDITTA CODDITTA
OUTPUT F_RAGSOC RAGSOC
END
STRING F_RAGSOC 50
BEGIN
PROMPT 15 1 ""
FLAGS "D"
END
DATE F_DATASTAMPA
BEGIN
PROMPT 1 2 "Data di stampa "
FLAGS "A"
END
NUMBER F_ANNO 4
BEGIN
PROMPT 49 2 "Esercizio "
USE ESC
INPUT CODTAB F_ANNO
DISPLAY "Codice Esercizio" CODTAB
DISPLAY "Data inizio esercizio" D0
DISPLAY "Data fine esercizio " D1
OUTPUT F_ANNO CODTAB
CHECKTYPE NORMAL
CHECKTYPE NORMAL
MESSAGE HIDE,98|HIDE,99|SHOW,96|SHOW,97
MESSAGE EMPTY HIDE,96|HIDE,97|SHOW,98|SHOW,99
FLAGS "RZ"
ADD NONE
END
GROUPBOX DLG_NULL 76 6
BEGIN
PROMPT 1 4 "@bDa:"
END
GROUPBOX DLG_NULL 76 6
BEGIN
PROMPT 1 10 "@bA:"
END
GROUPBOX DLG_NULL 76 7
BEGIN
PROMPT 1 16 "@bOpzioni stampa"
END
TEXT 96
BEGIN
PROMPT 2 17 "Dalla data competenza"
END
TEXT 97
BEGIN
PROMPT 40 17 "Alla data competenza "
END
TEXT 98
BEGIN
PROMPT 2 17 "Dalla data operazione "
END
TEXT 99
BEGIN
PROMPT 40 17 "Alla data operazione "
END
DATE F_DATAINI
BEGIN
PROMPT 26 17 ""
END
DATE F_DATAFINE
BEGIN
PROMPT 62 17 ""
END
BOOLEAN F_STAMPA_PROG_ATT
BEGIN
PROMPT 2 18 "Stampa progressivi attuali"
END
BOOLEAN F_STAMPA_SALDI_PROG
BEGIN
PROMPT 2 19 "Stampa saldi progressivi"
END
BOOLEAN F_STAMPA_SALDI_SCAL
BEGIN
PROMPT 2 20 "Stampa saldo scalare"
END
LIST F_SELEZ_STAMPA 34
BEGIN
PROMPT 2 21 "Selezione mastrini "
ITEM "1|Movimentati nel periodo"
ITEM "2|Con saldo diverso da 0"
ITEM "3|Tutti"
END
ENDPAGE
PAGE "Pagina 2" -1 -1 78 20
GROUPBOX DLG_NULL 76 12
BEGIN
PROMPT 0 0 "@bDa:"
END
GROUPBOX DLG_NULL 76 12
BEGIN
PROMPT 0 12 "@bA:"
END
ENDPAGE
ENDMASK