Patch level : 10.0 patch 767

Files correlati     : co0.exe co1.exe
Ricompilazione Demo : [ ]
Commento            :

aggiunta stampa progressivi conferimenti

Varie stampe dei vongolari.

stampa per data licenza

Modificato il tracciato dell'importazione conferimenti

Non genera piu' documenti se il totale documento campione e' 0

Prima prova di filtro per stampa soci INAIL

Creazione  report , stampa soci inail

Acconto 8% sui progressivi piu' modifiche alle stampe

8% e stampa progressivi

Filtro sulla stampa co2200a per data licenza

Totale sulla stampa progressivi
Progressivi modificabili con shift f12

aggiunta stampa registro carico scarico

Dalla versione 3.2


git-svn-id: svn://10.65.10.50/trunk@20584 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2010-06-21 13:46:42 +00:00
parent 304aac77ab
commit d71be5b0cf
35 changed files with 2103 additions and 146 deletions

View File

@ -15,12 +15,24 @@
class TCoop_soci_msk : public TAutomask
{
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
virtual bool on_key(KEY key);
public:
void calcola_dati_nascita(const TString& cf, TDate& datanasc, TString8& comnasc);
TCoop_soci_msk() : TAutomask("co0600a") {}
};
bool TCoop_soci_msk::on_key(KEY key)
{
if (key == K_SHIFT + K_F12)
{
TSheet_field & prog = sfield(F_PROGRESSIVI);
prog.enable(true);
}
return TAutomask::on_key(key);
}
void TCoop_soci_msk::calcola_dati_nascita(const TString& cf, TDate& datanasc, TString8& comnasc)
{
comnasc = "";
@ -95,19 +107,64 @@ bool TCoop_soci_msk::on_field_event(TOperable_field& o, TField_event e, long jol
else
m.reset(F_DATASCALIC);
}
break;
case F_ANNO:
if (e == fe_init || e == fe_modify)
if (e == fe_init || e == fe_modify || e == fe_close)
{
TSheet_field & prog = sfield(F_PROGRESSIVI);
prog.disable();
}
if (e == fe_init || e == fe_modify || e == fe_close)
{
const long codsocio = get_long(F_CODCF);
const int year = atoi(o.get());
TSheet_field & prog = sfield(F_PROGRESSIVI);
if (prog.dirty())
{
if (yesno_box("I progressivi sono stati modificati, li salvo"))
{
TTable psc("PSC");
for (int month = 1; month <= 12; month++)
{
TToken_string & row = prog.row(month - 1);
psc.zero();
TString key;
row.add(itom(month), prog.cid2index(F_MESE));
key.format("%06ld%04d%02d", codsocio, year, month);
psc.put("CODTAB", key);
if (psc.read(_isequal, _lock) == NOERR)
{
psc.put("R0", real(row.get(prog.cid2index(F_CONF))));
psc.put("R1", real(row.get(prog.cid2index(F_IVA))));
psc.put("R2", real(row.get(prog.cid2index(F_RIT))));
psc.put("R3", real(row.get(prog.cid2index(F_ACC8))));
psc.rewrite();
}
else
{
psc.unlock();
psc.zero();
psc.put("CODTAB", key);
psc.put("R0", row.get(prog.cid2index(F_CONF)));
psc.put("R1", row.get(prog.cid2index(F_IVA)));
psc.put("R2", row.get(prog.cid2index(F_RIT)));
psc.put("R3", row.get(prog.cid2index(F_ACC8)));
psc.write();
}
}
}
}
if (codsocio != 0L && year > 1900)
{
TTable psc("PSC");
TSheet_field & prog = sfield(F_PROGRESSIVI);
real totconf;
real totiva;
real totrit;
real totacc8;
prog.destroy();
for (int month = 1; month <= 12; month++)
{
@ -123,13 +180,16 @@ bool TCoop_soci_msk::on_field_event(TOperable_field& o, TField_event e, long jol
const real conf = psc.get_real("R0");
const real iva = psc.get_real("R1");
const real rit = psc.get_real("R2");
const real acc8 = psc.get_real("R3");
row.add(conf.string(18,2), prog.cid2index(F_CONF));
row.add(iva.string(18,2), prog.cid2index(F_IVA));
row.add(rit.string(18,2), prog.cid2index(F_RIT));
row.add(acc8.string(18,2), prog.cid2index(F_ACC8));
totconf += conf;
totiva += iva;
totrit += rit;
totacc8 += acc8;
}
}
@ -139,7 +199,10 @@ bool TCoop_soci_msk::on_field_event(TOperable_field& o, TField_event e, long jol
row.add(totconf.string(18,2), prog.cid2index(F_CONF));
row.add(totiva.string(18,2), prog.cid2index(F_IVA));
row.add(totrit.string(18,2), prog.cid2index(F_RIT));
row.add(totacc8.string(18,2), prog.cid2index(F_ACC8));
prog.force_update();
prog.disable_row(12);
prog.set_dirty(false);
}
}
}

View File

@ -66,3 +66,4 @@
#define F_CONF 102
#define F_IVA 103
#define F_RIT 104
#define F_ACC8 105

View File

@ -393,11 +393,11 @@ END
SPREADSHEET F_PROGRESSIVI 78 13
BEGIN
PROMPT 2 7 "Progressivi annuali"
FLAGS "R"
ITEM "Mese"
ITEM "Mese@10"
ITEM "Conferimenti@18"
ITEM "IVA@18"
ITEM "Ritenute@18"
ITEM "Acconto 8%@18"
END
ENDPAGE
@ -564,7 +564,7 @@ ENDMASK
PAGE "Progressivi" -1 -1 75 12
STRINGA F_MESE 15
STRINGA F_MESE 10
BEGIN
PROMPT 2 2 "Mese "
FLAGS "D"
@ -573,19 +573,21 @@ END
CURRENCY F_CONF
BEGIN
PROMPT 2 4 "Conferimenti "
FLAGS "D"
END
CURRENCY F_IVA
BEGIN
PROMPT 2 6 "IVA "
FLAGS "D"
PROMPT 2 6 "IVA "
END
CURRENCY F_RIT
BEGIN
PROMPT 2 8 "Ritenute "
FLAGS "D"
END
CURRENCY F_ACC8
BEGIN
PROMPT 2 8 "Acconto 8% "
END
BUTTON DLG_OK 9 2

View File

@ -89,33 +89,37 @@ bool genera_handler(TMask_field& f, KEY key)
TConferimenti_mask& m = (TConferimenti_mask&) f.mask();
TMask select_mask("co0700b");
TDocumento campione(m.doc());
const TDate datadoc = campione.get_date(DOC_DATADOC);
long codsocio = campione.get_long(DOC_CODCF);
campione.zero(DOC_NDOC);
if (select_mask.run() == K_ENTER)
if (campione.totale_doc() != ZERO)
{
TISAM_recordset recset("USE SOCICOOP\nFROM CODCF=#DASOCIO\nTO CODCF=#ASOCIO");
const TDate datadoc = campione.get_date(DOC_DATADOC);
long codsocio = campione.get_long(DOC_CODCF);
recset.set_var("#DASOCIO", select_mask.get_long(F_DASOCIO));
recset.set_var("#ASOCIO", select_mask.get_long(F_ASOCIO));
for (bool ok = recset.move_first(); ok; ok = recset.move_next())
campione.zero(DOC_NDOC);
if (select_mask.run() == K_ENTER)
{
const long socio = recset.get(SC_CODCF).as_int();
TISAM_recordset recset("USE SOCICOOP\nFROM CODCF=#DASOCIO\nTO CODCF=#ASOCIO");
if (socio != codsocio)
recset.set_var("#DASOCIO", select_mask.get_long(F_DASOCIO));
recset.set_var("#ASOCIO", select_mask.get_long(F_ASOCIO));
for (bool ok = recset.move_first(); ok; ok = recset.move_next())
{
const TDate dataass = recset.get(SC_DATAASS).as_date();
const TDate datarec = recset.get(SC_DATAREC).as_date();
const bool ok = (!dataass.ok() || dataass <= datadoc) && (!datarec.ok() || datarec >= datadoc);
const long socio = recset.get(SC_CODCF).as_int();
if (ok)
if (socio != codsocio)
{
TDocumento d(campione);
const TDate dataass = recset.get(SC_DATAASS).as_date();
const TDate datarec = recset.get(SC_DATAREC).as_date();
const bool ok = (!dataass.ok() || dataass <= datadoc) && (!datarec.ok() || datarec >= datadoc);
d.put(DOC_CODCF, socio);
d.write();
if (ok)
{
TDocumento d(campione);
d.put(DOC_CODCF, socio);
d.write();
}
}
}
}

View File

@ -11,8 +11,8 @@ TYPEPOS = -1
[RECORD]
LENGTH(0) = 16
LENGTH(1) = 30
LENGTH(2) = 6
LENGTH(3) = 4
LENGTH(2) = 8
LENGTH(3) = 2
LENGTH(4) = 10
LENGTH(5) = 21
LENGTH(6) = 10

View File

@ -15,6 +15,9 @@ int main(int argc, char** argv)
case 4:
co1500(argc, argv); // Invio mov.coop. a TeamSystem
break;
case 8:
co1900(argc, argv); // Stampa progressivi conferimenti
break;
default:
break;
}

View File

@ -1,3 +1,4 @@
int co1300(int argc, char* argv[]);
int co1400(int argc, char* argv[]);
int co1500(int argc, char* argv[]);
int co1900(int argc, char* argv[]);

View File

@ -79,6 +79,7 @@ class TEstrattoConto_rep : public TDocument_report
real _saldocred;
real _saldodeb;
real _ritenuta;
real _acconto8;
TString8 _numrit;
TString8 _tiporit;
@ -164,6 +165,7 @@ bool TEstrattoConto_rep::set_usr_val(const TString& name, const TVariant& var)
if (name == "#EC_ACC")
{
incr_field(6, var);
_acconto8 += var.as_real();
return true;
}
@ -276,6 +278,7 @@ void TEstrattoConto_rep::chiudi_mese()
psc.put("R0", _totconf);
psc.put("R1", _iva);
psc.put("R2", _ritenuta);
psc.put("R3", _acconto8);
psc.rewrite();
}
@ -468,9 +471,10 @@ void TEstrattoConto_rep::chiudi_mese()
_saldocred = ZERO;
_saldodeb = ZERO;
_ritenuta = ZERO;
_acconto8 = ZERO;
}
TEstrattoConto_rep::TEstrattoConto_rep(bool genpag, bool chiusura, bool aggiorna) : _genpag(genpag), _chiusura(chiusura), _aggiorna(aggiorna), _saldocred(), _saldodeb(ZERO), _ritenuta(ZERO), _iva(ZERO), _totconf(ZERO)
TEstrattoConto_rep::TEstrattoConto_rep(bool genpag, bool chiusura, bool aggiorna) : _genpag(genpag), _chiusura(chiusura), _aggiorna(aggiorna), _saldocred(), _saldodeb(ZERO), _ritenuta(ZERO), _acconto8(ZERO), _iva(ZERO), _totconf(ZERO)
{
load("co1300a");
TReport_section& b11 = section('B',11);

View File

@ -1,28 +1,28 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="co1300a" orientation="2" lpi="6">
<report name="CO1300A" orientation="2" lpi="6">
<description>Stampa Estratto Conto Socio</description>
<font face="Courier New" size="8" />
<section type="Head">
<field x="50" y="0.5" type="Testo" width="32" pattern="1" text="Estratto conto dal">
<section type="Head" height="13">
<field x="50" y="4.5" type="Testo" width="32" height="1.5" pattern="1" text="Estratto conto dal">
<font face="Courier New" bold="1" size="14" />
</field>
<field x="85" y="0.5" type="Data" width="18" pattern="1">
<field x="85" y="4.5" type="Data" width="18" height="1.5" pattern="1">
<font face="Courier New" bold="1" size="14" />
<source>#DATAINI</source>
</field>
<field x="106" y="0.5" type="Testo" width="4" pattern="1" text="al">
<field x="106" y="4.5" type="Testo" width="4" height="1.5" pattern="1" text="al">
<font face="Courier New" bold="1" size="14" />
</field>
<field x="113.5" y="0.5" type="Data" width="18" pattern="1">
<field x="113.5" y="4.5" type="Data" width="18" height="1.5" pattern="1">
<font face="Courier New" bold="1" size="14" />
<source>#DATAFIN</source>
</field>
<field x="157.5" y="0.5" type="Testo" width="5" pattern="1" text="Pag." />
<field x="163.5" y="0.5" type="Numero" align="right" width="5" pattern="1" text="#####">
<field x="157.5" y="4.75" type="Testo" width="5" pattern="1" text="Pag." />
<field x="163.5" y="4.75" type="Numero" align="right" width="5" pattern="1" text="#####">
<source>#REPORT.PAGE</source>
</field>
<field border="2" y="2" type="Linea" width="170" height="0" pattern="1" />
<field x="2" y="2.5" type="Stringa" width="60" pattern="1">
<field border="2" y="6" type="Linea" width="170" height="0" pattern="1" />
<field x="2" y="6.5" type="Stringa" width="60" pattern="1">
<font face="Courier New" bold="1" size="10" />
<source>101@.CODCF+' '+TRIM(101@.RAGSOC[1,30])+' '+TRIM(101@.RAGSOC[31,50])</source>
<postscript description="H0.0 POSTSCRIPT">"101@.CODCF" @
@ -30,66 +30,108 @@
</postscript>
</field>
<field x="2" y="3.5" type="Stringa" width="50" pattern="1">
<field x="2" y="7.5" type="Stringa" width="50" pattern="1">
<source>101@.INDCF+" ,"+101@.CIVCF</source>
</field>
<field x="2" y="4.5" type="Stringa" width="50" pattern="1">
<field x="2" y="8.5" type="Stringa" width="50" pattern="1">
<source>101@.LOCALITACF</source>
</field>
<field x="2" y="5.5" type="Stringa" width="50" pattern="1">
<field x="2" y="9.5" type="Stringa" width="50" pattern="1">
<source>101@.CAPCF+" "+COMUNI.DENCOM+" ("+COMUNI.PROVCOM+")"</source>
</field>
<field border="2" y="7" type="Linea" width="170" height="0" pattern="1" />
<field x="1" y="7.5" type="Testo" width="8" pattern="1" text="Data">
<font face="Courier New" size="7" />
<source>#PARENT.DATADOC</source>
</field>
<field x="10" y="7.5" type="Testo" width="22" pattern="1" text="Tipo movimento">
<font face="Courier New" size="7" />
<source>DESCR</source>
</field>
<field x="36" y="7.5" type="Testo" align="right" width="8" pattern="1" text="N.f.asta">
<font face="Courier New" size="7" />
<source>#PARENT.NFASTA</source>
</field>
<field x="46" y="7.5" type="Testo" align="right" width="8" pattern="1" text="Peso">
<font face="Courier New" size="7" />
<source>Q.ta</source>
</field>
<field x="56" y="7.5" type="Testo" align="right" width="10" pattern="1" text="Prezzo">
<font face="Courier New" size="7" />
<source>34.PREZZONN</source>
</field>
<field x="68" y="7.5" type="Testo" align="right" width="8" pattern="1" text="Prz-8%">
<font face="Courier New" size="7" />
<source>PREZZONS</source>
</field>
<field x="78" y="7.5" type="Testo" align="right" width="9" pattern="1" text="Dir. Merc.">
<font face="Courier New" size="7" />
</field>
<field x="89" y="7.5" type="Testo" align="right" width="8" pattern="1" text="Acc. 8%">
<font face="Courier New" size="7" />
<source>RITENUTA</source>
</field>
<field x="99" y="7.5" type="Testo" align="right" width="15" pattern="1" text="Imp.a credito">
<font face="Courier New" size="7" />
<source>IMPCNS</source>
</field>
<field x="116" y="7.5" type="Testo" align="right" width="15" pattern="1" text="Imp.a debito">
<font face="Courier New" size="7" />
<source>IMPCNS</source>
</field>
<field x="133" y="7.5" type="Testo" align="right" width="10" pattern="1" text="Imposta">
<font face="Courier New" size="7" />
</field>
<field x="145" y="7.5" type="Testo" width="25" pattern="1" text="Mercato">
<font face="Courier New" size="7" />
</field>
</section>
<section type="Head" level="1">
<prescript description="H1 PRESCRIPT">MESSAGE RESET,F1.1@</prescript>
</section>
<section type="Body" />
<section type="Body">
<field x="1" y="0.25" type="Immagine" width="48" height="6" pattern="1">
<source>"logo.jpg"</source>
</field>
<field border="2" y="11" type="Rettangolo" align="right" width="170" height="35" pattern="1" />
<field border="2" x="9" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="38.5" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="45.5" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="55" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="67" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="77" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="88" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="97" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="111" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="126" y="11" type="Linea" height="35" pattern="1" />
<field border="2" x="137" y="11" type="Linea" height="35" pattern="1" />
<field x="1" y="11.75" type="Testo" width="8" pattern="1" text="Data">
<font face="Courier New" size="7" />
</field>
<field x="10" y="11.75" type="Testo" width="22" pattern="1" text="Tipo movimento">
<font face="Courier New" size="7" />
</field>
<field x="37" y="11.75" type="Testo" align="right" width="8" pattern="1" text="F.asta">
<font face="Courier New" size="7" />
</field>
<field x="46" y="11.75" type="Testo" align="right" width="8" pattern="1" text="Peso">
<font face="Courier New" size="7" />
</field>
<field x="56" y="11.75" type="Testo" align="right" width="10" pattern="1" text="Prezzo">
<font face="Courier New" size="7" />
</field>
<field x="68" y="11.75" type="Testo" align="right" width="8" pattern="1" text="Prz-8%">
<font face="Courier New" size="7" />
</field>
<field x="78" y="11.75" type="Testo" align="right" width="9" pattern="1" text="Dir. Merc.">
<font face="Courier New" size="7" />
</field>
<field x="88.5" y="11.75" type="Testo" align="right" width="8" pattern="1" text="Acc. 8%">
<font face="Courier New" size="7" />
</field>
<field x="97.5" y="11.75" type="Testo" align="right" width="13" pattern="1" text="Imp.a credito">
<font face="Courier New" size="7" />
</field>
<field x="112" y="11.75" type="Testo" align="right" width="13" pattern="1" text="Imp.a debito">
<font face="Courier New" size="7" />
</field>
<field x="127" y="11.75" type="Testo" align="right" width="9" pattern="1" text="Imposta">
<font face="Courier New" size="7" />
</field>
<field x="139" y="11.75" type="Testo" width="25" pattern="1" text="Mercato">
<font face="Courier New" size="7" />
</field>
<field border="2" y="12.8" type="Linea" width="170" height="0" pattern="1" />
<field border="2" y="33.8" type="Linea" align="right" width="170" height="0" pattern="1" />
<field x="9.5" y="34.14" type="Testo" width="30" pattern="1" text="Ritenute mensili (12%)">
<font face="Courier New" size="7" />
</field>
<field x="9.5" y="35.14" type="Testo" width="10" pattern="1" text="Totali">
<font face="Courier New" size="7" />
</field>
<field border="2" y="36.5" type="Linea" width="170" height="0" pattern="1" />
<field x="45" y="36.5" type="Testo" valign="center" align="right" width="8" pattern="1" text="Peso">
<font face="Courier New" size="7" />
<source>Q.ta</source>
</field>
<field x="79" y="36.5" type="Testo" valign="center" align="right" width="9" pattern="1" text="Dir. Merc.">
<font face="Courier New" size="7" />
</field>
<field x="89" y="36.5" type="Testo" valign="center" align="right" width="8" pattern="1" text="Acc. 8%">
<font face="Courier New" size="7" />
<source>RITENUTA</source>
</field>
<field x="97" y="36.5" type="Testo" valign="center" align="right" width="13" pattern="1" text="Imp.a credito">
<font face="Courier New" size="7" />
<source>IMPCNS</source>
</field>
<field x="112" y="36.5" type="Testo" valign="center" align="right" width="13" pattern="1" text="Imp.a debito">
<font face="Courier New" size="7" />
<source>IMPCNS</source>
</field>
<field x="126.65" y="36.5" type="Testo" valign="center" align="right" width="10" pattern="1" text="Imposta">
<font face="Courier New" size="7" />
</field>
<field x="9.5" y="36.64" type="Testo" valign="center" width="25" pattern="1" text="Riepilogo per tipo movimento">
<font face="Courier New" size="7" />
</field>
<field border="2" y="37.5" type="Linea" width="170" height="0" pattern="1" />
<field x="0.37" y="46.2" type="Testo" width="170" pattern="1" text="Via Roma 168 - 45018 - Scardovari (RO) - C.F. e P.IVA 00041880295 - Tel. 0426&#2F;89016-89038 Fax 0426&#2F;389175 e-mail: deltapadano@tin.it" />
</section>
<section type="Body" level="1" />
<section type="Head" level="11" />
<section type="Body" level="11">
@ -103,7 +145,7 @@ TO CODNUM=#PARENT.CODNUM ANNO=#PARENT.ANNO PROVV=#PARENT.PROVV NDOC=#PARENT.ND
<font face="Courier New" size="7" />
<source>#PARENT.DATADOC</source>
</field>
<field x="36" type="Numero" align="right" width="8" pattern="1" hide_zero="1">
<field x="37.2" type="Numero" align="right" width="8" pattern="1" hide_zero="1">
<font face="Courier New" size="7" />
<source>#PARENT.NFASTA</source>
</field>
@ -149,7 +191,7 @@ THEN
</prescript>
</field>
<field x="67" type="Prezzo" align="right" width="8" id="104" pattern="1" hide_zero="1" text="###.###.###,@@">
<field x="68" type="Prezzo" align="right" width="8" id="104" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<groups>1</groups>
<prescript description="B11.104 PRESCRIPT">"CODNUM" @
@ -175,7 +217,7 @@ THEN
#THIS !
</prescript>
</field>
<field x="78.5" type="Valuta" align="right" width="9" id="105" pattern="1" hide_zero="1" text="###.###.###,@@">
<field x="78" type="Valuta" align="right" width="9" id="105" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<groups>1</groups>
<source>#PARENT.SPESMER</source>
@ -188,7 +230,7 @@ DUP
#EC_MER !
</postscript>
</field>
<field x="89" type="Valuta" align="right" width="8" id="106" pattern="1" hide_zero="1" text="###.###.###,@@">
<field x="88" type="Valuta" align="right" width="8" id="106" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<source>SCONTOR</source>
<postscript description="B11.106 POSTSCRIPT">#THIS @
@ -197,7 +239,7 @@ DUP
#EC_ACC !
</postscript>
</field>
<field x="99" type="Valuta" align="right" width="15" id="107" pattern="1" hide_zero="1" text="###.###.###,@@">
<field x="97" type="Valuta" align="right" width="13" id="107" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<groups>1</groups>
<prescript description="B11.107 PRESCRIPT">#PARENT.CODNUM @ \ legge il tipodoc
@ -231,7 +273,7 @@ DUP
</postscript>
</field>
<field x="116" type="Valuta" align="right" width="15" id="108" pattern="1" hide_zero="1" text="###.###.###,@@">
<field x="112" type="Valuta" align="right" width="13" id="108" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<groups>2</groups>
<prescript description="B11.108 PRESCRIPT">#PARENT.CODNUM @ \ legge il tipodoc
@ -265,7 +307,7 @@ DUP
</postscript>
</field>
<field x="133" type="Prezzo" hidden="1" align="right" width="10" id="109" pattern="1" hide_zero="1" text="#########,@@">
<field x="127" type="Valuta" hidden="1" align="right" width="9" id="109" pattern="1" hide_zero="1" text="#########,@@">
<font face="Courier New" size="7" />
<source>#PARENT.IMPOSTE</source>
<prescript description="B11.109 PRESCRIPT">#THIS @
@ -277,7 +319,7 @@ DUP
<field x="144" type="Numero" hidden="1" align="right" width="10" id="110" pattern="1">
<source>#PARENT.MERCATO</source>
</field>
<field x="145" type="Stringa" bg_color="#00FFFF" width="40" id="111" pattern="1">
<field x="138" type="Stringa" bg_color="#00FFFF" width="31" id="111" pattern="1">
<font face="Courier New" size="7" />
<prescript description="B11.111 PRESCRIPT">MESSAGE _ISAMREAD,CLIFO,TIPOCF='C'!CODCF=#PARENT.MERCATO,RAGSOC</prescript>
</field>
@ -311,45 +353,9 @@ DUP
</field>
</section>
<section type="Foot" level="11" />
<section type="Foot" />
<section type="Foot" level="1">
<field border="2" type="Linea" width="170" height="0" pattern="1" />
<field x="10" type="Testo" width="30" pattern="1" text="Ritenute mensili (12%)">
<font face="Courier New" size="7" />
</field>
<field x="30" y="1" type="Testo" width="10" pattern="1" text="Totali">
<font face="Courier New" size="7" />
</field>
<field border="2" y="2.5" type="Linea" width="170" height="0" pattern="1" />
<field x="12" y="2.5" type="Testo" valign="center" width="25" pattern="1" text="Riepilogo per tipo movimento">
<font face="Courier New" size="7" />
<source>DESCR</source>
</field>
<field x="46" y="2.5" type="Testo" valign="center" align="right" width="8" pattern="1" text="Peso">
<font face="Courier New" size="7" />
<source>Q.ta</source>
</field>
<field x="78" y="2.5" type="Testo" valign="center" align="right" width="9" pattern="1" text="Dir. Merc.">
<font face="Courier New" size="7" />
</field>
<field x="89" y="2.5" type="Testo" valign="center" align="right" width="8" pattern="1" text="Acc. 8%">
<font face="Courier New" size="7" />
<source>RITENUTA</source>
</field>
<field x="99" y="2.5" type="Testo" valign="center" align="right" width="15" pattern="1" text="Imp.a credito">
<font face="Courier New" size="7" />
<source>IMPCNS</source>
</field>
<field x="116" y="2.5" type="Testo" valign="center" align="right" width="15" pattern="1" text="Imp.a debito">
<font face="Courier New" size="7" />
<source>IMPCNS</source>
</field>
<field x="133" y="2.5" type="Testo" valign="center" align="right" width="10" pattern="1" text="Imposta">
<font face="Courier New" size="7" />
</field>
<field border="2" y="3.5" type="Linea" width="170" height="0" pattern="1" />
<field border="2" y="12" type="Linea" width="170" height="0" pattern="1" />
<field x="116" type="Valuta" align="right" width="15" id="98" pattern="1" hide_zero="1" text="###.###.###,@@">
<section y="34" hidden_if_needed="1" type="Foot" />
<section y="34" type="Foot" level="1">
<field x="112" type="Valuta" align="right" width="13" id="98" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<groups>1</groups>
<prescript description="F1.98 PRESCRIPT">#THIS @
@ -365,19 +371,19 @@ DUP
<font face="Courier New" size="7" />
<groups>1</groups>
</field>
<field x="89" y="1" type="Valuta" align="right" width="8" id="106" pattern="1" text="###.###.###,@@">
<field x="88" y="1" type="Valuta" align="right" width="8" id="106" pattern="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<groups>1</groups>
</field>
<field x="99" y="1" type="Valuta" align="right" width="15" id="107" pattern="1" hide_zero="1" text="###.###.###,@@">
<field x="97.5" y="1" type="Valuta" align="right" width="13" id="107" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<groups>1</groups>
</field>
<field x="116" y="1" type="Valuta" align="right" width="15" id="108" pattern="1" hide_zero="1" text="###.###.###,@@">
<field x="112" y="1" type="Valuta" align="right" width="13" id="108" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" size="7" />
<groups>1</groups>
</field>
<field x="138.5" y="1" type="Stringa" align="right" width="16" id="109" pattern="1">
<field x="138" y="1" type="Stringa" align="right" width="16" id="109" pattern="1">
<font face="Courier New" bold="1" size="8" />
<groups>1</groups>
<prescript description="F1.109 PRESCRIPT">"F1.107" @ \ leggo il contenuto del campo 107
@ -390,7 +396,7 @@ ELSE
THEN
!</prescript>
</field>
<field x="154.5" y="1" type="Valuta" align="right" width="12" id="110" pattern="1" hide_zero="1" text="###.###.###,@@">
<field x="155.5" y="1" type="Valuta" align="right" width="12" id="110" pattern="1" hide_zero="1" text="###.###.###,@@">
<font face="Courier New" bold="1" size="8" />
<groups>1</groups>
<prescript description="F1.110 PRESCRIPT">"F1.107" @ \ leggo il contenuto del campo 107

View File

@ -77,7 +77,7 @@ MESSAGE RESET,F3.105</prescript>
<prescript description="B1.103 PRESCRIPT">#THIS @
"F3.103" !</prescript>
</field>
<field x="53.5" type="Prezzo" align="right" width="15" id="104" pattern="1" text="###.###.###,@@">
<field x="53.5" type="Valuta" align="right" width="15" id="104" pattern="1" text="###.###.###,@@">
<prescript description="B1.104 PRESCRIPT">"DOC.TIPODOC" @ \ leggo il tipo documento
"CONF" = IF \ controllo se &#E8; un conferimento
"DOC.NETCRED" @
@ -89,7 +89,7 @@ ELSE \ se non &#E8; un conferimento
THEN
+! \ lo sommo</prescript>
</field>
<field x="53.5" y="1" type="Prezzo" align="right" width="15" id="105" pattern="1" text="###.###.###,@@">
<field x="53.5" y="1" type="Valuta" align="right" width="15" id="105" pattern="1" text="###.###.###,@@">
<prescript description="B1.105 PRESCRIPT">"DOC.TOTRITACC" @
"F3.104" \ lo metto nella coda del gruppo
+! \ lo sommo</prescript>

95
co/co1900.cpp Executable file
View File

@ -0,0 +1,95 @@
#include <applicat.h>
#include <automask.h>
#include <form.h>
#include <report.h>
#include <reprint.h>
#include <tabutil.h>
#include <textset.h>
#include "co1.h"
#include "co1900a.h"
#include "socicoop.h"
////////////////////////////////////////////////////////
// MASCHERA
////////////////////////////////////////////////////////
class TStampaProgConf_mask : public TAutomask
{
protected:
bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
TStampaProgConf_mask();
virtual ~TStampaProgConf_mask() {};
};
TStampaProgConf_mask::TStampaProgConf_mask() :TAutomask ("co1900a")
{
}
bool TStampaProgConf_mask::on_field_event(TOperable_field& f, TField_event e, long jolly)
{
return true;
}
/////////////////////////////////////////////////////////////
// REPORT
/////////////////////////////////////////////////////////////
class TStampaProgConf_report : public TReport
{
protected:
virtual bool use_mask() { return false; }
public:
TStampaProgConf_report() {}
};
////////////////////////////////////////////////////////
// APPLICAZIONE
////////////////////////////////////////////////////////
class TStampaProgConf : public TSkeleton_application
{
public:
virtual void main_loop();
};
void TStampaProgConf::main_loop()
{
TStampaProgConf_mask m;
while (m.run() == K_ENTER)
{
TStampaProgConf_report rep;
TReport_book book;
const int formato = m.get_int(F_FORMATO);
if (rep.load(formato==1 ? "co1900b" : "co1900a"))
{
const int ordinamento = m.get_int(F_ORDINAMENTO);
if (ordinamento == 2)
{
TString use(rep.recordset()->query_text());
const int pos = use.find("JOIN");
if ( pos > 0)
use.insert("BY 20.RAGSOC\n", pos);
rep.set_recordset(use);
}
}
rep.recordset()->set_var("#DASOCIO", TVariant(m.get(F_DASOCIO)));
TString to(m.get(F_ASOCIO));
to << "999999";
rep.recordset()->set_var("#ASOCIO", TVariant(to));
rep.recordset()->set_var("#ANNO", m.get(F_ANNO));
rep.recordset()->set_var("#MESE", m.get(F_MESE));
book.add(rep);
book.print_or_preview();
}
}
int co1900(int argc, char* argv[])
{
TStampaProgConf a;
a.run(argc, argv, TR("Stampa progressivi conferimenti"));
return 0;
}

10
co/co1900a.h Executable file
View File

@ -0,0 +1,10 @@
// campi per la maschera co1900a
#define F_DASOCIO 101
#define F_ASOCIO 102
#define F_ANNO 103
#define F_MESE 104
#define F_ORDINAMENTO 105
#define F_FORMATO 106
#define F_DESDASOCIO 107
#define F_DESASOCIO 108

105
co/co1900a.uml Executable file
View File

@ -0,0 +1,105 @@
#include "co1900a.h"
TOOLBAR "" 0 20 0 2
BUTTON DLG_OK 10 2
BEGIN
PROMPT -12 -1 ""
END
BUTTON DLG_QUIT 10 2
BEGIN
PROMPT -22 -1 ""
END
ENDPAGE
PAGE "Stampa progressivi conferimenti" 0 -1 0 19
GROUPBOX DLG_NULL 78 4
BEGIN
PROMPT 1 1 "Selezione soci"
END
STRING F_DASOCIO 6
BEGIN
PROMPT 2 2 "Da socio "
FIELD DASOCIO
FLAG "Z"
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_DASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_DASOCIO CODCF
OUTPUT F_DESDASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESDASOCIO 50
BEGIN
PROMPT 25 2 ""
FLAGS "D"
END
STRING F_ASOCIO 6
BEGIN
PROMPT 2 3 "A socio "
FLAG "Z"
FIELD ASOCIO
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=="F" CODCF==CODCF
INPUT CODCF F_ASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_ASOCIO CODCF
OUTPUT F_DESASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESASOCIO 50
BEGIN
PROMPT 25 3 ""
FLAGS "D"
END
GROUPBOX DLG_NULL 78 3
BEGIN
PROMPT 1 5 "Selezione periodo"
END
NUMBER F_ANNO 4
BEGIN
PROMPT 2 6 "Fino all'anno/mese "
FLAGS "A"
FIELD ANNO
END
LIST F_MESE 2 10
BEGIN
PROMPT 27 6 ""
FLAGS "MZ"
FIELD MESE
END
RADIOBUTTON F_ORDINAMENTO 25
BEGIN
PROMPT 2 8 "Ordinamento"
ITEM "1|Per codice"
ITEM "2|Alfabetico"
END
RADIOBUTTON F_FORMATO 25
BEGIN
PROMPT 35 8 "Formato"
ITEM "1|Compatto"
ITEM "2|Espanso"
END
ENDPAGE
ENDMASK

109
co/co1900b.rep Executable file
View File

@ -0,0 +1,109 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="co1900b" lpi="6">
<description>Stampa progressivi soci formato B</description>
<font face="Courier New" size="10" />
<section type="Head">
<field x="132.62" y="-0.94" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="138.62" y="-0.94" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="156.62" y="-0.94" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="164.62" y="-0.94" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field type="Testo" width="10" pattern="1" text="Ditta" />
<field x="6" type="Stringa" width="60" pattern="1">
<source>#SYSTEM.RAGSOC</source>
</field>
<field x="52.5" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="58" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="70.5" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="76" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="14" y="1.5" type="Testo" valign="bottom" width="42" height="2" pattern="1" text="STAMPA PROGRESSIVI SOCI ANNO">
<font face="Courier New" bold="1" size="14" />
<source>" " + #ANNO</source>
</field>
<field x="57" y="1.5" type="Numero" valign="center" align="right" width="8" height="2" pattern="1">
<font face="Courier New" bold="1" size="14" />
<source>#ANNO</source>
</field>
<field border="2" y="4.5" type="Linea" width="80" height="0" pattern="1" />
</section>
<section type="Head" level="1" />
<section type="Head" level="2" page_break="1">
<groupby>CODTAB[1,6]</groupby>
<prescript description="H2 PRESCRIPT">0 #F2.113 !</prescript>
<field x="1" y="1" type="Testo" width="6" pattern="1" text="Socio">
<font face="Courier New" bold="1" size="10" />
</field>
<field x="7" y="1" type="Numero" align="right" width="6" pattern="1">
<font face="Courier New" bold="1" size="10" />
<source>CODTAB[1,6]</source>
</field>
<field x="14.5" y="1" type="Stringa" width="50" pattern="1">
<font face="Courier New" bold="1" size="10" />
<source>CLIFO.RAGSOC</source>
</field>
</section>
<section type="Body" />
<section type="Body" level="1" hidden="1">
<field type="Array" width="10" pattern="1">
<source>CODTAB[11,12]</source>
<list>
<li Value="Gen." Code="01">"R0" @ #F2.101 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Feb." Code="02">"R0" @ #F2.102 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Mar." Code="03">"R0" @ #F2.103 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Apr." Code="04">"R0" @ #F2.104 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Mag." Code="05">"R0" @ #F2.105 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Giu." Code="06">"R0" @ #F2.106 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Lug." Code="07">"R0" @ #F2.107 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Ago." Code="08">"R0" @ #F2.108 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Set." Code="09">"R0" @ #F2.109 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Ott." Code="10">"R0" @ #F2.110 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Nov." Code="11">"R0" @ #F2.111 ! "R0" @ #F2.113 @ + #F2.113 !</li>
<li Value="Dic." Code="12">"R0" @ #F2.112 ! "R0" @ #F2.113 @ + #F2.113 !</li>
</list>
</field>
<field x="40" type="Valuta" align="right" width="10" pattern="1" text="#########,@@">
<source>R0</source>
</field>
</section>
<section type="Foot" />
<section type="Foot" level="1" />
<section type="Foot" level="2">
<field x="3" type="Testo" width="5" pattern="1" text="Gen." />
<field x="20" type="Testo" width="5" pattern="1" text="Feb." />
<field x="37" type="Testo" width="5" pattern="1" text="Mar." />
<field x="54" type="Testo" width="5" pattern="1" text="Apr." />
<field x="3" y="1" type="Testo" width="5" pattern="1" text="Mag." />
<field x="20" y="1" type="Testo" width="5" pattern="1" text="Giu." />
<field x="37" y="1" type="Testo" width="5" pattern="1" text="Lug." />
<field x="54" y="1" type="Testo" width="5" pattern="1" text="Ago." />
<field x="3" y="2" type="Testo" width="5" pattern="1" text="Set." />
<field x="20" y="2" type="Testo" width="5" pattern="1" text="Ott." />
<field x="37" y="2" type="Testo" width="5" pattern="1" text="Nov." />
<field x="54" y="2" type="Testo" width="5" pattern="1" text="Dic." />
<field x="1" y="3" type="Testo" width="6" pattern="1" text="Totale" />
<field x="8" type="Valuta" align="right" width="10" id="101" pattern="1" text="###.###.###,@@" />
<field x="25" type="Valuta" align="right" width="10" id="102" pattern="1" text="###.###.###,@@" />
<field x="42" type="Valuta" align="right" width="10" id="103" pattern="1" text="###.###.###,@@" />
<field x="59" type="Valuta" align="right" width="10" id="104" pattern="1" text="###.###.###,@@" />
<field x="8" y="1" type="Valuta" align="right" width="10" id="105" pattern="1" text="###.###.###,@@" />
<field x="25" y="1" type="Valuta" align="right" width="10" id="106" pattern="1" text="###.###.###,@@" />
<field x="42" y="1" type="Valuta" align="right" width="10" id="107" pattern="1" text="###.###.###,@@" />
<field x="59" y="1" type="Valuta" align="right" width="10" id="108" pattern="1" text="###.###.###,@@" />
<field x="8" y="2" type="Valuta" align="right" width="10" id="109" pattern="1" text="###.###.###,@@" />
<field x="25" y="2" type="Valuta" align="right" width="10" id="110" pattern="1" text="###.###.###,@@" />
<field x="42" y="2" type="Valuta" align="right" width="10" id="111" pattern="1" text="###.###.###,@@" />
<field x="59" y="2" type="Valuta" align="right" width="10" id="112" pattern="1" text="###.###.###,@@" />
<field x="8" y="3" type="Valuta" align="right" width="10" id="113" pattern="1" text="###.###.###,@@" />
</section>
<sql>USE PSC
SELECT (CODTAB[7,10] =#ANNO)&#26;&#26;(CODTAB[11,12]&#3C;=#MESE)&#26;&#26;(CODTAB[1,6]&#3E;=#DASOCIO)&#26;&#26;((CODTAB[1,6]&#3C;=#ASOCIO)||(#ASOCIO=0))
JOIN CLIFO INTO TIPOCF=="F" CODCF=CODTAB[1,6]
</sql>
</report>

25
co/co2.cpp Executable file
View File

@ -0,0 +1,25 @@
#include <xvt.h>
#include "co2.h"
int main(int argc, char** argv)
{
const int n = argc > 1 ? argv[1][1]-'0' : 0;
switch (n)
{
case 0:
co2100(argc, argv); // Stampa anagrafica soci
break;
case 1:
co2200(argc, argv); // Stampa soci per data licenza
break;
case 2:
co2300(argc, argv); // Stampa controllo scadenze
break;
case 3:
co2400(argc, argv); // Stampa registro soci carico/scarico
break;
default:
break;
}
return 0;
}

4
co/co2.h Executable file
View File

@ -0,0 +1,4 @@
int co2100(int argc, char* argv[]);
int co2200(int argc, char* argv[]);
int co2300(int argc, char* argv[]);
int co2400(int argc, char* argv[]);

108
co/co2100.cpp Executable file
View File

@ -0,0 +1,108 @@
#include <applicat.h>
#include <automask.h>
#include <form.h>
#include <report.h>
#include <reprint.h>
#include <tabutil.h>
#include <textset.h>
#include "co2.h"
#include "co2100a.h"
#include "socicoop.h"
////////////////////////////////////////////////////////
// MASCHERA
////////////////////////////////////////////////////////
class TStampaAnagSoci_mask : public TAutomask
{
protected:
bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
TStampaAnagSoci_mask();
virtual ~TStampaAnagSoci_mask() {};
};
TStampaAnagSoci_mask::TStampaAnagSoci_mask() :TAutomask ("co2100a")
{
}
bool TStampaAnagSoci_mask::on_field_event(TOperable_field& f, TField_event e, long jolly)
{
return true;
}
/////////////////////////////////////////////////////////////
// REPORT
/////////////////////////////////////////////////////////////
class TStampaAnagSoci_report : public TReport
{
protected:
virtual bool use_mask() { return false; }
public:
TStampaAnagSoci_report() {}
};
////////////////////////////////////////////////////////
// APPLICAZIONE
////////////////////////////////////////////////////////
class TStampaAnagSoci : public TSkeleton_application
{
public:
virtual void main_loop();
};
void TStampaAnagSoci::main_loop()
{
TStampaAnagSoci_mask m;
while (m.run() == K_ENTER)
{
TStampaAnagSoci_report rep;
TReport_book book;
const int formato = m.get_int(F_FORMATO);
//ATTENZIONE: in caso di formato == 3 il report dovrebbe essere co2100b e non co2100a!!!!!!!!!!!!!!!
if (rep.load(formato==3 ? "co2100b" : "co2100a"))
{
TString use(rep.recordset()->query_text());
int pos = use.find("JOIN");
if (pos <= 0) pos = use.len();
switch(formato)
{
case 1: use.insert("SELECT BETWEEN(DATAASS, #DADATA, #ADATA)\n", pos); break;
case 2: use.insert("SELECT BETWEEN(DATAREC, #DADATA, #ADATA)\n", pos); break;
case 3: use.insert("SELECT BETWEEN(#DADATA, DATAASS, DATAREC) || BETWEEN(#ADATA, DATAASS, DATAREC)\n", pos); break;
default: break;
}
const int ordinamento = m.get_int(F_ORDINAMENTO);
pos = use.find("JOIN");
if (pos <= 0) pos = use.len();
if (ordinamento == 2)
use.insert("BY 20.RAGSOC\n", pos);
else
use.insert("BY CODCF\n", pos);
rep.set_recordset(use);
}
rep.recordset()->set_var("#DASOCIO", TVariant(m.get(F_DASOCIO)));
rep.recordset()->set_var("#ASOCIO", TVariant(m.get(F_ASOCIO)));
rep.recordset()->set_var("#DADATA", TVariant(m.get(F_DADATA)));
rep.recordset()->set_var("#ADATA", TVariant(m.get(F_ADATA)));
book.add(rep);
book.print_or_preview();
}
}
int co2100(int argc, char* argv[])
{
TStampaAnagSoci a;
a.run(argc, argv, TR("Stampa anagrafica soci"));
return 0;
}

10
co/co2100a.h Executable file
View File

@ -0,0 +1,10 @@
// campi per la maschera co2100a
#define F_DASOCIO 101
#define F_ASOCIO 102
#define F_DADATA 103
#define F_ADATA 104
#define F_FORMATO 105
#define F_ORDINAMENTO 106
#define F_DESDASOCIO 107
#define F_DESASOCIO 108

69
co/co2100a.rep Executable file
View File

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="co2100a" lpi="6">
<description>Stampa anagrafica soci per data ass&#2F;rec</description>
<font face="Courier New" size="10" />
<section type="Head">
<field type="Testo" width="10" pattern="1" text="Ditta" />
<field x="6" type="Stringa" width="60" pattern="1">
<source>#SYSTEM.RAGSOC</source>
</field>
<field x="52.5" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="58" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="70.5" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="76" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="133.08" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="139.08" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="157.08" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="165.08" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="10" y="1.5" type="Testo" valign="center" align="center" width="80" height="2" pattern="1" text="STAMPA ANAGRAFICA SOCI ">
<font face="Courier New" bold="1" size="14" />
</field>
<field y="4" type="Testo" valign="bottom" width="12" pattern="1" text="Dalla data" />
<field x="12" y="4" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#DADATA</source>
</field>
<field x="26" y="4" type="Testo" valign="bottom" align="center" width="10" pattern="1" text="alla data" />
<field x="38" y="4" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#ADATA</source>
</field>
<field border="2" y="6" type="Linea" width="90" height="0" pattern="1" />
<field y="6.5" type="Testo" width="6" pattern="1" text="Codice" />
<field x="6.5" y="6.5" type="Testo" width="6" pattern="1" text="Socio" />
<field x="59.5" y="6.5" type="Testo" width="10" height="2" pattern="1" text="Data
Assunzione" />
<field x="72" y="6.5" type="Testo" width="10" height="2" pattern="1" text="Data
Recessione" />
<field border="2" y="9" type="Linea" width="90" height="0" pattern="1" />
</section>
<section type="Head" level="1" />
<section type="Body" />
<section type="Body" level="1">
<field type="Numero" align="right" width="6" pattern="1">
<source>CLIFO.CODCF</source>
</field>
<field x="6.5" type="Stringa" width="50" pattern="1">
<source>TRIM(CLIFO.RAGSOC[1,30])+" "+TRIM(CLIFO.RAGSOC[31,50])</source>
</field>
<field x="59" type="Data" width="10" pattern="1">
<source>DATAASS</source>
</field>
<field x="72" type="Data" width="10" pattern="1">
<source>DATAREC</source>
</field>
</section>
<section type="Foot" />
<section type="Foot" level="1" />
<sql>USE SOCICOOP
JOIN CLIFO INTO TIPOCF=="F" CODCF=CODCF
FROM CODCF=#DASOCIO
TO CODCF=#ASOCIO
</sql>
</report>

103
co/co2100a.uml Executable file
View File

@ -0,0 +1,103 @@
#include "co2100a.h"
TOOLBAR "" 0 20 0 2
BUTTON DLG_OK 10 2
BEGIN
PROMPT -12 -1 ""
END
BUTTON DLG_QUIT 10 2
BEGIN
PROMPT -22 -1 ""
END
ENDPAGE
PAGE "Stampa anagrafica soci" 0 -1 0 19
GROUPBOX DLG_NULL 78 4
BEGIN
PROMPT 1 1 "Selezione soci"
END
NUMBER F_DASOCIO 6
BEGIN
PROMPT 2 2 "Da socio "
FIELD DASOCIO
//FLAG "Z"
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_DASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_DASOCIO CODCF
OUTPUT F_DESDASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESDASOCIO 50
BEGIN
PROMPT 25 2 ""
FLAGS "D"
END
NUMBER F_ASOCIO 6
BEGIN
PROMPT 2 3 "A socio "
//FLAG "Z"
FIELD ASOCIO
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_ASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_ASOCIO CODCF
OUTPUT F_DESASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESASOCIO 50
BEGIN
PROMPT 25 3 ""
FLAGS "D"
END
GROUPBOX DLG_NULL 78 3
BEGIN
PROMPT 1 5 "Selezione periodo"
END
DATE F_DADATA
BEGIN
PROMPT 2 6 "Da data "
FIELD DADATA
END
DATE F_ADATA
BEGIN
PROMPT 30 6 "A data "
FIELD ADATA
END
RADIOBUTTON F_FORMATO 25
BEGIN
PROMPT 2 8 "Tipo stampa"
ITEM "1|Per data assunzione"
ITEM "2|Per data recessione"
ITEM "3|Elenco soci INAIL"
END
RADIOBUTTON F_ORDINAMENTO 25
BEGIN
PROMPT 35 8 "Ordinamento"
ITEM "1|Per codice"
ITEM "2|Alfabetico"
END
ENDPAGE
ENDMASK

78
co/co2100b.rep Executable file
View File

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="co2100b" lpi="6">
<description>Stampa anagrafica soci ai fini I.NA.I.L.</description>
<font face="Courier New" size="10" />
<section type="Head">
<field type="Testo" width="10" pattern="1" text="Ditta" />
<field x="6" type="Stringa" width="60" pattern="1">
<source>#SYSTEM.RAGSOC</source>
</field>
<field x="52.5" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="58" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="70.5" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="76" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="133.08" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="139.08" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="157.08" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="165.08" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="10" y="1.5" type="Testo" valign="center" align="center" width="80" height="2" pattern="1" text="STAMPA ANAGRAFICA SOCI AI FINI I.NA.I.L.">
<font face="Courier New" bold="1" size="14" />
</field>
<field y="4" type="Testo" valign="bottom" width="12" pattern="1" text="Dalla data" />
<field x="12" y="4" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#DADATA</source>
</field>
<field x="26" y="4" type="Testo" valign="bottom" align="center" width="10" pattern="1" text="alla data" />
<field x="38" y="4" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#ADATA</source>
</field>
<field border="2" y="6" type="Linea" width="90" height="0" pattern="1" />
<field x="58" y="6.5" type="Testo" width="12" height="2" pattern="1" text="Tipo Propulsione" />
<field x="70" y="6.5" type="Testo" width="15" height="2" pattern="1" text="Commissione di appartenenza" />
<field y="7" type="Testo" width="6" pattern="1" text="Codice" />
<field x="7" y="7" type="Testo" width="6" pattern="1" text="Socio" />
<field border="2" y="9" type="Linea" width="90" height="0" pattern="1" />
</section>
<section type="Head" level="1">
<prescript description="H1 PRESCRIPT">MESSAGE RESET,B1.101</prescript>
</section>
<section type="Body" />
<section type="Body" level="1">
<field x="7" type="Stringa" width="50" height="2" pattern="1">
<source>TRIM(CLIFO.RAGSOC[1,30])+" "+TRIM(CLIFO.RAGSOC[31,50])</source>
</field>
<field x="58" type="Array" width="10" pattern="1">
<source>SOCICOOP.TIPOPROP</source>
<list>
<li Value="Motore" Code="0" />
<li Value="Vela" Code="1" />
</list>
</field>
<field x="70" type="Array" width="20" pattern="1">
<source>SOCICOOP.TIPOCOMAPP</source>
<list>
<li Value="Acque interne" Code="0" />
<li Value="Acque marittime" Code="1" />
</list>
</field>
<field type="Numero" align="right" width="6" id="101" pattern="1">
<prescript description="B1.101 PRESCRIPT">MESSAGE INCR,#101</prescript>
</field>
</section>
<section type="Foot" />
<section type="Foot" level="1" />
<sql>USE SOCICOOP
JOIN CLIFO INTO TIPOCF=="F" CODCF=CODCF
JOIN IMBARCAZIONI INTO CODCF=CODCF
FROM CODCF=#DASOCIO
TO CODCF=#ASOCIO
</sql>
</report>

105
co/co2200.cpp Executable file
View File

@ -0,0 +1,105 @@
#include <applicat.h>
#include <automask.h>
#include <form.h>
#include <report.h>
#include <reprint.h>
#include <tabutil.h>
#include <textset.h>
#include "co2.h"
#include "co2200a.h"
#include "socicoop.h"
////////////////////////////////////////////////////////
// MASCHERA
////////////////////////////////////////////////////////
class TStampaSociDataLic_mask : public TAutomask
{
protected:
bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
TStampaSociDataLic_mask();
virtual ~TStampaSociDataLic_mask() {};
};
TStampaSociDataLic_mask::TStampaSociDataLic_mask() :TAutomask ("co2200a")
{
}
bool TStampaSociDataLic_mask::on_field_event(TOperable_field& f, TField_event e, long jolly)
{
return true;
}
/////////////////////////////////////////////////////////////
// REPORT
/////////////////////////////////////////////////////////////
class TStampaSociDataLic_report : public TReport
{
protected:
virtual bool use_mask() { return false; }
public:
TStampaSociDataLic_report() {}
};
////////////////////////////////////////////////////////
// APPLICAZIONE
////////////////////////////////////////////////////////
class TStampaSociDataLic : public TSkeleton_application
{
public:
virtual void main_loop();
};
void TStampaSociDataLic::main_loop()
{
TStampaSociDataLic_mask m;
while (m.run() == K_ENTER)
{
TStampaSociDataLic_report rep;
TReport_book book;
if (rep.load("co2200a"))
{
TString use(rep.recordset()->query_text());
const int pos = use.find("JOIN");
const int ordinamento = m.get_int(F_ORDINAMENTO);
if (pos > 0)
{
switch (ordinamento)
{
case 2:
use.insert("BY 20.RAGSOC\n", pos);
break;
case 3:
use.insert("BY SOCICOOP.DATASCALIC\n", pos);
break;
default:
use.insert("BY 20.CODCF\n", pos);
break;
}
}
rep.set_recordset(use);
}
rep.recordset()->set_var("#DASOCIO", TVariant(m.get(F_DASOCIO)));
rep.recordset()->set_var("#ASOCIO", TVariant(m.get(F_ASOCIO)));
rep.recordset()->set_var("#DADATA", TVariant(m.get(F_DADATA)));
rep.recordset()->set_var("#ADATA", TVariant(m.get(F_ADATA)));
rep.recordset()->set_var("#MESE", TVariant(m.get(F_ADATA).mid(3,2)));
book.add(rep);
book.print_or_preview();
}
}
int co2200(int argc, char* argv[])
{
TStampaSociDataLic a;
a.run(argc, argv, TR("Stampa soci per data licenza"));
return 0;
}

9
co/co2200a.h Executable file
View File

@ -0,0 +1,9 @@
// campi per la maschera co2200a
#define F_DASOCIO 101
#define F_ASOCIO 102
#define F_DADATA 103
#define F_ADATA 104
#define F_ORDINAMENTO 105
#define F_DESDASOCIO 106
#define F_DESASOCIO 107

68
co/co2200a.rep Executable file
View File

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="co2200a" lpi="6">
<description>Stampa soci per data licenza</description>
<font face="Courier New" size="10" />
<section type="Head">
<field type="Testo" width="10" pattern="1" text="Ditta" />
<field x="6.25" type="Stringa" width="60" pattern="1">
<source>#SYSTEM.RAGSOC</source>
</field>
<field x="52.75" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="58.25" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="133.08" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="139.08" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="157.08" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="165.08" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="10.25" y="1.5" type="Testo" valign="center" align="center" width="80" height="2" pattern="1" text="STAMPA SOCI PER DATA LICENZA">
<font face="Courier New" bold="1" size="14" />
</field>
<field y="4" type="Testo" valign="bottom" width="12" pattern="1" text="Dalla data" />
<field x="12.25" y="4" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#DADATA</source>
</field>
<field x="26.25" y="4" type="Testo" valign="bottom" align="center" width="10" pattern="1" text="alla data" />
<field x="38.25" y="4" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#ADATA</source>
</field>
<field x="80.75" y="5" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="86.25" y="5" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field border="2" x="-8" y="6" type="Linea" width="90" height="0" pattern="1" />
<field y="6.88" type="Testo" width="20" pattern="1" text="Data licenza" />
<field x="14" y="7" type="Testo" width="12" pattern="1" text="N.ro licenza" />
<field x="27" y="7" type="Testo" width="6" pattern="1" text="Codice" />
<field x="34" y="7" type="Testo" width="6" pattern="1" text="Socio" />
<field border="2" y="9" type="Linea" width="90" height="0" pattern="1" />
</section>
<section type="Head" level="1" />
<section type="Body" />
<section type="Body" level="1">
<field type="Data" width="10" pattern="1">
<source>SOCICOOP.DATASCALIC</source>
</field>
<field x="14" type="Stringa" width="10" pattern="1">
<source>SOCICOOP.LICENZA</source>
</field>
<field x="27" type="Numero" align="right" width="6" pattern="1">
<source>CLIFO.CODCF</source>
</field>
<field x="34" type="Stringa" width="50" pattern="1">
<source>TRIM(CLIFO.RAGSOC[1,30])+" "+TRIM(CLIFO.RAGSOC[31,50])</source>
</field>
</section>
<section type="Foot" />
<section type="Foot" level="1" />
<sql>USE SOCICOOP
SELECT (DATASCALIC[4,5]==#MESE)&#26;&#26;(BETWEEN(DATASCALIC,#DADATA,#ADATA))
JOIN CLIFO INTO TIPOCF=="F" CODCF=CODCF
FROM CODCF=#DASOCIO
TO CODCF=#ASOCIO
</sql>
</report>

96
co/co2200a.uml Executable file
View File

@ -0,0 +1,96 @@
#include "co2200a.h"
TOOLBAR "" 0 20 0 2
BUTTON DLG_OK 10 2
BEGIN
PROMPT -12 -1 ""
END
BUTTON DLG_QUIT 10 2
BEGIN
PROMPT -22 -1 ""
END
ENDPAGE
PAGE "Stampa soci per data licenza" 0 -1 0 19
GROUPBOX DLG_NULL 78 4
BEGIN
PROMPT 1 1 "Selezione soci"
END
NUMBER F_DASOCIO 6
BEGIN
PROMPT 2 2 "Da socio "
FIELD DASOCIO
//FLAG "Z"
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_DASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_DASOCIO CODCF
OUTPUT F_DESDASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESDASOCIO 50
BEGIN
PROMPT 25 2 ""
FLAGS "D"
END
NUMBER F_ASOCIO 6
BEGIN
PROMPT 2 3 "A socio "
//FLAG "Z"
FIELD ASOCIO
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_ASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_ASOCIO CODCF
OUTPUT F_DESASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESASOCIO 50
BEGIN
PROMPT 25 3 ""
FLAGS "D"
END
GROUPBOX DLG_NULL 78 3
BEGIN
PROMPT 1 5 "Scadenza"
END
DATE F_DADATA
BEGIN
PROMPT 2 6 "Da data "
FIELD DADATA
END
DATE F_ADATA
BEGIN
PROMPT 30 6 "A data "
FIELD ADATA
END
RADIOBUTTON F_ORDINAMENTO 25
BEGIN
PROMPT 2 8 "Ordinamento"
ITEM "1|Codice"
ITEM "2|Alfabetico"
ITEM "3|Data licenza"
END
ENDPAGE
ENDMASK

119
co/co2300.cpp Executable file
View File

@ -0,0 +1,119 @@
#include <applicat.h>
#include <automask.h>
#include <form.h>
#include <report.h>
#include <reprint.h>
#include <tabutil.h>
#include <textset.h>
#include "co2.h"
#include "co2300a.h"
#include "socicoop.h"
////////////////////////////////////////////////////////
// MASCHERA
////////////////////////////////////////////////////////
class TStampaCtrlScad_mask : public TAutomask
{
protected:
bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
TStampaCtrlScad_mask();
virtual ~TStampaCtrlScad_mask() {};
};
TStampaCtrlScad_mask::TStampaCtrlScad_mask() :TAutomask ("co2300a")
{
}
bool TStampaCtrlScad_mask::on_field_event(TOperable_field& f, TField_event e, long jolly)
{
return true;
}
/////////////////////////////////////////////////////////////
// REPORT
/////////////////////////////////////////////////////////////
class TStampaCtrlScad_report : public TReport
{
protected:
virtual bool use_mask() { return false; }
public:
TStampaCtrlScad_report() {}
};
////////////////////////////////////////////////////////
// APPLICAZIONE
////////////////////////////////////////////////////////
class TStampaCtrlScad : public TSkeleton_application
{
public:
virtual void main_loop();
};
void TStampaCtrlScad::main_loop()
{
TStampaCtrlScad_mask m;
while (m.run() == K_ENTER)
{
const int controlla = m.get_int(F_CONTROLLA);
TStampaCtrlScad_report rep;
TReport_book book;
if (rep.load(controlla==1 ? "co2300b" : "co2300a"))
{
TString use(rep.recordset()->query_text());
int pos = use.find("JOIN");
if (pos <= 0) pos = use.len();
switch (controlla)
{
case 4:
use.insert("SELECT SCADCOLL[4,5]==#MESE\n", pos);
break;
case 3:
use.insert("SELECT SCADRUOLEQ[4,5]==#MESE\n", pos);
break;
case 2:
use.insert("SELECT SCADLICPES[4,5]==#MESE\n", pos);
break;
default:
use.insert("SELECT DATASCALIC[4,5]==#MESE\n", pos);
break;
}
pos = use.find("JOIN");
if (pos <= 0) pos = use.len();
const int ordinamento = m.get_int(F_ORDINAMENTO);
switch (ordinamento)
{
case 2:
use.insert("BY 20.RAGSOC\n", pos);
break;
default:
use.insert("BY 20.CODCF\n", pos);
break;
}
rep.set_recordset(use);
}
rep.recordset()->set_var("#DASOCIO", TVariant(m.get(F_DASOCIO)));
rep.recordset()->set_var("#ASOCIO", TVariant(m.get(F_ASOCIO)));
rep.recordset()->set_var("#DAANNO", TVariant(m.get(F_DAANNO)));
rep.recordset()->set_var("#AANNO", TVariant(m.get(F_AANNO)));
rep.recordset()->set_var("#MESE", TVariant(m.get(F_MESE)));
rep.recordset()->set_var("#CONTROLLA", TVariant(m.get_long(F_CONTROLLA)));
book.add(rep);
book.print_or_preview();
}
}
int co2300(int argc, char* argv[])
{
TStampaCtrlScad a;
a.run(argc, argv, TR("Stampa soci per data licenza"));
return 0;
}

11
co/co2300a.h Executable file
View File

@ -0,0 +1,11 @@
// campi per la maschera co2300a
#define F_DASOCIO 101
#define F_ASOCIO 102
#define F_MESE 103
#define F_DAANNO 104
#define F_AANNO 105
#define F_CONTROLLA 106
#define F_ORDINAMENTO 107
#define F_DESDASOCIO 108
#define F_DESASOCIO 109

99
co/co2300a.rep Executable file
View File

@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="CO2300A" lpi="6">
<description>Stampa controllo scadenze</description>
<font face="Courier New" size="10" />
<section type="Head">
<field type="Stringa" width="60" pattern="1">
<source>#SYSTEM.RAGSOC</source>
</field>
<field x="46.5" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="52" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="64.5" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="69" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="133.08" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="139.08" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="157.08" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="165.08" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="1" y="1.5" type="Testo" valign="center" width="50" height="2" pattern="1" text="STAMPA CONTROLLO SCADENZE">
<font face="Courier New" bold="1" size="14" />
</field>
<field x="50" y="2" type="Array" width="40" height="2" pattern="1">
<font face="Courier New" bold="1" size="14" />
<source>#CONTROLLA</source>
<list>
<li Value="Licenza di navigazione" Code="1">MESSAGE SHOW,B1.101</li>
<li Value="Licenza di pesca" Code="2">MESSAGE SHOW,B1.102</li>
<li Value="Ruolino equipaggio" Code="3">MESSAGE SHOW,B1.103</li>
<li Value="Collaudo" Code="4">MESSAGE SHOW,B1.104</li>
</list>
</field>
<field x="25" y="3.5" type="Testo" valign="center" width="20" height="2" pattern="1" text="MESE">
<font face="Courier New" bold="1" size="14" />
</field>
<field x="35" y="4" type="Array" width="20" height="2" pattern="1">
<font face="Courier New" bold="1" size="14" />
<source>#MESE</source>
<list>
<li Value="Gennaio" Code="1" />
<li Value="Febbraio" Code="2" />
<li Value="Marzo" Code="3" />
<li Value="Aprile" Code="4" />
<li Value="Maggio" Code="5" />
<li Value="Giugno" Code="6" />
<li Value="Luglio" Code="7" />
<li Value="Agosto" Code="8" />
<li Value="Settembre" Code="9" />
<li Value="Ottobre" Code="10" />
<li Value="Novembre" Code="11" />
<li Value="Dicembre" Code="12" />
</list>
</field>
<field border="2" y="6" type="Linea" width="90" height="0" pattern="1" />
<field x="0.38" y="7.13" type="Testo" width="30" pattern="1" text="Motobarca" />
<field x="32.38" y="7.13" type="Testo" width="10" pattern="1" text="Data" />
<field x="45.38" y="7.13" type="Testo" width="6" pattern="1" text="Codice" />
<field x="53.38" y="7.13" type="Testo" width="5" pattern="1" text="Socio" />
<field border="2" y="9" type="Linea" width="90" height="0" pattern="1" />
</section>
<section type="Head" level="1" />
<section type="Body" />
<section type="Body" level="1">
<field x="44" type="Numero" align="right" width="6" pattern="1">
<source>CLIFO.CODCF</source>
</field>
<field x="52" type="Stringa" width="30" height="2" pattern="1">
<source>CLIFO.RAGSOC</source>
</field>
<field x="32" type="Data" width="10" id="101" pattern="1">
<source>IMBARCAZIONI.SCADLICNAV</source>
</field>
<field x="32" y="1" type="Data" width="10" id="102" pattern="1">
<source>IMBARCAZIONI.SCADLICPES</source>
</field>
<field x="32" y="2" type="Data" width="10" id="103" pattern="1">
<source>IMBARCAZIONI.SCADRUOLEQ</source>
</field>
<field x="32" y="3" type="Data" width="10" id="104" pattern="1">
<source>IMBARCAZIONI.SCADCOLL</source>
</field>
<field type="Stringa" width="30" id="201" pattern="1">
<source>IMBARCAZIONI.MOTOBARCA</source>
</field>
</section>
<section type="Foot" />
<section type="Foot" level="1" />
<sql>USE IMBARCAZIONI
JOIN CLIFO INTO TIPOCF=="F" CODCF=CODCF
JOIN SOCICOOP INTO CODCF=CODCF
FROM CODCF=#DASOCIO
TO CODCF=#ASOCIO
</sql>
</report>

114
co/co2300a.uml Executable file
View File

@ -0,0 +1,114 @@
#include "co2300a.h"
TOOLBAR "" 0 20 0 2
BUTTON DLG_OK 10 2
BEGIN
PROMPT -12 -1 ""
END
BUTTON DLG_QUIT 10 2
BEGIN
PROMPT -22 -1 ""
END
ENDPAGE
PAGE "Stampa controllo scadenze" 0 -1 0 19
GROUPBOX DLG_NULL 78 4
BEGIN
PROMPT 1 1 "Selezione soci"
END
NUMBER F_DASOCIO 6
BEGIN
PROMPT 2 2 "Da socio "
FIELD DASOCIO
//FLAG "Z"
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_DASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_DASOCIO CODCF
OUTPUT F_DESDASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESDASOCIO 50
BEGIN
PROMPT 25 2 ""
FLAGS "D"
END
NUMBER F_ASOCIO 6
BEGIN
PROMPT 2 3 "A socio "
//FLAG "Z"
FIELD ASOCIO
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_ASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_ASOCIO CODCF
OUTPUT F_DESASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESASOCIO 50
BEGIN
PROMPT 25 3 ""
FLAGS "D"
END
GROUPBOX DLG_NULL 78 3
BEGIN
PROMPT 1 5 "Scadenza"
END
LIST F_MESE 2 10
BEGIN
PROMPT 2 6 "Mese "
FLAGS "MZ"
FIELD MESE
END
NUMBER F_DAANNO 4
BEGIN
PROMPT 27 6 "da anno "
FLAGS "A"
FIELD DAANNO
END
NUMBER F_AANNO 4
BEGIN
PROMPT 47 6 "a anno "
FLAGS "A"
FIELD AANNO
END
RADIOBUTTON F_CONTROLLA 25
BEGIN
PROMPT 2 8 "Controlla la data"
ITEM "1|licenza di navigazione"
ITEM "2|licenza di pesca"
ITEM "3|ruolino equipaggio"
ITEM "4|collaudo"
FIELD CONTROLLA
END
RADIOBUTTON F_ORDINAMENTO 25
BEGIN
PROMPT 40 8 "Ordinamento"
ITEM "1|Codice"
ITEM "2|Alfabetico"
END
ENDPAGE
ENDMASK

79
co/co2300b.rep Executable file
View File

@ -0,0 +1,79 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="co2300b" lpi="6">
<description>Stampa controllo scadenze licenza</description>
<font face="Courier New" size="10" />
<section type="Head">
<field type="Stringa" width="60" pattern="1">
<source>#SYSTEM.RAGSOC</source>
</field>
<field x="46.5" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="52" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="64.5" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="69" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="133.08" type="Testo" valign="bottom" width="6" pattern="1" text="Data" />
<field x="139.08" type="Data" valign="bottom" align="right" width="12" pattern="1">
<source>#SYSTEM.DATE</source>
</field>
<field x="157.08" type="Testo" valign="bottom" width="5" pattern="1" text="Pag." />
<field x="165.08" type="Numero" valign="bottom" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="1" y="1.5" type="Testo" valign="center" width="70" height="2" pattern="1" text="STAMPA CONTROLLO SCADENZE DATA LICENZA">
<font face="Courier New" bold="1" size="14" />
</field>
<field x="25" y="3.5" type="Testo" valign="center" width="20" height="2" pattern="1" text="MESE">
<font face="Courier New" bold="1" size="14" />
</field>
<field x="35" y="4" type="Array" width="20" height="2" pattern="1">
<font face="Courier New" bold="1" size="14" />
<source>#MESE</source>
<list>
<li Value="Gennaio" Code="01" />
<li Value="Febbraio" Code="02" />
<li Value="Marzo" Code="03" />
<li Value="Aprile" Code="04" />
<li Value="Maggio" Code="05" />
<li Value="Giugno" Code="06" />
<li Value="Luglio" Code="07" />
<li Value="Agosto" Code="08" />
<li Value="Settembre" Code="09" />
<li Value="Ottobre" Code="10" />
<li Value="Novembre" Code="11" />
<li Value="Dicembre" Code="12" />
</list>
</field>
<field border="2" y="6" type="Linea" width="90" height="0" pattern="1" />
<field y="7" type="Testo" width="6" pattern="1" text="Codice" />
<field x="10" y="7" type="Testo" width="5" pattern="1" text="Socio" />
<field x="43" y="7" type="Testo" width="10" pattern="1" text="Licenza" />
<field x="60" y="7" type="Testo" width="10" pattern="1" text="Data" />
<field border="2" y="9" type="Linea" width="90" height="0" pattern="1" />
</section>
<section type="Head" level="1" />
<section type="Body" />
<section type="Body" level="1">
<field type="Numero" align="right" width="6" pattern="1">
<source>CLIFO.CODCF</source>
</field>
<field x="10" type="Stringa" width="30" height="2" pattern="1">
<source>CLIFO.RAGSOC</source>
</field>
<field x="43" type="Stringa" width="15" pattern="1">
<source>LICENZA</source>
</field>
<field x="60" type="Data" width="10" pattern="1">
<source>DATASCALIC</source>
</field>
</section>
<section type="Foot" />
<section type="Foot" level="1" />
<sql>USE SOCICOOP
JOIN CLIFO INTO TIPOCF=="F" CODCF=CODCF
FROM CODCF=#DASOCIO
TO CODCF=#ASOCIO
</sql>
</report>

113
co/co2400.cpp Executable file
View File

@ -0,0 +1,113 @@
#include <applicat.h>
#include <automask.h>
#include <form.h>
#include <report.h>
#include <reprint.h>
#include <tabutil.h>
#include <textset.h>
#include "co2.h"
#include "co2400a.h"
#include "socicoop.h"
#include "..\ve\velib.h"
#include "..\ve\velib07.h"
////////////////////////////////////////////////////////
// MASCHERA
////////////////////////////////////////////////////////
class TRegistroCS_mask : public TAutomask
{
protected:
bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
TRegistroCS_mask();
virtual ~TRegistroCS_mask() {};
};
TRegistroCS_mask::TRegistroCS_mask() :TAutomask ("co2400a")
{
}
bool TRegistroCS_mask::on_field_event(TOperable_field& f, TField_event e, long jolly)
{
return true;
}
/////////////////////////////////////////////////////////////
// REPORT
/////////////////////////////////////////////////////////////
class TRegistroCS_report : public TReport
{
protected:
virtual bool use_mask() { return false; }
public:
TRegistroCS_report() {}
};
////////////////////////////////////////////////////////
// APPLICAZIONE
////////////////////////////////////////////////////////
class TRegistroCS : public TSkeleton_application
{
public:
virtual void main_loop();
};
////////////////////////////////////////////////////////
// APPLICAZIONE
////////////////////////////////////////////////////////
class TEstrattoConto : public TSkeleton_application
{
public:
virtual void main_loop();
};
void TEstrattoConto::main_loop()
{
TRegistroCS_mask m;
while (m.run() == K_ENTER)
{
TReport_book book;
TRegistroCS_report rep;
if (rep.load("co2400a"))
{
const TString8 codnum = m.get(F_CODNUM);
const TString8 tipodoc = m.get(F_TIPODOC);
const int anno = m.get_int(F_ANNO);
const int perc = m.get_int(F_PERC);
// creo recordset dei soci da stampare
TISAM_recordset soci("USE SOCICOOP\nFROM CODCF=#DASOCIO\nTO CODCF=#ASOCIO");
soci.set_var("#DASOCIO", m.get_long(F_DASOCIO));
soci.set_var("#ASOCIO", m.get_long(F_ASOCIO));
for (bool ok = soci.move_first(); ok; ok = soci.move_next())
{
TRecordset* r = rep.recordset();
long codcf = soci.get(SC_CODCF).as_int();
r->set_var("#SOCIO", soci.get("CODCF"));
r->set_var("#ANNO", TVariant(long(anno)));
r->set_var("#CODNUM", codnum);
r->set_var("#TIPODOC", tipodoc);
r->set_var("#PERC", TVariant(long(perc)), true);
book.add(rep);
}
book.print_or_preview();
}
}
}
int co2400(int argc, char* argv[])
{
TEstrattoConto a;
a.run(argc, argv, TR("Stampa registro carico e scarico"));
return 0;
}

12
co/co2400a.h Executable file
View File

@ -0,0 +1,12 @@
// campi per la maschera co2400a
#define F_DASOCIO 101
#define F_ASOCIO 102
#define F_CODNUM 103
#define F_DESNUM 104
#define F_TIPODOC 105
#define F_DESTIP 106
#define F_ANNO 107
#define F_PERC 108
#define F_DESDASOCIO 109
#define F_DESASOCIO 110

185
co/co2400a.rep Executable file
View File

@ -0,0 +1,185 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="co2400a" orientation="2" lpi="6">
<description>Registro soci carico e scarico</description>
<font face="Courier New" size="7" />
<section type="Head">
<field x="1" type="Testo" width="130" pattern="1" text="Registro cronologico di carico e scarico degli animali allevati (art.18 - bis del DPR 29.09.73 nr.600)" />
<field x="160" type="Stringa" width="10" pattern="1" text="Pagina">
<source>#REPORT.PAGE</source>
</field>
<field x="1" y="2" type="Testo" width="3" pattern="1" text="Nr." />
<field x="5" y="2" type="Testo" width="20" pattern="1" text="Anno d'imposta" />
<field x="20" y="2" type="Testo" align="center" width="52" pattern="1" text="Specie allevata" />
<field x="73" y="2" type="Testo" align="center" width="25" pattern="1" text="Ciclo" />
<field x="100" y="2" type="Testo" align="center" width="25" pattern="1" text="Ciclo" />
<field x="127" y="2" type="Testo" align="center" width="15" height="2" pattern="1" text="Cessioni imponibili">
<font face="Courier New" bold="1" size="7" />
</field>
<field x="142" y="2" type="Testo" align="center" width="28" pattern="1" text="Uso interno amministrativo" />
<field x="5" y="3" type="Numero" valign="center" align="right" width="13" pattern="1">
<source>#ANNO</source>
</field>
<field x="20" y="3" type="Testo" align="center" width="52" height="1.5" pattern="1" text="Molluschi">
<font face="Courier New" bold="1" size="7" />
</field>
<field x="73" y="3" type="Testo" align="center" width="25" pattern="1" text="Mitilicoltura">
<font face="Courier New" bold="1" size="7" />
</field>
<field x="100" y="3" type="Testo" align="center" width="25" pattern="1" text="Venericoltura">
<font face="Courier New" bold="1" size="7" />
</field>
<field x="142" y="3" type="Testo" align="center" width="25" height="2" pattern="1" text="MOLLUSCHI RACCOLTI IN ACQUE INDISPONIBILI">
<font face="Courier New" bold="1" size="7" />
</field>
<field x="73" y="4" type="Testo" align="center" width="25" pattern="1" text="(cozze...)" />
<field x="100" y="4" type="Testo" align="center" width="24" pattern="1" text="(vongole veraci...)" />
<field x="5" y="5" type="Testo" align="center" width="13" pattern="1" text="Data" />
<field x="20" y="5" type="Testo" width="40" pattern="1" text="Descrizione operazione">
<font face="Courier New" bold="1" size="7" />
</field>
<field x="61" y="5" type="Testo" width="11" height="2" pattern="1" text="Nr.doc. (DDT o Fatt.)">
<font face="Courier New" bold="1" size="7" />
</field>
<field x="73" y="5" type="Testo" align="center" width="12" height="2" pattern="1" text="Incrementi (KG)" />
<field x="86" y="5" type="Testo" align="center" width="12" height="2" pattern="1" text="Decrementi (KG)" />
<field x="100" y="5" type="Testo" align="center" width="12" height="2" pattern="1" text="Incrementi (KG)" />
<field x="113" y="5" type="Testo" align="center" width="12" height="2" pattern="1" text="Decrementi (KG)" />
<field x="130" y="5" type="Testo" align="center" width="10" height="2" pattern="1" text="Importo (&#80;)" />
<field x="142" y="5" type="Testo" align="center" width="17" height="2" pattern="1" text="Quantit&#E0; cedute (KG)" />
<field x="158" y="5" type="Testo" align="center" width="15" height="2" pattern="1" text="Importo cessioni (&#80;)" />
</section>
<section type="Head" level="1" height="2">
<prescript description="H1 PRESCRIPT">MESSAGE RESET,F1
MESSAGE RESET,B1</prescript>
<field type="Stringa" width="90" pattern="1" text="Soggetto allevatore: ">
<font face="Courier New" bold="1" size="9" />
<source>CLIFO.RAGSOC[1,30]+' '+TRIM(CLIFO.RAGSOC[31,50])</source>
<postscript description="H1.0 POSTSCRIPT">"101@.CODCF" @
#EC_SOCIO !
</postscript>
</field>
<field x="89" type="Stringa" width="40" pattern="1" text="Codice fiscale: ">
<font face="Courier New" bold="1" size="9" />
<source>CLIFO.COFI</source>
<postscript description="H1.0 POSTSCRIPT">"101@.CODCF" @
#EC_SOCIO !
</postscript>
</field>
<field x="130" type="Stringa" width="40" pattern="1" text="Partita IVA:">
<font face="Courier New" bold="1" size="9" />
<source>CLIFO.PAIV</source>
<postscript description="H1.0 POSTSCRIPT">"101@.CODCF" @
#EC_SOCIO !
</postscript>
</field>
</section>
<section type="Body" />
<section type="Body" level="1">
<prescript description="B1 PRESCRIPT">99 @
1 +
99 !</prescript>
<field x="5" type="Data" width="13" pattern="1">
<source>DOC.DATADOC</source>
</field>
<field x="61" type="Numero" align="right" width="6" pattern="1">
<source>DOC.NDOC</source>
</field>
<field x="67" type="Testo" width="3" pattern="1" text="&#2F;C" />
<field x="73" type="Testo" hidden="1" width="12" pattern="1" text="INCREMENTI" />
<field x="100" type="Testo" hidden="1" width="12" pattern="1" text="INCREMENTI" />
<field x="1" type="Numero" align="right" width="3" id="99" pattern="1" />
<field x="20" type="Array" width="40" id="199" pattern="1">
<source>ANAMAG.USER5</source>
<list>
<li Value="Conferimento mitili in cooperativa" Code="M">MESSAGE RESET,202</li>
<li Value="Conferimento vongole in cooperativa" Code="V">MESSAGE RESET,201</li>
</list>
</field>
<field x="86" type="Numero" align="right" width="12" id="201" pattern="1" text="#.###.###,@@">
<source>RDOC.QTA</source>
<postscript description="B1.201 POSTSCRIPT">MESSAGE ADD,F1.201</postscript>
</field>
<field x="113" type="Numero" align="right" width="12" id="202" pattern="1" text="#.###.###,@@">
<source>RDOC.QTA</source>
<postscript description="B1.202 POSTSCRIPT">MESSAGE ADD,F1.202</postscript>
</field>
<field x="127" type="Valuta" align="right" width="13" id="203" pattern="1" text="###.###.###,@@">
<source>33.TOTMER</source>
<postscript description="B1.203 POSTSCRIPT">MESSAGE ADD,F1.203</postscript>
</field>
<field x="142" type="Numero" align="right" width="12" id="204" pattern="1" hide_zero="1" text="#.###.###,@@">
<prescript description="B1.204 PRESCRIPT">202 @
"#PERC" @
*
100 &#2F;
#THIS !
</prescript>
<postscript description="B1.204 POSTSCRIPT">MESSAGE ADD,F1.204</postscript>
</field>
<field x="156" type="Valuta" align="right" width="15" id="205" pattern="1" hide_zero="1" text="###.###.###,@@">
<prescript description="B1.205 PRESCRIPT">199 @
"V" = IF
203 @
"#PERC" @
*
100 &#2F;
ELSE
0
THEN
#THIS !
</prescript>
<postscript description="B1.205 POSTSCRIPT">MESSAGE ADD,F1.205</postscript>
</field>
</section>
<section type="Foot" />
<section type="Foot" level="1">
<field x="54" y="1" type="Testo" align="right" width="10" pattern="1" text="TOTALI">
<font face="Courier New" bold="1" size="9" />
</field>
<field x="50" y="2" type="Testo" width="35" pattern="1" text="TOTALI CESSIONI PER QUANTITA'">
<font face="Courier New" bold="1" size="9" />
</field>
<field x="100" y="2" type="Testo" align="center" width="10" pattern="1" text="+">
<font face="Courier New" bold="1" size="12" />
</field>
<field x="129" y="2" type="Testo" align="center" width="10" pattern="1" text="=">
<font face="Courier New" bold="1" size="12" />
</field>
<field x="155" y="2" type="Testo" width="13" pattern="1" text="Quintali">
<font face="Courier New" bold="1" size="9" />
</field>
<field x="3" y="3" type="Testo" width="5" pattern="1" text="NOTE:" />
<field x="3" y="4" type="Testo" width="168" pattern="1" text="- I soggetti i quali ...svolgono attivit&#E0; di allevamento devono tenere un registro cronologico di carico e scarico degli animali alllevati, distintamente per specie e ciclo di allevamento, con l'indicazione degli incrementi e decrementi verificatisi per qualsiasi." />
<field x="3" y="5.25" type="Testo" width="75" pattern="1" text="- Le registrazioni devono essere effettuate cronologicamente entro 60 gg. dalla data delle operazioni." />
<field x="2.65" y="6.25" type="Testo" width="106" pattern="1" text="- Non &#E8; obbligatoria la bollatura iniziale n&#E8; la vidimazione annuale del registro. Le pagine devono essere numerate progressivamente per anno solare" />
<field x="86" y="1" type="Numero" align="right" width="12" id="201" pattern="1" text="#.###.###,@@" />
<field x="113" y="1" type="Numero" align="right" width="12" id="202" pattern="1" text="#.###.###,@@" />
<field x="127" y="1" type="Valuta" align="right" width="13" id="203" pattern="1" text="###.###.###,@@" />
<field x="142" y="1" type="Numero" align="right" width="12" id="204" pattern="1" text="#.###.###,@@" />
<field x="156" y="1" type="Valuta" align="right" width="15" id="205" pattern="1" text="###.###.###,@@" />
<field x="86" y="2" type="Numero" align="right" width="12" id="301" pattern="1" text="#.###.###,@@">
<font face="Courier New" bold="1" size="9" />
<source>#201</source>
</field>
<field x="113" y="2" type="Numero" align="right" width="12" id="302" pattern="1" text="#.###.###,@@">
<font face="Courier New" bold="1" size="9" />
<source>#202</source>
</field>
<field x="142" y="2" type="Numero" align="right" width="12" id="305" pattern="1" text="#.###.###,@@">
<font face="Courier New" bold="1" size="9" />
<source>(#301+#302)&#2F;100</source>
</field>
</section>
<sql>USE DOC
KEY 2
SELECT (CODNUM=#CODNUM)&#26;&#26;(TIPODOC=#TIPODOC)&#26;&#26;(ANAMAG.USER5!="")
JOIN CLIFO ALIAS 101 INTO TIPOCF==TIPOCF CODCF==CODCF
JOIN RDOC INTO CODNUM==CODNUM ANNO==ANNO PROVV==PROVV NDOC==NDOC NRIGA==1
JOIN ANAMAG TO RDOC INTO CODART==CODART
FROM TIPOCF='F' CODCF=#SOCIO PROVV='D' ANNO=#ANNO
TO TIPOCF='F' CODCF=#SOCIO PROVV='D' ANNO=#ANNO
</sql>
</report>

142
co/co2400a.uml Executable file
View File

@ -0,0 +1,142 @@
#include "co2400a.h"
TOOLBAR "" 0 20 0 2
BUTTON DLG_OK 10 2
BEGIN
PROMPT -12 -1 ""
END
BUTTON DLG_QUIT 10 2
BEGIN
PROMPT -22 -1 ""
END
ENDPAGE
PAGE "Stampa registro soci carico e scarico" 0 -1 0 19
GROUPBOX DLG_NULL 78 4
BEGIN
PROMPT 1 1 "Selezione soci"
END
NUMBER F_DASOCIO 6
BEGIN
PROMPT 2 2 "Da socio "
FIELD DASOCIO
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_DASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_DASOCIO CODCF
OUTPUT F_DESDASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESDASOCIO 50
BEGIN
PROMPT 25 2 ""
FLAGS "D"
END
NUMBER F_ASOCIO 6
BEGIN
PROMPT 2 3 "A socio "
FIELD ASOCIO
USE LF_SOCICOOP KEY 1
JOIN LF_CLIFO TO LF_SOCICOOP INTO TIPOCF=='F' CODCF==CODCF
INPUT CODCF F_ASOCIO
DISPLAY "Codice" CODCF
DISPLAY "Ragione sociale@50" 20->RAGSOC
DISPLAY "Codice fiscale@16" 20->COFI
OUTPUT F_ASOCIO CODCF
OUTPUT F_DESASOCIO 20->RAGSOC
CHECKTYPE NORMAL
END
STRING F_DESASOCIO 50
BEGIN
PROMPT 25 3 ""
FLAGS "D"
END
GROUPBOX DLG_NULL 78 4
BEGIN
PROMPT 1 5 "Selezione documenti"
END
STRING F_CODNUM 4
BEGIN
PROMPT 2 6 "Numeraz. "
FIELD CODNUM
HELP "Codice numerazione"
USE %NUM
INPUT CODTAB F_CODNUM
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_CODNUM CODTAB
OUTPUT F_DESNUM S0
CHECKTYPE FORCED
FLAG "UPA"
WARNING "Numerazione assente"
END
STRING F_DESNUM 50
BEGIN
PROMPT 24 6 ""
HELP "Descrizione numerazione"
USE %NUM KEY 2
INPUT S0 F_DESNUM
DISPLAY "Descrizione@50" S0
DISPLAY "Codice" CODTAB
COPY OUTPUT F_CODNUM
END
STRING F_TIPODOC 4
BEGIN
PROMPT 2 7 "Tipo doc. "
FIELD CODNUM
HELP "Tipo documento"
USE %TIP
INPUT CODTAB F_TIPODOC
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_TIPODOC CODTAB
OUTPUT F_DESTIP S0
CHECKTYPE FORCED
FLAG "UPA"
WARNING "Tipo documento assente"
END
STRING F_DESTIP 50
BEGIN
PROMPT 24 7 ""
HELP "Descrizione tipo doc."
USE %TIP KEY 2
INPUT S0 F_DESTIP
DISPLAY "Descrizione@50" S0
DISPLAY "Codice" CODTAB
COPY OUTPUT F_TIPODOC
END
NUMBER F_ANNO 4
BEGIN
PROMPT 2 10 "Anno "
FIELD #ANNO
CHECKTYPE REQUIRED
END
NUMBER F_PERC 2
BEGIN
PROMPT 2 11 "Percentuale "
FIELD #PERC
CHECKTYPE REQUIRED
END
ENDPAGE
ENDMASK

View File

@ -37,7 +37,7 @@ Item_01 = "Gestione conferimenti/prestazioni", "co0 -6", "F"
Item_02 = "Importazione conferimenti", "co0 -7", "F"
Item_03 = "Aggiornamento prezzi", "co0 -8", "F"
Item_04 = "Fatturazione conferimenti", "co1 -3", "F"
Item_04 = "Contabilizzazione soci", "co1 -4", "F"
Item_05 = "Contabilizzazione soci", "co1 -4", "F"
[COMENU_014]
Caption = "Stampe"
@ -46,7 +46,12 @@ Module = 29
Flags = ""
Item_01 = "Stampa libro soci", "ba8 -4 co1100a", "F"
Item_02 = "Stampa conferimenti", "ve1 -3 co1200a", "F"
Item_02 = "Stampa prestazioni", "ve1 -3 co1800a", "F"
Item_03 = "Stampa prestazioni", "ve1 -3 co1800a", "F"
Item_04 = "Stampa estratto conto", "co1 -2", "F"
Item_05 = "Stampa saldi estratto conto", "ve1 -3 co1600a", "F"
Item_06 = "Stampa saldi estratto conto per banca", "ve1 -3 co1700a", "F"
Item_07 = "Stampa progressivi conferimenti", "co1 -8", "F"
Item_08 = "Stampa anagrafica soci", "co2 -0", "F"
Item_09 = "Stampa soci per data licenza", "co2 -1", "F"
Item_10 = "Stampa controllo scadenze", "co2 -2", "F"
Item_11 = "Stampa registro carico/scarico", "co2 -3", "F"