Patch level :10.0
Files correlati : Ricompilazione Demo : [ ] Commento : aggiunta prima stesura del nuovo programma listini (per adesso li legge ma non li scrive! è un carabiniere..) git-svn-id: svn://10.65.10.50/trunk@19327 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
48b2f8e30b
commit
76d5da7cff
@ -17,7 +17,6 @@
|
|||||||
#define CONDV_GESTUM "GESTUM"
|
#define CONDV_GESTUM "GESTUM"
|
||||||
#define CONDV_GESTSCAGL "GESTSCAGL"
|
#define CONDV_GESTSCAGL "GESTSCAGL"
|
||||||
#define CONDV_GESTSCO "GESTSCO"
|
#define CONDV_GESTSCO "GESTSCO"
|
||||||
#define CONDV_SCONST "SCONST"
|
|
||||||
#define CONDV_OBBLIG "OBBLIG"
|
#define CONDV_OBBLIG "OBBLIG"
|
||||||
#define CONDV_CODLISSUCC "CODLISSUCC"
|
#define CONDV_CODLISSUCC "CODLISSUCC"
|
||||||
#define CONDV_SEQRIC "SEQRIC"
|
#define CONDV_SEQRIC "SEQRIC"
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
52
|
52
|
||||||
0
|
0
|
||||||
$condv|0|0|121|0|Cond.di vendita(listini,contratti,offerte)|||
|
$condv|0|0|133|0|Cond.di vendita(listini,contratti,offerte)|||
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
52
|
52
|
||||||
21
|
23
|
||||||
TIPO|1|1|0|Tipo (<L>istini, <C>ontratti, <O>fferte)
|
TIPO|1|1|0|Tipo (<L>istini, <C>ontratti, <O>fferte)
|
||||||
CATVEN|1|2|0|Categoria vendite (L)
|
CATVEN|1|2|0|Categoria vendite (L)
|
||||||
TIPOCF|1|1|0|<C>liente, <F>ornitore (C)
|
TIPOCF|1|1|0|<C>liente, <F>ornitore (C)
|
||||||
@ -16,10 +16,12 @@ IMPLORDI|8|1|0|Importi lordi
|
|||||||
GESTUM|8|1|0|Gestione unitá di misura
|
GESTUM|8|1|0|Gestione unitá di misura
|
||||||
GESTSCAGL|8|1|0|Gestione scaglioni
|
GESTSCAGL|8|1|0|Gestione scaglioni
|
||||||
GESTSCO|8|1|0|Gestione sconti
|
GESTSCO|8|1|0|Gestione sconti
|
||||||
SCONST|8|1|0|Gestione sconti standard
|
|
||||||
OBBLIG|8|1|0|Contratto obbligatorio (C)
|
OBBLIG|8|1|0|Contratto obbligatorio (C)
|
||||||
CODLISSUCC|1|3|0|Codice listino successivo (L)
|
CODLISSUCC|1|3|0|Codice listino successivo (L)
|
||||||
SEQRIC|1|4|0|Combinazione di (<A>rticolo,<G>ruppo merceologico,<R>aggr.fiscale)
|
SEQRIC|1|4|0|Combinazione di (<A>rticolo,<G>ruppo merceologico,<R>aggr.fiscale)
|
||||||
DECIMALI|2|1|0|Numero di decimali significativi per la qta limite scaglione
|
DECIMALI|2|1|0|Numero di decimali significativi per la qta limite scaglione
|
||||||
|
FATHCATVEN|1|2|0|Listino padre: categoria vendite (L)
|
||||||
|
FATHCOD|1|3|0|Listino padre: codice (L)
|
||||||
|
ARROTONDA|1|8|0|Regola per arrotondamento importi (L)
|
||||||
1
|
1
|
||||||
TIPO+CATVEN+TIPOCF+CODCF+COD|
|
TIPO+CATVEN+TIPOCF+CODCF+COD|
|
||||||
|
10
ve/ve2.cpp
10
ve/ve2.cpp
@ -6,10 +6,12 @@ int main( int argc, char** argv)
|
|||||||
const int r = argc>1 ? (argv[1][1]-'0') : 0;
|
const int r = argc>1 ? (argv[1][1]-'0') : 0;
|
||||||
switch (r)
|
switch (r)
|
||||||
{
|
{
|
||||||
case 1: ve2200(argc, argv); break;
|
case 1: ve2200(argc, argv); break;
|
||||||
case 2: ve2300(argc, argv); break;
|
case 2: ve2300(argc, argv); break;
|
||||||
case 3: ve2400(argc, argv); break;
|
case 3: ve2400(argc, argv); break;
|
||||||
case 5: ve2600(argc, argv); break;
|
case 4: ve2500(argc, argv); break;
|
||||||
|
case 5: ve2600(argc, argv); break;
|
||||||
|
//case 6: ve2700(argc, argv); break;
|
||||||
default: ve2100(argc, argv); break;
|
default: ve2100(argc, argv); break;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
2
ve/ve2.h
2
ve/ve2.h
@ -5,7 +5,9 @@ int ve2100(int argc, char* argv[]); // tabelle sconti (di riga/di documento/inc
|
|||||||
int ve2200(int argc, char* argv[]); // testate listini/contratti/offerte
|
int ve2200(int argc, char* argv[]); // testate listini/contratti/offerte
|
||||||
int ve2300(int argc, char* argv[]); // righe listini/contratti/offerte
|
int ve2300(int argc, char* argv[]); // righe listini/contratti/offerte
|
||||||
int ve2400(int argc, char* argv[]); // anagrafica di magazzino
|
int ve2400(int argc, char* argv[]); // anagrafica di magazzino
|
||||||
|
int ve2500(int argc, char* argv[]); // gestione semplificata (ovvero comprensibile) listini
|
||||||
int ve2600(int argc, char* argv[]); // relazioni articoli livelli di giacenza
|
int ve2600(int argc, char* argv[]); // relazioni articoli livelli di giacenza
|
||||||
|
//int ve2700(int argc, char* argv[]); // aggirnamento multiplo listini figli
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -12,7 +12,6 @@
|
|||||||
#define F_GESTUM 120
|
#define F_GESTUM 120
|
||||||
#define F_GESTSCAGL 121
|
#define F_GESTSCAGL 121
|
||||||
#define F_GESTSCO 122
|
#define F_GESTSCO 122
|
||||||
#define F_SCONST 123
|
|
||||||
#define F_SEQRIC_1 124
|
#define F_SEQRIC_1 124
|
||||||
#define F_SEQRIC_2 125
|
#define F_SEQRIC_2 125
|
||||||
#define F_SEQRIC_3 126
|
#define F_SEQRIC_3 126
|
||||||
|
@ -324,8 +324,6 @@ BEGIN
|
|||||||
USE LF_CONDV
|
USE LF_CONDV
|
||||||
INPUT TIPO F_TIPO SELECT
|
INPUT TIPO F_TIPO SELECT
|
||||||
INPUT CATVEN F_L_CATVEN SELECT
|
INPUT CATVEN F_L_CATVEN SELECT
|
||||||
//INPUT TIPOCF F_C_TIPOCF SELECT
|
|
||||||
//INPUT CODCF F_C_CODCF SELECT
|
|
||||||
INPUT COD F_L_CODSUCC
|
INPUT COD F_L_CODSUCC
|
||||||
DISPLAY "C.V." CATVEN
|
DISPLAY "C.V." CATVEN
|
||||||
DISPLAY "Codice" COD
|
DISPLAY "Codice" COD
|
||||||
|
@ -175,7 +175,7 @@ STRING F_R_CODRIGA_A 20
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 37 4 "Codice articolo "
|
PROMPT 37 4 "Codice articolo "
|
||||||
FIELD LF_RCONDV->CODRIGA
|
FIELD LF_RCONDV->CODRIGA
|
||||||
FLAG "U"
|
FLAGS "U"
|
||||||
KEY 1
|
KEY 1
|
||||||
USE LF_ANAMAG
|
USE LF_ANAMAG
|
||||||
INPUT CODART F_R_CODRIGA_A
|
INPUT CODART F_R_CODRIGA_A
|
||||||
@ -184,7 +184,7 @@ BEGIN
|
|||||||
OUTPUT F_R_CODRIGA_A CODART
|
OUTPUT F_R_CODRIGA_A CODART
|
||||||
OUTPUT F_R_DESRIGA_A DESCR
|
OUTPUT F_R_DESRIGA_A DESCR
|
||||||
CHECKTYPE FORCED
|
CHECKTYPE FORCED
|
||||||
ADD RUN ve2 -3
|
ADD RUN ve2 -3
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_R_DESRIGA_A 50
|
STRING F_R_DESRIGA_A 50
|
||||||
@ -197,14 +197,14 @@ BEGIN
|
|||||||
DISPLAY "Articolo@20" CODART
|
DISPLAY "Articolo@20" CODART
|
||||||
COPY OUTPUT F_R_CODRIGA_A
|
COPY OUTPUT F_R_CODRIGA_A
|
||||||
CHECKTYPE NORMAL
|
CHECKTYPE NORMAL
|
||||||
ADD RUN ve2 -3
|
ADD RUN ve2 -3
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_R_CODRIGA_G 3
|
STRING F_R_CODRIGA_G 3
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 5 "Gruppo merc. "
|
PROMPT 2 5 "Gruppo merc. "
|
||||||
FIELD LF_RCONDV->CODRIGA[1,3]
|
FIELD LF_RCONDV->CODRIGA[1,3]
|
||||||
FLAG "U"
|
FLAGS "U"
|
||||||
KEY 1
|
KEY 1
|
||||||
USE GMC SELECT CODTAB[4,5] == ""
|
USE GMC SELECT CODTAB[4,5] == ""
|
||||||
INPUT CODTAB[1,3] F_R_CODRIGA_G
|
INPUT CODTAB[1,3] F_R_CODRIGA_G
|
||||||
@ -212,7 +212,6 @@ BEGIN
|
|||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
OUTPUT F_R_CODRIGA_G CODTAB[1,3]
|
OUTPUT F_R_CODRIGA_G CODTAB[1,3]
|
||||||
OUTPUT F_R_DESRIGA_G S0
|
OUTPUT F_R_DESRIGA_G S0
|
||||||
// MESSAGE COPY,F_R_CODRIGA_A
|
|
||||||
CHECKTYPE FORCED
|
CHECKTYPE FORCED
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -225,14 +224,13 @@ BEGIN
|
|||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
DISPLAY "Gr. merc." CODTAB[1,3]
|
DISPLAY "Gr. merc." CODTAB[1,3]
|
||||||
COPY OUTPUT F_R_CODRIGA_G
|
COPY OUTPUT F_R_CODRIGA_G
|
||||||
// FLAG "D"
|
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_R_CODRIGA_S 5
|
STRING F_R_CODRIGA_S 5
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 5 "Sottogr.mer. "
|
PROMPT 2 5 "Sottogr.mer. "
|
||||||
FIELD LF_RCONDV->CODRIGA[1,5]
|
FIELD LF_RCONDV->CODRIGA[1,5]
|
||||||
FLAG "U"
|
FLAGS "U"
|
||||||
KEY 1
|
KEY 1
|
||||||
USE GMC SELECT CODTAB[4,5] != ""
|
USE GMC SELECT CODTAB[4,5] != ""
|
||||||
INPUT CODTAB F_R_CODRIGA_S
|
INPUT CODTAB F_R_CODRIGA_S
|
||||||
@ -241,7 +239,6 @@ BEGIN
|
|||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
OUTPUT F_R_CODRIGA_S CODTAB
|
OUTPUT F_R_CODRIGA_S CODTAB
|
||||||
OUTPUT F_R_DESRIGA_S S0
|
OUTPUT F_R_DESRIGA_S S0
|
||||||
// MESSAGE COPY,F_R_CODRIGA_A
|
|
||||||
CHECKTYPE FORCED
|
CHECKTYPE FORCED
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -255,14 +252,13 @@ BEGIN
|
|||||||
DISPLAY "Gr. merc." CODTAB[1,3]
|
DISPLAY "Gr. merc." CODTAB[1,3]
|
||||||
DISPLAY "Sottogr. merc." CODTAB[4,5]
|
DISPLAY "Sottogr. merc." CODTAB[4,5]
|
||||||
COPY OUTPUT F_R_CODRIGA_S
|
COPY OUTPUT F_R_CODRIGA_S
|
||||||
// FLAG "D"
|
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_R_CODRIGA_R 5
|
STRING F_R_CODRIGA_R 5
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 5 "Ragg.fiscale "
|
PROMPT 2 5 "Ragg.fiscale "
|
||||||
FIELD LF_RCONDV->CODRIGA[1,5]
|
FIELD LF_RCONDV->CODRIGA[1,5]
|
||||||
FLAG "U"
|
FLAGS "U"
|
||||||
KEY 1
|
KEY 1
|
||||||
USE RFA
|
USE RFA
|
||||||
INPUT CODTAB F_R_CODRIGA_R
|
INPUT CODTAB F_R_CODRIGA_R
|
||||||
@ -270,7 +266,6 @@ BEGIN
|
|||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
OUTPUT F_R_CODRIGA_R CODTAB
|
OUTPUT F_R_CODRIGA_R CODTAB
|
||||||
OUTPUT F_R_DESRIGA_R S0
|
OUTPUT F_R_DESRIGA_R S0
|
||||||
// MESSAGE COPY,F_R_CODRIGA_A
|
|
||||||
CHECKTYPE FORCED
|
CHECKTYPE FORCED
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -283,7 +278,6 @@ BEGIN
|
|||||||
DISPLAY "Descrizione@50" S0
|
DISPLAY "Descrizione@50" S0
|
||||||
DISPLAY "Ragg. fisc." CODTAB
|
DISPLAY "Ragg. fisc." CODTAB
|
||||||
COPY OUTPUT F_R_CODRIGA_R
|
COPY OUTPUT F_R_CODRIGA_R
|
||||||
// FLAG "D"
|
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_R_UM 2
|
STRING F_R_UM 2
|
||||||
@ -315,7 +309,6 @@ BEGIN
|
|||||||
PROMPT 100 100 ""
|
PROMPT 100 100 ""
|
||||||
FLAG "D"
|
FLAG "D"
|
||||||
USE LF_RCONDV
|
USE LF_RCONDV
|
||||||
// SELECT (TIPO==#F_R_TIPO)&&(CATVEN==#F_R_L_CATVEN)&&(COD==#F_R_L_COD)
|
|
||||||
INPUT TIPO F_R_TIPO SELECT
|
INPUT TIPO F_R_TIPO SELECT
|
||||||
INPUT CATVEN F_R_L_CATVEN SELECT
|
INPUT CATVEN F_R_L_CATVEN SELECT
|
||||||
INPUT COD F_R_L_COD SELECT
|
INPUT COD F_R_L_COD SELECT
|
||||||
@ -341,7 +334,6 @@ BEGIN
|
|||||||
PROMPT 100 100 ""
|
PROMPT 100 100 ""
|
||||||
FLAG "D"
|
FLAG "D"
|
||||||
USE LF_RCONDV
|
USE LF_RCONDV
|
||||||
// SELECT (TIPO==#F_R_TIPO)&&(TIPOCF==#F_R_C_TIPOCF)&&(CODCF==#F_R_C_CODCF)&&(COD==#F_R_C_COD)
|
|
||||||
INPUT TIPO F_R_TIPO SELECT
|
INPUT TIPO F_R_TIPO SELECT
|
||||||
INPUT TIPOCF F_R_C_TIPOCF SELECT
|
INPUT TIPOCF F_R_C_TIPOCF SELECT
|
||||||
INPUT CODCF F_R_C_CODCF SELECT
|
INPUT CODCF F_R_C_CODCF SELECT
|
||||||
@ -365,7 +357,6 @@ BEGIN
|
|||||||
PROMPT 100 100 ""
|
PROMPT 100 100 ""
|
||||||
FLAG "D"
|
FLAG "D"
|
||||||
USE LF_RCONDV
|
USE LF_RCONDV
|
||||||
// SELECT (TIPO==#F_R_TIPO)&&(COD==#F_R_O_COD)
|
|
||||||
INPUT TIPO F_R_TIPO SELECT
|
INPUT TIPO F_R_TIPO SELECT
|
||||||
INPUT COD F_R_O_COD SELECT
|
INPUT COD F_R_O_COD SELECT
|
||||||
INPUT TIPORIGA F_R_TIPORIGA
|
INPUT TIPORIGA F_R_TIPORIGA
|
||||||
|
213
ve/ve2500.cpp
Executable file
213
ve/ve2500.cpp
Executable file
@ -0,0 +1,213 @@
|
|||||||
|
#include <automask.h>
|
||||||
|
#include <defmask.h>
|
||||||
|
#include <recset.h>
|
||||||
|
#include <relapp.h>
|
||||||
|
|
||||||
|
#include "condv.h"
|
||||||
|
#include "rcondv.h"
|
||||||
|
|
||||||
|
#include "ve2500a.h"
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////
|
||||||
|
// MASCHERA
|
||||||
|
///////////////////////////////////////////////////////////////
|
||||||
|
class TGestione_listini_semplice_mask: public TAutomask
|
||||||
|
{
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
||||||
|
|
||||||
|
public:
|
||||||
|
TGestione_listini_semplice_mask();
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
TGestione_listini_semplice_mask::TGestione_listini_semplice_mask() : TAutomask("ve2500a")
|
||||||
|
{
|
||||||
|
//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);
|
||||||
|
//attenzione!!! il campo CATVEN è in chiave 1! per disabilitarlo ci vuole questo trucco!
|
||||||
|
if (!gesliscv)
|
||||||
|
efield(F_L_CATVEN).reset_key(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TGestione_listini_semplice_mask::on_field_event(TOperable_field &o, TField_event e, long jolly)
|
||||||
|
{
|
||||||
|
switch(o.dlg())
|
||||||
|
{
|
||||||
|
//se abilita la gestione scaglioni nello sheet devono comparire le colonne NSCAGL e QLIM
|
||||||
|
case F_L_GESTSCAGL:
|
||||||
|
if (e == fe_init || e == fe_modify)
|
||||||
|
{
|
||||||
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
|
const bool gest_scagl = o.get().full();
|
||||||
|
sf_righe.enable_column(F_NSCAGL, gest_scagl);
|
||||||
|
sf_righe.enable_column(F_QLIM, gest_scagl);
|
||||||
|
|
||||||
|
sf_righe.force_update();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
//stesso giochetto per UM
|
||||||
|
case F_L_GESTUM:
|
||||||
|
if (e == fe_init || e == fe_modify)
|
||||||
|
{
|
||||||
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
|
const bool gest_um = o.get().full();
|
||||||
|
sf_righe.enable_column(F_UM, gest_um);
|
||||||
|
|
||||||
|
sf_righe.force_update();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
//e anche per i campi omaggio
|
||||||
|
case F_L_GESTSCO:
|
||||||
|
if (e == fe_init || e == fe_modify)
|
||||||
|
{
|
||||||
|
TSheet_field& sf_righe = sfield(F_RIGHE);
|
||||||
|
const bool gest_sco = o.get().full();
|
||||||
|
sf_righe.enable_column(F_ADDIVA, gest_sco);
|
||||||
|
sf_righe.enable_column(F_CODIVA, gest_sco);
|
||||||
|
sf_righe.enable_column(F_QOM, gest_sco);
|
||||||
|
sf_righe.enable_column(F_QBASE, gest_sco);
|
||||||
|
sf_righe.enable_column(F_CODARTOM, gest_sco);
|
||||||
|
sf_righe.enable_column(F_UMOM, gest_sco);
|
||||||
|
sf_righe.enable_column(F_PROMAGGIO, gest_sco);
|
||||||
|
|
||||||
|
sf_righe.force_update();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////
|
||||||
|
// APPLICAZIONE
|
||||||
|
///////////////////////////////////////////////////////////////
|
||||||
|
class TGestione_listini_semplice : public TRelation_application
|
||||||
|
{
|
||||||
|
TGestione_listini_semplice_mask *_mask;
|
||||||
|
TRelation* _rel;
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual bool user_create();
|
||||||
|
virtual bool user_destroy();
|
||||||
|
virtual TMask *get_mask(int) { return _mask; }
|
||||||
|
virtual bool changing_mask(int) { return false; }
|
||||||
|
// virtual void init_query_mode(TMask& m);
|
||||||
|
// virtual void init_insert_mode(TMask& m);
|
||||||
|
// virtual void init_modify_mode(TMask& m);
|
||||||
|
|
||||||
|
virtual bool protected_record(TRectype& rec);
|
||||||
|
|
||||||
|
virtual int read(TMask& m);
|
||||||
|
// virtual bool remove();
|
||||||
|
// virtual int write(const TMask& m);
|
||||||
|
// virtual int rewrite(const TMask& m);
|
||||||
|
|
||||||
|
public:
|
||||||
|
virtual TRelation *get_relation() const { return _rel; }
|
||||||
|
|
||||||
|
TGestione_listini_semplice() { _rel = NULL; _mask = NULL;}
|
||||||
|
virtual ~TGestione_listini_semplice() {}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
bool TGestione_listini_semplice::protected_record(TRectype& rec)
|
||||||
|
{
|
||||||
|
//non deve consentire l'eliminazione di un listino se ha dei figli da mantenere!
|
||||||
|
TString query;
|
||||||
|
query << "USE CONDV\n";
|
||||||
|
query << "SELECT (FATHCATVEN=#CATVEN)&&(FATHCOD=#COD)\n";
|
||||||
|
query << "FROM TIPO=L\n";
|
||||||
|
query << "TO TIPO=L\n";
|
||||||
|
TISAM_recordset figli(query);
|
||||||
|
figli.set_var("#CATVEN", rec.get(CONDV_CATVEN));
|
||||||
|
figli.set_var("#COD", rec.get(CONDV_COD));
|
||||||
|
|
||||||
|
return figli.items() > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int TGestione_listini_semplice::read(TMask& m)
|
||||||
|
{
|
||||||
|
//eseguo la read() standard
|
||||||
|
int err = TRelation_application::read(m);
|
||||||
|
//se la read va a buon fine
|
||||||
|
if (err == NOERR)
|
||||||
|
{
|
||||||
|
//instanzio un TISAM_recordset sulle righe listino (RCONDV)
|
||||||
|
TString query;
|
||||||
|
query << "USE RCONDV\n";
|
||||||
|
query << "FROM TIPO=L CATVEN=#CATVEN COD=#COD\n";
|
||||||
|
query << "TO TIPO=L CATVEN=#CATVEN COD=#COD\n";
|
||||||
|
TISAM_recordset righelist(query);
|
||||||
|
righelist.set_var("#CATVEN", m.get(F_L_CATVEN));
|
||||||
|
righelist.set_var("#COD", m.get(F_L_COD));
|
||||||
|
|
||||||
|
const long righelist_items = righelist.items();
|
||||||
|
|
||||||
|
const TRectype& rec = righelist.cursor()->curr();
|
||||||
|
|
||||||
|
/* //instanzio un TLcalisamfile su LF_CLIFOGIAC
|
||||||
|
TLocalisamfile magcli(LF_CLIFOGIAC);
|
||||||
|
//setto alcune variabili di interesse
|
||||||
|
const TDate oggi(TODAY);
|
||||||
|
const int year = oggi.year();
|
||||||
|
const long clifo = m.get_long(F_CODCF);
|
||||||
|
const int indsp = m.get_int(F_INDSPED);*/
|
||||||
|
|
||||||
|
|
||||||
|
//recupero sheet e realtiva mashera di riga
|
||||||
|
TSheet_field& sf_righe = m.sfield(F_RIGHE);
|
||||||
|
TMask& msk = sf_righe.sheet_mask();
|
||||||
|
sf_righe.destroy();
|
||||||
|
|
||||||
|
//per ogni riga dello sheet
|
||||||
|
int pos = -1;
|
||||||
|
for (bool ok = righelist.move_first(); ok; ok = righelist.move_next())
|
||||||
|
{
|
||||||
|
++pos;
|
||||||
|
TToken_string& row = sf_righe.row(-1);
|
||||||
|
//per ogni campo della maschera scrivi setta all'interno del record corrente di file
|
||||||
|
//il valore di quei campi che hanno un field
|
||||||
|
FOR_EACH_MASK_FIELD(msk,i,f)
|
||||||
|
{
|
||||||
|
const TFieldref* fr = f->field();
|
||||||
|
if (fr != NULL)
|
||||||
|
row.add(fr->read(rec),sf_righe.cid2index(f->dlg()));
|
||||||
|
}
|
||||||
|
|
||||||
|
//forzo una check_row
|
||||||
|
sf_righe.check_row(sf_righe.items()-1, 3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return err;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TGestione_listini_semplice::user_create()
|
||||||
|
{
|
||||||
|
_rel = new TRelation(LF_CONDV);
|
||||||
|
|
||||||
|
//attenzione!! questo è il parametro per avere la lunghezza del numero riga
|
||||||
|
TSheet_field::set_line_number_width(4);
|
||||||
|
|
||||||
|
_mask = new TGestione_listini_semplice_mask;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TGestione_listini_semplice::user_destroy()
|
||||||
|
{
|
||||||
|
delete _mask;
|
||||||
|
delete _rel;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
int ve2500(int argc, char* argv[])
|
||||||
|
{
|
||||||
|
TGestione_listini_semplice a;
|
||||||
|
a.run(argc, argv, "Gestione listini");
|
||||||
|
return 0;
|
||||||
|
}
|
61
ve/ve2500a.h
Executable file
61
ve/ve2500a.h
Executable file
@ -0,0 +1,61 @@
|
|||||||
|
//maschera gestione listini comprensibile
|
||||||
|
#define F_L_CATVEN 201
|
||||||
|
#define F_L_DESVEN 202
|
||||||
|
#define F_L_COD 203
|
||||||
|
#define F_L_DESCR 204
|
||||||
|
#define F_VALINI 205
|
||||||
|
#define F_VALFIN 206
|
||||||
|
|
||||||
|
#define F_RIGHE 207
|
||||||
|
|
||||||
|
#define F_L_CODVAL 208
|
||||||
|
#define F_L_CAMBIO 209
|
||||||
|
#define F_L_CONTROEURO 210
|
||||||
|
#define F_L_DATACAM 211
|
||||||
|
#define F_L_GESTSCAGL 212
|
||||||
|
#define F_L_DECIMALI 213
|
||||||
|
#define F_L_SEQRIC_1 214
|
||||||
|
#define F_L_SEQRIC_2 215
|
||||||
|
#define F_L_SEQRIC_3 216
|
||||||
|
#define F_L_SEQRIC_4 217
|
||||||
|
#define F_L_IMPLORDI 218
|
||||||
|
#define F_L_GESTUM 219
|
||||||
|
#define F_L_GESTSCO 220
|
||||||
|
#define F_L_CODSUCC 221
|
||||||
|
#define F_L_DESSUCC 222
|
||||||
|
#define F_L_FATHCATVEN 223
|
||||||
|
#define F_L_FATHDESVEN 224
|
||||||
|
#define F_L_FATHCOD 225
|
||||||
|
#define F_L_FATHDESCR 226
|
||||||
|
#define F_L_ARROTONDA 227
|
||||||
|
|
||||||
|
//campi dello sheet delle righe
|
||||||
|
#define F_TIPORIGA 101
|
||||||
|
#define F_CODRIGA_A 102
|
||||||
|
#define F_DESRIGA_A 103
|
||||||
|
#define F_CODRIGA_G 202
|
||||||
|
#define F_DESRIGA_G 203
|
||||||
|
#define F_CODRIGA_S 302
|
||||||
|
#define F_DESRIGA_S 303
|
||||||
|
#define F_CODRIGA_R 402
|
||||||
|
#define F_DESRIGA_R 403
|
||||||
|
#define F_PREZZO 104
|
||||||
|
#define F_UM 105
|
||||||
|
#define F_NSCAGL 106
|
||||||
|
#define F_QLIM 107
|
||||||
|
#define F_SCONTO 108
|
||||||
|
#define F_ADDIVA 109
|
||||||
|
#define F_CODIVA 110
|
||||||
|
#define F_QOM 111
|
||||||
|
#define F_QBASE 112
|
||||||
|
#define F_CODARTOM 113
|
||||||
|
#define F_UMOM 114
|
||||||
|
#define F_PROMAGGIO 115
|
||||||
|
#define F_PRZSTO 116
|
||||||
|
#define F_DATAPRZSTO 117
|
||||||
|
#define F_DATAULTAUM 118
|
||||||
|
#define F_PERCPROVV 119
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
669
ve/ve2500a.uml
Executable file
669
ve/ve2500a.uml
Executable file
@ -0,0 +1,669 @@
|
|||||||
|
#include "ve2500a.h"
|
||||||
|
|
||||||
|
TOOLBAR "Toolbar" 0 0 0 2
|
||||||
|
#include <relapbar.h>
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
PAGE "Dati generali e Righe" 0 2 0 0
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 0 "@bDati Listino"
|
||||||
|
END
|
||||||
|
|
||||||
|
LIST DLG_NULL 1 7
|
||||||
|
BEGIN
|
||||||
|
PROMPT 100 100 ""
|
||||||
|
ITEM "L|Listino"
|
||||||
|
FLAGS "D"
|
||||||
|
FIELD TIPO
|
||||||
|
KEY 1
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_CATVEN 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Cat. ven. "
|
||||||
|
FIELD CATVEN
|
||||||
|
FLAGS "U"
|
||||||
|
KEY 1
|
||||||
|
USE CVE
|
||||||
|
INPUT CODTAB F_L_CATVEN
|
||||||
|
DISPLAY "Cat." CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
OUTPUT F_L_CATVEN CODTAB
|
||||||
|
OUTPUT F_L_DESVEN S0
|
||||||
|
CHECKTYPE FORCED
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_DESVEN 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 18 1 ""
|
||||||
|
USE CVE KEY 2
|
||||||
|
INPUT S0 F_L_DESVEN
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "Cat." CODTAB
|
||||||
|
COPY OUTPUT F_L_CATVEN
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_COD 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 2 "Listino "
|
||||||
|
FIELD COD
|
||||||
|
FLAGS "U"
|
||||||
|
KEY 1
|
||||||
|
USE LF_CONDV
|
||||||
|
INPUT TIPO "L"
|
||||||
|
INPUT CATVEN F_L_CATVEN SELECT
|
||||||
|
INPUT COD F_L_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
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_DESCR 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 18 2 ""
|
||||||
|
FIELD DESCR
|
||||||
|
END
|
||||||
|
|
||||||
|
DATA F_VALINI
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 3 "Inizio validita` "
|
||||||
|
FIELD VALIN
|
||||||
|
END
|
||||||
|
|
||||||
|
DATA F_VALFIN
|
||||||
|
BEGIN
|
||||||
|
PROMPT 42 3 "Fine validita` "
|
||||||
|
FIELD VALFIN
|
||||||
|
END
|
||||||
|
|
||||||
|
TEXT -1
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 5 "@bRighe listino"
|
||||||
|
END
|
||||||
|
|
||||||
|
SPREADSHEET F_RIGHE
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 6 "Righe"
|
||||||
|
ITEM "Tipo@4"
|
||||||
|
ITEM "Codice@20"
|
||||||
|
ITEM "Descrizione@50"
|
||||||
|
ITEM "Prezzo netto@18"
|
||||||
|
ITEM "UM"
|
||||||
|
ITEM "N.Scagl."
|
||||||
|
ITEM "Qta lim. scagl."
|
||||||
|
ITEM "Sconto@25"
|
||||||
|
ITEM "Add.IVA"
|
||||||
|
ITEM "Cod.IVA"
|
||||||
|
ITEM "Qta sconto/omag"
|
||||||
|
ITEM "Qta base sconto"
|
||||||
|
ITEM "Cod. art. omaggio@20"
|
||||||
|
ITEM "UM omaggio"
|
||||||
|
ITEM "Prezzo omaggio"
|
||||||
|
ITEM "Prezzo storico"
|
||||||
|
ITEM "Data prz.storico"
|
||||||
|
ITEM "Data ult.aumento"
|
||||||
|
ITEM "% provvigione"
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
PAGE "Dati avanzati" 0 2 0 0
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 0 "@bGestione valuta"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_CODVAL 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Valuta "
|
||||||
|
FIELD CODVAL
|
||||||
|
FLAGS "U"
|
||||||
|
USE %VAL
|
||||||
|
INPUT CODTAB F_L_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
|
||||||
|
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
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_L_CAMBIO 15 6
|
||||||
|
BEGIN
|
||||||
|
PROMPT 17 1 "Cambio "
|
||||||
|
FIELD CAMBIO
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_L_CONTROEURO
|
||||||
|
BEGIN
|
||||||
|
PROMPT 42 1 "Contro Euro"
|
||||||
|
FIELD CONTROEURO
|
||||||
|
END
|
||||||
|
|
||||||
|
DATA F_L_DATACAM
|
||||||
|
BEGIN
|
||||||
|
PROMPT 61 1 "Data "
|
||||||
|
FIELD DATACAM
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 3 "@bScaglioni"
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_L_GESTSCAGL
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 4 "Gestione scaglioni"
|
||||||
|
FIELD GESTSCAGL
|
||||||
|
MESSAGE FALSE CLEAR,F_L_DECIMALI
|
||||||
|
MESSAGE TRUE ENABLE,F_L_DECIMALI
|
||||||
|
END
|
||||||
|
|
||||||
|
LISTBOX F_L_DECIMALI 7
|
||||||
|
BEGIN
|
||||||
|
PROMPT 25 4 "Decimali per quantita' limite "
|
||||||
|
FIELD DECIMALI
|
||||||
|
ITEM "0|Nessuno"
|
||||||
|
ITEM "1|1"
|
||||||
|
ITEM "2|2"
|
||||||
|
ITEM "3|3"
|
||||||
|
ITEM "4|4"
|
||||||
|
ITEM "5|5"
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 6 "@bSequenza ricerca"
|
||||||
|
END
|
||||||
|
|
||||||
|
LIST F_L_SEQRIC_1 10
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 7 ""
|
||||||
|
FIELD SEQRIC[1,1]
|
||||||
|
ITEM "A|Articoli"
|
||||||
|
ITEM "G|Gruppo M."
|
||||||
|
ITEM "S|Sottog. M."
|
||||||
|
ITEM "R|Ragg.fisc."
|
||||||
|
END
|
||||||
|
|
||||||
|
LIST F_L_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)
|
||||||
|
WARNING "La sequenza di ricerca deve indicare quattro tipi diversi di righe"
|
||||||
|
END
|
||||||
|
|
||||||
|
LIST F_L_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
|
||||||
|
GROUP 5
|
||||||
|
STR_EXPR (#THIS_FIELD=="-")||((#THIS_FIELD!=#F_L_SEQRIC_1)&&(#THIS_FIELD!=#F_L_SEQRIC_2))
|
||||||
|
WARNING "La sequenza di ricerca deve indicare quattro tipi diversi di righe"
|
||||||
|
END
|
||||||
|
|
||||||
|
LIST F_L_SEQRIC_4 10
|
||||||
|
BEGIN
|
||||||
|
PROMPT 48 7 ""
|
||||||
|
FIELD SEQRIC[4,4]
|
||||||
|
ITEM "-|Nessuno"
|
||||||
|
ITEM "A|Articoli"
|
||||||
|
ITEM "G|Gruppo M."
|
||||||
|
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))
|
||||||
|
WARNING "La sequenza di ricerca deve indicare quattro tipi diversi di righe"
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 9 "@bListino successivo"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_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
|
||||||
|
DISPLAY "C.V." CATVEN
|
||||||
|
DISPLAY "Codice" COD
|
||||||
|
DISPLAY "Descrizione@50" DESCR
|
||||||
|
OUTPUT F_L_CODSUCC COD
|
||||||
|
OUTPUT F_L_DESSUCC DESCR
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_DESSUCC 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 10 10 ""
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 12 "@bListino padre"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_FATHCATVEN 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 13 "Cat. ven. "
|
||||||
|
FIELD FATHCATVEN
|
||||||
|
FLAGS "U"
|
||||||
|
USE CVE
|
||||||
|
INPUT CODTAB F_L_FATHCATVEN
|
||||||
|
DISPLAY "Cat." CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
OUTPUT F_L_FATHCATVEN CODTAB
|
||||||
|
OUTPUT F_L_FATHDESVEN S0
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_FATHDESVEN 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 18 13 ""
|
||||||
|
USE CVE KEY 2
|
||||||
|
INPUT S0 F_L_FATHDESVEN
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "Cat." CODTAB
|
||||||
|
COPY OUTPUT F_L_FATHCATVEN
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_FATHCOD 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 14 "Listino "
|
||||||
|
FIELD FATHCOD
|
||||||
|
FLAGS "U"
|
||||||
|
USE LF_CONDV SELECT COD!=#F_L_COD
|
||||||
|
INPUT TIPO "L"
|
||||||
|
INPUT CATVEN F_L_FATHCATVEN SELECT
|
||||||
|
INPUT COD F_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
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_FATHDESCR 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 18 14 ""
|
||||||
|
FLAGS "D"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_L_ARROTONDA 8
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 15 "Arrotonda "
|
||||||
|
END
|
||||||
|
|
||||||
|
TEXT -1
|
||||||
|
BEGIN
|
||||||
|
PROMPT 21 15 "es. -0,05=per difetto ai 5 cent; +0,10=per eccesso ai 10 cent"
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 78 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 17 "@bParametri gestione"
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_L_IMPLORDI
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 18 "Importi lordi"
|
||||||
|
FIELD IMPLORDI
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_L_GESTUM
|
||||||
|
BEGIN
|
||||||
|
PROMPT 20 18 "Gestione unita` di misura"
|
||||||
|
FIELD GESTUM
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_L_GESTSCO
|
||||||
|
BEGIN
|
||||||
|
PROMPT 50 18 "Gestione sconti/omaggi"
|
||||||
|
FIELD GESTSCO
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
ENDMASK
|
||||||
|
|
||||||
|
/////////////////////////////////////////
|
||||||
|
//maschera di riga
|
||||||
|
TOOLBAR "topbar" 0 0 0 2
|
||||||
|
|
||||||
|
BUTTON DLG_OK 10 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT -13 -1 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
BUTTON DLG_DELREC 10 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT -23 -1 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
BUTTON DLG_CANCEL 10 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT -33 -1 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
PAGE "Riga listino" -1 -1 78 22
|
||||||
|
|
||||||
|
LIST F_TIPORIGA 1 16
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 0 "Tipo riga "
|
||||||
|
FIELD TIPORIGA
|
||||||
|
FLAGS "P"
|
||||||
|
ITEM "A|Articolo"
|
||||||
|
MESSAGE HIDE,2@|HIDE,3@|HIDE,4@|SHOW,1@
|
||||||
|
ITEM "G|Gruppo merc."
|
||||||
|
MESSAGE HIDE,1@|HIDE,3@|HIDE,4@|SHOW,2@
|
||||||
|
ITEM "S|Sottogr. merc."
|
||||||
|
MESSAGE HIDE,1@|HIDE,2@|HIDE,4@|SHOW,3@
|
||||||
|
ITEM "R|Ragg. fiscale"
|
||||||
|
MESSAGE HIDE,1@|HIDE,2@|HIDE,3@|SHOW,4@
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODRIGA_A 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Articolo "
|
||||||
|
FIELD CODRIGA
|
||||||
|
FLAGS "U"
|
||||||
|
USE LF_ANAMAG
|
||||||
|
INPUT CODART F_CODRIGA_A
|
||||||
|
DISPLAY "Articolo@20" CODART
|
||||||
|
DISPLAY "Descrizione@50" DESCR
|
||||||
|
OUTPUT F_CODRIGA_A CODART
|
||||||
|
OUTPUT F_DESRIGA_A DESCR
|
||||||
|
CHECKTYPE FORCED
|
||||||
|
ADD RUN ve2 -3
|
||||||
|
GROUP 1
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESRIGA_A 50 39
|
||||||
|
BEGIN
|
||||||
|
PROMPT 35 1 ""
|
||||||
|
USE LF_ANAMAG KEY 2
|
||||||
|
INPUT DESCR F_DESRIGA_A
|
||||||
|
DISPLAY "Descrizione@50" DESCR
|
||||||
|
DISPLAY "Articolo@20" CODART
|
||||||
|
COPY OUTPUT F_CODRIGA_A
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
ADD RUN ve2 -3
|
||||||
|
GROUP 1
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODRIGA_G 20 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Gr. merceologico "
|
||||||
|
FIELD CODRIGA
|
||||||
|
FLAGS "U"
|
||||||
|
USE GMC SELECT CODTAB[4,5] == ""
|
||||||
|
INPUT CODTAB[1,3] F_CODRIGA_G
|
||||||
|
DISPLAY "Gr. merc." CODTAB[1,3]
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
OUTPUT F_CODRIGA_G CODTAB[1,3]
|
||||||
|
OUTPUT F_DESRIGA_G S0
|
||||||
|
CHECKTYPE FORCED
|
||||||
|
GROUP 2
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESRIGA_G 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 24 1 ""
|
||||||
|
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_CODRIGA_G
|
||||||
|
GROUP 2
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODRIGA_S 20 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Sottogr. merc. "
|
||||||
|
FIELD CODRIGA
|
||||||
|
FLAGS "U"
|
||||||
|
USE GMC SELECT CODTAB[4,5] != ""
|
||||||
|
INPUT CODTAB F_CODRIGA_S
|
||||||
|
DISPLAY "Gruppo merc." CODTAB[1,3]
|
||||||
|
DISPLAY "Sottogr. merc." CODTAB[4,5]
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
OUTPUT F_CODRIGA_S CODTAB
|
||||||
|
OUTPUT F_DESRIGA_S S0
|
||||||
|
CHECKTYPE FORCED
|
||||||
|
GROUP 3
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESRIGA_S 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 24 1 ""
|
||||||
|
USE GMC KEY 2 SELECT CODTAB[4,5] != ""
|
||||||
|
INPUT S0 F_DESRIGA_S
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "Gr. merc." CODTAB[1,3]
|
||||||
|
DISPLAY "Sottogr. merc." CODTAB[4,5]
|
||||||
|
COPY OUTPUT F_CODRIGA_S
|
||||||
|
GROUP 3
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODRIGA_R 20 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 1 "Raggr. fiscale "
|
||||||
|
FIELD CODRIGA
|
||||||
|
FLAGS "U"
|
||||||
|
USE RFA
|
||||||
|
INPUT CODTAB F_CODRIGA_R
|
||||||
|
DISPLAY "Ragg. fisc." CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
OUTPUT F_CODRIGA_R CODTAB
|
||||||
|
OUTPUT F_DESRIGA_R S0
|
||||||
|
CHECKTYPE FORCED
|
||||||
|
GROUP 4
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_DESRIGA_R 50
|
||||||
|
BEGIN
|
||||||
|
PROMPT 24 1 ""
|
||||||
|
USE RFA KEY 2
|
||||||
|
INPUT S0 F_DESRIGA_R
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
DISPLAY "Ragg. fisc." CODTAB
|
||||||
|
COPY OUTPUT F_CODRIGA_R
|
||||||
|
GROUP 4
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_PREZZO 18 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 2 "Prezzo "
|
||||||
|
FIELD PREZZO
|
||||||
|
FLAGS "U"
|
||||||
|
DRIVENBY -F_L_CODVAL
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_UM 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 67 0 "U.M. "
|
||||||
|
FIELD UM
|
||||||
|
FLAGS "U"
|
||||||
|
USE LF_UMART KEY 2
|
||||||
|
JOIN %UMS INTO CODTAB=UM
|
||||||
|
INPUT CODART F_CODRIGA_A SELECT
|
||||||
|
INPUT UM F_UM
|
||||||
|
DISPLAY "U.M." UM
|
||||||
|
DISPLAY "Descrizione@50" %UMS->S0
|
||||||
|
OUTPUT F_UM UM
|
||||||
|
CHECKTYPE FORCED
|
||||||
|
GROUP 1
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 76 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 3 "Scaglione"
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_NSCAGL 1
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 4 "Numero "
|
||||||
|
FIELD NSCAGL
|
||||||
|
CHECKTYPE REQUIRED
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_QLIM 15 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 24 4 "Qta limite "
|
||||||
|
FIELD QLIM
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 76 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 6 "IVA"
|
||||||
|
END
|
||||||
|
|
||||||
|
BOOLEAN F_ADDIVA
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 7 "Addebito"
|
||||||
|
FIELD ADDIVA
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODIVA 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 25 7 "Codice"
|
||||||
|
FIELD CODIVA
|
||||||
|
FLAGS "U"
|
||||||
|
USE %IVA
|
||||||
|
INPUT CODTAB F_CODIVA
|
||||||
|
DISPLAY "Codice" CODTAB
|
||||||
|
DISPLAY "Descrizione@50" S0
|
||||||
|
OUTPUT F_CODIVA CODTAB
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 76 8
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 9 "Sconti e omaggi"
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_SCONTO 25
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 10 "Sconto/maggiorazione "
|
||||||
|
FIELD SCONTO
|
||||||
|
FLAGS "U"
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_QOM 15 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 11 "Qta sconto/omaggio "
|
||||||
|
FIELD QOM
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_QBASE 15 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 12 "Qta base sconto "
|
||||||
|
FIELD QBASE
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_CODARTOM 20
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 13 "Cod. articolo omaggio "
|
||||||
|
FIELD CODARTOM
|
||||||
|
FLAGS "U"
|
||||||
|
USE LF_ANAMAG
|
||||||
|
INPUT CODART F_CODARTOM
|
||||||
|
DISPLAY "Articolo@20" CODART
|
||||||
|
DISPLAY "Descrizione@50" DESCR
|
||||||
|
OUTPUT F_CODARTOM CODART
|
||||||
|
CHECKTYPE NORMAL
|
||||||
|
END
|
||||||
|
|
||||||
|
STRING F_UMOM 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 14 "U.M. qta omaggio "
|
||||||
|
FIELD UMOM
|
||||||
|
FLAGS "U"
|
||||||
|
USE LF_UMART KEY 2
|
||||||
|
JOIN %UMS INTO CODTAB=UM
|
||||||
|
INPUT CODART F_CODARTOM SELECT
|
||||||
|
INPUT UM F_UMOM
|
||||||
|
DISPLAY "U.M." UM
|
||||||
|
DISPLAY "Descrizione@50" %UMS->S0
|
||||||
|
OUTPUT F_UMOM UM
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_PROMAGGIO 18 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 15 "Prezzo omaggio "
|
||||||
|
FIELD PROMAGGIO
|
||||||
|
FLAGS "U"
|
||||||
|
DRIVENBY -F_L_CODVAL
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 76 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 17 "Storico"
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_PRZSTO 18 5
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 18 "Prezzo storico "
|
||||||
|
FIELD PRZSTO
|
||||||
|
FLAGS "U"
|
||||||
|
END
|
||||||
|
|
||||||
|
DATA F_DATAPRZSTO
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 19 "Data prz storico "
|
||||||
|
FIELD DATAPRZSTO
|
||||||
|
END
|
||||||
|
|
||||||
|
DATA F_DATAULTAUM
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 20 "Data ultimo aumento "
|
||||||
|
FIELD DATAULTAUM
|
||||||
|
END
|
||||||
|
|
||||||
|
NUMBER F_PERCPROVV 5 2
|
||||||
|
BEGIN
|
||||||
|
PROMPT 2 22 "% provv. "
|
||||||
|
FIELD PERCPROVV
|
||||||
|
NUM_EXPR (#F_PERCPROVV>=0)&&(#F_PERCPROVV<=100)
|
||||||
|
WARNING "La percentuale di provvigione deve essere compresa tra 0 e 100"
|
||||||
|
END
|
||||||
|
|
||||||
|
ENDPAGE
|
||||||
|
|
||||||
|
ENDMASK
|
@ -392,7 +392,6 @@ void TStampa_condizioni_vendita::preprocess_header() {
|
|||||||
set_header(i, "@94g%s", (const char *) condv.get("GESTUM"));
|
set_header(i, "@94g%s", (const char *) condv.get("GESTUM"));
|
||||||
set_header(i, "@97g%s", (const char *) condv.get("GESTSCAGL"));
|
set_header(i, "@97g%s", (const char *) condv.get("GESTSCAGL"));
|
||||||
set_header(i, "@100g%s", (const char *) condv.get("GESTSCO"));
|
set_header(i, "@100g%s", (const char *) condv.get("GESTSCO"));
|
||||||
set_header(i, "@103g%s", (const char *) condv.get("SCONST"));
|
|
||||||
set_header(i, "@116g%s",(const char *) condv.get("SEQRIC"));
|
set_header(i, "@116g%s",(const char *) condv.get("SEQRIC"));
|
||||||
if (is_listino)
|
if (is_listino)
|
||||||
{
|
{
|
||||||
@ -458,7 +457,6 @@ void TStampa_condizioni_vendita::set_page(int file, int) {
|
|||||||
set_row(++i, "Gestione unità di misura: @f", FLD(LF_CONDV, "GESTUM"));
|
set_row(++i, "Gestione unità di misura: @f", FLD(LF_CONDV, "GESTUM"));
|
||||||
set_row(++i, "Gestione scaglioni: @f", FLD(LF_CONDV, "GESTSCAGL"));
|
set_row(++i, "Gestione scaglioni: @f", FLD(LF_CONDV, "GESTSCAGL"));
|
||||||
set_row(++i, "Gestione sconti: @f", FLD(LF_CONDV, "GESTSCO"));
|
set_row(++i, "Gestione sconti: @f", FLD(LF_CONDV, "GESTSCO"));
|
||||||
set_row(++i, "Gestione sconti standard: @f", FLD(LF_CONDV, "SCONST"));
|
|
||||||
if (_condven=="C") set_row(++i, "Contratto obbligatorio: @f", FLD(LF_CONDV, "OBBLIG"));
|
if (_condven=="C") set_row(++i, "Contratto obbligatorio: @f", FLD(LF_CONDV, "OBBLIG"));
|
||||||
if (_condven=="L") set_row(++i, "Codice listino successivo: @3s", FLD(LF_CONDV, "CODLISSUCC"));
|
if (_condven=="L") set_row(++i, "Codice listino successivo: @3s", FLD(LF_CONDV, "CODLISSUCC"));
|
||||||
set_row(++i, "Sequenza di ricerca: @4s", FLD(LF_CONDV, "SEQRIC"));
|
set_row(++i, "Sequenza di ricerca: @4s", FLD(LF_CONDV, "SEQRIC"));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user