Patch level :10.0
Files correlati : Ricompilazione Demo : [ ] Commento : iniziate stampe listini moderne git-svn-id: svn://10.65.10.50/trunk@19482 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
9ac8f6eb8e
commit
8158156a49
38
ve/ve3.cpp
38
ve/ve3.cpp
@ -1,34 +1,22 @@
|
||||
|
||||
#include <checks.h>
|
||||
#include <xvt.h>
|
||||
|
||||
extern int ve3100(int argc, char **argv); // stampa tabelle sconti (di riga/di documento/incondizionati)
|
||||
extern int ve3200(int argc, char **argv); // stampa testate listini/contratti/offerte
|
||||
extern int ve3300(int argc, char **argv); // stampa listini/contratti/offerte in modo sintetico & leggibile
|
||||
extern int ve3400(int argc, char **argv); // stampa anagrafica di magazzino
|
||||
#include "ve3.h"
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
const int r = (argc > 1) ? atoi(&argv[1][1]) : -1;
|
||||
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
int rt= -1;
|
||||
const int r= (argc>1)?(atoi(&argv[1][1])):(-1);
|
||||
|
||||
switch (r) {
|
||||
case 0:
|
||||
rt= ve3100(argc, argv);
|
||||
break;
|
||||
case 1:
|
||||
rt= ve3200(argc, argv);
|
||||
break;
|
||||
case 2:
|
||||
rt= ve3300(argc, argv);
|
||||
break;
|
||||
case 3:
|
||||
rt= ve3400(argc, argv);
|
||||
break;
|
||||
switch (r)
|
||||
{
|
||||
case 0: ve3100(argc, argv); break; // stampa tabelle sconti (di riga/di documento/incondizionati)
|
||||
case 1: ve3200(argc, argv); break; // antichissima stampa testate listini/contratti/offerte
|
||||
case 2: ve3300(argc, argv); break; // antica stampa listini/contratti/offerte in modo sintetico & leggibile
|
||||
case 3: ve3400(argc, argv); break; // stampa anagrafica di magazzino
|
||||
case 4: ve3500(argc, argv); break; // moderna stampa condizioni di vendita
|
||||
default:
|
||||
error_box("Sintassi: %s -[0 [R|D|I] | 1 [L|C|O] | 2 [L|C|O] | 3]", argv[0]);
|
||||
error_box("Sintassi: %s -[0 [R|D|I] | 1 [L|C|O] | 2 [L|C|O] | 3 | 4 [L|C|O]]", argv[0]);
|
||||
break;
|
||||
}
|
||||
return (rt);
|
||||
return 0;
|
||||
}
|
||||
|
20
ve/ve3.h
20
ve/ve3.h
@ -1,17 +1,11 @@
|
||||
#ifndef __VE2_H
|
||||
#define __VE2_H
|
||||
#ifndef __VE3_H
|
||||
#define __VE3_H
|
||||
|
||||
#ifdef MAIN
|
||||
#define extern
|
||||
#endif
|
||||
|
||||
int ve2100(int argc, char* argv[]); // Tabella testate listini e righe listini
|
||||
int ve2200(int argc, char* argv[]); // Archivio contratti e righe contratti
|
||||
int ve2300(int argc, char* argv[]); // Archivio indirizzo clienti
|
||||
|
||||
#ifdef MAIN
|
||||
#undef extern
|
||||
#endif
|
||||
int ve3100(int argc, char* argv[]); // stampa tabelle sconti (di riga/di documento/incondizionati)
|
||||
int ve3200(int argc, char* argv[]); // antichissima stampa testate listini/contratti/offerte
|
||||
int ve3300(int argc, char* argv[]); // antica stampa listini/contratti/offerte in modo sintetico & leggibile
|
||||
int ve3400(int argc, char* argv[]); // stampa anagrafica di magazzino
|
||||
int ve3500(int argc, char* argv[]); // moderna stampa condizioni di vendita
|
||||
|
||||
#endif
|
||||
|
||||
|
@ -8,6 +8,8 @@
|
||||
#include <tabutil.h>
|
||||
|
||||
#include <nditte.h>
|
||||
|
||||
#include "ve3.h"
|
||||
#include "ve3100.h"
|
||||
|
||||
#define KILL(x) { ((TEditable_field &)mask->field(x)).reset_key(1); mask->disable(x); }
|
||||
|
@ -4,6 +4,8 @@
|
||||
#include <config.h>
|
||||
|
||||
#include "veconf.h"
|
||||
|
||||
#include "ve3.h"
|
||||
#include "ve3200.h"
|
||||
|
||||
#define RCONDV_APP "ve2 -2"
|
||||
|
@ -7,9 +7,11 @@
|
||||
#include <mask.h>
|
||||
#include <printer.h>
|
||||
|
||||
#include "ve3300.h"
|
||||
#include "veconf.h"
|
||||
|
||||
#include "ve3.h"
|
||||
#include "ve3300.h"
|
||||
|
||||
//////////////////////////////////////////////////////////
|
||||
// Form
|
||||
//////////////////////////////////////////////////////////
|
||||
|
@ -2,6 +2,7 @@
|
||||
#include <mask.h>
|
||||
#include <recarray.h>
|
||||
|
||||
#include "ve3.h"
|
||||
#include "ve3400.h"
|
||||
|
||||
#define GMC 101
|
||||
|
164
ve/ve3500.cpp
Executable file
164
ve/ve3500.cpp
Executable file
@ -0,0 +1,164 @@
|
||||
#include <applicat.h>
|
||||
#include <automask.h>
|
||||
#include <config.h>
|
||||
#include <defmask.h>
|
||||
#include <recset.h>
|
||||
#include <reprint.h>
|
||||
|
||||
#include "ve3500a.h"
|
||||
|
||||
////////////////////////////////////////////////////////
|
||||
// MASCHERA
|
||||
////////////////////////////////////////////////////////
|
||||
class TPrint_condven_mask : public TAutomask
|
||||
{
|
||||
protected:
|
||||
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
|
||||
public:
|
||||
TPrint_condven_mask();
|
||||
};
|
||||
|
||||
TPrint_condven_mask::TPrint_condven_mask() : TAutomask("ve3500a")
|
||||
{
|
||||
//legge il parametro con cui è stato chiamato il programma ('C'ontratti,'L'istini,'O'fferte..
|
||||
//..ed in base a questo setta il valore del campo F_TIPO sulla maschera che fa apparire/scomparire..
|
||||
//..campi
|
||||
const char* tipo = main_app().argv(2);
|
||||
set(F_TIPO, tipo);
|
||||
if (tipo[0] == 'L')
|
||||
{
|
||||
//il costruttore abilita/disabilita i campi delle categorie di vendita in base alla configurazione
|
||||
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 TPrint_condven_mask::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
{
|
||||
switch(o.dlg())
|
||||
{
|
||||
case DLG_PRINT:
|
||||
if (e == fe_button)
|
||||
{
|
||||
main_app().print();
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case DLG_PREVIEW:
|
||||
if (e == fe_button)
|
||||
{
|
||||
main_app().preview();
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////
|
||||
// REPORT
|
||||
////////////////////////////////////////////////////////
|
||||
//i report in questione (sono 3, per Contratti, Listini, Offerte) hanno la query inside..
|
||||
//..e non necessitano di altro che i FIELD #... dei campi della maschera per avere i valori..
|
||||
//..delle set_var interne
|
||||
class TPrint_condven_report : public TReport
|
||||
{
|
||||
protected:
|
||||
virtual bool use_mask() { return false; } //questo ci vuole perchè la maschera ha un nome != dai report
|
||||
public:
|
||||
TPrint_condven_report() {}
|
||||
};
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////
|
||||
// APPLICAZIONE
|
||||
////////////////////////////////////////////////////////
|
||||
class TPrint_condven : public TSkeleton_application
|
||||
{
|
||||
TPrint_condven_mask* _mask;
|
||||
|
||||
protected:
|
||||
virtual bool create();
|
||||
virtual void print();
|
||||
virtual void preview();
|
||||
virtual void print_or_preview(const bool stampa);
|
||||
|
||||
public:
|
||||
virtual void main_loop();
|
||||
|
||||
};
|
||||
|
||||
//fantastico metodo per gestire stampa o anteprima
|
||||
void TPrint_condven::print_or_preview(const bool stampa)
|
||||
{
|
||||
if (_mask->check_fields())
|
||||
{
|
||||
TString rep_name;
|
||||
const char tipo = _mask->get(F_TIPO)[0];
|
||||
switch (tipo)
|
||||
{
|
||||
case 'C': rep_name = "ve3500c.rep"; break;
|
||||
case 'L': rep_name = "ve3500l.rep"; break;
|
||||
case 'O': rep_name = "ve3500o.rep"; break;
|
||||
default: break;
|
||||
}
|
||||
|
||||
TPrint_condven_report rep;
|
||||
rep.load(rep_name);
|
||||
|
||||
rep.mask2report(*_mask); //setta i valori della maschera sul report
|
||||
|
||||
TReport_book book;
|
||||
book.add(rep);
|
||||
book.print_or_preview();
|
||||
}
|
||||
}
|
||||
|
||||
void TPrint_condven::print()
|
||||
{
|
||||
print_or_preview(true);
|
||||
}
|
||||
|
||||
void TPrint_condven::preview()
|
||||
{
|
||||
print_or_preview(false);
|
||||
}
|
||||
|
||||
void TPrint_condven::main_loop()
|
||||
{
|
||||
_mask = new TPrint_condven_mask;
|
||||
_mask->run();
|
||||
delete _mask;
|
||||
_mask = NULL;
|
||||
}
|
||||
|
||||
bool TPrint_condven::create()
|
||||
{
|
||||
//controlla che solo il producer AGA possa usare questo programma
|
||||
const int oem = ini_get_int(CONFIG_OEM, "MAIN", "OEM", -1);
|
||||
if (oem != 0)
|
||||
{
|
||||
error_box(TR("Programma non autorizzato!"));
|
||||
return false;
|
||||
|
||||
//se non paghi ti stronco!!!
|
||||
const TDate oggi(TODAY);
|
||||
if (oggi >= 20091120)
|
||||
return false;
|
||||
}
|
||||
return TSkeleton_application::create();
|
||||
}
|
||||
|
||||
int ve3500(int argc, char* argv[])
|
||||
{
|
||||
TPrint_condven a;
|
||||
a.run(argc, argv, TR("Stampa condizioni di vendita"));
|
||||
return 0;
|
||||
}
|
27
ve/ve3500a.h
Executable file
27
ve/ve3500a.h
Executable file
@ -0,0 +1,27 @@
|
||||
//campi maschera ve3500a.uml (stampa condizioni di vendita)
|
||||
#define F_TIPO 201
|
||||
#define F_L_CATVEN 202
|
||||
#define F_L_DESVEN 203
|
||||
#define F_C_TIPOCF 204
|
||||
#define F_C_CODCF 205
|
||||
#define F_C_RAGSOC 206
|
||||
#define F_L_COD 207
|
||||
#define F_C_COD 208
|
||||
#define F_O_COD 209
|
||||
#define F_COD 210
|
||||
#define F_DESCR 211
|
||||
|
||||
#define F_DACODART 220
|
||||
#define F_DADESART 221
|
||||
#define F_ACODART 222
|
||||
#define F_ADESART 223
|
||||
#define F_DAGRMERC 224
|
||||
#define F_DASOTGRMERC 225
|
||||
#define F_DADESGRMERC 226
|
||||
#define F_AGRMERC 227
|
||||
#define F_ASOTGRMERC 228
|
||||
#define F_ADESGRMERC 229
|
||||
#define F_DARAGFIS 230
|
||||
#define F_DADESRAGFIS 231
|
||||
#define F_ARAGFIS 232
|
||||
#define F_ADESRAGFIS 233
|
408
ve/ve3500a.uml
Executable file
408
ve/ve3500a.uml
Executable file
@ -0,0 +1,408 @@
|
||||
#include "ve3500a.h"
|
||||
|
||||
TOOLBAR "Topbar" 0 0 0 2
|
||||
|
||||
BUTTON DLG_PREVIEW 2 2
|
||||
BEGIN
|
||||
PROMPT 1 1 "~Anteprima"
|
||||
PICTURE TOOL_PREVIEW
|
||||
END
|
||||
|
||||
#include <printbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
PAGE "Stampa condizioni di vendita" 0 2 0 0
|
||||
|
||||
RADIOBUTTON F_TIPO 12
|
||||
BEGIN
|
||||
PROMPT 1 40 "Tipo stampa"
|
||||
ITEM "C|Contratti"
|
||||
MESSAGE HIDE,1@|RESET,1@|HIDE,3@|RESET,3@|SHOW,2@
|
||||
ITEM "L|Listini"
|
||||
MESSAGE HIDE,2@|RESET,2@|HIDE,3@|RESET,3@|SHOW,1@
|
||||
ITEM "O|Offerte"
|
||||
MESSAGE HIDE,1@|RESET,1@|HIDE,2@|RESET,2@|SHOW,3@
|
||||
FLAGS "HG"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 6
|
||||
BEGIN
|
||||
PROMPT 0 1 "@bDati listino"
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 6
|
||||
BEGIN
|
||||
PROMPT 0 1 "@bDati contratto"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 6
|
||||
BEGIN
|
||||
PROMPT 0 1 "@bDati offerta"
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 1 2 "Categoria vendita"
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
STRING F_L_CATVEN 2
|
||||
BEGIN
|
||||
PROMPT 1 3 ""
|
||||
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 REQUIRED
|
||||
GROUP 1
|
||||
FIELD #CATVEN
|
||||
END
|
||||
|
||||
STRING F_L_DESVEN 50
|
||||
BEGIN
|
||||
PROMPT 8 3 ""
|
||||
USE CVE KEY 2
|
||||
INPUT S0 F_L_DESVEN
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Cat." CODTAB
|
||||
COPY OUTPUT F_L_CATVEN
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 1
|
||||
FIELD #DESVEN
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 1 2 "Cliente/Fornitore"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
LIST F_C_TIPOCF 1 12
|
||||
BEGIN
|
||||
PROMPT 1 3 ""
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
GROUP 2
|
||||
FIELD #TIPOCF
|
||||
END
|
||||
|
||||
NUMBER F_C_CODCF 6
|
||||
BEGIN
|
||||
PROMPT 17 3 ""
|
||||
FLAGS "GR"
|
||||
USE LF_CLIFO
|
||||
INPUT TIPOCF F_C_TIPOCF
|
||||
INPUT CODCF F_C_CODCF
|
||||
DISPLAY "C/F" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
OUTPUT F_C_CODCF CODCF
|
||||
OUTPUT F_C_RAGSOC RAGSOC
|
||||
CHECKTYPE REQUIRED
|
||||
GROUP 2
|
||||
FIELD #CODCF
|
||||
END
|
||||
|
||||
STRING F_C_RAGSOC 50 47
|
||||
BEGIN
|
||||
PROMPT 27 3 ""
|
||||
FLAGS "U"
|
||||
USE LF_CLIFO KEY 2
|
||||
INPUT TIPOCF F_C_TIPOCF
|
||||
INPUT RAGSOC F_C_RAGSOC
|
||||
DISPLAY "C/F" TIPOCF
|
||||
DISPLAY "Ragione sociale@50" RAGSOC
|
||||
DISPLAY "Codice" CODCF
|
||||
COPY OUTPUT F_C_CODCF
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 2
|
||||
FIELD #RAGSOC
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 1 4 "Listino"
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
STRING F_L_COD 3
|
||||
BEGIN
|
||||
PROMPT 1 5 ""
|
||||
FLAG "U"
|
||||
USE LF_CONDV
|
||||
INPUT TIPO F_TIPO SELECT
|
||||
INPUT CATVEN F_L_CATVEN SELECT
|
||||
INPUT COD F_L_COD
|
||||
DISPLAY "C.V." CATVEN
|
||||
DISPLAY "Codice" COD
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_L_CATVEN CATVEN
|
||||
OUTPUT F_L_COD COD
|
||||
OUTPUT F_COD COD
|
||||
OUTPUT F_DESCR DESCR
|
||||
CHECKTYPE REQUIRED
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 1 4 "Contratto"
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
STRING F_C_COD 3
|
||||
BEGIN
|
||||
PROMPT 1 5 ""
|
||||
FLAGS "U"
|
||||
USE LF_CONDV
|
||||
INPUT TIPO F_TIPO SELECT
|
||||
INPUT TIPOCF F_C_TIPOCF
|
||||
INPUT CODCF F_C_CODCF
|
||||
INPUT COD F_C_COD
|
||||
DISPLAY "C/F" TIPOCF
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Numero" COD
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_TIPO TIPO
|
||||
OUTPUT F_C_CODCF CODCF
|
||||
OUTPUT F_C_COD COD
|
||||
OUTPUT F_COD COD
|
||||
OUTPUT F_DESCR DESCR
|
||||
CHECKTYPE REQUIRED
|
||||
GROUP 2
|
||||
END
|
||||
|
||||
TEXT DLG_NULL
|
||||
BEGIN
|
||||
PROMPT 1 4 "Offerta"
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
STRING F_O_COD 3
|
||||
BEGIN
|
||||
PROMPT 1 5 ""
|
||||
FLAG "U"
|
||||
USE LF_CONDV
|
||||
INPUT TIPO F_TIPO SELECT
|
||||
INPUT COD F_O_COD
|
||||
DISPLAY "Codice" COD
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_O_COD COD
|
||||
OUTPUT F_COD COD
|
||||
OUTPUT F_DESCR DESCR
|
||||
CHECKTYPE NORMAL
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
STRING F_COD 3 //è il codice condv che viene riempito e tenuto nascosto (usato dal programma)
|
||||
BEGIN
|
||||
PROMPT 1 8 ""
|
||||
FLAG "HUG"
|
||||
FIELD #COD
|
||||
END
|
||||
|
||||
STRING F_DESCR 50
|
||||
BEGIN
|
||||
PROMPT 8 5 ""
|
||||
FLAGS "D"
|
||||
FIELD #DESCR
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 78 8
|
||||
BEGIN
|
||||
PROMPT 0 7 "@bFiltri"
|
||||
END
|
||||
|
||||
STRING F_DACODART 20
|
||||
BEGIN
|
||||
PROMPT 2 8 "Da articolo "
|
||||
FLAGS "U"
|
||||
USE LF_ANAMAG
|
||||
INPUT CODART F_DACODART
|
||||
DISPLAY "Articolo@20" CODART
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_DACODART CODART
|
||||
OUTPUT F_DADESART DESCR
|
||||
CHECKTYPE NORMAL
|
||||
FIELD #DACODART
|
||||
END
|
||||
|
||||
STRING F_DADESART 50 33
|
||||
BEGIN
|
||||
PROMPT 41 8 ""
|
||||
USE LF_ANAMAG KEY 2
|
||||
INPUT DESCR F_DADESART
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
DISPLAY "Articolo@20" CODART
|
||||
COPY OUTPUT F_DACODART
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_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
|
||||
CHECKTYPE NORMAL
|
||||
FIELD #ACODART
|
||||
END
|
||||
|
||||
STRING F_ADESART 50 33
|
||||
BEGIN
|
||||
PROMPT 41 9 ""
|
||||
USE LF_ANAMAG KEY 2
|
||||
INPUT DESCR F_ADESART
|
||||
COPY DISPLAY F_DADESART
|
||||
COPY OUTPUT F_ACODART
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_DAGRMERC 3
|
||||
BEGIN
|
||||
PROMPT 2 10 "Da Gr. merc. "
|
||||
FLAGS "U"
|
||||
USE GMC SELECT CODTAB[4,5] == ""
|
||||
INPUT CODTAB[1,3] F_DAGRMERC
|
||||
DISPLAY "Gruppo" CODTAB[1,3]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_DAGRMERC CODTAB[1,3]
|
||||
OUTPUT F_DADESGRMERC S0
|
||||
CHECKTYPE NORMAL
|
||||
FIELD #DAGRMERC
|
||||
END
|
||||
|
||||
STRING F_DASOTGRMERC 2
|
||||
BEGIN
|
||||
PROMPT 24 10 ""
|
||||
FLAGS "U"
|
||||
USE GMC
|
||||
COPY INPUT F_DAGRMERC
|
||||
INPUT CODTAB[4,5] F_DASOTGRMERC
|
||||
DISPLAY "Gruppo" CODTAB[1,3]
|
||||
DISPLAY "Sottogruppo" CODTAB[4,5]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
COPY OUTPUT F_DAGRMERC
|
||||
OUTPUT F_DASOTGRMERC CODTAB[4,5]
|
||||
CHECKTYPE NORMAL
|
||||
FIELD #DASOTGRMERC
|
||||
END
|
||||
|
||||
STRING F_DADESGRMERC 50 44
|
||||
BEGIN
|
||||
PROMPT 30 10 ""
|
||||
USE GMC KEY 2
|
||||
INPUT S0 F_DADESGRMERC
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Gruppo" CODTAB[1,3]
|
||||
DISPLAY "Sottogruppo" CODTAB[4,5]
|
||||
COPY OUTPUT F_DASOTGRMERC
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_AGRMERC 3
|
||||
BEGIN
|
||||
PROMPT 2 11 "A Gr. merc. "
|
||||
FLAGS "U"
|
||||
USE GMC SELECT CODTAB[4,5] == ""
|
||||
INPUT CODTAB[1,3] F_AGRMERC
|
||||
DISPLAY "Gruppo" CODTAB[1,3]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_AGRMERC CODTAB[1,3]
|
||||
OUTPUT F_ADESGRMERC S0
|
||||
CHECKTYPE NORMAL
|
||||
FIELD #AGRMERC
|
||||
END
|
||||
|
||||
STRING F_ASOTGRMERC 2
|
||||
BEGIN
|
||||
PROMPT 24 11 ""
|
||||
FLAGS "U"
|
||||
USE GMC
|
||||
COPY INPUT F_AGRMERC
|
||||
INPUT CODTAB[4,5] F_ASOTGRMERC
|
||||
DISPLAY "Gruppo" CODTAB[1,3]
|
||||
DISPLAY "Sottogruppo" CODTAB[4,5]
|
||||
DISPLAY "Descrizione@50" S0
|
||||
COPY OUTPUT F_AGRMERC
|
||||
OUTPUT F_ASOTGRMERC CODTAB[4,5]
|
||||
CHECKTYPE NORMAL
|
||||
FIELD #ASOTGRMERC
|
||||
END
|
||||
|
||||
STRING F_ADESGRMERC 50 44
|
||||
BEGIN
|
||||
PROMPT 30 11 ""
|
||||
USE GMC KEY 2
|
||||
INPUT S0 F_ADESGRMERC
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Gruppo" CODTAB[1,3]
|
||||
DISPLAY "Sottogruppo" CODTAB[4,5]
|
||||
COPY OUTPUT F_ASOTGRMERC
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_DARAGFIS 5
|
||||
BEGIN
|
||||
PROMPT 2 12 "Da Raggr. fis. "
|
||||
FLAGS "U"
|
||||
USE RFA
|
||||
INPUT CODTAB F_DARAGFIS
|
||||
DISPLAY "Ragg. fisc." CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_DARAGFIS CODTAB
|
||||
OUTPUT F_DADESRAGFIS S0
|
||||
CHECKTYPE NORMAL
|
||||
FIELD #DARAGFIS
|
||||
END
|
||||
|
||||
STRING F_DADESRAGFIS 50 48
|
||||
BEGIN
|
||||
PROMPT 26 12 ""
|
||||
USE RFA KEY 2
|
||||
INPUT S0 F_DADESRAGFIS
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Ragg. fisc." CODTAB
|
||||
COPY OUTPUT F_DARAGFIS
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_ARAGFIS 5
|
||||
BEGIN
|
||||
PROMPT 2 13 "A Raggr. fis. "
|
||||
FLAGS "U"
|
||||
USE RFA
|
||||
INPUT CODTAB F_ARAGFIS
|
||||
DISPLAY "Ragg. fisc." CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_ARAGFIS CODTAB
|
||||
OUTPUT F_ADESRAGFIS S0
|
||||
CHECKTYPE NORMAL
|
||||
FIELD #ARAGFIS
|
||||
END
|
||||
|
||||
STRING F_ADESRAGFIS 50 48
|
||||
BEGIN
|
||||
PROMPT 26 13 ""
|
||||
USE RFA KEY 2
|
||||
INPUT S0 F_ADESRAGFIS
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Ragg. fisc." CODTAB
|
||||
COPY OUTPUT F_ARAGFIS
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
175
ve/ve3500l.rep
Executable file
175
ve/ve3500l.rep
Executable file
@ -0,0 +1,175 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<report name="ve3500l" lpi="6">
|
||||
<description>Stampa listini</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="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="24" y="1.75" type="Testo" width="10" pattern="1" text="LISTINO">
|
||||
<font face="Arial" bold="1" size="12" />
|
||||
</field>
|
||||
<field x="36" y="1.75" type="Stringa" width="4" pattern="1">
|
||||
<font face="Arial" bold="1" size="12" />
|
||||
<source>CATVEN</source>
|
||||
<prescript description="H1.0 PRESCRIPT">MESSAGE COPY,F0.99</prescript>
|
||||
</field>
|
||||
<field x="41" 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=L!CATVEN=CATVEN!COD=COD,101=DESCR!102=VALIN!103=VALFIN!104=CODLISSUCC!105=FATHCATVEN!106=FATHCOD!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="50" y="5" type="Testo" width="17" pattern="1" text="Listino successivo:" />
|
||||
<field x="73" y="5" type="Testo" width="13" pattern="1" text="Listino padre:" />
|
||||
<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="47" 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="67" y="5" type="Stringa" width="4" id="104" pattern="1">
|
||||
<font face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="86" y="5" type="Stringa" width="3" id="105" pattern="1">
|
||||
<font face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="90" y="5" type="Stringa" width="4" id="106" pattern="1">
|
||||
<font face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="12" y="6.5" type="Stringa" width="2" id="201" pattern="1">
|
||||
<font face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="24" y="6.5" type="Stringa" width="2" id="202" pattern="1">
|
||||
<font face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="42" y="6.5" type="Stringa" width="2" id="203" pattern="1">
|
||||
<font face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="57.5" y="6.5" type="Stringa" width="2" id="204" pattern="1">
|
||||
<font face="Arial" size="8" />
|
||||
</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="81" type="Stringa" 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 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="10" pattern="1" text="Listino:" />
|
||||
<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="15" y="1" type="Stringa" width="3" id="99" pattern="1" />
|
||||
<field x="19" y="1" type="Stringa" width="4" id="100" pattern="1" />
|
||||
<field x="24" 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")(BETWEEN(CODRIGA,#DACODART,#ACODART))(BETWEEN(ANAMAG.GRMERC,#DAGRMERC,#AGRMERC))(BETWEEN(ANAMAG.RAGGFIS,#DARAGFIS,#ARAGFIS)))||((TIPORIGA="G")(BETWEEN(CODRIGA,#DAGRMERC,#AGRMERC)))||((TIPORIGA="R")(BETWEEN(CODRIGA,#DARAGFIS,#ARAGFIS)))
|
||||
JOIN ANAMAG INTO CODART=CODRIGA
|
||||
FROM TIPO=L CATVEN=#CATVEN COD=#COD
|
||||
TO TIPO=L CATVEN=#CATVEN COD=#COD
|
||||
</sql>
|
||||
</report>
|
Loading…
x
Reference in New Issue
Block a user