Patch level :2.2 nopatch
Files correlati : Ricompilazione Demo : [ ] Commento :stampa pagato in progress git-svn-id: svn://10.65.10.50/trunk@13525 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
efe7669b85
commit
e2113e9181
@ -54,7 +54,7 @@ BEGIN
|
||||
ITEM "Gruppo"
|
||||
ITEM "Conto"
|
||||
ITEM "Sottoconto"
|
||||
ITEM "Descrizione@50"
|
||||
ITEM "Descrizione@50"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
181
ca/ca3600.cpp
181
ca/ca3600.cpp
@ -61,8 +61,9 @@ TPag_per_cms_configmask::TPag_per_cms_configmask()
|
||||
disable(F_PIANO);
|
||||
set(F_PIANO, use_pdcc ? "C" : "A");
|
||||
|
||||
//***Parte relativa al prefisso del conto analitico, per ora disabilitata perche' non richiesta
|
||||
// Controllo se voglio (e posso) usare il conto analitico come prefisso di quello contabile
|
||||
const int pref = cfg.get_int("PdcPrefix");
|
||||
/* const int pref = cfg.get_int("PdcPrefix");
|
||||
if (use_pdcc && pref > 0)
|
||||
{
|
||||
const TMultilevel_code_info& info = ca_multilevel_code_info(LF_PCONANA);
|
||||
@ -88,19 +89,20 @@ TPag_per_cms_configmask::TPag_per_cms_configmask()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
// creazione dei campi della pagina della maschera con lo sheet dei conti
|
||||
if (use_pdcc) //usa conti contabili
|
||||
config_loader(sfield(F_PDCC), "Pdcc");
|
||||
|
||||
short dlg = S_CDC2 + 100; // id del primo campo da generare
|
||||
int y = 2;
|
||||
const int nfields = create_sheet_fields(F_PDCA, LF_PCONANA, y, dlg);
|
||||
sfield(F_PDCA).sheet_mask().hide(-1);
|
||||
|
||||
config_loader(sfield(F_PDCA), "Pdca");
|
||||
|
||||
else //usa conti analitici
|
||||
{
|
||||
short dlg = S_CDC2 + 100; // id del primo campo da generare (maschera di riga dello sheet)
|
||||
int y = 2;
|
||||
const int nfields = create_sheet_fields(F_PDCA, LF_PCONANA, y, dlg);
|
||||
sfield(F_PDCA).sheet_mask().hide(-1);
|
||||
|
||||
config_loader(sfield(F_PDCA), "Pdca");
|
||||
}
|
||||
set_handlers();
|
||||
|
||||
}
|
||||
@ -261,25 +263,27 @@ TPag_per_cms_mask::TPag_per_cms_mask()
|
||||
class TPag_per_cms_recordset : public TISAM_recordset
|
||||
{
|
||||
TExternisamfile* _tmp;
|
||||
bool _riclassificato;
|
||||
// TString _prefix, _da_conto_riclas, _a_conto_riclas;
|
||||
|
||||
protected:
|
||||
// int _tipoconti;
|
||||
// TDate _dadata, _adata;
|
||||
// long _danumreg, _anumreg;
|
||||
TString _daconto, _aconto, _codcosto, _codcms, _codfas;
|
||||
TDate _dadata, _adata;
|
||||
long _dacodfor, _acodfor;
|
||||
TString8 _campodata;
|
||||
TString _codcosto, _codcms, _codfas;
|
||||
|
||||
protected: //da libreria
|
||||
// virtual const TVariant& get(const char* column_name) const;
|
||||
|
||||
protected:
|
||||
void crea_trr(const TFilename& trr) const;
|
||||
static bool part_callback(const TRelation& rel, void* pJolly);
|
||||
// static bool mov_callback(const TRelation& rel, void* pJolly);
|
||||
|
||||
public:
|
||||
virtual void set_filter(const TPag_per_cms_mask& msk, int cms_row);
|
||||
virtual void set_custom_filter(TCursor& cur) const;
|
||||
void scan_pags(const TPag_per_cms_mask& msk);
|
||||
|
||||
TPag_per_cms_recordset(const TString& sql) : TISAM_recordset(sql), _riclassificato(false) { _tmp = NULL;}
|
||||
TPag_per_cms_recordset(const TString& sql) : TISAM_recordset(sql) { _tmp = NULL;}
|
||||
~TPag_per_cms_recordset();
|
||||
};
|
||||
|
||||
@ -290,16 +294,43 @@ TPag_per_cms_recordset::~TPag_per_cms_recordset()
|
||||
{ }
|
||||
|
||||
|
||||
void TPag_per_cms_recordset::set_custom_filter(TCursor& cur) const
|
||||
{
|
||||
relation()->replace(_tmp); //sostituisce il vero file rmovana con quello temporaneo
|
||||
|
||||
//filtro sul file esterno (_tmp, cioè 1000) sui conti selezionati sulla maschera
|
||||
TRectype darec(cur.curr()), arec(cur.curr()); //curr perchè è il file externisamfile
|
||||
darec.zero();
|
||||
arec.zero();
|
||||
|
||||
//filtro sulla data(non avendo anche codnum non ho la chiave completa per mettere la data nella setregion)
|
||||
TString filtro;
|
||||
if (_dadata.ok())
|
||||
filtro << "(ANSI(DATA)>=" << _dadata << ")";
|
||||
|
||||
if (_adata.ok())
|
||||
{
|
||||
if (filtro.not_empty())
|
||||
filtro << "&&";
|
||||
filtro << "(ANSI(DATA)<=" << _adata << ")";
|
||||
}
|
||||
|
||||
cur.setregion(darec, arec);
|
||||
cur.setfilter(filtro);
|
||||
|
||||
myself = (TPag_per_cms_recordset*)this;
|
||||
}
|
||||
|
||||
void TPag_per_cms_recordset::crea_trr(const TFilename& trr) const
|
||||
{
|
||||
ofstream of(trr);
|
||||
of << 1000 << endl;
|
||||
of << 14 << endl;
|
||||
of << "CONTO|1|20|0|Conto analitico/contabile" << endl;
|
||||
of << "DESCONTO|1|50|0|Descrizione conto" << endl;
|
||||
of << "NREG|3|7|0|Numero registrazione" << endl;
|
||||
of << "DATAPAG|5|8|0|Data pagamento" << endl;
|
||||
of << "DESCRPAG|1|50|0|Descrizione pagamento" << endl;
|
||||
of << "CONTO|1|20|0|Conto analitico/contabile" << endl;
|
||||
of << "DESCONTO|1|50|0|Descrizione conto" << endl;
|
||||
of << "NDOC|1|6|0|Numero documento" << endl;
|
||||
of << "DATADOC|5|8|0|Data documento" << endl;
|
||||
of << "PROT|2|5|0|Protocollo iva" << endl;
|
||||
@ -310,7 +341,89 @@ void TPag_per_cms_recordset::crea_trr(const TFilename& trr) const
|
||||
of << "DESFORN|1|50|0|Descrizione fornitore" << endl;
|
||||
of << "HIDDEN|8|1|0|Record nascosto" << endl;
|
||||
of << 1 << endl;
|
||||
of << "NREG+DATAPAG" << endl;
|
||||
of << "CONTO+NREG+DATAPAG+CODFORN" << endl;
|
||||
}
|
||||
|
||||
//Criptico metodo per la scansione del cursore..
|
||||
typedef bool (*SCAN_FUNC)(const TRelation& rel, void* pJolly);
|
||||
|
||||
bool scan_cursor(TCursor& cur, const char* msg, SCAN_FUNC func, void* pJolly)
|
||||
{
|
||||
TRecnotype items = 0; // Temporarily
|
||||
TProgind pi(items, msg, true, true);
|
||||
|
||||
{
|
||||
TWait_cursor hourglass;
|
||||
items = cur.items();
|
||||
}
|
||||
|
||||
bool ok = true;
|
||||
if (items > 0)
|
||||
{
|
||||
cur.freeze();
|
||||
pi.setmax(items);
|
||||
for (cur = 0; cur.pos() < items; ++cur)
|
||||
{
|
||||
pi.addstatus(1);
|
||||
if (pi.iscancelled())
|
||||
{
|
||||
ok = false;
|
||||
break;
|
||||
}
|
||||
if (!func(*cur.relation(), pJolly))
|
||||
{
|
||||
ok = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
cur.freeze(false);
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
||||
bool TPag_per_cms_recordset::part_callback(const TRelation& rel, void* pJolly)
|
||||
{
|
||||
/* TPag_per_cms* app = (TPag_per_cms*)pJolly;
|
||||
const TRectype& riga_part_pag = rel.curr();
|
||||
|
||||
const long nreg = app->find_movimento(riga_part_pag); //prima cerco un movimento della fattura...
|
||||
if (nreg > 0) //..se ne trovo almeno uno cerco la commessa corrispondente
|
||||
app->find_commesse(nreg, riga_part_pag);*/
|
||||
return true;
|
||||
}
|
||||
|
||||
void TPag_per_cms_recordset::scan_pags(const TPag_per_cms_mask& msk)
|
||||
{
|
||||
//costruzione filtro
|
||||
TRectype darec(LF_PARTITE);
|
||||
TRectype arec(LF_PARTITE);
|
||||
darec.put(PART_TIPOCF, 'F');
|
||||
darec.put(PART_GRUPPO, 0);
|
||||
darec.put(PART_CONTO, 0);
|
||||
arec = darec;
|
||||
if (_dacodfor > 0)
|
||||
darec.put(PART_SOTTOCONTO, _dacodfor);
|
||||
if (_acodfor >= _dacodfor)
|
||||
arec.put(PART_SOTTOCONTO, _acodfor);
|
||||
|
||||
TString filtro = "(TIPOMOV>=\"3\")"; //deve essere un pagamento a fornitore!!!
|
||||
|
||||
if (_dadata.ok())
|
||||
{
|
||||
TString80 f;
|
||||
f.format("&&(ANSI(%s)>=\"%s\")", (const char*)_campodata, _dadata.string(ANSI));
|
||||
filtro << f;
|
||||
}
|
||||
if (_adata.ok())
|
||||
{
|
||||
TString80 f;
|
||||
f.format("&&(ANSI(%s)<=\"%s\")", (const char*)_campodata, _adata.string(ANSI));
|
||||
filtro << f;
|
||||
}
|
||||
//applica il filtro alla relazione
|
||||
TRelation rel(LF_PARTITE);
|
||||
TCursor cur(&rel, filtro, 1, &darec, &arec);
|
||||
scan_cursor(cur, "Movimenti saldacontati...", part_callback, this);
|
||||
}
|
||||
|
||||
void TPag_per_cms_recordset::set_filter(const TPag_per_cms_mask& msk, int cms_row)
|
||||
@ -333,8 +446,9 @@ void TPag_per_cms_recordset::set_filter(const TPag_per_cms_mask& msk, int cms_ro
|
||||
//crea in memoria il nuovo file temporaneo e lo azzera (non si sa mai..)
|
||||
_tmp = new TExternisamfile(dbf, trr);
|
||||
_tmp->zap();
|
||||
|
||||
//prende un po' di dati dalla maschera
|
||||
_daconto, _aconto, _codcosto = _codcms = _codfas = "";
|
||||
_codcosto = _codcms = _codfas = "";
|
||||
if (cms_row >= 0)
|
||||
{
|
||||
TSheet_field& sf = msk.sfield(F_RIGHE);
|
||||
@ -347,6 +461,28 @@ void TPag_per_cms_recordset::set_filter(const TPag_per_cms_mask& msk, int cms_ro
|
||||
_codfas = rel.curr().get(RMOVANA_CODFASE);
|
||||
}
|
||||
|
||||
//scelta tipo data di estrazione (registrazione, documento, pagamento)
|
||||
_campodata = PART_DATAREG;
|
||||
switch(msk.get_int(F_TIPODATA))
|
||||
{
|
||||
case 1:_campodata = PART_DATADOC;break;
|
||||
case 2:_campodata = PART_DATAPAG;break;
|
||||
default:break;
|
||||
}
|
||||
|
||||
//lettura eventuali date limite (il controllo sul loro valore sara' nei metodi di costruzione
|
||||
//dei filtri
|
||||
_dadata = msk.get_date(F_DATAINI);
|
||||
_adata = msk.get_date(F_DATAFIN);
|
||||
|
||||
//scansione movimenti con saldaconto
|
||||
scan_pags(msk);
|
||||
|
||||
//se c'e' un filtro sui fornitori, non si fa lo scan dei movimenti senza saldaconto
|
||||
_dacodfor = msk.get_long(F_DACODFOR);
|
||||
_acodfor = msk.get_long(F_ACODFOR);
|
||||
// if (_dacodfor == 0 && _acodfor == 0)
|
||||
// scan_movs();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////
|
||||
@ -363,17 +499,20 @@ public:
|
||||
void set_filter(const TPag_per_cms_mask& msk, int cms_row);
|
||||
};
|
||||
|
||||
|
||||
bool TPag_per_cms_rep::get_usr_val(const TString& name, TVariant& var) const
|
||||
{
|
||||
return TAnal_report::get_usr_val(name, var);
|
||||
}
|
||||
|
||||
|
||||
bool TPag_per_cms_rep::set_recordset(const TString& sql)
|
||||
{
|
||||
TPag_per_cms_recordset* rs = new TPag_per_cms_recordset(sql);
|
||||
return TAnal_report::set_recordset(rs);
|
||||
}
|
||||
|
||||
|
||||
void TPag_per_cms_rep::set_filter(const TPag_per_cms_mask& msk, int cms_row)
|
||||
{
|
||||
TAnal_report::set_recordset(NULL);
|
||||
|
@ -11,19 +11,19 @@ END
|
||||
|
||||
BUTTON DLG_PRINT 10 2
|
||||
BEGIN
|
||||
PROMPT -13 -1 "~Stampa"
|
||||
MESSAGE EXIT,K_ENTER
|
||||
PROMPT -13 -1 "~Stampa"
|
||||
MESSAGE EXIT,K_ENTER
|
||||
END
|
||||
|
||||
BUTTON DLG_CONFIG 10 2
|
||||
BEGIN
|
||||
PROMPT -23 -1 "~Configura"
|
||||
PICTURE BMP_CONFIG
|
||||
PROMPT -23 -1 "~Configura"
|
||||
PICTURE BMP_CONFIG
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 10 2
|
||||
BEGIN
|
||||
PROMPT -33 -1 ""
|
||||
PROMPT -33 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
267
ca/ca3600a.rep
Executable file
267
ca/ca3600a.rep
Executable file
@ -0,0 +1,267 @@
|
||||
|
||||
<report libraries="ve1300" name="ca3600a" orientation="2" lpi="8" class="ca3600a">
|
||||
<description>Pagato CA</description>
|
||||
<font face="Courier New" size="8" />
|
||||
<section type="Head" height="5">
|
||||
<font italic="1" face="Courier New" bold="1" size="8" />
|
||||
<field x="1" type="Stringa" width="50" pattern="1">
|
||||
<font italic="1" face="Courier New" bold="1" size="10" />
|
||||
<source>#SYSTEM.RAGSOC</source>
|
||||
</field>
|
||||
<field x="80" type="Data" width="10" pattern="1">
|
||||
<source>#SYSTEM.DATE</source>
|
||||
</field>
|
||||
<field x="165" type="Numero" align="right" width="3" pattern="1">
|
||||
<source>#REPORT.PAGE</source>
|
||||
</field>
|
||||
<field border="2" x="1" y="2" type="Linea" width="169" height="0" pattern="1" />
|
||||
<field x="1" y="3.5" type="Testo" align="right" width="7" pattern="1" text="N. Reg." />
|
||||
<field x="9" y="3.5" type="Testo" align="center" width="11" pattern="1" text="Data pag." />
|
||||
<field x="21" y="3.5" type="Testo" width="25" pattern="1" text="Descrizione pagamento" />
|
||||
<field x="47" y="3.5" type="Testo" align="center" width="6" pattern="1" text="N. doc." />
|
||||
<field x="54" y="3.5" type="Testo" align="center" width="10" pattern="1" text="Data doc." />
|
||||
<field x="65" y="3.5" type="Testo" width="4" pattern="1" text="Prot." />
|
||||
<field x="70" y="3.5" type="Testo" align="right" width="18" pattern="1" text="Totale documento" />
|
||||
<field x="89" y="3.5" type="Testo" align="right" width="18" pattern="1" text="Totale pagamento" />
|
||||
<field x="108" y="3.5" type="Testo" align="right" width="18" pattern="1" text="Totale residuo" />
|
||||
<field x="128" y="3.5" type="Testo" align="right" width="7" pattern="1" text="Fornitore" />
|
||||
<field border="1" x="1" y="4.5" type="Linea" width="169" height="0" pattern="1" />
|
||||
</section>
|
||||
<section type="Head" level="1" height="9">
|
||||
<prescript description="H1 PRESCRIPT">MESSAGE RESET,F1.101
|
||||
MESSAGE RESET,F1.102</prescript>
|
||||
<field border="1" radius="100" x="1" type="Testo" valign="center" align="center" shade_offset="25" width="167" height="2.5" text="PAGATO PER COMMESSA F; FORNITORE">
|
||||
<font face="Courier New" bold="1" size="16" />
|
||||
</field>
|
||||
<field x="1" y="3" type="Testo" width="18" pattern="1" text="Centro di Costo:" />
|
||||
<field x="14" y="3" type="Stringa" width="23" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#COSTO</source>
|
||||
<prescript description="H1.0 PRESCRIPT">CA_FORMAT_COSTO</prescript>
|
||||
</field>
|
||||
<field x="38" y="3" type="Stringa" width="50" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,CDC,CODCOSTO=#COSTO,DESCRIZ</prescript>
|
||||
</field>
|
||||
<field x="110" y="3" type="Testo" width="14" pattern="1" text="Anno:" />
|
||||
<field x="126" y="3" type="Stringa" width="4" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,ANNO</prescript>
|
||||
</field>
|
||||
<field x="140" y="3" type="Testo" width="17" pattern="1" text="Regime IVA:" />
|
||||
<field x="157" y="3" type="Stringa" width="2" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,REGIVA</prescript>
|
||||
</field>
|
||||
<field x="14" y="4.5" type="Stringa" width="23" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#COMMESSA</source>
|
||||
<prescript description="H1.0 PRESCRIPT">CA_FORMAT_COMMESSA</prescript>
|
||||
</field>
|
||||
<field x="38" y="4.5" type="Stringa" width="50" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DESCRIZ</prescript>
|
||||
</field>
|
||||
<field x="110" y="4.5" type="Testo" width="14" pattern="1" text="Data inizio:" />
|
||||
<field x="126" y="4.5" type="Data" width="10" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DATAINIZIO</prescript>
|
||||
</field>
|
||||
<field x="140" y="4.5" type="Testo" width="17" pattern="1" text="Da rendicontare:" />
|
||||
<field x="157" y="4.5" type="Stringa" width="1" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,RENDIC</prescript>
|
||||
</field>
|
||||
<field x="1" y="4.58" type="Testo" width="9" pattern="1" text="Commessa:" />
|
||||
<field x="14" y="6" type="Stringa" width="13" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#FASE</source>
|
||||
<prescript description="H1.0 PRESCRIPT">CA_FORMAT_FASE</prescript>
|
||||
</field>
|
||||
<field x="38" y="6" type="Stringa" width="50" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,FASI,CODFASE=#FASE,DESCRIZ</prescript>
|
||||
</field>
|
||||
<field x="110" y="6" type="Testo" width="14" pattern="1" text="Fine prevista:" />
|
||||
<field x="126" y="6" type="Data" width="10" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DATAFINE</prescript>
|
||||
</field>
|
||||
<field x="140" y="6" type="Testo" width="17" pattern="1" text="Chiusa:" />
|
||||
<field x="157" y="6" type="Stringa" width="1" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,CHIUSA</prescript>
|
||||
</field>
|
||||
<field x="1" y="6.08" type="Testo" width="5" pattern="1" text="Fase:" />
|
||||
<field x="1" y="7.5" type="Testo" width="18" pattern="1" text="Cliente principale:" />
|
||||
<field x="110" y="7.5" type="Testo" width="14" pattern="1" text="Fine proroga:" />
|
||||
<field x="126" y="7.5" type="Data" width="10" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,DATAPROR</prescript>
|
||||
</field>
|
||||
<field x="140" y="7.5" type="Testo" width="17" pattern="1" text="Prorogata:" />
|
||||
<field x="157" y="7.5" type="Stringa" width="1" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,PROROGA</prescript>
|
||||
</field>
|
||||
<field border="2" x="1" y="9" type="Linea" width="169" height="0" pattern="1" />
|
||||
<field x="20" y="7.5" type="Stringa" width="6" id="101" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.101 PRESCRIPT">MESSAGE ISAMREAD,COMMESSE,CODCMS=#COMMESSA,CODCF</prescript>
|
||||
</field>
|
||||
<field x="30" y="7.5" type="Stringa" width="50" id="102" pattern="1">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<prescript description="H1.102 PRESCRIPT">MESSAGE ISAMREAD,CLIFO,TIPOCF=C!CODCF=#101,RAGSOC</prescript>
|
||||
</field>
|
||||
</section>
|
||||
<section repeat="1" type="Head" level="2" height="2">
|
||||
<groupby>CONTO</groupby>
|
||||
<font italic="1" face="Courier New" size="8" />
|
||||
<prescript description="H2 PRESCRIPT">MESSAGE RESET,F2.101
|
||||
MESSAGE RESET,F2.102
|
||||
MESSAGE RESET,F2.103</prescript>
|
||||
<field x="1" y="0.5" type="Stringa" bg_color="#C0C0C0" width="23">
|
||||
<font italic="1" face="Courier New" bold="1" size="8" />
|
||||
<source>CONTO</source>
|
||||
<prescript description="H2.0 PRESCRIPT">CA_FORMAT_CONTO</prescript>
|
||||
</field>
|
||||
<field x="25" y="0.5" type="Stringa" width="50" pattern="1">
|
||||
<font italic="1" face="Courier New" bold="1" size="8" />
|
||||
<source>DESCONTO</source>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Head" level="3">
|
||||
<groupby>CODNUM+ANNO+NUMRD</groupby>
|
||||
<field x="1" type="Stringa" hidden="1" align="right" width="7" pattern="1">
|
||||
<source>NREG</source>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Body" />
|
||||
<section type="Body" level="1">
|
||||
<condition>HIDDEN!='X'</condition>
|
||||
<field x="9" type="Data" width="10" pattern="1">
|
||||
<source>DATAPAG</source>
|
||||
</field>
|
||||
<field x="20" type="Stringa" dynamic_height="1" width="25" height="2" pattern="1">
|
||||
<source>DESCRPAG</source>
|
||||
</field>
|
||||
<field x="46" type="Stringa" width="7" pattern="1">
|
||||
<source>NDOC</source>
|
||||
</field>
|
||||
<field x="55" type="Data" width="10" pattern="1">
|
||||
<source>DATADOC</source>
|
||||
</field>
|
||||
<field x="66" type="Numero" align="right" width="5" pattern="1">
|
||||
<source>PROT</source>
|
||||
</field>
|
||||
<field x="72" type="Valuta" align="right" width="18" pattern="1" text="###.###.###,@@">
|
||||
<source>TOTDOC</source>
|
||||
<postscript description="B1.0 POSTSCRIPT">MESSAGE ADD,F2.101</postscript>
|
||||
</field>
|
||||
<field x="91" type="Valuta" align="right" width="18" pattern="1" text="###.###.###,@@">
|
||||
<source>TOTPAG</source>
|
||||
<postscript description="B1.0 POSTSCRIPT">MESSAGE ADD,F2.102</postscript>
|
||||
</field>
|
||||
<field x="110" type="Valuta" align="right" width="18" pattern="1" text="###.###.###,@@">
|
||||
<source>TOTRES</source>
|
||||
<postscript description="B1.0 POSTSCRIPT">MESSAGE ADD,F2.103</postscript>
|
||||
</field>
|
||||
<field x="137" type="Stringa" dynamic_height="1" width="25" height="2" pattern="1">
|
||||
<source>DESCFORN</source>
|
||||
</field>
|
||||
<field type="Numero" hidden="1" align="right" width="1" id="100" pattern="1">
|
||||
<prescript description="B1.100 PRESCRIPT">#THIS @
|
||||
0 E;
|
||||
IF
|
||||
#101 DISABLE
|
||||
#102 DISABLE
|
||||
#103 DISABLE
|
||||
#104 DISABLE
|
||||
#105 DISABLE
|
||||
ELSE
|
||||
#101 ENABLE
|
||||
#102 ENABLE
|
||||
#103 ENABLE
|
||||
#104 ENABLE
|
||||
#105 ENABLE
|
||||
THEN
|
||||
#THIS @
|
||||
1 +
|
||||
#THIS !</prescript>
|
||||
</field>
|
||||
<field x="1" type="Stringa" align="right" width="7" id="105" pattern="1">
|
||||
<source>NREG</source>
|
||||
</field>
|
||||
<field x="129" type="Stringa" align="right" width="7" id="105" pattern="1">
|
||||
<source>CODFORN</source>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Foot" />
|
||||
<section type="Foot" level="1">
|
||||
<field border="2" x="1" y="0.5" type="Linea" width="169" height="0" pattern="1" />
|
||||
<field x="90" y="1" type="Testo" width="42" pattern="1" text="TOTALE PER FASE:">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="90" y="2.5" type="Testo" width="42" pattern="1" text="TOTALE PER COMMESSA:">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="90" y="4" type="Testo" width="42" pattern="1" text="TOTALE PER CENTRO DI COSTO:">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="132" y="1" type="Valuta" align="right" width="12" id="101" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="145" y="1" type="Valuta" align="right" width="12" id="102" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="158" y="1" type="Valuta" align="right" width="12" id="103" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="132" y="2.5" type="Valuta" align="right" width="12" id="201" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#103-#101</source>
|
||||
</field>
|
||||
<field x="132" y="4" type="Valuta" align="right" width="12" id="201" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#103-#101</source>
|
||||
</field>
|
||||
<field x="145" y="2.5" type="Valuta" align="right" width="12" id="202" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#103-#102</source>
|
||||
</field>
|
||||
<field x="145" y="4" type="Valuta" align="right" width="12" id="202" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#103-#102</source>
|
||||
</field>
|
||||
<field x="158" y="2.5" type="Valuta" align="right" width="12" id="203" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#F1.111-#103</source>
|
||||
</field>
|
||||
<field x="158" y="4" type="Valuta" align="right" width="12" id="203" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<source>#F1.111-#103</source>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Foot" level="2" height="3">
|
||||
<field border="1" x="1" y="0.5" type="Linea" width="169" height="0" pattern="1" />
|
||||
<field x="110" y="1" type="Testo" width="20" pattern="1" text="Totale per conto:">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
</field>
|
||||
<field x="132" y="1" type="Valuta" align="right" width="12" id="101" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<postscript description="F2.101 POSTSCRIPT">MESSAGE ADD,F1.101</postscript>
|
||||
</field>
|
||||
<field x="145" y="1" type="Valuta" align="right" width="12" id="102" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<postscript description="F2.102 POSTSCRIPT">MESSAGE ADD,F1.102</postscript>
|
||||
</field>
|
||||
<field x="158" y="1" type="Valuta" align="right" width="12" id="103" pattern="1" text="###.###.###,@@">
|
||||
<font face="Courier New" bold="1" size="8" />
|
||||
<postscript description="F2.103 POSTSCRIPT">MESSAGE ADD,F1.103</postscript>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Foot" level="3">
|
||||
<prescript description="F3 PRESCRIPT">0 #B1.100 !</prescript>
|
||||
</section>
|
||||
<sql>USE 1000</sql>
|
||||
</report>
|
@ -21,7 +21,7 @@ PAGE "Configurazione conti" -1 -1 78 20
|
||||
|
||||
LIST F_PIANO 1 12
|
||||
BEGIN
|
||||
PROMPT 1 0 "Piano dei conti "
|
||||
PROMPT 1 1 "Piano dei conti "
|
||||
ITEM "A|Analitico"
|
||||
MESSAGE HIDE,5@|SHOW,6@
|
||||
ITEM "C|Contabile"
|
||||
@ -29,11 +29,11 @@ BEGIN
|
||||
FLAGS "G"
|
||||
END
|
||||
|
||||
GROUPBOX F_PRE0 76 4
|
||||
/*GROUPBOX F_PRE0 76 4
|
||||
BEGIN
|
||||
PROMPT 1 1 "@bPrefisso del piano dei conti analitico:"
|
||||
GROUP 6
|
||||
END
|
||||
END*/
|
||||
|
||||
TEXT -1
|
||||
BEGIN
|
||||
@ -41,9 +41,9 @@ BEGIN
|
||||
GROUP 5
|
||||
END
|
||||
|
||||
SPREADSHEET F_PDCC 78 12
|
||||
SPREADSHEET F_PDCC 78 -1
|
||||
BEGIN
|
||||
PROMPT 1 6 "Pdcc"
|
||||
PROMPT 1 3 "Pdcc"
|
||||
ITEM "Tipo"
|
||||
ITEM "Gruppo"
|
||||
ITEM "Conto"
|
||||
@ -58,9 +58,9 @@ BEGIN
|
||||
GROUP 6
|
||||
END
|
||||
|
||||
SPREADSHEET F_PDCA 78 12
|
||||
SPREADSHEET F_PDCA 78 -1
|
||||
BEGIN
|
||||
PROMPT 1 6 "Pdca"
|
||||
PROMPT 1 3 "Pdca"
|
||||
ITEM "Tipo"
|
||||
ITEM "Cdc2"
|
||||
ITEM "Cdc3"
|
||||
@ -204,7 +204,7 @@ END
|
||||
STRING S_CDC5 20
|
||||
BEGIN
|
||||
PROMPT 1 5 "Cdc5"
|
||||
FLAGS "B"
|
||||
FLAGS "BG"
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 1
|
||||
END
|
||||
|
Loading…
x
Reference in New Issue
Block a user