Tabelle sconti
git-svn-id: svn://10.65.10.50/trunk@1723 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
04be25d9d2
commit
6d6de98bad
118
ve/ve2100.cpp
118
ve/ve2100.cpp
@ -1,60 +1,100 @@
|
||||
|
||||
#include <relapp.h>
|
||||
#include <config.h>
|
||||
|
||||
#include "ve2100.h"
|
||||
|
||||
#define LF_CONDV 52
|
||||
#define LF_RCONDV 53
|
||||
|
||||
|
||||
#ifndef __CHECKS_H
|
||||
#include <checks.h>
|
||||
#endif
|
||||
class TTabelle_sconti: public TRelation_application {
|
||||
TMask *_msk; // maschera principale
|
||||
TRelation *_rel; // relazione principale
|
||||
|
||||
#ifndef __RELAPP_H
|
||||
#include <relapp.h>
|
||||
#endif
|
||||
|
||||
#ifndef __LFFILES_H
|
||||
#include <lffiles.h>
|
||||
#endif
|
||||
|
||||
class Tlistino_application : public TRelation_application
|
||||
{
|
||||
TMask* _msk;
|
||||
TRelation* _rel;
|
||||
char _sconti; // carattere che indica il tipo di tabella
|
||||
short _sci_k_id[4]; // vettore degli identificatori dei campi chiave per la maschera degli sconti incondizionati
|
||||
bool _sci_k_enabled[4]; // vettore di abilitazione dei campi chiave per la maschera degli sconti incondizionati
|
||||
|
||||
virtual bool user_create();
|
||||
virtual bool user_destroy();
|
||||
virtual TMask* get_mask(int mode) { return _msk;}
|
||||
virtual bool changing_mask(int mode) { return FALSE;}
|
||||
virtual TRelation* get_relation() const { return _rel;}
|
||||
|
||||
virtual TMask *get_mask(int) { return _msk; }
|
||||
virtual bool changing_mask(int) { return FALSE; }
|
||||
virtual TRelation *get_relation() const { return _rel; }
|
||||
|
||||
virtual void init_query_mode(TMask &); // handler chiamato quando la maschera passa in modo ricerca
|
||||
|
||||
public:
|
||||
|
||||
Tlistino_application( ) { };
|
||||
virtual ~Tlistino_application() { }
|
||||
TTabelle_sconti() {}
|
||||
virtual ~TTabelle_sconti() {}
|
||||
};
|
||||
|
||||
bool Tlistino_application::user_create()
|
||||
{
|
||||
_msk = new TMask( "VE2100" );
|
||||
_rel = new TRelation( LF_CONDV );
|
||||
// _rel.add( "%PIP" )
|
||||
|
||||
|
||||
bool TTabelle_sconti::user_create() {
|
||||
bool gotcha= FALSE; // booleano di avvenuta inizializzazione
|
||||
|
||||
_sconti= '*'; // inizializzazione dell'indicatore del tipo di tabella
|
||||
if (argc()>2) _sconti= toupper((argv(2))[0]); // se c'è, prende il tipo di tabella dalla linea di comando
|
||||
else {
|
||||
TMask choose("VE2100"); // istanzia la maschera di scelta del tipo di tabella
|
||||
if (choose.run() == K_ENTER) _sconti= toupper((choose.get(F_TIPOSC))[0]); // prende il tipo di tabella dalla maschera
|
||||
}
|
||||
switch (_sconti) {
|
||||
case 'D': { // sconti documento
|
||||
_msk= new TMask("VE2100D"); // apre la maschera relativa
|
||||
gotcha= TRUE;
|
||||
break;
|
||||
}
|
||||
case 'R': { // sconti di riga
|
||||
_msk= new TMask("VE2100R"); // apre la maschera relativa
|
||||
set_search_field(F_R_RICERCA); // setta il campo di ricerca
|
||||
gotcha= TRUE;
|
||||
break;
|
||||
}
|
||||
case 'I': { // sconti incondizionati
|
||||
_msk= new TMask("VE2100I"); // apre la maschera relativa
|
||||
set_search_field(F_I_RICERCA); // setta il campo di ricerca
|
||||
TConfig prassid(CONFIG_DITTA); // apre il file di configurazione di ditta
|
||||
_sci_k_id[0]= F_I_CATVEN; // inizializza l'array dei campi da disabilitare condizionalmente
|
||||
_sci_k_id[1]= F_I_SCCLIENTI;
|
||||
_sci_k_id[2]= F_I_ZONE;
|
||||
_sci_k_id[3]= F_I_CONDPAG;
|
||||
for (int i=0; i<4; i++) {
|
||||
if (prassid.get("K_SCONTI_INC", "ve", i).empty()) _sci_k_enabled[i]= FALSE; // se nel file di config. il campo non è abilitato, viene indicato nel vettore di abilitazione
|
||||
else _sci_k_enabled[i]= gotcha= TRUE; // se c'è almeno un campo abilitato "gotcha" esce TRUE dal ciclo
|
||||
}
|
||||
if (!gotcha) error_box("Non ci sono campi chiave abilitati nella configurazione della ditta");
|
||||
break;
|
||||
}
|
||||
default: { // messaggio di errore se si indica una tabella non valida
|
||||
error_box("Indicare la tabella sulla linea di comando (D, R o I) oppure selezionarla dalla maschera di partenza");
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (gotcha) _rel= new TRelation(LF_SCONTI); // se è stata selezionata una tabella, apre la relazione (un unico file)
|
||||
return (gotcha);
|
||||
}
|
||||
|
||||
bool TTabelle_sconti::user_destroy() {
|
||||
delete _rel;
|
||||
delete _msk;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool Tlistino_application::user_destroy()
|
||||
{
|
||||
delete _msk;
|
||||
delete _rel;
|
||||
return TRUE;
|
||||
void TTabelle_sconti::init_query_mode(TMask &m) {
|
||||
for (int i=0; i<4; i++) {
|
||||
if (_sci_k_enabled[i]) { // se il campo deve essere abilitato...
|
||||
m.enable(_sci_k_id[i]); // ...lo abilita...
|
||||
m.efield(_sci_k_id[i]).check_type(CHECK_REQUIRED); // ...e lo rende richiesto...
|
||||
} else { // ...altrimenti...
|
||||
m.disable(_sci_k_id[i]); // ...lo disabilita...
|
||||
m.efield(_sci_k_id[i]).check_type(CHECK_NORMAL); // ...e lo rende non richiesto
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int ve2100(int argc, char* argv[])
|
||||
{
|
||||
int ve2100(int argc, char* argv[]) {
|
||||
TTabelle_sconti a;
|
||||
|
||||
Tlistino_application a;
|
||||
|
||||
a.run(argc, argv, "Gestione listini " );
|
||||
a.run(argc, argv, "Tabella sconti ");
|
||||
return 0;
|
||||
}
|
||||
|
49
ve/ve2100.h
49
ve/ve2100.h
@ -1,47 +1,6 @@
|
||||
#define F_TIPO 101
|
||||
#define F_CATVEN 102
|
||||
#define F_CATVEN1 103
|
||||
#define F_CODDIV1 107
|
||||
#define F_COD 108
|
||||
#define F_COD1 109
|
||||
#define F_DESCR 110
|
||||
#define F_CODVAL 111
|
||||
#define F_CODVAL1 112
|
||||
#define F_CAMBIO 113
|
||||
#define F_DATACAM 114
|
||||
#define F_VALIN 115
|
||||
#define F_VALFIN 116
|
||||
#define F_IMPLORDI 117
|
||||
#define F_GESTUM 118
|
||||
#define F_GESTSCAGL 119
|
||||
#define F_GESTSCO 120
|
||||
#define F_SCONST 121
|
||||
#define F_CODLISSUCC 123
|
||||
#include "ve2100d.h"
|
||||
#include "ve2100r.h"
|
||||
#include "ve2100i.h"
|
||||
|
||||
#define F_SEQRIC 124
|
||||
#define F_FLART 125
|
||||
#define F_FLCAT 126
|
||||
#define F_FLLIN 127
|
||||
#define F_FLRAGG 128
|
||||
#define F_TIPOSC 101
|
||||
|
||||
#define F_CATVEN2 129
|
||||
#define F_COD2 130
|
||||
|
||||
#define F_SHEET1 301
|
||||
|
||||
|
||||
#define FS_QLIM 101
|
||||
#define FS_PREZZO 102
|
||||
#define FS_SCONTO 103
|
||||
#define FS_ADDIVA 104
|
||||
#define FS_CODIVA 105
|
||||
#define FS_PRECPROVV 106
|
||||
#define FS_QOM 107
|
||||
#define FS_QBASE 108
|
||||
#define FS_CODARTOM 109
|
||||
#define FS_PROMAGGIO 110
|
||||
#define FS_UMOM 111
|
||||
|
||||
|
||||
#define FS_CODIVA1 114
|
||||
#define FS_CODARTOM1 115
|
||||
|
26
ve/ve2100.uml
Executable file
26
ve/ve2100.uml
Executable file
@ -0,0 +1,26 @@
|
||||
#include "ve2100.h"
|
||||
|
||||
PAGE "Tabelle sconti " -1 -1 40 10
|
||||
|
||||
RADIOBUTTON F_TIPOSC 36
|
||||
BEGIN
|
||||
PROMPT 1 2 "Tipo di tabella "
|
||||
ITEM "R|Sconti di riga"
|
||||
ITEM "D|Sconti documento"
|
||||
ITEM "I|Sconti indondizionati"
|
||||
END
|
||||
|
||||
BUTTON DLG_SELECT 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 "Selezione"
|
||||
MESSAGE EXIT,K_ENTER
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
3
ve/ve2100d.h
Executable file
3
ve/ve2100d.h
Executable file
@ -0,0 +1,3 @@
|
||||
#define F_D_TIPO 111
|
||||
#define F_D_CODCAT 112
|
||||
#define F_D_SCONTO 113
|
48
ve/ve2100d.uml
Executable file
48
ve/ve2100d.uml
Executable file
@ -0,0 +1,48 @@
|
||||
#include <lffiles.h>
|
||||
#include "ve2100d.h"
|
||||
|
||||
TOOLBAR "" 0 20 60 2
|
||||
#include <toolbar.h>
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Archivio sconti documenti " 11 60 14
|
||||
|
||||
LISTA F_D_TIPO 1
|
||||
BEGIN
|
||||
PROMPT 100 100 ""
|
||||
FIELD LF_SCONTI->TIPO
|
||||
FLAG "H"
|
||||
ITEM "D|Sconti documento"
|
||||
END
|
||||
|
||||
STRING F_D_CODCAT 2
|
||||
BEGIN
|
||||
PROMPT 2 2 "Codice sconto documento "
|
||||
FIELD LF_SCONTI->CODCAT
|
||||
FLAG "UR"
|
||||
KEY 1
|
||||
USE LF_SCONTI
|
||||
INPUT TIPO F_D_TIPO SELECT
|
||||
INPUT CODCAT F_D_CODCAT
|
||||
DISPLAY "Codice" CODCAT
|
||||
DISPLAY "Sconto@50" SCONTO
|
||||
OUTPUT F_D_CODCAT CODCAT
|
||||
OUTPUT F_D_SCONTO SCONTO
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 70 5
|
||||
BEGIN
|
||||
PROMPT 0 0 ""
|
||||
//FLAG "R"
|
||||
END
|
||||
|
||||
STRING F_D_SCONTO 25
|
||||
BEGIN
|
||||
PROMPT 19 6 "Sconto "
|
||||
FIELD LF_SCONTI->SCONTO
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
7
ve/ve2100i.h
Executable file
7
ve/ve2100i.h
Executable file
@ -0,0 +1,7 @@
|
||||
#define F_I_RICERCA 131
|
||||
#define F_I_TIPO 132
|
||||
#define F_I_CATVEN 133
|
||||
#define F_I_SCCLIENTI 134
|
||||
#define F_I_ZONE 135
|
||||
#define F_I_CONDPAG 136
|
||||
#define F_I_SCONTO 137
|
110
ve/ve2100i.uml
Executable file
110
ve/ve2100i.uml
Executable file
@ -0,0 +1,110 @@
|
||||
#include <lffiles.h>
|
||||
#include "ve2100i.h"
|
||||
|
||||
TOOLBAR "" 0 20 60 2
|
||||
#include <toolbar.h>
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Archivio sconti incondizionati " 11 60 14
|
||||
|
||||
LISTA F_I_TIPO 1
|
||||
BEGIN
|
||||
PROMPT 100 100 ""
|
||||
FIELD LF_SCONTI->TIPO
|
||||
FLAG "H"
|
||||
ITEM "I|Sconti incondizionati"
|
||||
END
|
||||
|
||||
STRING F_I_RICERCA 1
|
||||
BEGIN
|
||||
PROMPT 100 100 ""
|
||||
FLAG "H"
|
||||
USE LF_SCONTI
|
||||
INPUT TIPO F_I_TIPO SELECT
|
||||
INPUT CODART[1,2] F_I_CATVEN
|
||||
INPUT CODART[3,4] F_I_SCCLIENTI
|
||||
INPUT CODART[5,6] F_I_ZONE
|
||||
INPUT CODART[7,10] F_I_CONDPAG
|
||||
DISPLAY "CV" CODART[1,2]
|
||||
DISPLAY "SC" CODART[3,4]
|
||||
DISPLAY "ZN" CODART[5,6]
|
||||
DISPLAY "C.P." CODART[7,10]
|
||||
DISPLAY "Sconto@25" SCONTO
|
||||
OUTPUT F_I_CATVEN CODART[1,2]
|
||||
OUTPUT F_I_SCCLIENTI CODART[3,4]
|
||||
OUTPUT F_I_ZONE CODART[5,6]
|
||||
OUTPUT F_I_CONDPAG CODART[7,10]
|
||||
OUTPUT F_I_SCONTO SCONTO
|
||||
END
|
||||
|
||||
STRING F_I_CATVEN 2
|
||||
BEGIN
|
||||
PROMPT 5 2 "Categoria vendite "
|
||||
FIELD LF_SCONTI->CODART[1,2]
|
||||
FLAG "U"
|
||||
KEY 1
|
||||
USE %CVE
|
||||
INPUT CODTAB F_I_CATVEN
|
||||
DISPLAY "Cat. vend." CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_I_CATVEN CODTAB
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_I_SCCLIENTI 2
|
||||
BEGIN
|
||||
PROMPT 8 4 "Sconto cliente "
|
||||
FIELD LF_SCONTI->CODART[3,4]
|
||||
FLAG "U"
|
||||
KEY 1
|
||||
USE %SCO
|
||||
INPUT CODTAB F_I_SCCLIENTI
|
||||
DISPLAY "Sc. Cliente" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_I_SCCLIENTI CODTAB
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_I_ZONE 2
|
||||
BEGIN
|
||||
PROMPT 18 6 "Zona "
|
||||
FIELD LF_SCONTI->CODART[5,6]
|
||||
FLAG "U"
|
||||
KEY 1
|
||||
USE %ZON
|
||||
INPUT CODTAB F_I_ZONE
|
||||
DISPLAY "Zona" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_I_ZONE CODTAB
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_I_CONDPAG 4
|
||||
BEGIN
|
||||
PROMPT 2 8 "Condizione pagamento "
|
||||
FIELD LF_SCONTI->CODART[7,10]
|
||||
FLAG "U"
|
||||
KEY 1
|
||||
USE %CPG
|
||||
INPUT CODTAB F_I_CONDPAG
|
||||
DISPLAY "Cond. pag." CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_I_CONDPAG CODTAB
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 36 11
|
||||
BEGIN
|
||||
PROMPT 0 0 ""
|
||||
//FLAG "R"
|
||||
END
|
||||
|
||||
STRING F_I_SCONTO 25
|
||||
BEGIN
|
||||
PROMPT 2 12 "Sconto "
|
||||
FIELD LF_SCONTI->SCONTO
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
7
ve/ve2100r.h
Executable file
7
ve/ve2100r.h
Executable file
@ -0,0 +1,7 @@
|
||||
#define F_R_RICERCA 121
|
||||
#define F_R_TIPO 122
|
||||
#define F_R_CODCAT 123
|
||||
#define F_R_CODART 124
|
||||
#define F_R_UM 125
|
||||
#define F_R_UMDESC 126
|
||||
#define F_R_SCONTO 127
|
104
ve/ve2100r.uml
Executable file
104
ve/ve2100r.uml
Executable file
@ -0,0 +1,104 @@
|
||||
#include <lffiles.h>
|
||||
#include "ve2100r.h"
|
||||
|
||||
TOOLBAR "" 0 20 60 2
|
||||
#include <toolbar.h>
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Archivio sconti di riga " 11 60 14
|
||||
|
||||
STRING F_R_RICERCA 1
|
||||
BEGIN
|
||||
PROMPT 100 100 ""
|
||||
FLAG "H"
|
||||
USE LF_SCONTI
|
||||
JOIN %UMS INTO CODTAB=UM
|
||||
INPUT TIPO F_R_TIPO SELECT
|
||||
INPUT CODCAT F_R_CODCAT
|
||||
INPUT CODART F_R_CODART
|
||||
INPUT UM F_R_UM
|
||||
DISPLAY "C.V." CODCAT
|
||||
DISPLAY "Codice art.@20" CODART
|
||||
DISPLAY "U.M." UM
|
||||
DISPLAY "Sconto@25" SCONTO
|
||||
OUTPUT F_R_CODCAT CODCAT
|
||||
OUTPUT F_R_CODART CODART
|
||||
OUTPUT F_R_UM UM
|
||||
OUTPUT F_R_SCONTO SCONTO
|
||||
OUTPUT F_R_UMDESC %UMS->S0
|
||||
END
|
||||
|
||||
LISTA F_R_TIPO 1
|
||||
BEGIN
|
||||
PROMPT 100 100 ""
|
||||
FIELD LF_SCONTI->TIPO
|
||||
FLAG "H"
|
||||
ITEM "R|Sconti di riga"
|
||||
END
|
||||
|
||||
STRING F_R_CODCAT 2
|
||||
BEGIN
|
||||
PROMPT 2 2 "Categoria vendita "
|
||||
FIELD LF_SCONTI->CODCAT
|
||||
FLAG "U"
|
||||
KEY 1
|
||||
USE %CVE
|
||||
INPUT CODTAB F_R_CODCAT
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_R_CODCAT CODTAB
|
||||
VALIDATE AUTOEXIT_FUNC 2 F_R_CODCAT F_R_CODART
|
||||
END
|
||||
|
||||
STRING F_R_CODART 20
|
||||
BEGIN
|
||||
PROMPT 4 4 "Codice articolo "
|
||||
FIELD LF_SCONTI->CODART
|
||||
FLAG "U"
|
||||
KEY 1
|
||||
USE LF_ANAGR
|
||||
INPUT CODART F_R_CODART
|
||||
DISPLAY "Codice@20" CODART
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_R_CODART CODART
|
||||
VALIDATE AUTOEXIT_FUNC 2 F_R_CODCAT F_R_CODART
|
||||
END
|
||||
|
||||
STRING F_R_UM 2
|
||||
BEGIN
|
||||
PROMPT 15 6 "U.M. "
|
||||
FIELD LF_SCONTI->UM
|
||||
FLAG "U"
|
||||
KEY 1
|
||||
USE LF_UMART KEY 2
|
||||
JOIN %UMS INTO CODTAB=UM
|
||||
INPUT CODART F_R_CODART SELECT
|
||||
INPUT UM F_R_UM
|
||||
DISPLAY "U.M." UM
|
||||
DISPLAY "Desccrizione@50" %UMS->S0
|
||||
OUTPUT F_R_UM UM
|
||||
OUTPUT F_R_UMDESC %UMS->S0
|
||||
VALIDATE AUTOEXIT_FUNC 2 F_R_CODCAT F_R_CODART
|
||||
END
|
||||
|
||||
STRING F_R_UMDESC 50
|
||||
BEGIN
|
||||
PROMPT 8 8 "Descrizione "
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 75 11
|
||||
BEGIN
|
||||
PROMPT 0 0 ""
|
||||
//FLAG "R"
|
||||
END
|
||||
|
||||
STRING F_R_SCONTO 25
|
||||
BEGIN
|
||||
PROMPT 13 12 "Sconto "
|
||||
FIELD LF_SCONTI->SCONTO
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
Loading…
x
Reference in New Issue
Block a user