Patch level :R_02_01 06

Files correlati     :or1.exe + mask & forms
Ricompilazione Demo : [ ]
Commento            :
riportata correzione dalla D_02_00 riguardo la stampa livelli di giacenza


git-svn-id: svn://10.65.10.50/trunk@11790 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2004-03-01 11:29:19 +00:00
parent a2b823ccf7
commit d10d437540
7 changed files with 2257 additions and 1508 deletions

View File

@ -72,8 +72,10 @@ protected:
void filter_for_clifo_agent(); void filter_for_clifo_agent();
void filter_for_articolo(); void filter_for_articolo();
void show_body_field_for_clifo_agent(short id, bool on); void show_giac_levels();
void show_body_field_for_articolo(short id, bool on); void show_body_field_for_number(short id, bool on, int from = 0, int to = 0);
void show_body_field_for_clifo_agent(short id, bool on, int from = 0, int to = 0);
void show_body_field_for_articolo(short id, bool on, int from = 0, int to = 0);
public: public:
TStampa_ordini() {}; TStampa_ordini() {};
@ -122,11 +124,13 @@ bool TStampa_ordini::detail_handler(TMask_field& f, KEY k)
m.enable(-GR_MAG,b); m.enable(-GR_MAG,b);
m.enable(-GR_PRINT, b); m.enable(-GR_PRINT, b);
m.enable(F_STATORORD,b); m.enable(F_STATORORD,b);
m.enable(F_DETAIL_BY_DOC, b);
} }
m.enable(F_STATOORD,!b); m.enable(F_STATOORD,!b);
if (tipo != articolo)
m.set(F_DETAIL_BY_DOC, !b ? "" : "X"); const bool enable_field = !b && (tipo != articolo);
m.enable(F_DETAIL_BY_DOC, enable_field);
m.set(F_DETAIL_BY_DOC, enable_field ? "" : "X");
if (!b) if (!b)
{ {
m.reset(F_FORCE_EVASE); m.reset(F_FORCE_EVASE);
@ -140,7 +144,6 @@ bool TStampa_ordini::create()
{ {
open_files(LF_OCCAS, LF_CLIFO, LF_INDSP, LF_CFVEN, LF_UMART, LF_MAG, LF_STOMAG, LF_MOVMAG, LF_RMOVMAG, LF_RIGHEDOC, 0); open_files(LF_OCCAS, LF_CLIFO, LF_INDSP, LF_CFVEN, LF_UMART, LF_MAG, LF_STOMAG, LF_MOVMAG, LF_RMOVMAG, LF_RIGHEDOC, 0);
_m = new TMask ("or1100a"); _m = new TMask ("or1100a");
//_m->set_handler(F_STATOORD, stato_handler);
_m->set_handler(F_DETTAGLIO, detail_handler); _m->set_handler(F_DETTAGLIO, detail_handler);
_codgiac = new TCodgiac_livelli; _codgiac = new TCodgiac_livelli;
if (!_codgiac->enabled()) if (!_codgiac->enabled())
@ -251,6 +254,40 @@ bool TStampa_ordini::document_filter(const TRelation* rel)
return FALSE; return FALSE;
} }
//********************SEZIONI DEDICATE ALLE 4 TIPOLOGIE DI STAMPA PRINCIPALI*******************
//Per Numero Documento
//********************
void TStampa_ordini::show_body_field_for_number(short id, bool on, int from, int to)
{
TForm_item* i = _frm->exist_field('B', odd_page, id);
if (i != NULL)
{
i->enable(on);
if (on && (to > from))
i->width() = to - from;
//aggiunto in prova da qui...
{
const short offset1 = 300;
TForm_subsection& ssec1 = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHEART"); // Sottosezione padre
TForm_string& fld1 = (TForm_string&)ssec1.printsection().find_field(id + offset1);
fld1.show(on);
fld1.width() = to - from;
}
//...a qui
const short offset = !_detail_doc && _detail_rows ? 400 : 100;
TForm_subsection& ssec = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHE"); // Sottosezione padre
TForm_string& fld = (TForm_string&)ssec.printsection().find_field(id + offset);
fld.show(on);
if (on && (to > from))
{
fld.width() = to - from;
fld.field(0).set_from(from);
fld.field(0).set_to(to);
}
}
}
void TStampa_ordini::filter_for_number() void TStampa_ordini::filter_for_number()
{ {
CHECK(_frm, "Form non valido"); CHECK(_frm, "Form non valido");
@ -352,7 +389,7 @@ void TStampa_ordini::filter_for_number()
if (_detail_rows) if (_detail_rows)
{ {
for (short i = BODY_COL_7; i<=BODY_COL_12; i++) for (short i = BODY_COL_UM; i<=BODY_COL_LAST; i++)
_frm->find_field('B', odd_page, i).show(); _frm->find_field('B', odd_page, i).show();
_frm->find_field('B', odd_page, "DET").show(); // Visualizza la sottosezione _frm->find_field('B', odd_page, "DET").show(); // Visualizza la sottosezione
TForm_subsection& ssec = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHE"); // Sottosezione padre TForm_subsection& ssec = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHE"); // Sottosezione padre
@ -478,38 +515,87 @@ void TStampa_ordini::filter_for_number()
{ {
TForm_subsection& ss = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHE"); TForm_subsection& ss = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHE");
TPrint_section& ps = ss.printsection(); TPrint_section& ps = ss.printsection();
for (short j = BODY_COL_1; j <= BODY_COL_12; j++) for (short j = BODY_COL_FIRST; j <= BODY_COL_LAST; j++)
{ {
ps.find_field(j + 100).disable(); ps.find_field(j + 100).disable();
ps.find_field(j + 400).enable(); ps.find_field(j + 400).enable();
} }
} }
} }
// Abilitazione intestazioni di colonna // Abilitazione intestazioni di colonna
_frm->find_field('B', odd_page, BODY_COL_5).show(_opz_valore); show_body_field_for_number(BODY_COL_VALORE, _opz_valore);
_frm->find_field('B', odd_page, BODY_COL_6).show(_opz_valore); show_body_field_for_number(BODY_COL_VALRES, _opz_valore);
_frm->find_field('F', last_page, BODY_COL_5+200).show(_opz_valore); show_body_field_for_number(BODY_COL_PRZSCON, _opz_prezzo);
_frm->find_field('F', last_page, BODY_COL_6+200).show(_opz_valore); show_body_field_for_number(BODY_COL_INTEST, _opz_residuo);
_frm->find_field('B', odd_page, BODY_COL_10).show(_opz_prezzo); show_body_field_for_number(BODY_COL_GIACATT, _opz_giacenza);
_frm->find_field('B', odd_page, BODY_COL_11).show(_opz_residuo);
_frm->find_field('B', odd_page, BODY_COL_12).show(_opz_giacenza); _frm->find_field('F', last_page, BODY_COL_VALORE+200).show(_opz_valore);
_frm->find_field('F', last_page, BODY_COL_VALRES+200).show(_opz_valore);
// Abilitazione delle righe
const short id = !_detail_doc && _detail_rows ? 400 : 100; show_giac_levels();
TForm_subsection& ssec = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHE"); // Sottosezione padre
ssec.printsection().find_field(BODY_COL_5 + id).show(_opz_valore);
ssec.printsection().find_field(BODY_COL_6 + id).show(_opz_valore);
ssec.printsection().find_field(BODY_COL_10 + id).show(_opz_prezzo);
ssec.printsection().find_field(BODY_COL_11 + id).show(_opz_residuo);
ssec.printsection().find_field(BODY_COL_12 + id).show(_opz_giacenza);
} }
void TStampa_ordini::show_body_field_for_clifo_agent(short id, bool on) //Per Cliente/Fornitore o per Agente
//**********************************
void TStampa_ordini::show_body_field_for_clifo_agent(short id, bool on, int from, int to)
{ {
TForm_item* i = _frm->exist_field('B', odd_page, id); TForm_item* i = _frm->exist_field('B', odd_page, id);
if (i != NULL) if (i != NULL)
i->enable(on); {
i->show(on);
if (on && (to > from))
i->width() = to - from;
{
const short offset1 = 100;
TForm_subsection& ssec1 = (TForm_subsection&)_frm->find_field('B', odd_page, "DOCUMENTI"); // Sottosezione padre
TForm_string * fld1 = (TForm_string *) ssec1.printsection().exist_field(id + offset1);
if (fld1 != NULL)
{
fld1->show(on);
if (on && to > from)
fld1->width() = to - from;
}
}
/* {
const short offset1 = 300;
TForm_subsection& ssec1 = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHEART"); // Sottosezione padre
TForm_string& fld1 = (TForm_string&)ssec1.printsection().find_field(id + offset1);
fld1.show(on);
fld1.width() = to - from;
} */
{
const short offset1 = 400;
TString16 subsection;
if (_tipo == clifo)
subsection << "DOCUMENTI";
else
subsection << "ARTCLI";
TForm_subsection& ssec1 = (TForm_subsection&)_frm->find_field('B', odd_page, subsection); // Sottosezione padre
TForm_string& fld1 = (TForm_string&)ssec1.printsection().find_field(id + offset1);
fld1.show(on);
if (to > from)
{
fld1.width() = to - from;
fld1.field(0).set_from(from);
fld1.field(0).set_to(to);
}
}
const short offset2 = 200;
TForm_subsection& ssec2 = (TForm_subsection&)_frm->find_field('B', odd_page, "RIGHEDOC"); // Sottosezione padre
TForm_string& fld2 = (TForm_string&)ssec2.printsection().find_field(id + offset2);
fld2.show(on);
if (on && to > from)
{
fld2.width() = to - from;
fld2.field(0).set_from(from);
fld2.field(0).set_to(to);
}
}
} }
void TStampa_ordini::filter_for_clifo_agent() void TStampa_ordini::filter_for_clifo_agent()
@ -725,8 +811,8 @@ void TStampa_ordini::filter_for_clifo_agent()
ssec.enable(); // Se stampa per agenti e dettaglia documenti per cliente abilita la sezione ssec.enable(); // Se stampa per agenti e dettaglia documenti per cliente abilita la sezione
else else
{ // Se stampa per cli/fo abilita i campi corrispondenti al distinguo per documento (valuta, residuo evaso ecc...) { // Se stampa per cli/fo abilita i campi corrispondenti al distinguo per documento (valuta, residuo evaso ecc...)
ssec.printsection().find_field(BODY_COL_1 + 100).show(); ssec.printsection().find_field(BODY_COL_CODART + 100).show();
for (short id = BODY_COL_2 + 100; id <= (BODY_COL_6 + 100); id++) for (short id = BODY_COL_DESART + 100; id <= (BODY_COL_VALRES + 100); id++)
ssec.printsection().find_field(id).enable(); ssec.printsection().find_field(id).enable();
} }
// Deve essere abilitata ma nascosta, per eseguire i raggruppamenti sulle righe // Deve essere abilitata ma nascosta, per eseguire i raggruppamenti sulle righe
@ -738,12 +824,12 @@ void TStampa_ordini::filter_for_clifo_agent()
// In qualsiasi caso va fatta questa abilitazione // In qualsiasi caso va fatta questa abilitazione
bool is_art = _detail_rows && !_detail_doc; bool is_art = _detail_rows && !_detail_doc;
((TForm_subsection&) _frm->find_field('B', odd_page, "DOCUMENTI")).printsection().find_field(BODY_COL_5 + 100).enable(_opz_valore && !is_art); ((TForm_subsection&) _frm->find_field('B', odd_page, "DOCUMENTI")).printsection().find_field(BODY_COL_VALORE + 100).enable(_opz_valore && !is_art);
((TForm_subsection&) _frm->find_field('B', odd_page, "DOCUMENTI")).printsection().find_field(BODY_COL_6 + 100).enable(_opz_valore && !is_art); ((TForm_subsection&) _frm->find_field('B', odd_page, "DOCUMENTI")).printsection().find_field(BODY_COL_VALRES + 100).enable(_opz_valore && !is_art);
if (_detail_rows) // Stampa dettaglio righe... if (_detail_rows) // Stampa dettaglio righe...
{ {
for (short i = BODY_COL_7; i<=BODY_COL_12; i++) for (short i = BODY_COL_UM; i<=BODY_COL_LAST; i++)
_frm->find_field('B', odd_page, i).show(); // Aggiunge le colonne di dettaglio _frm->find_field('B', odd_page, i).show(); // Aggiunge le colonne di dettaglio
// dulcis in fundo (Dulcinea mia adorata), si abilita la sezione RIGHEART // dulcis in fundo (Dulcinea mia adorata), si abilita la sezione RIGHEART
// anziche' RIGHEDOC nel qual caso sia stato specificato il raggruppamento per Articoli (e sotto-opzioni) // anziche' RIGHEDOC nel qual caso sia stato specificato il raggruppamento per Articoli (e sotto-opzioni)
@ -757,11 +843,11 @@ void TStampa_ordini::filter_for_clifo_agent()
{ {
TForm_subsection& ssec = (TForm_subsection&) _frm->find_field('B', odd_page, "ARTCLI"); TForm_subsection& ssec = (TForm_subsection&) _frm->find_field('B', odd_page, "ARTCLI");
ssec.enable(); ssec.enable();
ssec.printsection().find_field(BODY_COL_5 + 400).enable(_opz_valore); ssec.printsection().find_field(BODY_COL_VALORE + 400).enable(_opz_valore);
ssec.printsection().find_field(BODY_COL_6 + 400).enable(_opz_valore); ssec.printsection().find_field(BODY_COL_VALRES + 400).enable(_opz_valore);
ssec.printsection().find_field(BODY_COL_10 + 400).enable(_opz_prezzo); ssec.printsection().find_field(BODY_COL_PRZSCON + 400).enable(_opz_prezzo);
ssec.printsection().find_field(BODY_COL_11 + 400).enable(_opz_residuo); ssec.printsection().find_field(BODY_COL_INTEST + 400).enable(_opz_residuo);
ssec.printsection().find_field(BODY_COL_12 + 400).enable(_opz_giacenza); ssec.printsection().find_field(BODY_COL_GIACATT + 400).enable(_opz_giacenza);
if (_detail_cli) // Se e' abilitata la distinzione per clienti setta l'espressione di raggruppamento if (_detail_cli) // Se e' abilitata la distinzione per clienti setta l'espressione di raggruppamento
{ {
@ -784,51 +870,73 @@ void TStampa_ordini::filter_for_clifo_agent()
if (is_for_cli) if (is_for_cli)
{ // I seguenti campi non necessitano di abilitazione se la stampa e' per agente { // I seguenti campi non necessitano di abilitazione se la stampa e' per agente
TForm_subsection& dsec = (TForm_subsection&) _frm->find_field('B', odd_page, "DOCUMENTI"); TForm_subsection& dsec = (TForm_subsection&) _frm->find_field('B', odd_page, "DOCUMENTI");
for (short id = BODY_COL_1 + 400; id <= (BODY_COL_12 + 400); id++) for (short id = BODY_COL_FIRST + 400; id <= (BODY_COL_LAST + 400); id++)
dsec.printsection().find_field(id).enable(); dsec.printsection().find_field(id).enable();
dsec.printsection().find_field(BODY_COL_5 + 400).enable(_opz_valore); dsec.printsection().find_field(BODY_COL_VALORE + 400).enable(_opz_valore);
dsec.printsection().find_field(BODY_COL_6 + 400).enable(_opz_valore); dsec.printsection().find_field(BODY_COL_VALRES + 400).enable(_opz_valore);
dsec.printsection().find_field(BODY_COL_10 + 400).enable(_opz_prezzo); dsec.printsection().find_field(BODY_COL_PRZSCON + 400).enable(_opz_prezzo);
dsec.printsection().find_field(BODY_COL_11 + 400).enable(_opz_residuo); dsec.printsection().find_field(BODY_COL_INTEST + 400).enable(_opz_residuo);
dsec.printsection().find_field(BODY_COL_12 + 400).enable(_opz_giacenza); dsec.printsection().find_field(BODY_COL_GIACATT + 400).enable(_opz_giacenza);
} }
} }
else else
{ {
_frm->find_field('B', odd_page, "RIGHEDOC").enable(); // Abilita la sezione di dettaglio righe PER DOCUMENTO _frm->find_field('B', odd_page, "RIGHEDOC").enable(); // Abilita la sezione di dettaglio righe PER DOCUMENTO
TForm_subsection& rd = (TForm_subsection&) _frm->find_field('B', odd_page, "RIGHEDOC"); TForm_subsection& rd = (TForm_subsection&) _frm->find_field('B', odd_page, "RIGHEDOC");
rd.printsection().find_field(BODY_COL_5 + 200).enable(_opz_valore); rd.printsection().find_field(BODY_COL_VALORE + 200).enable(_opz_valore);
rd.printsection().find_field(BODY_COL_6 + 200).enable(_opz_valore); rd.printsection().find_field(BODY_COL_VALRES + 200).enable(_opz_valore);
rd.printsection().find_field(BODY_COL_10 + 200).enable(_opz_prezzo); rd.printsection().find_field(BODY_COL_PRZSCON + 200).enable(_opz_prezzo);
rd.printsection().find_field(BODY_COL_11 + 200).enable(_opz_residuo); rd.printsection().find_field(BODY_COL_INTEST + 200).enable(_opz_residuo);
rd.printsection().find_field(BODY_COL_12 + 200).enable(_opz_giacenza); rd.printsection().find_field(BODY_COL_GIACATT + 200).enable(_opz_giacenza);
} }
} }
// Abilitazione intestazioni di colonna // Abilitazione intestazioni di colonna
show_body_field_for_clifo_agent(BODY_COL_5, _opz_valore); show_body_field_for_clifo_agent(BODY_COL_VALORE, _opz_valore);
show_body_field_for_clifo_agent(BODY_COL_6, _opz_valore); show_body_field_for_clifo_agent(BODY_COL_VALRES, _opz_valore);
show_body_field_for_clifo_agent(BODY_COL_10, _opz_prezzo); show_body_field_for_clifo_agent(BODY_COL_PRZSCON, _opz_prezzo);
show_body_field_for_clifo_agent(BODY_COL_11, _opz_residuo); show_body_field_for_clifo_agent(BODY_COL_INTEST, _opz_residuo);
show_body_field_for_clifo_agent(BODY_COL_12, _opz_giacenza); show_body_field_for_clifo_agent(BODY_COL_GIACATT, _opz_giacenza);
show_giac_levels();
set_totvaluta_items(); set_totvaluta_items();
} }
void TStampa_ordini::show_body_field_for_articolo(short id, bool on)
//Per Articolo
//************
void TStampa_ordini::show_body_field_for_articolo(short id, bool on, int from, int to)
{ {
TForm_item* i = _frm->exist_field('B', odd_page, id); TForm_item* i = _frm->exist_field('B', odd_page, id);
if (i != NULL) if (i != NULL)
{ {
i->enable(on); i->enable(on);
if (on && (to > from))
i->width() = to - from;
i = _frm->exist_field('B', odd_page, id+400); i = _frm->exist_field('B', odd_page, id+400);
if (i != NULL) if (i != NULL)
{
i->enable(on); i->enable(on);
if (on && (to > from))
{
TForm_string& fld = (TForm_string&) _frm->find_field('B', odd_page, id+300);
i->width() = to - from;
fld.width() = to - from;
fld.field(0).set_from(from);
fld.field(0).set_to(to);
}
}
TForm_subsection& asec = (TForm_subsection&)_frm->find_field('B', odd_page, "TOTVAL1"); TForm_subsection& asec = (TForm_subsection&)_frm->find_field('B', odd_page, "TOTVAL1");
i = asec.printsection().exist_field(id+500); i = asec.printsection().exist_field(id+500);
if (i != NULL) if (i != NULL)
{
i->enable(on); i->enable(on);
if (on && (to > from))
i->width() = to - from;
}
} }
} }
@ -874,7 +982,7 @@ void TStampa_ordini::filter_for_articolo()
t = f; t = f;
t.put(RDOC_CODART, _to_art); t.put(RDOC_CODART, _to_art);
cur->setkey(2); // Questa chiave rende piu' veloce la costruzione se indicato un range di articoli cur->setkey(2); // Questa chiave rende piu' veloce la costruzione se indicato un range di articoli
cur->setregion(f,t); // This is the region... cur->setregion(f,t,0x2); // This is the region...
s.format("(%d->TIPOCF==\"",LF_DOC); s.format("(%d->TIPOCF==\"",LF_DOC);
filter_expr << s << _tipocf << "\")"; // Nel caso di stampa per agenti e' sempre "C" filter_expr << s << _tipocf << "\")"; // Nel caso di stampa per agenti e' sempre "C"
@ -987,19 +1095,51 @@ void TStampa_ordini::filter_for_articolo()
s << "+" << mag_str; s << "+" << mag_str;
ssec.setcondition(s, _strexpr); ssec.setcondition(s, _strexpr);
for (short id = BODY_COL_1 + 400; id <= (BODY_COL_12 + 400); id++) for (short id = BODY_COL_FIRST + 400; id <= (BODY_COL_LAST + 400); id++)
_frm->find_field('B',odd_page,id).enable(); _frm->find_field('B',odd_page,id).enable();
// Abilitazione intestazioni di colonna // Abilitazione intestazioni di colonna
show_body_field_for_articolo(BODY_COL_5,_opz_valore); show_body_field_for_articolo(BODY_COL_VALORE,_opz_valore);
show_body_field_for_articolo(BODY_COL_6,_opz_valore); show_body_field_for_articolo(BODY_COL_VALRES,_opz_valore);
show_body_field_for_articolo(BODY_COL_10,_opz_prezzo); show_body_field_for_articolo(BODY_COL_PRZSCON,_opz_prezzo);
show_body_field_for_articolo(BODY_COL_11,_opz_residuo); show_body_field_for_articolo(BODY_COL_INTEST,_opz_residuo);
show_body_field_for_articolo(BODY_COL_12,_opz_giacenza); show_body_field_for_articolo(BODY_COL_GIACATT,_opz_giacenza);
//Abilitazione di eventuali colonne livelli di giacenza
show_giac_levels();
set_totvaluta_items(); set_totvaluta_items();
} }
//Parte comune
//************
void TStampa_ordini::show_giac_levels()
{
//accende le colonne con i livelli di giacenza esistenti ;
for (int l = 1; l <= _codgiac->max_levels(); l++)
{
const int level_fld = BODY_COL_LIVGIAC1 + l -1;
const bool on = (l <= _detail_level) && _codgiac->enabled(l);
const int from = _codgiac->code_start(l)-1;
const int len = _codgiac->code_length(l);
const int to = from + len;
switch (_tipo)
{
case clifo:
case agente:
show_body_field_for_clifo_agent(level_fld, on, from, to);
break;
case articolo:
show_body_field_for_articolo(level_fld, on, from, to);
break;
default:
show_body_field_for_number(level_fld, on, from, to);
break;
}
}
}
void TStampa_ordini::main_loop() void TStampa_ordini::main_loop()
{ {
TString form_name; TString form_name;
@ -1057,7 +1197,11 @@ void TStampa_ordini::main_loop()
_detail_cli = _m->get_bool(F_DETAIL_BY_CLI); _detail_cli = _m->get_bool(F_DETAIL_BY_CLI);
_detail_mag = _m->get_bool(F_DETAIL_MAG); _detail_mag = _m->get_bool(F_DETAIL_MAG);
_detail_dep = _m->get_bool(F_DETAIL_DEP); _detail_dep = _m->get_bool(F_DETAIL_DEP);
_detail_level = _m->get_int(F_DETAIL_LEV);
if (_m->field(F_DETAIL_LEV).active())
_detail_level = _m->get_int(F_DETAIL_LEV);
else
_detail_level = _detail_rows ? _codgiac->last_level() : 0;
_pr_spese = _m->get_bool(F_PRINTSPESE); _pr_spese = _m->get_bool(F_PRINTSPESE);
_pr_prest = _m->get_bool(F_PRINTPREST); _pr_prest = _m->get_bool(F_PRINTPREST);

View File

@ -52,133 +52,171 @@ END //HEADER
SECTION BODY ODD 2 COLUMNWISE SECTION BODY ODD 2 COLUMNWISE
STRING BODY_COL_1 22 STRINGA BODY_COL_CODART 22
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "Documento" "Documento" SPECIAL STRINGA INTESTAZIONE "Documento" "Documento"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Descrizione documento" KEY "Descrizione documento"
PROMPT 1 1 "" PROMPT 1 1 "@b"
MESSAGE _STREXPR,CODNUM+"/"+NDOC+" del "+DATADOC MESSAGE _STREXPR,CODNUM+"/"+NDOC+" del "+DATADOC
END END
STRING BODY_COL_2 40 STRINGA BODY_COL_LIVGIAC1 10
BEGIN
SPECIAL STRINGA INTESTAZIONE "@C1" "Livello giacenza 1"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Livello giacenza 1" // Solo intestazione
PROMPT 2 1 ""
GROUP G_DETTAGLIO
END
STRINGA BODY_COL_LIVGIAC2 10
BEGIN
SPECIAL STRINGA INTESTAZIONE "@C2" "Livello giacenza 2"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Livello giacenza 2" // Solo intestazione
PROMPT 3 1 ""
GROUP G_DETTAGLIO
END
STRINGA BODY_COL_LIVGIAC3 5
BEGIN
SPECIAL STRINGA INTESTAZIONE "@C3" "Livello giacenza 3"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Livello giacenza 3" // Solo intestazione
PROMPT 4 1 ""
GROUP G_DETTAGLIO
END
STRINGA BODY_COL_LIVGIAC4 5
BEGIN
SPECIAL STRINGA INTESTAZIONE "@C4" "Livello giacenza 4"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Livello giacenza 4" // Solo intestazione
PROMPT 5 1 ""
GROUP G_DETTAGLIO
END
STRINGA BODY_COL_DESART 40
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "Cod./Descrizione" "Cod./Descrizione" SPECIAL STRINGA INTESTAZIONE "Cod./Descrizione" "Cod./Descrizione"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Cod./Descrizione" KEY "Cod./Descrizione"
PROMPT 2 1 "" PROMPT 6 1 ""
MESSAGE _ORDINE,RAGSOC,1 MESSAGE _ORDINE,RAGSOC,1
END END
STRINGA BODY_COL_3 4 STRINGA BODY_COL_CODVAL 4
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "Val." "Val." SPECIAL STRINGA INTESTAZIONE "Val." "Val."
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Codice Valuta" KEY "Codice Valuta"
PROMPT 3 1 "" PROMPT 7 1 ""
FIELD CODVAL FIELD CODVAL
END END
DATA BODY_COL_4 10 DATA BODY_COL_DATACONS 10
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "Data cons." "Data cons." SPECIAL STRINGA INTESTAZIONE "Data cons." "Data cons."
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Data consegna documento" KEY "Data consegna documento"
PROMPT 4 1 "" PROMPT 8 1 ""
FIELD DATACONS FIELD DATACONS
END END
VALUTA BODY_COL_5 15 VALUTA BODY_COL_VALORE 15
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "@CValore" "Valore" SPECIAL STRINGA INTESTAZIONE "@CValore" "Valore"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Valore" KEY "Valore"
PROMPT 5 1 "" PROMPT 9 1 ""
FIELD TOTVALORE FIELD TOTVALORE
DRIVENBY BODY_COL_3 DRIVENBY BODY_COL_CODVAL
// PICTURE "."
END END
VALUTA BODY_COL_6 15 VALUTA BODY_COL_VALRES 15
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "@CVal.Residuo" "Val.Residuo" SPECIAL STRINGA INTESTAZIONE "@CVal.Residuo" "Val.Residuo"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Valore Residuo" KEY "Valore Residuo"
PROMPT 6 1 "" PROMPT 10 1 ""
FIELD TOTVALRES FIELD TOTVALRES
DRIVENBY BODY_COL_3 DRIVENBY BODY_COL_CODVAL
// PICTURE "."
END END
STRINGA BODY_COL_7 4 STRINGA BODY_COL_UM 4
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "UM" "UM" SPECIAL STRINGA INTESTAZIONE "UM" "UM"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Unita' di misura" // Solo intestazione KEY "Unita' di misura" // Solo intestazione
FLAGS "H" FLAGS "H"
PROMPT 7 1 "" PROMPT 11 1 ""
GROUP G_DETTAGLIO GROUP G_DETTAGLIO
END END
STRINGA BODY_COL_8 15 STRINGA BODY_COL_QTAORD 15
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "Q.ta Ordinata" "Q.ta Ordinata" SPECIAL STRINGA INTESTAZIONE "Q.ta Ordinata" "Q.ta Ordinata"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Q.ta Ordinata" // Solo intestazione KEY "Q.ta Ordinata" // Solo intestazione
FLAGS "H" FLAGS "H"
PROMPT 8 1 "" PROMPT 12 1 ""
GROUP G_DETTAGLIO GROUP G_DETTAGLIO
END END
STRINGA BODY_COL_9 15 STRINGA BODY_COL_QTAEVA 15
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "@CQ.ta Evasa" "Q.ta Evasa" SPECIAL STRINGA INTESTAZIONE "@CQ.ta Evasa" "Q.ta Evasa"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Q.ta Evasa" // Solo intestazione KEY "Q.ta Evasa" // Solo intestazione
FLAGS "H" FLAGS "H"
PROMPT 9 1 "" PROMPT 13 1 ""
GROUP G_DETTAGLIO GROUP G_DETTAGLIO
END END
STRINGA BODY_COL_10 13 STRINGA BODY_COL_PRZSCON 13
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "@CPr. scontato" "Prezzo un. scontato" SPECIAL STRINGA INTESTAZIONE "@CPr. scontato" "Prezzo un. scontato"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Prezzo un. scontato" // Solo intestazione KEY "Prezzo un. scontato" // Solo intestazione
FLAGS "H" FLAGS "H"
PROMPT 10 1 "" PROMPT 14 1 ""
GROUP G_DETTAGLIO GROUP G_DETTAGLIO
END END
STRINGA BODY_COL_11 15 STRINGA BODY_COL_INTEST 15
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "@CResiduo" "Residuo" SPECIAL STRINGA INTESTAZIONE "@CResiduo" "Residuo"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Residuo" // Solo intestazione KEY "Residuo" // Solo intestazione
FLAGS "H" FLAGS "H"
PROMPT 11 1 "" PROMPT 15 1 ""
GROUP G_DETTAGLIO GROUP G_DETTAGLIO
END END
STRINGA BODY_COL_12 15 STRINGA BODY_COL_GIACATT 15
BEGIN BEGIN
SPECIAL STRINGA INTESTAZIONE "@CGiac. Att." "Giacenza attuale" SPECIAL STRINGA INTESTAZIONE "@CGiac. Att." "Giacenza attuale"
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo" SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra" SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
KEY "Giacenza attuale" // Solo intestazione KEY "Giacenza attuale" // Solo intestazione
FLAGS "H" FLAGS "H"
PROMPT 12 1 "" PROMPT 16 1 ""
GROUP G_DETTAGLIO GROUP G_DETTAGLIO
END END
@ -186,279 +224,375 @@ END
// Sezione di dettaglio righe / raggruppamento articoli per ordine corrente // Sezione di dettaglio righe / raggruppamento articoli per ordine corrente
SECTION DET 2 0 0 FILE LF_RIGHEDOC SECTION DET 2 0 0 FILE LF_RIGHEDOC
FLAGS "H" // Abilitata solo se dettaglio righe FLAGS "H" // Abilitata solo se dettaglio righe
SECTION RIGHE 1 1 1 GROUP // Viene cambiata in STREXPR da programma SECTION RIGHE 1 1 1 GROUP // Viene cambiata in STREXPR da programma
STRINGA 101 22 STRINGA 101 22
BEGIN BEGIN
PROMPT 1 1 "" PROMPT 1 1 ""
END END
STRINGA 102 40 STRINGA 113 10
BEGIN BEGIN
PROMPT 2 1 "" PROMPT 2 1 ""
MESSAGE _STREXPR, LF_RIGHEDOC->CODART+" "+LF_RIGHEDOC->DESCR FIELD LF_RIGHEDOC->LIVELLO
END END
STRING 103 4 STRINGA 114 10
BEGIN BEGIN
KEY "Codice Valuta" PROMPT 3 1 ""
PROMPT 3 1 "" FIELD LF_RIGHEDOC->LIVELLO
END END
DATA 104 10 STRINGA 115 5
BEGIN BEGIN
PROMPT 4 1 "" PROMPT 4 1 ""
FIELD LF_RIGHEDOC->DATACONS FIELD LF_RIGHEDOC->LIVELLO
END END
VALUTA 105 15 STRINGA 116 5
BEGIN BEGIN
PROMPT 5 1 "" // valore PROMPT 5 1 ""
MESSAGE _ORDINE,VALORE|ADD,FL->205 FIELD LF_RIGHEDOC->LIVELLO
DRIVENBY 103 END
// PICTURE "."
END
VALUTA 106 15 STRINGA 102 40
BEGIN BEGIN
PROMPT 6 1 "" // Val residuo riga PROMPT 6 1 ""
MESSAGE _ORDINE,VALRES|ADD,FL->206 MESSAGE _STREXPR, LF_RIGHEDOC->CODART+" "+LF_RIGHEDOC->DESCR
DRIVENBY 103 END
// PICTURE "."
END
STRINGA 107 4 STRINGA 103 4
BEGIN BEGIN
PROMPT 7 1 "" // Unita' di misura KEY "Codice Valuta"
FIELD LF_RIGHEDOC->UMQTA PROMPT 7 1 ""
END END
NUMBER 108 15 DATA 104 10
BEGIN BEGIN
PROMPT 8 1 "" // Q.ta Ordinata PROMPT 8 1 ""
MESSAGE _ORDINE,QTA FIELD LF_RIGHEDOC->DATACONS
PICTURE "########@,@@@@@" END
END
NUMBER 109 15 VALUTA 105 15
BEGIN BEGIN
PROMPT 9 1 "" // Q.ta Evasa PROMPT 9 1 "" // valore
MESSAGE _ORDINE,QTAEVASA MESSAGE _ORDINE,VALORE|ADD,FL->205
PICTURE "########@,@@@@@" DRIVENBY 103
END END
VALUTA 110 13 VALUTA 106 15
BEGIN BEGIN
KEY "Prezzo un scontato" PROMPT 10 1 "" // Val residuo riga
PROMPT 10 1 "" MESSAGE _ORDINE,VALRES|ADD,FL->206
MESSAGE _ORDINE,PREZZONS DRIVENBY 103
// PICTURE "." END
FLAGS "U"
DRIVENBY 103
END
NUMBER 111 15 STRINGA 107 4
BEGIN BEGIN
KEY "Residuo" PROMPT 11 1 "" // Unita' di misura
PROMPT 11 1 "" FIELD LF_RIGHEDOC->UMQTA
PICTURE "########@,@@@@@" END
MESSAGE _ORDINE,RESIDUO
END
NUMBER 112 15 NUMERO 108 15
BEGIN BEGIN
KEY "Giacenza attuale" PROMPT 12 1 "" // Q.ta Ordinata
PROMPT 12 1 "" MESSAGE _ORDINE,QTA
PICTURE "########@,@@@@@" PICTURE "########@,@@@@@"
MESSAGE _ORDINE,GIACENZA END
END
SECTION RIGHEART 1 0 0 FILE LF_RIGHEDOC GROUP CODART+DATACONS NUMERO 109 15
FLAGS "D" BEGIN
NUMBER 301 22 PROMPT 13 1 "" // Q.ta Evasa
BEGIN MESSAGE _ORDINE,QTAEVASA
PROMPT 1 1 "" PICTURE "########@,@@@@@"
FLAGS "H" END
END
STRING 302 40 2
BEGIN
KEY "Descrizione"
PROMPT 2 1 ""
MESSAGE _ORDINE,DESCRIZIONE|COPY,402
FLAGS "H"
END
STRING 303 4
BEGIN
KEY "Codice Valuta"
PROMPT 3 1 ""
FLAGS "H"
END
DATA 304 10
BEGIN
KEY "Data consegna articolo"
PROMPT 4 1 ""
FIELD LF_RIGHEDOC->DATACONS
MESSAGE COPY,404
FLAGS "H"
END
VALUTA 305 15
BEGIN
KEY "Valore Ordinato"
PROMPT 5 1 ""
MESSAGE _ORDINE,VALORE
// PICTURE "."
DRIVENBY 303
FLAGS "H"
END
VALUTA 306 15
BEGIN
KEY "Valore Residuo"
PROMPT 6 1 ""
MESSAGE _ORDINE,VALRES
// PICTURE "."
DRIVENBY 303
FLAGS "H"
END
STRINGA 307 4
BEGIN
KEY "Unita' di misura"
PROMPT 7 1 ""
FIELD LF_RIGHEDOC->UMQTA
MESSAGE _ORDINE,SELECTUM|COPY,407
FLAGS "H"
END
NUMBER 308 15
BEGIN
KEY "Q.ta Ordinata"
PROMPT 8 1 ""
MESSAGE _ORDINE,QTA|_ORDINE,CONVUM|ADD,408
FLAGS "H"
END
NUMBER 309 15
BEGIN
KEY "Q.ta Evasa"
PROMPT 9 1 ""
MESSAGE _ORDINE,QTAEVASA|_ORDINE,CONVUM|ADD,409
FLAGS "H"
END
VALUTA 310 13
BEGIN
KEY "Prezzo non scontato"
PROMPT 10 1 ""
MESSAGE _ORDINE,PREZZONS|COPY,410
DRIVENBY 303
FLAGS "HU"
END
NUMBER 311 15
BEGIN
KEY " Residuo"
PROMPT 11 1 ""
MESSAGE _ORDINE,RESIDUO|_ORDINE,CONVUM|ADD,411
FLAGS "H"
END
NUMBER 312 15
BEGIN
KEY "Giacenza attuale"
PROMPT 12 1 ""
MESSAGE _ORDINE,GIACENZA|COPY,412
FLAGS "H"
END
END // END SECTION RIGHEART
END //SECTION RIGHE VALUTA 110 13
BEGIN
KEY "Prezzo un scontato"
PROMPT 14 1 ""
MESSAGE _ORDINE,PREZZONS
FLAGS "U"
DRIVENBY 103
END
NUMERO 111 15
BEGIN
KEY "Residuo"
PROMPT 15 1 ""
PICTURE "########@,@@@@@"
MESSAGE _ORDINE,RESIDUO
END
NUMERO 112 15
BEGIN
KEY "Giacenza attuale"
PROMPT 16 1 ""
PICTURE "########@,@@@@@"
MESSAGE _ORDINE,GIACENZA
END
SECTION RIGHEART 1 0 0 FILE LF_RIGHEDOC GROUP CODART+DATACONS
FLAGS "D"
NUMERO 301 22
BEGIN
PROMPT 1 1 ""
FLAGS "H"
END
STRINGA 313 10
BEGIN
PROMPT 2 1 ""
FLAGS "H"
END
STRINGA 314 10
BEGIN
PROMPT 3 1 ""
FLAGS "H"
END
STRINGA 315 5
BEGIN
PROMPT 4 1 ""
FLAGS "H"
END
STRINGA 316 5
BEGIN
PROMPT 5 1 ""
FLAGS "H"
END
STRINGA 302 40 2
BEGIN
KEY "Descrizione"
PROMPT 6 1 ""
MESSAGE _ORDINE,DESCRIZIONE|COPY,402
FLAGS "H"
END
STRINGA 303 4
BEGIN
KEY "Codice Valuta"
PROMPT 7 1 ""
FLAGS "H"
END
DATA 304 10
BEGIN
KEY "Data consegna articolo"
PROMPT 8 1 ""
FIELD LF_RIGHEDOC->DATACONS
MESSAGE COPY,404
FLAGS "H"
END
VALUTA 305 15
BEGIN
KEY "Valore Ordinato"
PROMPT 9 1 ""
MESSAGE _ORDINE,VALORE
DRIVENBY 303
FLAGS "H"
END
VALUTA 306 15
BEGIN
KEY "Valore Residuo"
PROMPT 10 1 ""
MESSAGE _ORDINE,VALRES
DRIVENBY 303
FLAGS "H"
END
STRINGA 307 4
BEGIN
KEY "Unita' di misura"
PROMPT 11 1 ""
FIELD LF_RIGHEDOC->UMQTA
MESSAGE _ORDINE,SELECTUM|COPY,407
FLAGS "H"
END
NUMERO 308 15
BEGIN
KEY "Q.ta Ordinata"
PROMPT 12 1 ""
MESSAGE _ORDINE,QTA|_ORDINE,CONVUM|ADD,408
FLAGS "H"
END
NUMERO 309 15
BEGIN
KEY "Q.ta Evasa"
PROMPT 13 1 ""
MESSAGE _ORDINE,QTAEVASA|_ORDINE,CONVUM|ADD,409
FLAGS "H"
END
VALUTA 310 13
BEGIN
KEY "Prezzo non scontato"
PROMPT 14 1 ""
MESSAGE _ORDINE,PREZZONS|COPY,410
DRIVENBY 303
FLAGS "HU"
END
NUMERO 311 15
BEGIN
KEY " Residuo"
PROMPT 15 1 ""
MESSAGE _ORDINE,RESIDUO|_ORDINE,CONVUM|ADD,411
FLAGS "H"
END
NUMERO 312 15
BEGIN
KEY "Giacenza attuale"
PROMPT 16 1 ""
MESSAGE _ORDINE,GIACENZA|COPY,412
FLAGS "H"
END
END // END SECTION RIGHEART
END //SECTION RIGHE
// Totalizers for section RIGHEART // Totalizers for section RIGHEART
NUMBER 401 22 NUMERO 401 22
BEGIN BEGIN
PROMPT 1 1 "" PROMPT 1 1 ""
FLAGS "D" FLAGS "D"
END END
STRING 402 40 2
BEGIN STRINGA 413 10
KEY "Descrizione" BEGIN
PROMPT 2 1 "" KEY ""
FLAGS "D" PROMPT 2 1 ""
END FLAGS "H"
STRING 403 4 FIELD LF_RIGHEDOC->LIVELLO
BEGIN END
KEY "Codice Valuta"
PROMPT 3 1 "" STRINGA 414 10
FLAGS "D" BEGIN
END KEY ""
DATA 404 10 PROMPT 3 1 ""
BEGIN FLAGS "H"
KEY "Data consegna articolo" FIELD LF_RIGHEDOC->LIVELLO
PROMPT 4 1 "" END
FLAGS "D"
END STRINGA 415 5
VALUTA 405 15 BEGIN
BEGIN KEY ""
KEY "Valore Ordinato" PROMPT 4 1 ""
PROMPT 5 1 "" FLAGS "H"
// PICTURE "." FIELD LF_RIGHEDOC->LIVELLO
FLAGS "D" END
DRIVENBY 403
GROUP G_TOTALEART STRINGA 416 5
END BEGIN
VALUTA 406 15 KEY ""
BEGIN PROMPT 5 1 ""
KEY "Valore Residuo" FLAGS "H"
PROMPT 6 1 "" FIELD LF_RIGHEDOC->LIVELLO
// PICTURE "." END
FLAGS "D"
DRIVENBY 403 STRINGA 402 40 2
GROUP G_TOTALEART BEGIN
END KEY "Descrizione"
STRINGA 407 4 PROMPT 6 1 ""
BEGIN FLAGS "D"
KEY "Unita' di misura" END
PROMPT 7 1 ""
FLAGS "D" STRINGA 403 4
GROUP G_TOTALEART BEGIN
END KEY "Codice Valuta"
NUMBER 408 15 PROMPT 7 1 ""
BEGIN FLAGS "D"
KEY "Q.ta Ordinata" END
PROMPT 8 1 ""
PICTURE "########@,@@@@@" DATA 404 10
FLAGS "D" BEGIN
GROUP G_TOTALEART KEY "Data consegna articolo"
END PROMPT 8 1 ""
NUMBER 409 15 FLAGS "D"
BEGIN END
KEY "Q.ta Evasa"
PROMPT 9 1 "" VALUTA 405 15
PICTURE "########@,@@@@@" BEGIN
FLAGS "D" KEY "Valore Ordinato"
GROUP G_TOTALEART PROMPT 9 1 ""
END FLAGS "D"
VALUTA 410 13 DRIVENBY 403
BEGIN GROUP G_TOTALEART
KEY "Pr. non scontato" END
PROMPT 10 1 ""
// PICTURE "." VALUTA 406 15
FLAGS "DU" BEGIN
DRIVENBY 403 KEY "Valore Residuo"
GROUP G_TOTALEART PROMPT 10 1 ""
END FLAGS "D"
NUMBER 411 15 DRIVENBY 403
BEGIN GROUP G_TOTALEART
KEY "Residuo" END
PROMPT 11 1 ""
PICTURE "########@,@@@@@" STRINGA 407 4
FLAGS "D" BEGIN
GROUP G_TOTALEART KEY "Unita' di misura"
END PROMPT 11 1 ""
NUMBER 412 15 FLAGS "D"
BEGIN GROUP G_TOTALEART
KEY "Giac. attuale" END
PROMPT 12 1 ""
PICTURE "########@,@@@@@" NUMERO 408 15
FLAGS "D" BEGIN
GROUP G_TOTALEART KEY "Q.ta Ordinata"
END PROMPT 12 1 ""
PICTURE "########@,@@@@@"
FLAGS "D"
GROUP G_TOTALEART
END
NUMERO 409 15
BEGIN
KEY "Q.ta Evasa"
PROMPT 13 1 ""
PICTURE "########@,@@@@@"
FLAGS "D"
GROUP G_TOTALEART
END
VALUTA 410 13
BEGIN
KEY "Pr. non scontato"
PROMPT 14 1 ""
FLAGS "DU"
DRIVENBY 403
GROUP G_TOTALEART
END
NUMERO 411 15
BEGIN
KEY "Residuo"
PROMPT 15 1 ""
PICTURE "########@,@@@@@"
FLAGS "D"
GROUP G_TOTALEART
END
NUMERO 412 15
BEGIN
KEY "Giac. attuale"
PROMPT 16 1 ""
PICTURE "########@,@@@@@"
FLAGS "D"
GROUP G_TOTALEART
END
END // SECTION DET END // SECTION DET
@ -468,36 +602,34 @@ SECTION FOOTER LAST 5 COLUMNWISE
STRINGA 201 22 STRINGA 201 22
BEGIN BEGIN
PROMPT 1 1 "" PROMPT 1 1 ""
END END
STRINGA 202 40 STRINGA 202 40
BEGIN BEGIN
PROMPT 2 1 "@BTotale:" PROMPT 2 1 "@BTotale:"
END END
STRINGA 203 4 STRINGA 203 4
BEGIN BEGIN
PROMPT 3 1 "" PROMPT 3 1 ""
END END
DATA 204 10 DATA 204 10
BEGIN BEGIN
PROMPT 4 1 "" PROMPT 4 1 ""
END END
VALUTA 205 15 VALUTA 205 15
BEGIN BEGIN
PROMPT 5 1 "" // valore PROMPT 5 1 "" // valore
DRIVENBY 203 DRIVENBY 203
// PICTURE "."
END END
VALUTA 206 15 VALUTA 206 15
BEGIN BEGIN
PROMPT 6 1 "" // Val residuo PROMPT 6 1 "" // Val residuo
DRIVENBY 203 DRIVENBY 203
// PICTURE "."
END END
END //FOOTER END //FOOTER

View File

@ -78,18 +78,26 @@
#define G_TOTALE 2 #define G_TOTALE 2
#define G_TOTALEART 3 #define G_TOTALEART 3
#define BODY_COL_1 1 #define BODY_COL_CODART 1
#define BODY_COL_2 2 #define BODY_COL_DESART 2
#define BODY_COL_3 3 #define BODY_COL_CODVAL 3
#define BODY_COL_4 4 #define BODY_COL_DATACONS 4
#define BODY_COL_5 5 #define BODY_COL_VALORE 5
#define BODY_COL_6 6 #define BODY_COL_VALRES 6
#define BODY_COL_7 7 #define BODY_COL_UM 7
#define BODY_COL_8 8 #define BODY_COL_QTAORD 8
#define BODY_COL_9 9 #define BODY_COL_QTAEVA 9
#define BODY_COL_10 10 #define BODY_COL_PRZSCON 10
#define BODY_COL_11 11 #define BODY_COL_INTEST 11
#define BODY_COL_12 12 #define BODY_COL_GIACATT 12
#define BODY_COL_LIVGIAC1 13
#define BODY_COL_LIVGIAC2 14
#define BODY_COL_LIVGIAC3 15
#define BODY_COL_LIVGIAC4 16
//numeri utili per i cicli all'interno del programma (x non impazzire con le definizioni..)
#define BODY_COL_FIRST 1
#define BODY_COL_LAST 16
#define BODY_CODVAL 53 #define BODY_CODVAL 53
#define BODY_TOTVALORD 55 #define BODY_TOTVALORD 55

View File

@ -226,9 +226,9 @@ END
BOOLEAN F_DETAIL_BY_DOC BOOLEAN F_DETAIL_BY_DOC
BEGIN BEGIN
PROMPT 37 12 "Dettaglio per documento" PROMPT 37 12 "Dettaglio per documento"
FLAGS "D" // FLAGS "D"
MESSAGE TRUE DISABLE,GR_DETAILART@ // MESSAGE TRUE DISABLE,GR_DETAILART@
MESSAGE FALSE ENABLE,GR_DETAILART@ // MESSAGE FALSE ENABLE,GR_DETAILART@
GROUP GR_DETAIL GROUP GR_DETAIL
END END

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff