Prima versione funzionante della stampastatistiche temporali.
git-svn-id: svn://10.65.10.50/trunk@5658 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
c05d9177eb
commit
228b667b84
@ -26,7 +26,7 @@ PROVVPAG|4|18|2|Provvigione pagata
|
||||
PAGMAT|4|18|2|Pagamento maturato
|
||||
PROVVMAT|4|18|2|Provvigione maturata
|
||||
TIPOPAGPR|2|1|0|Tipo pagamento della provvigione (?)
|
||||
2
|
||||
3
|
||||
CODAGE+NROW|
|
||||
CODAGE+ANNO+CODNUM+NDOC+NRIGA|
|
||||
CODAGE+DATADOC|X
|
||||
|
247
pr/pr1400.cpp
247
pr/pr1400.cpp
@ -1,5 +1,252 @@
|
||||
// Stampa statistiche temporali per agente
|
||||
#include <applicat.h>
|
||||
#include <urldefid.h>
|
||||
#include <form.h>
|
||||
#include <mask.h>
|
||||
#include <printer.h>
|
||||
|
||||
#include "provv.h"
|
||||
#include "agenti.h"
|
||||
|
||||
#include "pr1400.h"
|
||||
#include "pr1400a.h"
|
||||
|
||||
class TForm_stampaprstat:public TForm
|
||||
{
|
||||
TSorted_cursor *_cur;
|
||||
TString_array _month_description;
|
||||
|
||||
public:
|
||||
virtual TCursor* cursor() const { return (TCursor*)_cur; }
|
||||
void set_cursor(TSorted_cursor* c) { _cur = c; }
|
||||
void set_month_descriptions(const TString_array& d) { _month_description = d; }
|
||||
virtual bool validate(TForm_item& fld, TToken_string& val);
|
||||
TForm_stampaprstat(const char *name,const char *code) ;
|
||||
virtual ~TForm_stampaprstat();
|
||||
};
|
||||
|
||||
TForm_stampaprstat::TForm_stampaprstat(const char *name,const char *code)
|
||||
: TForm(name,code)
|
||||
{
|
||||
}
|
||||
|
||||
TForm_stampaprstat::~TForm_stampaprstat()
|
||||
{
|
||||
}
|
||||
|
||||
bool TForm_stampaprstat::validate(TForm_item& fld, TToken_string& val)
|
||||
{
|
||||
const TString code(val.get(0)); // Codice del messaggio
|
||||
if (code == "_MONTHRANGE") // Per settare la descrizione del range di mesi relativi a questo item
|
||||
{
|
||||
const short id = fld.id();
|
||||
TString& descr = (TString&)_month_description[id - F_MON1];
|
||||
fld.set(descr);
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
return TForm::validate(fld, val);
|
||||
}
|
||||
|
||||
class TStampa_statistiche_app:public TApplication
|
||||
{
|
||||
TMask *_msk;
|
||||
TForm_stampaprstat *_frm;
|
||||
|
||||
protected:
|
||||
virtual bool create();
|
||||
virtual bool destroy();
|
||||
virtual bool menu(MENU_TAG) ;
|
||||
static bool daterange_handler(TMask_field& f, KEY key);
|
||||
static bool agerange_handler(TMask_field& f, KEY key);
|
||||
public:
|
||||
TStampa_statistiche_app() {};
|
||||
~TStampa_statistiche_app() {};
|
||||
};
|
||||
|
||||
bool TStampa_statistiche_app::daterange_handler(TMask_field& f, KEY key)
|
||||
{
|
||||
if (f.to_check(key))
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
TDate from(m.get_date(F_DATEFROM));
|
||||
TDate to(m.get_date(F_DATETO));
|
||||
if (from.ok() && to.ok() && (to < from || to.year() != from.year()))
|
||||
return f.error_box("L'intervallo date specificato non e' corretto");
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool TStampa_statistiche_app::agerange_handler(TMask_field& f, KEY key)
|
||||
{
|
||||
if (f.to_check(key))
|
||||
{
|
||||
TMask& m = f.mask();
|
||||
const bool ord_cod = m.get(F_ORDINAMENTO)[0] == 'C';
|
||||
TString from(m.get(ord_cod ? F_DAAGE : F_DADES));
|
||||
TString to(m.get(ord_cod ? F_AAGE : F_ADES));
|
||||
if (from.not_empty() && to.not_empty() && to < from)
|
||||
return f.error_box("L'intervallo agenti specificato non e' corretto");
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool TStampa_statistiche_app::create()
|
||||
{
|
||||
_msk = new TMask("pr1400") ;
|
||||
_frm = new TForm_stampaprstat("pr1400a","");
|
||||
_msk->set_handler(F_DAAGE,agerange_handler);
|
||||
_msk->set_handler(F_AAGE,agerange_handler);
|
||||
_msk->set_handler(F_DADES,agerange_handler);
|
||||
_msk->set_handler(F_ADES,agerange_handler);
|
||||
_msk->set_handler(F_DATEFROM,daterange_handler);
|
||||
_msk->set_handler(F_DATETO,daterange_handler);
|
||||
dispatch_e_menu(MENU_ITEM(1));
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool TStampa_statistiche_app::menu(MENU_TAG)
|
||||
{
|
||||
const char * months[] = { "Gen", "Feb", "Mar", "Apr", "Mag", "Giu",
|
||||
"Lug", "Ago", "Set", "Ott", "Nov", "Dic" };
|
||||
TString_array descriptions;
|
||||
TString cond; // Stringa identificante la condizione di raggruppamento
|
||||
TString desc; // Stringa per settare la descrizione del range di mesi
|
||||
TString ds1, ds2; // Date in formato stringa per settare la condizione
|
||||
TDate date_from, date_to;
|
||||
TString age_from, age_to;
|
||||
TString filter_expr;
|
||||
TArray date_range; // Array di date per settare i range
|
||||
TSorted_cursor * cur1 = new TSorted_cursor(_frm->relation(),"CODAGE|124->DATADOC","",1);
|
||||
TSorted_cursor * cur2 = new TSorted_cursor(_frm->relation(),"RAGSOC|124->DATADOC","",2);
|
||||
|
||||
_frm->set_cursor(cur1);
|
||||
TRectype rec_from(LF_AGENTI), rec_to(LF_AGENTI);
|
||||
|
||||
while (_msk->run() == K_ENTER)
|
||||
{
|
||||
const bool normal_order = _msk->get(F_ORDINAMENTO)[0] != 'R';
|
||||
date_from = _msk->get_date(F_DATEFROM);
|
||||
date_to = _msk->get_date(F_DATETO);
|
||||
age_from = _msk->get(normal_order ? F_DAAGE : F_DADES);
|
||||
age_to = _msk->get(normal_order ? F_AAGE : F_ADES);
|
||||
|
||||
if (!date_from.ok() || !date_to.ok())
|
||||
{
|
||||
error_box("Inserire un range di date valido");
|
||||
continue;
|
||||
}
|
||||
|
||||
descriptions.destroy();
|
||||
date_range.destroy();
|
||||
|
||||
// Setta l'array per il range dei mesi
|
||||
int month_from = date_from.month();
|
||||
int month_to = date_to.month();
|
||||
int inc_month = _msk->get_int(F_GROUPMONTH);
|
||||
for (int m = month_from; m <= month_to; m += inc_month)
|
||||
{
|
||||
desc = months[m - 1];
|
||||
const int index = m + inc_month > 12 ? 12 : m + inc_month - 1;
|
||||
if (inc_month > 1)
|
||||
{
|
||||
desc << "-";
|
||||
desc << months[index - 1];
|
||||
}
|
||||
descriptions.add(desc);
|
||||
}
|
||||
|
||||
m = descriptions.items();
|
||||
while (m < 12)
|
||||
{
|
||||
descriptions.add(""); // Aggiunge gli elementi vuoti necessari
|
||||
m++;
|
||||
}
|
||||
|
||||
_frm->set_month_descriptions(descriptions);
|
||||
|
||||
// Setta i range delle date per raggruppare le sottosezioni
|
||||
TDate d(date_from);
|
||||
|
||||
for (m = 1; m <= 12; m++)
|
||||
{
|
||||
date_range.add(d);
|
||||
if (d != botime)
|
||||
{
|
||||
d.addmonth(inc_month-1);
|
||||
d.set_end_month();
|
||||
if (d > date_to)
|
||||
d = date_to;
|
||||
date_range.add(d);
|
||||
d += 1; // Primo giorno del mese successivo
|
||||
if (d > date_to)
|
||||
d = botime;
|
||||
}
|
||||
else
|
||||
date_range.add(d); // Tutti quelli che eccedono la data di fine sono botime
|
||||
}
|
||||
|
||||
// Setta le condizioni di raggruppamento per ognuna delle sottosezioni
|
||||
// I nomi sono PRS1, PRS2, PRS3... PRS6
|
||||
for (m = 1; m <= 12; m++)
|
||||
{
|
||||
desc.format("PRS%d",m);
|
||||
TForm_subsection& ssec = (TForm_subsection&)_frm->find_field('B', odd_page, desc); // Sottosezione padre
|
||||
const int base = 2 * (m-1);
|
||||
ds1 = ((TDate&) date_range[base]).string(ANSI);
|
||||
ds2 = ((TDate&) date_range[base+1]).string(ANSI);
|
||||
cond.format("(ANSI(%d->DATADOC)>=\"%s\") && (ANSI(%d->DATADOC)<=\"%s\") && (%d->NRIGA==\"1\")",
|
||||
LF_PROVV, (const char*)ds1, LF_PROVV, (const char*) ds2, LF_PROVV);
|
||||
ssec.setcondition(cond, _strexpr);
|
||||
}
|
||||
|
||||
filter_expr.format("(ANSI(%d->DATADOC)>=\"%s\") && (ANSI(%d->DATADOC)<=\"%s\")",
|
||||
LF_PROVV, (const char*)date_from.string(ansi), LF_PROVV, (const char*) date_to.string(ANSI));
|
||||
|
||||
// Setta il filtro sul cursore (attenzione se e' ordinato per ragione sociale)
|
||||
TSorted_cursor* cur = normal_order ? cur1 : cur2;
|
||||
|
||||
// Setta gli estremi (codagente o ragione sociale)
|
||||
rec_from.zero();
|
||||
rec_to.zero();
|
||||
rec_from.put(normal_order ? AGE_CODAGE : AGE_RAGSOC, age_from);
|
||||
rec_to.put(normal_order ? AGE_CODAGE : AGE_RAGSOC, age_to);
|
||||
|
||||
cur->setregion(rec_from, rec_to);
|
||||
cur->setfilter(filter_expr,TRUE); // Update relation too...
|
||||
_frm->set_cursor(cur);
|
||||
// Stampa el todo
|
||||
const int hh = 6;
|
||||
const int fh = 1;
|
||||
const int fl = printer().formlen();
|
||||
|
||||
int rows[4]; // Righe orizzontali
|
||||
rows[0] = hh-2;
|
||||
rows[1] = hh;
|
||||
rows[2] = fl-1;
|
||||
rows[3] = 0;
|
||||
_frm->genera_intestazioni(odd_page, hh-1);
|
||||
_frm->genera_fincatura(odd_page, hh-2, fl-1, rows);
|
||||
|
||||
_frm->print();
|
||||
_msk->reset();
|
||||
|
||||
}
|
||||
delete cur1;
|
||||
delete cur2;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool TStampa_statistiche_app::destroy()
|
||||
{
|
||||
delete _msk;
|
||||
delete _frm;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
int pr1400(int argc, char** argv)
|
||||
{
|
||||
TStampa_statistiche_app a;
|
||||
a.run(argc,argv,"Statistiche temporali");
|
||||
return 0;
|
||||
}
|
||||
|
12
pr/pr1400.h
Executable file
12
pr/pr1400.h
Executable file
@ -0,0 +1,12 @@
|
||||
#define F_DAAGE 101
|
||||
#define F_AAGE 102
|
||||
#define F_DADES 103
|
||||
#define F_ADES 104
|
||||
#define F_ORDINAMENTO 105
|
||||
#define F_DATEFROM 106
|
||||
#define F_DATETO 107
|
||||
#define F_GROUPMONTH 108
|
||||
#define F_DESFROM 109
|
||||
#define F_DESTO 110
|
||||
#define G_CODAGE 1
|
||||
#define G_RAGSOC 2
|
130
pr/pr1400.uml
Executable file
130
pr/pr1400.uml
Executable file
@ -0,0 +1,130 @@
|
||||
#include "pr1400.h"
|
||||
|
||||
PAGE "Stampa statistiche temporali" -1 -1 78 12
|
||||
|
||||
LISTBOX F_ORDINAMENTO 16
|
||||
BEGIN
|
||||
PROMPT 2 2 "Ordinamento per "
|
||||
FLAGS "U"
|
||||
ITEM "C|Codice"
|
||||
MESSAGE HIDE,G_RAGSOC@|SHOW,G_CODAGE@
|
||||
ITEM "R|Ragione sociale"
|
||||
MESSAGE SHOW,G_RAGSOC@|HIDE,G_CODAGE@
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 76 4
|
||||
BEGIN
|
||||
PROMPT 2 3 "Intervallo agenti"
|
||||
END
|
||||
|
||||
STRING F_DAAGE 5
|
||||
BEGIN
|
||||
PROMPT 3 4 "Dall'agente "
|
||||
FLAGS "UZ"
|
||||
USE LF_AGENTI
|
||||
INPUT CODAGE F_DAAGE
|
||||
DISPLAY "Codice" CODAGE
|
||||
DISPLAY "Descr@50" RAGSOC
|
||||
OUTPUT F_DAAGE CODAGE
|
||||
OUTPUT F_DESFROM RAGSOC
|
||||
CHECKTYPE NORMAL
|
||||
GROUP G_CODAGE
|
||||
END
|
||||
|
||||
STRING F_DESFROM 50
|
||||
BEGIN
|
||||
PROMPT 25 4 ""
|
||||
FLAGS "D"
|
||||
GROUP G_CODAGE
|
||||
END
|
||||
|
||||
STRING F_AAGE 5
|
||||
BEGIN
|
||||
PROMPT 3 5 "All'agente "
|
||||
FLAGS "UZ"
|
||||
COPY USE F_DAAGE
|
||||
INPUT CODAGE F_AAGE
|
||||
COPY DISPLAY F_DAAGE
|
||||
OUTPUT F_AAGE CODAGE
|
||||
OUTPUT F_DESTO RAGSOC
|
||||
CHECKTYPE NORMAL
|
||||
GROUP G_CODAGE
|
||||
END
|
||||
|
||||
STRING F_DESTO 50
|
||||
BEGIN
|
||||
PROMPT 25 5 ""
|
||||
FLAGS "D"
|
||||
GROUP G_CODAGE
|
||||
END
|
||||
|
||||
STRING F_DADES 50
|
||||
BEGIN
|
||||
PROMPT 3 4 "Dall'agente "
|
||||
USE LF_AGENTI KEY 2
|
||||
INPUT RAGSOC F_DADES
|
||||
DISPLAY "Descr@50" RAGSOC
|
||||
DISPLAY "Codice@20" CODAGE
|
||||
OUTPUT F_DADES RAGSOC
|
||||
CHECKTYPE NORMAL
|
||||
GROUP G_RAGSOC
|
||||
END
|
||||
|
||||
STRING F_ADES 50
|
||||
BEGIN
|
||||
PROMPT 3 5 "All'agente "
|
||||
COPY USE F_DADES
|
||||
INPUT RAGSOC F_ADES
|
||||
COPY DISPLAY F_DADES
|
||||
OUTPUT F_ADES RAGSOC
|
||||
CHECKTYPE NORMAL
|
||||
GROUP G_RAGSOC
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 38 3
|
||||
BEGIN
|
||||
PROMPT 2 7 "Intervallo date"
|
||||
END
|
||||
|
||||
DATE F_DATEFROM
|
||||
BEGIN
|
||||
PROMPT 3 8 "Da "
|
||||
END
|
||||
|
||||
DATE F_DATETO
|
||||
BEGIN
|
||||
PROMPT 24 8 "A "
|
||||
END
|
||||
|
||||
LISTBOX F_GROUPMONTH 2
|
||||
BEGIN
|
||||
PROMPT 42 8 "Mesi da raggruppare "
|
||||
ITEM "1|1"
|
||||
ITEM "2|2"
|
||||
ITEM "3|3"
|
||||
ITEM "4|4"
|
||||
ITEM "5|5"
|
||||
ITEM "6|6"
|
||||
ITEM "7|7"
|
||||
ITEM "8|8"
|
||||
ITEM "9|9"
|
||||
ITEM "10|10"
|
||||
ITEM "11|11"
|
||||
ITEM "12|12"
|
||||
END
|
||||
|
||||
BUTTON DLG_PRINT 10 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 "~Stampa"
|
||||
MESSAGE EXIT,K_ENTER
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 10 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
846
pr/pr1400a.frm
Executable file
846
pr/pr1400a.frm
Executable file
@ -0,0 +1,846 @@
|
||||
// Form per la stampa delle statistiche temporali per agente.
|
||||
// Usare frmcomp.
|
||||
|
||||
#include "pr1400a.h"
|
||||
|
||||
#define G_TOTAGE 1 // Gruppo totale agenti: (provvigione e fatturato delle colonne)
|
||||
|
||||
// Le seguenti defines servono per identificare i campi di stampa importi
|
||||
|
||||
|
||||
|
||||
USE LF_AGENTI
|
||||
JOIN LF_PROVV KEY 3 INTO CODAGE==CODAGE
|
||||
END
|
||||
|
||||
DESCRIPTION
|
||||
BEGIN
|
||||
END
|
||||
|
||||
GENERAL
|
||||
BEGIN
|
||||
OFFSET 0 0
|
||||
FONT "Courier New"
|
||||
SIZE 10
|
||||
END
|
||||
|
||||
|
||||
SECTION HEADER ODD 6
|
||||
|
||||
STRINGA 1 40 1
|
||||
BEGIN
|
||||
KEY "nome ditta"
|
||||
PROMPT 1 1 "Ditta "
|
||||
MESSAGE _DITTA, !RAGSOC
|
||||
END
|
||||
|
||||
STRINGA 2 10
|
||||
BEGIN
|
||||
KEY "Data"
|
||||
PROMPT 76 1 "Data "
|
||||
MESSAGE _TODAY
|
||||
END
|
||||
|
||||
NUMERO 3 7
|
||||
BEGIN
|
||||
KEY "Nr. pagina"
|
||||
PROMPT 92 1 "Pagina "
|
||||
MESSAGE _PAGENO
|
||||
END
|
||||
|
||||
NUMERO 4 32
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 40 2 "Stampa statistiche temporali"
|
||||
END
|
||||
|
||||
END
|
||||
|
||||
|
||||
SECTION BODY ODD 9 COLUMNWISE
|
||||
|
||||
STRING 1 6
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "Agente" "Agente"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Codice agente"
|
||||
PROMPT 1 1 ""
|
||||
FIELD CODAGE
|
||||
MESSAGE RESET,G_TOTAGE@
|
||||
END
|
||||
|
||||
STRING 2 30
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "Ragione sociale" "Ragione sociale"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Ragione Sociale agente"
|
||||
PROMPT 2 1 ""
|
||||
FIELD RAGSOC
|
||||
END
|
||||
|
||||
STRINGA 3 7
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CMese" "Mese (1)"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Mese (1)"
|
||||
PROMPT 3 1 ""
|
||||
END
|
||||
|
||||
NUMBER 4 14
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CFatturato" "Fatturato (1)"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Fatturato (1)"
|
||||
PROMPT 4 1 ""
|
||||
END
|
||||
|
||||
NUMBER 5 14
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CProvvigione" "Provvigione (1)"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Provvigione (1)"
|
||||
PROMPT 5 1 ""
|
||||
END
|
||||
|
||||
STRINGA 6 7
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CMese" "Mese (2)"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Mese (2)"
|
||||
PROMPT 6 1 ""
|
||||
END
|
||||
|
||||
NUMBER 7 14
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CFatturato" "Fatturato (2)"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Fatturato (2)"
|
||||
PROMPT 7 1 ""
|
||||
END
|
||||
|
||||
NUMBER 8 14
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "Provvigione" "Provvigione (2)"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Provvigione (2)"
|
||||
PROMPT 8 1 ""
|
||||
END
|
||||
|
||||
/* La sub-section principale e' sulle righe provvigionali
|
||||
* Seguono poi 12 sottosezioni: PRS1, PRS2, PRS3, PRS4, PRS5, PRS6 ecc..
|
||||
* tutte con altezza minima 0 e nascoste, in quanto servono solo per
|
||||
* effettuare totalizzazioni.
|
||||
* Ognuna avra' una condizione di raggruppamento diverso, (STREXPR) settata
|
||||
* a run-time dal programma: il controllo viene effettuato sul
|
||||
* range della data e sul numero di riga (sempre uguale ad 1, per evitare
|
||||
* che faccia le somme piu' volte dello stesso totale documento).
|
||||
* La condizione qui elencata (LF_PROVV->CODAGE==LF_AGENTI->CODAGE) e' puramente
|
||||
* fittizia.
|
||||
* Il totale delle sottosezioni e' 12, perche' le statistiche sono,
|
||||
* al massimo, per anno: il raggruppamento minimo e' di un mese.
|
||||
* I casi limite sono percio' questi: tutto l'anno con raggruppamento di
|
||||
* 1 mese alla volta oppure tutto l'anno in un raggruppamento unico di 12
|
||||
* mesi.
|
||||
*/
|
||||
|
||||
SECTION PRS 1 0 0 FILE LF_PROVV
|
||||
FLAGS "H"
|
||||
|
||||
SECTION PRS1 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 101 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (1)"
|
||||
PROMPT 3 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON1
|
||||
END
|
||||
|
||||
NUMBER 201 14
|
||||
BEING
|
||||
KEY "Fatturato (1)"
|
||||
PROMPT 4 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT1
|
||||
END
|
||||
|
||||
NUMBER 301 14
|
||||
BEING
|
||||
KEY "Provvigione (1)"
|
||||
PROMPT 5 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO1
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS2 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 102 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (2)"
|
||||
PROMPT 6 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON2
|
||||
END
|
||||
|
||||
NUMBER 202 14
|
||||
BEING
|
||||
KEY "Fatturato (2)"
|
||||
PROMPT 7 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT2
|
||||
END
|
||||
|
||||
NUMBER 302 14
|
||||
BEING
|
||||
KEY "Provvigione (2)"
|
||||
PROMPT 8 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO2
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS3 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 103 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (1)"
|
||||
PROMPT 3 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON3
|
||||
END
|
||||
|
||||
NUMBER 203 14
|
||||
BEING
|
||||
KEY "Fatturato (1)"
|
||||
PROMPT 4 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT3
|
||||
END
|
||||
|
||||
NUMBER 303 14
|
||||
BEING
|
||||
KEY "Provvigione (1)"
|
||||
PROMPT 5 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO3
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS4 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 104 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (2)"
|
||||
PROMPT 6 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON4
|
||||
END
|
||||
|
||||
NUMBER 204 14
|
||||
BEING
|
||||
KEY "Fatturato (2)"
|
||||
PROMPT 7 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT4
|
||||
END
|
||||
|
||||
NUMBER 304 14
|
||||
BEING
|
||||
KEY "Provvigione (2)"
|
||||
PROMPT 8 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO4
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS5 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 105 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (1)"
|
||||
PROMPT 3 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON5
|
||||
END
|
||||
|
||||
NUMBER 205 14
|
||||
BEING
|
||||
KEY "Fatturato (1)"
|
||||
PROMPT 4 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT5
|
||||
END
|
||||
|
||||
NUMBER 305 14
|
||||
BEING
|
||||
KEY "Provvigione (1)"
|
||||
PROMPT 5 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO5
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS6 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 106 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (2)"
|
||||
PROMPT 6 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON6
|
||||
END
|
||||
|
||||
NUMBER 206 14
|
||||
BEING
|
||||
KEY "Fatturato (2)"
|
||||
PROMPT 7 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT6
|
||||
END
|
||||
|
||||
NUMBER 306 14
|
||||
BEING
|
||||
KEY "Provvigione (2)"
|
||||
PROMPT 8 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO6
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS7 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 107 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (1)"
|
||||
PROMPT 3 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON7
|
||||
END
|
||||
|
||||
NUMBER 207 14
|
||||
BEING
|
||||
KEY "Fatturato (1)"
|
||||
PROMPT 4 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT7
|
||||
END
|
||||
|
||||
NUMBER 307 14
|
||||
BEING
|
||||
KEY "Provvigione (1)"
|
||||
PROMPT 5 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO7
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS8 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 108 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (2)"
|
||||
PROMPT 6 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON8
|
||||
END
|
||||
|
||||
NUMBER 208 14
|
||||
BEING
|
||||
KEY "Fatturato (2)"
|
||||
PROMPT 7 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT8
|
||||
END
|
||||
|
||||
NUMBER 308 14
|
||||
BEING
|
||||
KEY "Provvigione (2)"
|
||||
PROMPT 8 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO8
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS9 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 109 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (1)"
|
||||
PROMPT 3 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON9
|
||||
END
|
||||
|
||||
NUMBER 209 14
|
||||
BEING
|
||||
KEY "Fatturato (1)"
|
||||
PROMPT 4 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT9
|
||||
END
|
||||
|
||||
NUMBER 309 14
|
||||
BEING
|
||||
KEY "Provvigione (1)"
|
||||
PROMPT 5 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO9
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS10 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 110 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (2)"
|
||||
PROMPT 6 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON10
|
||||
END
|
||||
|
||||
NUMBER 210 14
|
||||
BEING
|
||||
KEY "Fatturato (2)"
|
||||
PROMPT 7 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT10
|
||||
END
|
||||
|
||||
NUMBER 310 14
|
||||
BEING
|
||||
KEY "Provvigione (2)"
|
||||
PROMPT 8 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO10
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS11 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 111 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (1)"
|
||||
PROMPT 3 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON11
|
||||
END
|
||||
|
||||
NUMBER 211 14
|
||||
BEING
|
||||
KEY "Fatturato (1)"
|
||||
PROMPT 4 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT11
|
||||
END
|
||||
|
||||
NUMBER 311 14
|
||||
BEING
|
||||
KEY "Provvigione (1)"
|
||||
PROMPT 5 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO11
|
||||
END
|
||||
END
|
||||
|
||||
SECTION PRS12 1 0 0 STREXPR LF_PROVV->CODAGE==LF_AGENTI->CODAGE
|
||||
FLAGS "H"
|
||||
|
||||
STRING 112 7
|
||||
BEGIN
|
||||
KEY "Raggruppamento mese (2)"
|
||||
PROMPT 6 1 ""
|
||||
FLAGS "D"
|
||||
MESSAGE _MONTHRANGE|COPY,F_MON12
|
||||
END
|
||||
|
||||
NUMBER 212 14
|
||||
BEING
|
||||
KEY "Fatturato (2)"
|
||||
PROMPT 7 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTFAT|ADD,F_FAT12
|
||||
END
|
||||
|
||||
NUMBER 312 14
|
||||
BEING
|
||||
KEY "Provvigione (2)"
|
||||
PROMPT 8 1 ""
|
||||
PICTURE "."
|
||||
FIELD LF_PROVV->IMPPRDOC
|
||||
FLAGS "H"
|
||||
MESSAGE ADD,F_TOTPRO|ADD,F_PRO12
|
||||
END
|
||||
END
|
||||
|
||||
END // Main subsection
|
||||
|
||||
// Totali
|
||||
|
||||
STRING F_MON1 7
|
||||
BEGIN
|
||||
KEY "Mese (1)"
|
||||
PROMPT 3 1 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT1 14
|
||||
BEING
|
||||
KEY "Fatturato (1)"
|
||||
PROMPT 4 1 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO1 14
|
||||
BEING
|
||||
KEY "Provvigione (1)"
|
||||
PROMPT 5 1 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON2 7
|
||||
BEGIN
|
||||
KEY "Mese (2)"
|
||||
PROMPT 6 1 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT2 14
|
||||
BEING
|
||||
KEY "Fatturato (2)"
|
||||
PROMPT 7 1 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO2 14
|
||||
BEING
|
||||
KEY "Provvigione (2)"
|
||||
PROMPT 8 1 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON3 7
|
||||
BEGIN
|
||||
KEY "Mese (3)"
|
||||
PROMPT 3 2 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT3 14
|
||||
BEING
|
||||
KEY "Fatturato (3)"
|
||||
PROMPT 4 2 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO3 14
|
||||
BEING
|
||||
KEY "Provvigione (3)"
|
||||
PROMPT 5 2 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON4 7
|
||||
BEGIN
|
||||
KEY "Mese (4)"
|
||||
PROMPT 6 2 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT4 14
|
||||
BEING
|
||||
KEY "Fatturato (4)"
|
||||
PROMPT 7 2 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO4 14
|
||||
BEING
|
||||
KEY "Provvigione (4)"
|
||||
PROMPT 8 2 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON5 7
|
||||
BEGIN
|
||||
KEY "Mese (5)"
|
||||
PROMPT 3 3 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT5 14
|
||||
BEING
|
||||
KEY "Fatturato (5)"
|
||||
PROMPT 4 3 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO5 14
|
||||
BEING
|
||||
KEY "Provvigione (5)"
|
||||
PROMPT 5 3 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON6 7
|
||||
BEGIN
|
||||
KEY "Mese (6)"
|
||||
PROMPT 6 3 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT6 14
|
||||
BEING
|
||||
KEY "Fatturato (6)"
|
||||
PROMPT 7 3 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO6 14
|
||||
BEING
|
||||
KEY "Provvigione (6)"
|
||||
PROMPT 8 3 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON7 7
|
||||
BEGIN
|
||||
KEY "Mese (7)"
|
||||
PROMPT 3 4 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT7 14
|
||||
BEING
|
||||
KEY "Fatturato (7)"
|
||||
PROMPT 4 4 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO7 14
|
||||
BEING
|
||||
KEY "Provvigione (7)"
|
||||
PROMPT 5 4 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON8 7
|
||||
BEGIN
|
||||
KEY "Mese (8)"
|
||||
PROMPT 6 4 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT8 14
|
||||
BEING
|
||||
KEY "Fatturato (8)"
|
||||
PROMPT 7 4 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO8 14
|
||||
BEING
|
||||
KEY "Provvigione (8)"
|
||||
PROMPT 8 4 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON9 7
|
||||
BEGIN
|
||||
KEY "Mese (9)"
|
||||
PROMPT 3 5 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT9 14
|
||||
BEING
|
||||
KEY "Fatturato (9)"
|
||||
PROMPT 4 5 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO9 14
|
||||
BEING
|
||||
KEY "Provvigione (9)"
|
||||
PROMPT 5 5 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON10 7
|
||||
BEGIN
|
||||
KEY "Mese (10)"
|
||||
PROMPT 6 5 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT10 14
|
||||
BEING
|
||||
KEY "Fatturato (10)"
|
||||
PROMPT 7 5 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO10 14
|
||||
BEING
|
||||
KEY "Provvigione (10)"
|
||||
PROMPT 8 5 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON11 7
|
||||
BEGIN
|
||||
KEY "Mese (11)"
|
||||
PROMPT 3 6 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT11 14
|
||||
BEING
|
||||
KEY "Fatturato (11)"
|
||||
PROMPT 4 6 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO11 14
|
||||
BEING
|
||||
KEY "Provvigione (11)"
|
||||
PROMPT 5 6 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING F_MON12 7
|
||||
BEGIN
|
||||
KEY "Mese (12)"
|
||||
PROMPT 6 6 ""
|
||||
MESSAGE _MONTHRANGE
|
||||
END
|
||||
|
||||
NUMBER F_FAT12 14
|
||||
BEING
|
||||
KEY "Fatturato (12)"
|
||||
PROMPT 7 6 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_PRO12 14
|
||||
BEING
|
||||
KEY "Provvigione (12)"
|
||||
PROMPT 8 6 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
STRING 45 30
|
||||
BEGIN
|
||||
KEY "Totale agente"
|
||||
PROMPT 2 8 "Totale agente:"
|
||||
END
|
||||
|
||||
NUMBER F_TOTFAT 15
|
||||
BEGIN
|
||||
KEY "Totale fatturato per agente"
|
||||
PROMPT 4 8 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
NUMBER F_TOTPRO 15
|
||||
BEGIN
|
||||
KEY "Totale provvigioni per agente"
|
||||
PROMPT 5 8 ""
|
||||
PICTURE "."
|
||||
GROUP G_TOTAGE
|
||||
END
|
||||
|
||||
END // Section body
|
||||
|
||||
END // Form
|
||||
|
42
pr/pr1400a.h
Executable file
42
pr/pr1400a.h
Executable file
@ -0,0 +1,42 @@
|
||||
// PR1400A.H
|
||||
|
||||
|
||||
#define F_MON1 9
|
||||
#define F_MON2 10
|
||||
#define F_MON3 11
|
||||
#define F_MON4 12
|
||||
#define F_MON5 13
|
||||
#define F_MON6 14
|
||||
#define F_MON7 15
|
||||
#define F_MON8 16
|
||||
#define F_MON9 17
|
||||
#define F_MON10 18
|
||||
#define F_MON11 19
|
||||
#define F_MON12 20
|
||||
#define F_FAT1 21
|
||||
#define F_FAT2 22
|
||||
#define F_FAT3 23
|
||||
#define F_FAT4 24
|
||||
#define F_FAT5 25
|
||||
#define F_FAT6 26
|
||||
#define F_FAT7 27
|
||||
#define F_FAT8 28
|
||||
#define F_FAT9 29
|
||||
#define F_FAT10 30
|
||||
#define F_FAT11 31
|
||||
#define F_FAT12 32
|
||||
#define F_PRO1 33
|
||||
#define F_PRO2 34
|
||||
#define F_PRO3 35
|
||||
#define F_PRO4 36
|
||||
#define F_PRO5 37
|
||||
#define F_PRO6 38
|
||||
#define F_PRO7 39
|
||||
#define F_PRO8 40
|
||||
#define F_PRO9 41
|
||||
#define F_PRO10 42
|
||||
#define F_PRO11 43
|
||||
#define F_PRO12 44
|
||||
#define F_TOTFAT 46
|
||||
#define F_TOTPRO 47
|
||||
|
Loading…
x
Reference in New Issue
Block a user