Patch level :10.0

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
leccata la gestione listini; terminata stampa conndv


git-svn-id: svn://10.65.10.50/trunk@19503 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2009-10-23 10:37:24 +00:00
parent 047098c290
commit 8e612dc249
8 changed files with 461 additions and 283 deletions

@ -43,8 +43,8 @@ TGestione_listini_semplice_mask_genera::TGestione_listini_semplice_mask_genera(T
: TAutomask("ve2500b"), _main_mask(main_mask)
{
const bool gesliscv = ini_get_bool(CONFIG_DITTA, "ve", "GESLISCV");
enable(F_CATVEN, gesliscv);
enable(F_DESVEN, gesliscv);
enable(FB_CATVEN, gesliscv);
enable(FB_DESVEN, gesliscv);
}
// COPIA LISTINO
@ -54,7 +54,7 @@ TGestione_listini_semplice_mask_genera::TGestione_listini_semplice_mask_genera(T
int TGestione_listini_semplice_mask_genera::find_art_in_sheet(const char tipo, const TString& cod,
const TString& um, const int nscagl) const
{
TSheet_field& s = _main_mask->sfield(F_L_RIGHE);
TSheet_field& s = _main_mask->sfield(FA_RIGHE);
int i = -1;
FOR_EACH_SHEET_ROW(s, r, row)
{
@ -76,11 +76,11 @@ int TGestione_listini_semplice_mask_genera::find_art_in_sheet(const char tipo, c
void TGestione_listini_semplice_mask_genera::copia_listino()
{
//parametri listino origine
const TString& ori_catven = get(F_CATVEN);
const TString& ori_codlis = get(F_COD);
const real ricarico = get_real(F_RICARICO);
const TString& ori_catven = get(FB_CATVEN);
const TString& ori_codlis = get(FB_COD);
const real ricarico = get_real(FB_RICARICO);
//vanno fuori dall'if(get_bool(F_COPIATESTA)) perchè rec_ori_testata serve in seguito! (che schifo!)
//vanno fuori dall'if(get_bool(FB_COPIATESTA)) perchè rec_ori_testata serve in seguito! (che schifo!)
TToken_string key;
key.add("L");
key.add(ori_catven);
@ -91,7 +91,7 @@ void TGestione_listini_semplice_mask_genera::copia_listino()
//TESTATA
//se richiesto mette nei campi della maschera principale i dati di testata
if (get_bool(F_COPIATESTA))
if (get_bool(FB_COPIATESTA))
{
//magico metodino per scrivere sui campi della maschera principale (testata nuovo listino) i dati della testata..
//..del listino originale (senza usare una lunghissima serie di set su ogni campo!)
@ -118,7 +118,7 @@ void TGestione_listini_semplice_mask_genera::copia_listino()
TProgind pi(righe_listino_items, TR("Copia righe listino origine..."), true, true);
//sheet righe listino da riempire nella maschera principale
TSheet_field& sf_righe = _main_mask->sfield(F_L_RIGHE);
TSheet_field& sf_righe = _main_mask->sfield(FA_RIGHE);
TMask& msk = sf_righe.sheet_mask();
//record corrente del recordset (non const perchè la modifica eventualmente causa ricarico)
@ -127,7 +127,7 @@ void TGestione_listini_semplice_mask_genera::copia_listino()
//alcune date utili nelle righe; prese qui perchè vengono dalla testata o dalla maschera e sono poi riportate..
//..nelle righe
TDate data_ult_aum = _main_mask->get_date(F_L_VALINI);
TDate data_ult_aum = _main_mask->get_date(FA_VALINI);
if (!data_ult_aum.ok())
data_ult_aum = TDate(TODAY);
TDate data_prz_storico = rec_ori_testata.get_date(CONDV_VALIN);
@ -191,14 +191,14 @@ void TGestione_listini_semplice_mask_genera::crea_da_anamag()
//è stato selezionato il gruppo/sottogruppo merceologico?
TString8 grmerc;
if (!field(F_GRMERC).empty())
if (!field(FB_GRMERC).empty())
{
grmerc.format("%-3s%-2s", (const char*)get(F_GRMERC),(const char*)get(F_SOTGRMERC));
grmerc.format("%-3s%-2s", (const char*)get(FB_GRMERC),(const char*)get(FB_SOTGRMERC));
grmerc.rtrim();
select << "(GRMERC=#GRMERC)";
}
//è stato selezionato il raggruppamento fiscale?
const TString& raggfis = get(F_RAGFIS);
const TString& raggfis = get(FB_RAGFIS);
if (raggfis.full())
{
if (select.full())
@ -213,8 +213,8 @@ void TGestione_listini_semplice_mask_genera::crea_da_anamag()
query << "TO CODART=#ACODART\n";
TISAM_recordset recset(query);
recset.set_var("#DACODART", get(F_DACODART));
recset.set_var("#ACODART", get(F_ACODART));
recset.set_var("#DACODART", get(FB_DACODART));
recset.set_var("#ACODART", get(FB_ACODART));
if (grmerc.full())
recset.set_var("#GRMERC", grmerc);
if (raggfis.full())
@ -224,13 +224,13 @@ void TGestione_listini_semplice_mask_genera::crea_da_anamag()
TProgind pi(recset_items, TR("Importazione righe da anagrafica..."), true, true);
//fase riempimento sheet maschera principale
TSheet_field& sf_righe = _main_mask->sfield(F_L_RIGHE);
TSheet_field& sf_righe = _main_mask->sfield(FA_RIGHE);
//attenzione! ci possono essere articoli presenti più volte in UMART con diverse unità di misura: li mette tutti
const bool gest_um = _main_mask->get_bool(F_L_GESTUM);
const bool gest_um = _main_mask->get_bool(FA_GESTUM);
TRecord_array arr_art_um(LF_UMART, UMART_NRIGA);
//la gestione omaggi (misteriosamente definita gestsco) attiva l'iva
const bool gest_sco = _main_mask->get_bool(F_L_GESTSCO);
const bool gest_sco = _main_mask->get_bool(FA_GESTSCO);
//per ogni riga del recordset va ad aggiornare lo sheet sulla maschera (aggiunge la riga)
for (bool ok = recset.move_first(); ok; ok = recset.move_next())
@ -279,7 +279,7 @@ void TGestione_listini_semplice_mask_genera::crea_da_anamag()
void TGestione_listini_semplice_mask_genera::crea_listino()
{
//per prima cosa controlla se deve copiare da un listino esistente o generare da nuovo
const int f_tipo_gen = get_int(F_SELECT);
const int f_tipo_gen = get_int(FB_SELECT);
switch (f_tipo_gen)
{
case 1:
@ -314,11 +314,11 @@ TGestione_listini_semplice_mask::TGestione_listini_semplice_mask() : TAutomask("
{
//in base alla cervellotica configurazione impostata dall'utonto abilita/disabilita campi
const bool gesliscv = ini_get_bool(CONFIG_DITTA, "ve", "GESLISCV");
enable(F_L_CATVEN, gesliscv);
enable(F_L_DESVEN, gesliscv);
enable(FA_L_CATVEN, gesliscv);
enable(FA_L_DESVEN, gesliscv);
//attenzione!!! il campo CATVEN è in chiave 1! per disabilitarlo ci vuole questo trucco!
if (!gesliscv)
efield(F_L_CATVEN).reset_key(1);
efield(FA_L_CATVEN).reset_key(1);
}
//metodo per la ricerca al volo di un articolo (serve per posizionare il cursore sullo sheet in tempo reale..
@ -369,16 +369,16 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
{
switch(o.dlg())
{
case F_L_CODRIGA_A:
case F_L_CODRIGA_G:
case F_L_CODRIGA_S:
case F_L_CODRIGA_R:
case FA_CODRIGA_A:
case FA_CODRIGA_G:
case FA_CODRIGA_S:
case FA_CODRIGA_R:
//ricerca della riga listino attraverso codice nello sheet usando il campo di ricerca
if (e == fe_edit || e == fe_modify)
{
const char tiporiga = get(F_L_TIPORIGA)[0];
const char tiporiga = get(FA_TIPORIGA)[0];
const TString& codriga = ((TEditable_field&)o).get_window_data();
TSheet_field& sf_righe = sfield(F_L_RIGHE);
TSheet_field& sf_righe = sfield(FA_RIGHE);
const long riga = guess_art(sf_righe, tiporiga, codriga, 1);
if (riga >= 0 && riga != sf_righe.selected())
{
@ -389,16 +389,16 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
}
}
break;
case F_L_DESRIGA_A:
case F_L_DESRIGA_G:
case F_L_DESRIGA_S:
case F_L_DESRIGA_R:
case FA_DESRIGA_A:
case FA_DESRIGA_G:
case FA_DESRIGA_S:
case FA_DESRIGA_R:
//ricerca della riga listino attraverso descrizione nello sheet usando il campo di ricerca
if (!o.empty() && e == fe_edit)
{
const char tiporiga = get(F_L_TIPORIGA)[0];
const char tiporiga = get(FA_TIPORIGA)[0];
const TString& desriga = ((TEditable_field&)o).get_window_data();
TSheet_field& sf_righe = sfield(F_L_RIGHE);
TSheet_field& sf_righe = sfield(FA_RIGHE);
const long riga = guess_art(sf_righe, tiporiga, desriga, 2);
if (riga >= 0)
{
@ -410,10 +410,10 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
}
break;
//se abilita la gestione scaglioni nello sheet devono comparire le colonne NSCAGL e QLIM
case F_L_GESTSCAGL:
case FA_GESTSCAGL:
if (e == fe_init || e == fe_modify)
{
TSheet_field& sf_righe = sfield(F_L_RIGHE);
TSheet_field& sf_righe = sfield(FA_RIGHE);
const bool gest_scagl = o.get().full();
sf_righe.enable_column(S_NSCAGL, gest_scagl);
sf_righe.enable_column(S_QLIM, gest_scagl);
@ -422,10 +422,10 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
}
break;
//stesso giochetto per UM
case F_L_GESTUM:
case FA_GESTUM:
if (e == fe_init || e == fe_modify)
{
TSheet_field& sf_righe = sfield(F_L_RIGHE);
TSheet_field& sf_righe = sfield(FA_RIGHE);
const bool gest_um = o.get().full();
sf_righe.enable_column(S_UM, gest_um);
@ -433,10 +433,10 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
}
break;
//e anche per i campi omaggio
case F_L_GESTSCO:
case FA_GESTSCO:
if (e == fe_init || e == fe_modify)
{
TSheet_field& sf_righe = sfield(F_L_RIGHE);
TSheet_field& sf_righe = sfield(FA_RIGHE);
const bool gest_sco = o.get().full();
sf_righe.enable_column(S_ADDIVA, gest_sco);
sf_righe.enable_column(S_CODIVA, gest_sco);
@ -450,10 +450,10 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
}
break;
//controllo della unicità del tiporiga+codriga nello sheet
case F_L_RIGHE:
case FA_RIGHE:
if (e == se_notify_modify)
{
TSheet_field& sf_righe = sfield(F_L_RIGHE);
TSheet_field& sf_righe = sfield(FA_RIGHE);
TToken_string& riga = sf_righe.row(jolly);
const char tipo = riga.get_char(0);
const TString& art = riga.get(1);
@ -463,39 +463,39 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
}
if (e == se_enter)
{
TSheet_field& sf_righe = sfield(F_L_RIGHE);
TSheet_field& sf_righe = sfield(FA_RIGHE);
TToken_string& riga = sf_righe.row(jolly);
const char tipo = riga.get_char(0);
const TString& art = riga.get(1);
if (get(F_L_TIPO)[0] != tipo)
set(F_L_TIPO, tipo, 0x1); //0x1 perchè ha dei message e non degli output
if (get(FA_TIPO)[0] != tipo)
set(FA_TIPO, tipo, 0x1); //0x1 perchè ha dei message e non degli output
switch (tipo)
{
case 'A':
if (art.full() && get(F_L_CODRIGA_A) != art)
if (art.full() && get(FA_CODRIGA_A) != art)
{
//deve scriversi nel campo di ricerca; 0x2 serve x far funzionare le output del campo stesso
set(F_L_CODRIGA_A, art, 0x2);
set(FA_CODRIGA_A, art, 0x2);
}
break;
case 'G':
if (art.full() && get(F_L_CODRIGA_G) != art)
if (art.full() && get(FA_CODRIGA_G) != art)
{
set(F_L_CODRIGA_G, art, 0x2);
set(FA_CODRIGA_G, art, 0x2);
}
break;
case 'S':
if (art.full() && get(F_L_CODRIGA_S) != art)
if (art.full() && get(FA_CODRIGA_S) != art)
{
set(F_L_CODRIGA_S, art, 0x2);
set(FA_CODRIGA_S, art, 0x2);
}
break;
case 'R':
if (art.full() && get(F_L_CODRIGA_R) != art)
if (art.full() && get(FA_CODRIGA_R) != art)
{
set(F_L_CODRIGA_R, art, 0x2);
set(FA_CODRIGA_R, art, 0x2);
}
break;
default:
@ -511,11 +511,11 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
//TCursor_sheet cs(gmc_recset.cursor(), "CODTAB|S0", TR("Gruppi merceologici"), HR("Gr.Merc.|Descrizione@50"), 0, 0, win());
TToken_string siblings;
TBrowse_sheet cs (gmc_recset.cursor(), "CODTAB|S0", TR("Gruppi merceologici"), HR("Gr.Merc.|Descrizione@50"), 0,
efield(F_L_GRMERC_A), siblings);
efield(FA_GRMERC_A), siblings);
if (cs.run() == K_ENTER)
{
TLocalisamfile anamag(LF_ANAMAG);
anamag.put(ANAMAG_CODART, get(F_L_CODRIGA_A));
anamag.put(ANAMAG_CODART, get(FA_CODRIGA_A));
int err = anamag.read();
if (err == NOERR)
{
@ -524,7 +524,7 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
anamag.put(ANAMAG_GRMERC, grmerc);
anamag.rewrite();
set(F_L_GRMERC_A, grmerc, 0x2);
set(FA_GRMERC_A, grmerc, 0x2);
}
}
}
@ -540,7 +540,7 @@ bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_
case DLG_COMPATTA: //eliminazione delle righe con articoli inesistenti!
if (e == fe_button)
{
TSheet_field& sf_righe = sfield(F_L_RIGHE);
TSheet_field& sf_righe = sfield(FA_RIGHE);
FOR_EACH_SHEET_ROW_BACK(sf_righe, r, row) //deve andare all'indietro per minimizzare il riordino righe
{
if (row->get_char(2) <= ' ') //le righe senza descrizione sono sbagliate (è obbligatoria per articoli ecc.)
@ -625,15 +625,15 @@ void TGestione_listini_semplice::save_rows()
const TGestione_listini_semplice_mask& m = *_mask;
//instanzio un TISAM_recordset sulle righe listino e un localisamfile
TISAM_recordset righelist(build_query());
righelist.set_var("#CATVEN", m.get(F_L_CATVEN));
righelist.set_var("#COD", m.get(F_L_COD));
righelist.set_var("#CATVEN", m.get(FA_L_CATVEN));
righelist.set_var("#COD", m.get(FA_COD));
const long righelist_items = righelist.items();
TLocalisamfile& file = righelist.cursor()->file();
//sheet righe listino da salvare! (righe panda?)
TSheet_field& righe = m.sfield(F_L_RIGHE);
TSheet_field& righe = m.sfield(FA_RIGHE);
//scorro tutte le righe listino ed elimino tutte quelle che non ci sono più sullo sheet (modifiche utonto)
for (bool ok = righelist.move_first(); ok; ok = righelist.move_next())
@ -649,8 +649,8 @@ void TGestione_listini_semplice::save_rows()
//-----------------------------------------
//per prima cosa servono i dati di testata utili per riempire la chiave di riga listino
const TString& catven = m.get(F_L_CATVEN);
const TString& cod = m.get(F_L_COD);
const TString& catven = m.get(FA_L_CATVEN);
const TString& cod = m.get(FA_COD);
//recupero la maschera di riga
TMask& msk = righe.sheet_mask();
@ -737,15 +737,15 @@ int TGestione_listini_semplice::read(TMask& m)
TWait_cursor hourglass;
//instanzio un TISAM_recordset sulle righe listino (RCONDV)
TISAM_recordset righelist(build_query());
righelist.set_var("#CATVEN", m.get(F_L_CATVEN));
righelist.set_var("#COD", m.get(F_L_COD));
righelist.set_var("#CATVEN", m.get(FA_L_CATVEN));
righelist.set_var("#COD", m.get(FA_COD));
const long righelist_items = righelist.items();
const TRectype& rec = righelist.cursor()->curr();
//recupero sheet e realtiva mashera di riga
TSheet_field& sf_righe = m.sfield(F_L_RIGHE);
TSheet_field& sf_righe = m.sfield(FA_RIGHE);
TMask& msk = sf_righe.sheet_mask();
sf_righe.destroy();

@ -1,48 +1,48 @@
//maschera gestione listini comprensibile
#define F_L_TIPO 200
#define F_L_CATVEN 201
#define F_L_DESVEN 202
#define F_L_COD 203
#define F_L_DESCR 204
#define F_L_VALINI 205
#define F_L_VALFIN 206
#define F_L_TIPORIGA 207
#define F_L_CODRIGA_A 208
#define F_L_DESRIGA_A 209
#define F_L_CODRIGA_G 210
#define F_L_DESRIGA_G 211
#define F_L_CODRIGA_S 212
#define F_L_DESRIGA_S 213
#define F_L_CODRIGA_R 214
#define F_L_DESRIGA_R 215
#define FA_TIPO 200
#define FA_L_CATVEN 201
#define FA_L_DESVEN 202
#define FA_COD 203
#define FA_DESCR 204
#define FA_VALINI 205
#define FA_VALFIN 206
#define FA_TIPORIGA 207
#define FA_CODRIGA_A 208
#define FA_DESRIGA_A 209
#define FA_CODRIGA_G 210
#define FA_DESRIGA_G 211
#define FA_CODRIGA_S 212
#define FA_DESRIGA_S 213
#define FA_CODRIGA_R 214
#define FA_DESRIGA_R 215
#define F_L_GRMERC_A 216
#define F_L_SOTGRMERC_A 217
#define F_L_DESGRMERC_A 218
#define FA_GRMERC_A 216
#define FA_SOTGRMERC_A 217
#define FA_DESGRMERC_A 218
#define DLG_GRMERC 219
#define F_L_RIGHE 220
#define FA_RIGHE 220
#define F_L_CODVAL 227
#define F_L_CAMBIO 228
#define F_L_CONTROEURO 229
#define F_L_DATACAM 230
#define F_L_GESTSCAGL 231
#define F_L_DECIMALI 232
#define F_L_SEQRIC_1 233
#define F_L_SEQRIC_2 234
#define F_L_SEQRIC_3 235
#define F_L_SEQRIC_4 236
#define F_L_IMPLORDI 237
#define F_L_GESTUM 238
#define F_L_GESTSCO 239
#define F_L_CODSUCC 240
#define F_L_DESSUCC 241
#define F_L_FATHCATVEN 242
#define F_L_FATHDESVEN 243
#define F_L_FATHCOD 244
#define F_L_FATHDESCR 245
#define F_L_ARROTONDA 246
#define FA_CODVAL 227
#define FA_CAMBIO 228
#define FA_CONTROEURO 229
#define FA_DATACAM 230
#define FA_GESTSCAGL 231
#define FA_DECIMALI 232
#define FA_SEQRIC_1 233
#define FA_SEQRIC_2 234
#define FA_SEQRIC_3 235
#define FA_SEQRIC_4 236
#define FA_IMPLORDI 237
#define FA_GESTUM 238
#define FA_GESTSCO 239
#define FA_L_CODSUCC 240
#define FA_L_DESSUCC 241
#define FA_L_FATHCATVEN 242
#define FA_L_FATHDESVEN 243
#define FA_L_FATHCOD 244
#define FA_L_FATHDESCR 245
#define FA_L_ARROTONDA 246
//campi dello sheet delle righe
#define S_TIPORIGA 101

@ -27,7 +27,7 @@ BEGIN
PROMPT 0 0 "@bDati Listino"
END
LIST F_L_TIPO 1 7
LIST FA_TIPO 1 7
BEGIN
PROMPT 100 100 ""
ITEM "L|Listino"
@ -36,33 +36,33 @@ BEGIN
KEY 1
END
STRING F_L_CATVEN 2
STRING FA_L_CATVEN 2
BEGIN
PROMPT 1 1 "Cat. ven. "
FIELD CATVEN
FLAGS "U"
KEY 1
USE CVE
INPUT CODTAB F_L_CATVEN
INPUT CODTAB FA_L_CATVEN
DISPLAY "Cat." CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_L_CATVEN CODTAB
OUTPUT F_L_DESVEN S0
OUTPUT FA_L_CATVEN CODTAB
OUTPUT FA_L_DESVEN S0
CHECKTYPE FORCED
END
STRING F_L_DESVEN 50
STRING FA_L_DESVEN 50
BEGIN
PROMPT 18 1 ""
USE CVE KEY 2
INPUT S0 F_L_DESVEN
INPUT S0 FA_L_DESVEN
DISPLAY "Descrizione@50" S0
DISPLAY "Cat." CODTAB
COPY OUTPUT F_L_CATVEN
COPY OUTPUT FA_L_CATVEN
CHECKTYPE NORMAL
END
STRING F_L_COD 3
STRING FA_COD 3
BEGIN
PROMPT 1 2 "Listino "
FIELD COD
@ -70,32 +70,32 @@ BEGIN
KEY 1
USE LF_CONDV
INPUT TIPO "L"
INPUT CATVEN F_L_CATVEN
INPUT COD F_L_COD
INPUT CATVEN FA_L_CATVEN
INPUT COD FA_COD
DISPLAY "C.V." CATVEN
DISPLAY "Codice" COD
DISPLAY "Descrizione@50" DESCR
DISPLAY "Valuta" CODVAL
DISPLAY "Fine validita'" VALFIN
OUTPUT F_L_CATVEN CATVEN
OUTPUT F_L_COD COD
OUTPUT F_L_DESCR DESCR
OUTPUT FA_L_CATVEN CATVEN
OUTPUT FA_COD COD
OUTPUT FA_DESCR DESCR
CHECKTYPE REQUIRED
END
STRING F_L_DESCR 50
STRING FA_DESCR 50
BEGIN
PROMPT 18 2 ""
FIELD DESCR
END
DATA F_L_VALINI
DATA FA_VALINI
BEGIN
PROMPT 1 3 "Inizio validita` "
FIELD VALIN
END
DATA F_L_VALFIN
DATA FA_VALFIN
BEGIN
PROMPT 42 3 "Fine validita` "
FIELD VALFIN
@ -103,7 +103,7 @@ END
//campi di ricerca parziale sullo sheet
//-------------------------------------
LIST F_L_TIPORIGA 1 13
LIST FA_TIPORIGA 1 13
BEGIN
PROMPT 1 5 ""
FLAGS "P"
@ -117,127 +117,127 @@ BEGIN
MESSAGE HIDE,1@|HIDE,2@|HIDE,3@|SHOW,4@
END
STRING F_L_CODRIGA_A 20
STRING FA_CODRIGA_A 20
BEGIN
PROMPT 18 5 ""
FLAGS "U"
USE LF_ANAMAG
INPUT CODART F_L_CODRIGA_A
INPUT CODART FA_CODRIGA_A
DISPLAY "Articolo@20" CODART
DISPLAY "Descrizione@50" DESCR
OUTPUT F_L_CODRIGA_A CODART
OUTPUT F_L_DESRIGA_A DESCR
OUTPUT F_L_GRMERC_A GRMERC
OUTPUT FA_CODRIGA_A CODART
OUTPUT FA_DESRIGA_A DESCR
OUTPUT FA_GRMERC_A GRMERC
CHECKTYPE SEARCH
ADD RUN ve2 -3
GROUP 1
END
STRING F_L_DESRIGA_A 50 33
STRING FA_DESRIGA_A 50 33
BEGIN
PROMPT 42 5 ""
USE LF_ANAMAG KEY 2
INPUT DESCR F_L_DESRIGA_A
INPUT DESCR FA_DESRIGA_A
DISPLAY "Descrizione@50" DESCR
DISPLAY "Articolo@20" CODART
COPY OUTPUT F_L_CODRIGA_A
COPY OUTPUT FA_CODRIGA_A
CHECKTYPE SEARCH
ADD RUN ve2 -3
GROUP 1
END
STRING F_L_CODRIGA_G 20 3
STRING FA_CODRIGA_G 20 3
BEGIN
PROMPT 18 5 ""
FLAGS "U"
USE GMC SELECT CODTAB[4,5] == ""
INPUT CODTAB[1,3] F_L_CODRIGA_G
INPUT CODTAB[1,3] FA_CODRIGA_G
DISPLAY "Gr. merc." CODTAB[1,3]
DISPLAY "Descrizione@50" S0
OUTPUT F_L_CODRIGA_G CODTAB[1,3]
OUTPUT F_L_DESRIGA_G S0
OUTPUT FA_CODRIGA_G CODTAB[1,3]
OUTPUT FA_DESRIGA_G S0
CHECKTYPE SEARCH
GROUP 2
END
STRING F_L_DESRIGA_G 50
STRING FA_DESRIGA_G 50
BEGIN
PROMPT 25 5 ""
USE GMC KEY 2 SELECT CODTAB[4,5] == ""
INPUT S0 F_DESRIGA_G
DISPLAY "Descrizione@50" S0
DISPLAY "Gr. merc." CODTAB[1,3]
COPY OUTPUT F_L_CODRIGA_G
COPY OUTPUT FA_CODRIGA_G
CHECKTYPE SEARCH
GROUP 2
END
STRING F_L_CODRIGA_S 20 5
STRING FA_CODRIGA_S 20 5
BEGIN
PROMPT 18 5 ""
FLAGS "U"
USE GMC SELECT CODTAB[4,5] != ""
INPUT CODTAB F_L_CODRIGA_S
INPUT CODTAB FA_CODRIGA_S
DISPLAY "Gruppo merc." CODTAB[1,3]
DISPLAY "Sottogr. merc." CODTAB[4,5]
DISPLAY "Descrizione@50" S0
OUTPUT F_L_CODRIGA_S CODTAB
OUTPUT F_L_DESRIGA_S S0
OUTPUT FA_CODRIGA_S CODTAB
OUTPUT FA_DESRIGA_S S0
CHECKTYPE SEARCH
GROUP 3
END
STRING F_L_DESRIGA_S 50 48
STRING FA_DESRIGA_S 50 48
BEGIN
PROMPT 27 5 ""
USE GMC KEY 2 SELECT CODTAB[4,5] != ""
INPUT S0 F_L_DESRIGA_S
INPUT S0 FA_DESRIGA_S
DISPLAY "Descrizione@50" S0
DISPLAY "Gr. merc." CODTAB[1,3]
DISPLAY "Sottogr. merc." CODTAB[4,5]
COPY OUTPUT F_L_CODRIGA_S
COPY OUTPUT FA_CODRIGA_S
CHECKTYPE SEARCH
GROUP 3
END
STRING F_L_CODRIGA_R 20 5
STRING FA_CODRIGA_R 20 5
BEGIN
PROMPT 18 5 ""
FLAGS "U"
USE RFA
INPUT CODTAB F_L_CODRIGA_R
INPUT CODTAB FA_CODRIGA_R
DISPLAY "Ragg. fisc." CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_L_CODRIGA_R CODTAB
OUTPUT F_L_DESRIGA_R S0
OUTPUT FA_CODRIGA_R CODTAB
OUTPUT FA_DESRIGA_R S0
CHECKTYPE SEARCH
GROUP 4
END
STRING F_L_DESRIGA_R 50 48
STRING FA_DESRIGA_R 50 48
BEGIN
PROMPT 27 5 ""
USE RFA KEY 2
INPUT S0 F_L_DESRIGA_R
INPUT S0 FA_DESRIGA_R
DISPLAY "Descrizione@50" S0
DISPLAY "Ragg. fisc." CODTAB
COPY OUTPUT F_L_CODRIGA_R
COPY OUTPUT FA_CODRIGA_R
CHECKTYPE SEARCH
GROUP 4
END
STRING F_L_GRMERC_A 5
STRING FA_GRMERC_A 5
BEGIN
PROMPT 15 6 "Gr.merc. "
USE GMC
INPUT CODTAB F_L_GRMERC_A
OUTPUT F_L_DESGRMERC_A S0
INPUT CODTAB FA_GRMERC_A
OUTPUT FA_DESGRMERC_A S0
FLAGS "DG"
CHECKTYPE NORMAL
GROUP 1 2 3
END
STRING F_L_DESGRMERC_A 50 27
STRING FA_DESGRMERC_A 50 27
BEGIN
PROMPT 30 6 ""
FLAGS "D"
@ -257,7 +257,7 @@ BEGIN
PROMPT 0 6 "@bRighe listino"
END
SPREADSHEET F_L_RIGHE
SPREADSHEET FA_RIGHE
BEGIN
PROMPT 1 7 "Righe"
ITEM "Tipo@4"
@ -290,37 +290,37 @@ BEGIN
PROMPT 0 0 "@bGestione valuta"
END
STRING F_L_CODVAL 5
STRING FA_CODVAL 5
BEGIN
PROMPT 1 1 "Valuta "
FIELD CODVAL
FLAGS "U"
USE %VAL
INPUT CODTAB F_L_CODVAL
INPUT CODTAB FA_CODVAL
DISPLAY "Valuta" CODTAB
DISPLAY "Descrizione@50" S0
DISPLAY "Cambio" S4
OUTPUT F_L_CODVAL CODTAB
OUTPUT F_L_CONTROEURO B1
OUTPUT F_L_CAMBIO S4
OUTPUT FA_CODVAL CODTAB
OUTPUT FA_CONTROEURO B1
OUTPUT FA_CAMBIO S4
CHECKTYPE NORMAL
MESSAGE EMPTY CLEAR,F_L_CAMBIO|CLEAR,F_L_DATACAM|DISABLE,F_L_DATACAM
MESSAGE ENABLE,F_L_CAMBIO|ENABLE,F_L_DATACAM
MESSAGE EMPTY CLEAR,FA_CAMBIO|CLEAR,FA_DATACAM|DISABLE,FA_DATACAM
MESSAGE ENABLE,FA_CAMBIO|ENABLE,FA_DATACAM
END
NUMBER F_L_CAMBIO 15 6
NUMBER FA_CAMBIO 15 6
BEGIN
PROMPT 17 1 "Cambio "
FIELD CAMBIO
END
BOOLEAN F_L_CONTROEURO
BOOLEAN FA_CONTROEURO
BEGIN
PROMPT 42 1 "Contro Euro"
FIELD CONTROEURO
END
DATA F_L_DATACAM
DATA FA_DATACAM
BEGIN
PROMPT 61 1 "Data "
FIELD DATACAM
@ -331,15 +331,15 @@ BEGIN
PROMPT 0 3 "@bScaglioni"
END
BOOLEAN F_L_GESTSCAGL
BOOLEAN FA_GESTSCAGL
BEGIN
PROMPT 1 4 "Gestione scaglioni"
FIELD GESTSCAGL
MESSAGE FALSE CLEAR,F_L_DECIMALI
MESSAGE TRUE ENABLE,F_L_DECIMALI
MESSAGE FALSE CLEAR,FA_DECIMALI
MESSAGE TRUE ENABLE,FA_DECIMALI
END
LISTBOX F_L_DECIMALI 7
LISTBOX FA_DECIMALI 7
BEGIN
PROMPT 25 4 "Decimali per quantita' limite "
FIELD DECIMALI
@ -356,7 +356,7 @@ BEGIN
PROMPT 0 6 "@bSequenza ricerca"
END
LIST F_L_SEQRIC_1 10
LIST FA_SEQRIC_1 10
BEGIN
PROMPT 1 7 ""
FIELD SEQRIC[1,1]
@ -366,34 +366,34 @@ BEGIN
ITEM "R|Ragg.fisc."
END
LIST F_L_SEQRIC_2 10
LIST FA_SEQRIC_2 10
BEGIN
PROMPT 18 7 ""
FIELD SEQRIC[2,2]
ITEM "-|Nessuno" MESSAGE CLEAR,5@
ITEM "A|Articoli" MESSAGE ENABLE,F_L_SEQRIC_3
ITEM "G|Gruppo M." MESSAGE ENABLE,F_L_SEQRIC_3
ITEM "S|Sottog. M." MESSAGE ENABLE,F_L_SEQRIC_3
ITEM "R|Ragg.fisc." MESSAGE ENABLE,F_L_SEQRIC_3
STR_EXPR (#THIS_FIELD=="-")||(#THIS_FIELD!=#F_L_SEQRIC_1)
ITEM "A|Articoli" MESSAGE ENABLE,FA_SEQRIC_3
ITEM "G|Gruppo M." MESSAGE ENABLE,FA_SEQRIC_3
ITEM "S|Sottog. M." MESSAGE ENABLE,FA_SEQRIC_3
ITEM "R|Ragg.fisc." MESSAGE ENABLE,FA_SEQRIC_3
STR_EXPR (#THIS_FIELD=="-")||(#THIS_FIELD!=#FA_SEQRIC_1)
WARNING "La sequenza di ricerca deve indicare quattro tipi diversi di righe"
END
LIST F_L_SEQRIC_3 10
LIST FA_SEQRIC_3 10
BEGIN
PROMPT 33 7 ""
FIELD SEQRIC[3,3]
ITEM "-|Nessuno" MESSAGE CLEAR,F_L_SEQRIC_4
ITEM "A|Articoli" MESSAGE ENABLE,F_L_SEQRIC_4
ITEM "G|Gruppo M." MESSAGE ENABLE,F_L_SEQRIC_4
ITEM "S|Sottog. M." MESSAGE ENABLE,F_L_SEQRIC_4
ITEM "R|Ragg.fisc." MESSAGE ENABLE,F_L_SEQRIC_4
ITEM "-|Nessuno" MESSAGE CLEAR,FA_SEQRIC_4
ITEM "A|Articoli" MESSAGE ENABLE,FA_SEQRIC_4
ITEM "G|Gruppo M." MESSAGE ENABLE,FA_SEQRIC_4
ITEM "S|Sottog. M." MESSAGE ENABLE,FA_SEQRIC_4
ITEM "R|Ragg.fisc." MESSAGE ENABLE,FA_SEQRIC_4
GROUP 5
STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_L_SEQRIC_1)&&(#THIS_FIELD!=#F_L_SEQRIC_2))
STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#FA_SEQRIC_1)&&(#THIS_FIELD!=#FA_SEQRIC_2))
WARNING "La sequenza di ricerca deve indicare quattro tipi diversi di righe"
END
LIST F_L_SEQRIC_4 10
LIST FA_SEQRIC_4 10
BEGIN
PROMPT 48 7 ""
FIELD SEQRIC[4,4]
@ -403,7 +403,7 @@ BEGIN
ITEM "S|Sottog. M."
ITEM "R|Ragg.fisc."
GROUP 5
STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_L_SEQRIC_1)&&(#THIS_FIELD!=#F_L_SEQRIC_2)&&(#THIS_FIELD!=#F_L_SEQRIC_3))
STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#FA_SEQRIC_1)&&(#THIS_FIELD!=#FA_SEQRIC_2)&&(#THIS_FIELD!=#FA_SEQRIC_3))
WARNING "La sequenza di ricerca deve indicare quattro tipi diversi di righe"
END
@ -412,24 +412,24 @@ BEGIN
PROMPT 0 9 "@bListino successivo"
END
STRING F_L_CODSUCC 3
STRING FA_L_CODSUCC 3
BEGIN
PROMPT 1 10 ""
FIELD CODLISSUCC
FLAGS "U"
USE LF_CONDV
INPUT TIPO "L"
INPUT CATVEN F_L_CATVEN SELECT
INPUT COD F_L_CODSUCC
INPUT CATVEN FA_L_CATVEN SELECT
INPUT COD FA_L_CODSUCC
DISPLAY "C.V." CATVEN
DISPLAY "Codice" COD
DISPLAY "Descrizione@50" DESCR
OUTPUT F_L_CODSUCC COD
OUTPUT F_L_DESSUCC DESCR
OUTPUT FA_L_CODSUCC COD
OUTPUT FA_L_DESSUCC DESCR
CHECKTYPE NORMAL
END
STRING F_L_DESSUCC 50
STRING FA_L_DESSUCC 50
BEGIN
PROMPT 10 10 ""
FLAGS "D"
@ -440,57 +440,57 @@ BEGIN
PROMPT 0 12 "@bListino padre"
END
STRING F_L_FATHCATVEN 2
STRING FA_L_FATHCATVEN 2
BEGIN
PROMPT 1 13 "Cat. ven. "
FIELD FATHCATVEN
FLAGS "U"
USE CVE
INPUT CODTAB F_L_FATHCATVEN
INPUT CODTAB FA_L_FATHCATVEN
DISPLAY "Cat." CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_L_FATHCATVEN CODTAB
OUTPUT F_L_FATHDESVEN S0
OUTPUT FA_L_FATHCATVEN CODTAB
OUTPUT FA_L_FATHDESVEN S0
CHECKTYPE NORMAL
END
STRING F_L_FATHDESVEN 50
STRING FA_L_FATHDESVEN 50
BEGIN
PROMPT 18 13 ""
USE CVE KEY 2
INPUT S0 F_L_FATHDESVEN
INPUT S0 FA_L_FATHDESVEN
DISPLAY "Descrizione@50" S0
DISPLAY "Cat." CODTAB
COPY OUTPUT F_L_FATHCATVEN
COPY OUTPUT FA_L_FATHCATVEN
END
STRING F_L_FATHCOD 3
STRING FA_L_FATHCOD 3
BEGIN
PROMPT 1 14 "Listino "
FIELD FATHCOD
FLAGS "U"
USE LF_CONDV SELECT (CATVEN!=#F_L_CATVEN)||(COD!=#F_L_COD)
USE LF_CONDV SELECT (CATVEN!=#FA_L_CATVEN)||(COD!=#FA_COD)
INPUT TIPO "L"
INPUT CATVEN F_L_FATHCATVEN SELECT
INPUT COD F_L_FATHCOD
INPUT CATVEN FA_L_FATHCATVEN SELECT
INPUT COD FA_L_FATHCOD
DISPLAY "C.V." CATVEN
DISPLAY "Codice" COD
DISPLAY "Descrizione@50" DESCR
DISPLAY "Valuta" CODVAL
DISPLAY "Fine validita'" VALFIN
OUTPUT F_L_FATHCATVEN CATVEN
OUTPUT F_L_FATHCOD COD
OUTPUT F_L_FATHDESCR DESCR
OUTPUT FA_L_FATHCATVEN CATVEN
OUTPUT FA_L_FATHCOD COD
OUTPUT FA_L_FATHDESCR DESCR
CHECKTYPE NORMAL
END
STRING F_L_FATHDESCR 50
STRING FA_L_FATHDESCR 50
BEGIN
PROMPT 18 14 ""
FLAGS "D"
END
STRING F_L_ARROTONDA 8
STRING FA_L_ARROTONDA 8
BEGIN
PROMPT 1 15 "Arrotonda "
FIELD ARROTONDA
@ -506,19 +506,19 @@ BEGIN
PROMPT 0 17 "@bParametri gestione"
END
BOOLEAN F_L_IMPLORDI
BOOLEAN FA_IMPLORDI
BEGIN
PROMPT 1 18 "Importi lordi"
FIELD IMPLORDI
END
BOOLEAN F_L_GESTUM
BOOLEAN FA_GESTUM
BEGIN
PROMPT 20 18 "Gestione unita` di misura"
FIELD GESTUM
END
BOOLEAN F_L_GESTSCO
BOOLEAN FA_GESTSCO
BEGIN
PROMPT 50 18 "Gestione sconti/omaggi"
FIELD GESTSCO
@ -682,7 +682,7 @@ BEGIN
PROMPT 2 2 "Prezzo "
FIELD PREZZO
FLAGS "U"
DRIVENBY -F_L_CODVAL
DRIVENBY -FA_CODVAL
END
STRING S_UM 2
@ -798,7 +798,7 @@ BEGIN
PROMPT 2 15 "Prezzo omaggio "
FIELD PROMAGGIO
FLAGS "U"
DRIVENBY -F_L_CODVAL
DRIVENBY -FA_CODVAL
END
GROUPBOX DLG_NULL 76 5

@ -1,21 +1,21 @@
//campi maschera ve2500b.uml (parametri di creazione nuovi listini)
#define F_SELECT 101
#define FB_SELECT 101
#define F_CATVEN 102
#define F_DESVEN 103
#define F_COD 104
#define F_DESCR 105
#define F_RICARICO 106
#define FB_CATVEN 102
#define FB_DESVEN 103
#define FB_COD 104
#define FB_DESCR 105
#define FB_RICARICO 106
#define F_DACODART 107
#define F_DADESART 108
#define F_ACODART 109
#define F_ADESART 110
#define F_GRMERC 111
#define F_SOTGRMERC 112
#define F_DESGRMERC 113
#define F_RAGFIS 114
#define F_DESRAGFIS 115
#define F_COPIATESTA 116
#define FB_DACODART 107
#define FB_DADESART 108
#define FB_ACODART 109
#define FB_ADESART 110
#define FB_GRMERC 111
#define FB_SOTGRMERC 112
#define FB_DESGRMERC 113
#define FB_RAGFIS 114
#define FB_DESRAGFIS 115
#define FB_COPIATESTA 116

@ -8,7 +8,7 @@ ENDPAGE
PAGE "Creazione nuovo listino" 0 2 0 0
RADIOBUTTON F_SELECT 76
RADIOBUTTON FB_SELECT 76
BEGIN
PROMPT 1 1 "@bTipologia di generazione"
ITEM "1|Copia da listino esistente"
@ -25,68 +25,68 @@ BEGIN
GROUP 1
END
STRING F_CATVEN 2
STRING FB_CATVEN 2
BEGIN
PROMPT 2 8 "Cat. vend. "
FIELD CATVEN
FLAGS "U"
KEY 1
USE CVE
INPUT CODTAB F_CATVEN
INPUT CODTAB FB_CATVEN
DISPLAY "Cat." CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_CATVEN CODTAB
OUTPUT F_DESVEN S0
OUTPUT FB_CATVEN CODTAB
OUTPUT FB_DESVEN S0
CHECKTYPE FORCED
GROUP 1
END
STRING F_DESVEN 50
STRING FB_DESVEN 50
BEGIN
PROMPT 21 8 ""
USE CVE KEY 2
INPUT S0 F_DESVEN
INPUT S0 FB_DESVEN
DISPLAY "Descrizione@50" S0
DISPLAY "Cat." CODTAB
COPY OUTPUT F_CATVEN
COPY OUTPUT FB_CATVEN
CHECKTYPE NORMAL
GROUP 1
END
STRING F_COD 3
STRING FB_COD 3
BEGIN
PROMPT 2 9 "Listino "
FLAGS "U"
KEY 1
USE LF_CONDV
INPUT TIPO "L"
INPUT CATVEN F_CATVEN
INPUT COD F_COD
INPUT CATVEN FB_CATVEN
INPUT COD FB_COD
DISPLAY "C.V." CATVEN
DISPLAY "Codice" COD
DISPLAY "Descrizione@50" DESCR
DISPLAY "Valuta" CODVAL
DISPLAY "Fine validita'" VALFIN
OUTPUT F_CATVEN CATVEN
OUTPUT F_COD COD
OUTPUT F_DESCR DESCR
OUTPUT FB_CATVEN CATVEN
OUTPUT FB_COD COD
OUTPUT FB_DESCR DESCR
CHECKTYPE REQUIRED
GROUP 1
END
STRING F_DESCR 50
STRING FB_DESCR 50
BEGIN
PROMPT 21 9 ""
GROUP 1
END
NUMBER F_RICARICO 6 2
NUMBER FB_RICARICO 6 2
BEGIN
PROMPT 2 10 "Ricarico "
GROUP 1
END
BOOLEAN F_COPIATESTA
BOOLEAN FB_COPIATESTA
BEGIN
PROMPT 21 10 "Copia tutti i dati di testata"
GROUP 1
@ -100,125 +100,125 @@ BEGIN
GROUP 2
END
STRING F_DACODART 20
STRING FB_DACODART 20
BEGIN
PROMPT 2 8 "Da articolo "
FLAGS "U"
USE LF_ANAMAG
INPUT CODART F_DACODART
INPUT CODART FB_DACODART
DISPLAY "Articolo@20" CODART
DISPLAY "Descrizione@50" DESCR
OUTPUT F_DACODART CODART
OUTPUT F_DADESART DESCR
OUTPUT FB_DACODART CODART
OUTPUT FB_DADESART DESCR
CHECKTYPE NORMAL
ADD RUN ve2 -3
GROUP 2
END
STRING F_DADESART 50 35
STRING FB_DADESART 50 35
BEGIN
PROMPT 38 8 ""
USE LF_ANAMAG KEY 2
INPUT DESCR F_DADESART
INPUT DESCR FB_DADESART
DISPLAY "Descrizione@50" DESCR
DISPLAY "Articolo@20" CODART
COPY OUTPUT F_DACODART
COPY OUTPUT FB_DACODART
CHECKTYPE NORMAL
ADD RUN ve2 -3
GROUP 2
END
STRING F_ACODART 20
STRING FB_ACODART 20
BEGIN
PROMPT 2 9 "A articolo "
FLAGS "U"
USE LF_ANAMAG
INPUT CODART F_ACODART
COPY DISPLAY F_DACODART
OUTPUT F_ACODART CODART
OUTPUT F_ADESART DESCR
INPUT CODART FB_ACODART
COPY DISPLAY FB_DACODART
OUTPUT FB_ACODART CODART
OUTPUT FB_ADESART DESCR
CHECKTYPE NORMAL
ADD RUN ve2 -3
GROUP 2
END
STRING F_ADESART 50 35
STRING FB_ADESART 50 35
BEGIN
PROMPT 38 9 ""
USE LF_ANAMAG KEY 2
INPUT DESCR F_ADESART
COPY DISPLAY F_DADESART
COPY OUTPUT F_ACODART
INPUT DESCR FB_ADESART
COPY DISPLAY FB_DADESART
COPY OUTPUT FB_ACODART
CHECKTYPE NORMAL
ADD RUN ve2 -3
GROUP 2
END
STRING F_GRMERC 3
STRING FB_GRMERC 3
BEGIN
PROMPT 2 10 "Gr. merc. "
FLAGS "U"
USE GMC SELECT CODTAB[4,5] == ""
INPUT CODTAB[1,3] F_GRMERC
INPUT CODTAB[1,3] FB_GRMERC
DISPLAY "Gruppo" CODTAB[1,3]
DISPLAY "Descrizione@50" S0
OUTPUT F_GRMERC CODTAB[1,3]
OUTPUT F_DESGRMERC S0
OUTPUT FB_GRMERC CODTAB[1,3]
OUTPUT FB_DESGRMERC S0
CHECKTYPE NORMAL
GROUP 2
END
STRING F_SOTGRMERC 2
STRING FB_SOTGRMERC 2
BEGIN
PROMPT 20 10 ""
FLAGS "U"
USE GMC
COPY INPUT F_GRMERC
INPUT CODTAB[4,5] F_SOTGRMERC
COPY INPUT FB_GRMERC
INPUT CODTAB[4,5] FB_SOTGRMERC
DISPLAY "Gruppo" CODTAB[1,3]
DISPLAY "Sottogruppo" CODTAB[4,5]
DISPLAY "Descrizione@50" S0
COPY OUTPUT F_GRMERC
OUTPUT F_SOTGRMERC CODTAB[4,5]
COPY OUTPUT FB_GRMERC
OUTPUT FB_SOTGRMERC CODTAB[4,5]
CHECKTYPE NORMAL
GROUP 2
END
STRING F_DESGRMERC 50 45
STRING FB_DESGRMERC 50 45
BEGIN
PROMPT 28 10 ""
USE GMC KEY 2
INPUT S0 F_DESGRMERC
INPUT S0 FB_DESGRMERC
DISPLAY "Descrizione@50" S0
DISPLAY "Gruppo" CODTAB[1,3]
DISPLAY "Sottogruppo" CODTAB[4,5]
COPY OUTPUT F_SOTGRMERC
COPY OUTPUT FB_SOTGRMERC
CHECKTYPE NORMAL
GROUP 2
END
STRING F_RAGFIS 5
STRING FB_RAGFIS 5
BEGIN
PROMPT 2 11 "Raggr. fis. "
FLAGS "U"
USE RFA
INPUT CODTAB F_RAGFIS
INPUT CODTAB FB_RAGFIS
DISPLAY "Ragg. fisc." CODTAB
DISPLAY "Descrizione@50" S0
OUTPUT F_RAGFIS CODTAB
OUTPUT F_DESRAGFIS S0
OUTPUT FB_RAGFIS CODTAB
OUTPUT FB_DESRAGFIS S0
CHECKTYPE NORMAL
GROUP 2
END
STRING F_DESRAGFIS 50
STRING FB_DESRAGFIS 50
BEGIN
PROMPT 23 11 ""
USE RFA KEY 2
INPUT S0 F_DESRAGFIS
INPUT S0 FB_DESRAGFIS
DISPLAY "Descrizione@50" S0
DISPLAY "Ragg. fisc." CODTAB
COPY OUTPUT F_RAGFIS
COPY OUTPUT FB_RAGFIS
CHECKTYPE NORMAL
GROUP 2
END

@ -132,7 +132,7 @@
<font face="Arial Narrow" size="8" />
<source>PERCPROVV</source>
</field>
<field x="81" type="Stringa" width="8" pattern="1">
<field x="81" type="Stringa" align="center" width="8" pattern="1">
<font face="Arial Narrow" size="7" />
<source>SCONTO</source>
</field>

@ -125,7 +125,7 @@
<font face="Arial Narrow" size="8" />
<source>PERCPROVV</source>
</field>
<field x="81" type="Stringa" width="8" pattern="1">
<field x="81" type="Stringa" align="center" width="8" pattern="1">
<font face="Arial Narrow" size="7" />
<source>SCONTO</source>
</field>

178
ve/ve3500o.rep Executable file

@ -0,0 +1,178 @@
<?xml version="1.0" encoding="UTF-8" ?>
<report name="ve3500o" lpi="6">
<description>Stampa offerte</description>
<font face="Arial" size="8" />
<section type="Head">
<font face="Arial" bold="1" size="8" />
<field x="81" type="Testo" align="center" width="12" pattern="1" text="Sconti" />
<field x="95" type="Testo" align="center" width="15" pattern="1" text="Omaggi" />
<field x="1" y="0.5" type="Testo" width="20" pattern="1" text="Codice" />
<field x="22" y="0.5" type="Testo" width="35" pattern="1" text="Descrizione" />
<field x="57" y="0.5" type="Testo" width="2" pattern="1" text="UM" />
<field x="59.5" y="0.5" type="Testo" align="right" width="11" pattern="1" text="Prezzo" />
<field x="72" y="0.5" type="Testo" align="center" width="3" pattern="1" text="IVA" />
<field x="76" y="0.5" type="Testo" width="4" pattern="1" text="%Prv" />
<field x="111" y="0.5" type="Testo" width="3" pattern="1" text="Es." />
<field x="81.5" y="0.75" type="Testo" align="center" width="12" pattern="1" text="Formula - Qta base">
<font face="Arial Narrow" size="8" />
</field>
<field x="95" y="0.75" type="Testo" align="center" width="15" pattern="1" text="Qta base - Prezzo - UM">
<font face="Arial Narrow" size="8" />
</field>
<field border="1" x="1" y="1.5" type="Linea" width="116" height="0" pattern="1" />
</section>
<section type="Head" level="1">
<font face="Arial" bold="1" size="8" />
<field border="2" radius="200" x="23" y="0.75" type="Rettangolo" width="75" height="3" pattern="1" />
<field x="26" y="1.75" type="Testo" width="12" pattern="1" text="OFFERTA">
<font face="Arial" bold="1" size="12" />
</field>
<field x="40" y="1.75" type="Stringa" width="5" pattern="1">
<font face="Arial" bold="1" size="12" />
<source>COD</source>
<prescript description="H1.0 PRESCRIPT">MESSAGE ISAMREAD,52,TIPO=O!CATVEN=CATVEN!COD=COD,101=DESCR!102=VALIN!103=VALFIN!201=IMPLORDI!202=GESTUM!203=GESTSCAGL!204=GESTSCO
</prescript>
<postscript description="H1.0 POSTSCRIPT">MESSAGE COPY,F0.100</postscript>
</field>
<field x="1" y="5" type="Testo" width="12" pattern="1" text="Inizio validit&#E0;:" />
<field x="26" y="5" type="Testo" width="10" pattern="1" text="Fine validit&#E0;:" />
<field x="1" y="6.5" type="Testo" width="12" pattern="1" text="Importi lordi:" />
<field x="16" y="6.5" type="Testo" width="12" pattern="1" text="Gest. UM:" />
<field x="29" y="6.5" type="Testo" width="13" pattern="1" text="Gest. scaglioni:" />
<field x="47" y="6.5" type="Testo" width="11" pattern="1" text="Gest. sconti:" />
<field border="2" y="7.5" type="Linea" width="117" height="0" pattern="1" />
<field x="46" y="1.75" type="Stringa" width="50" id="101" pattern="1">
<font face="Arial" bold="1" size="12" />
<prescript description="H1.101 PRESCRIPT">MESSAGE COPY,F0.101</prescript>
</field>
<field x="13" y="5" type="Data" width="10" id="102" pattern="1">
<font face="Arial" size="8" />
</field>
<field x="37" y="5" type="Data" width="10" id="103" pattern="1">
<font face="Arial" size="8" />
</field>
<field x="12" y="6.5" type="Array" width="2" id="201" pattern="1">
<font face="Arial" size="8" />
<list>
<li Value="No" Code=" " />
<li Value="Si" Code="X" />
</list>
</field>
<field x="24" y="6.5" type="Array" width="2" id="202" pattern="1">
<font face="Arial" size="8" />
<list>
<li Value="No" Code=" " />
<li Value="Si" Code="X" />
</list>
</field>
<field x="42" y="6.5" type="Array" width="2" id="203" pattern="1">
<font face="Arial" size="8" />
<list>
<li Value="No" Code=" " />
<li Value="Si" Code="X" />
</list>
</field>
<field x="57.5" y="6.5" type="Array" width="2" id="204" pattern="1">
<font face="Arial" size="8" />
<list>
<li Value="No" Code=" " />
<li Value="Si" Code="X" />
</list>
</field>
</section>
<section type="Head" level="2">
<groupby>TIPORIGA="A"</groupby>
<font face="Arial" bold="1" size="8" />
<field border="1" x="1" y="1.5" type="Linea" width="116" height="0" pattern="1" />
<field x="1" y="0.25" type="Array" width="25" id="101" pattern="1">
<font italic="1" face="Arial" bold="1" size="8" />
<source>TIPORIGA</source>
<list>
<li Value="Articoli" Code="A" />
<li Value="Gruppi Merceologici" Code="G" />
<li Value="Raggruppamenti fiscali" Code="R" />
</list>
</field>
</section>
<section type="Body" />
<section type="Body" level="1">
<field x="57.5" type="Stringa" width="2" pattern="1">
<source>UM</source>
</field>
<field x="59.5" type="Prezzo" align="right" width="11" pattern="1" text="#########,@@">
<source>PREZZO</source>
</field>
<field x="73" type="Stringa" width="3" pattern="1">
<font face="Arial Narrow" size="8" />
<source>CODIVA</source>
</field>
<field x="77" type="Numero" align="right" width="3" pattern="1" hide_zero="1">
<font face="Arial Narrow" size="8" />
<source>PERCPROVV</source>
</field>
<field x="80" type="Stringa" align="center" width="8" pattern="1">
<font face="Arial Narrow" size="7" />
<source>SCONTO</source>
</field>
<field x="89" type="Numero" align="right" width="5" pattern="1" hide_zero="1">
<font face="Arial Narrow" size="7" />
<source>QBASE</source>
</field>
<field x="95" type="Numero" align="right" width="5" pattern="1" hide_zero="1">
<font face="Arial Narrow" size="7" />
<source>QOM</source>
</field>
<field x="100" type="Prezzo" align="right" width="8" pattern="1" hide_zero="1" text="#########,@@">
<font face="Arial Narrow" size="7" />
<source>PROMAGGIO</source>
</field>
<field x="108.5" type="Stringa" width="2" pattern="1">
<font face="Arial Narrow" size="7" />
<source>UMOM</source>
</field>
<field x="112" type="Stringa" width="2" pattern="1">
<source>ARTES</source>
</field>
<field type="Array" hidden="1" width="1" id="101" pattern="1">
<source>TIPORIGA</source>
<list>
<li Value="Articolo" Code="A">MESSAGE HIDE,203|HIDE,303|SHOW,103</li>
<li Value="Gr.Merc." Code="G">MESSAGE HIDE,103|HIDE,303|SHOW,203</li>
<li Value="Ragg. fisc." Code="R">MESSAGE HIDE,103|HIDE,203|SHOW,303</li>
</list>
</field>
<field x="1.5" type="Stringa" width="20" id="102" pattern="1">
<source>CODRIGA</source>
</field>
<field x="22" type="Stringa" width="35" id="103" pattern="1">
<font face="Arial Narrow" size="7" />
<prescript description="B1.103 PRESCRIPT">MESSAGE ISAMREAD,47,CODART=#102,DESCR</prescript>
</field>
<field x="22" type="Stringa" width="35" id="203" pattern="1">
<font face="Arial Narrow" size="7" />
<prescript description="B1.203 PRESCRIPT">MESSAGE TABLEREAD,GMC,#102,S0</prescript>
</field>
<field x="22" type="Stringa" width="35" id="303" pattern="1">
<font face="Arial Narrow" size="7" />
<prescript description="B1.303 PRESCRIPT">MESSAGE TABLEREAD,RFA,#102,S0</prescript>
</field>
</section>
<section type="Foot">
<field border="1" x="1" y="0.5" type="Linea" width="116" height="0" pattern="1" />
<field x="5" y="1" type="Testo" width="11" pattern="1" text="Offerta:" />
<field x="104" y="1" type="Testo" width="5" pattern="1" text="Pag." />
<field x="110" y="1" type="Numero" align="right" width="4" pattern="1">
<source>#REPORT.PAGE</source>
</field>
<field x="17" y="1" type="Stringa" width="4" id="100" pattern="1" />
<field x="22" y="1" type="Stringa" width="50" id="101" pattern="1" />
</section>
<section type="Foot" level="1" />
<section type="Foot" level="2" />
<sql>USE RCONDV
SELECT ((TIPORIGA="A")&#26;&#26;(BETWEEN(CODRIGA,#DACODART,#ACODART))&#26;&#26;(BETWEEN(ANAMAG.GRMERC,#DAGRMERC,#AGRMERC))&#26;&#26;(BETWEEN(ANAMAG.RAGGFIS,#DARAGFIS,#ARAGFIS)))||((TIPORIGA="G")&#26;&#26;(BETWEEN(CODRIGA,#DAGRMERC,#AGRMERC)))||((TIPORIGA="R")&#26;&#26;(BETWEEN(CODRIGA,#DARAGFIS,#ARAGFIS)))
JOIN ANAMAG INTO CODART=CODRIGA
FROM TIPO=O COD=#COD
TO TIPO=O COD=#COD
</sql>
</report>