d71be5b0cf
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
109 lines
2.7 KiB
C++
Executable File
109 lines
2.7 KiB
C++
Executable File
#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;
|
|
}
|