Patch level :10.0
Files correlati : Ricompilazione Demo : [ ] Commento : iniziata stampa fatturato git-svn-id: svn://10.65.10.50/trunk@19506 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
60824e543f
commit
273fd9ce31
@ -8,9 +8,9 @@ int main(int argc, char **argv)
|
||||
switch (r)
|
||||
{
|
||||
case 1: ve3200(argc, argv); break; // antichissima stampa 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
|
||||
//case 8: ve3900(argc, argv); break; // stampe varie delle vendite (a=fatturato)
|
||||
default: ve3100(argc, argv); break; // stampa tabelle sconti (di riga/di documento/incondizionati)
|
||||
}
|
||||
return 0;
|
||||
|
2
ve/ve3.h
2
ve/ve3.h
@ -3,9 +3,9 @@
|
||||
|
||||
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
|
||||
//int ve3900(int argc, char* argv[]); //stampe varie vendite
|
||||
|
||||
#endif
|
||||
|
||||
|
268
ve/ve3300.cpp
268
ve/ve3300.cpp
@ -1,268 +0,0 @@
|
||||
// Stampa Listini/Contratti/Offerte in modo sintetico
|
||||
// sarebbe da intendere come la vera ed unica stampa condizioni di vendita.
|
||||
// Quella precedente realizzata in ve3200.cpp viene cmq mantenuta anke per motivi storici
|
||||
|
||||
#include <applicat.h>
|
||||
#include <form.h>
|
||||
#include <mask.h>
|
||||
#include <printer.h>
|
||||
|
||||
#include "veconf.h"
|
||||
|
||||
#include "ve3.h"
|
||||
#include "ve3300.h"
|
||||
|
||||
//////////////////////////////////////////////////////////
|
||||
// Form
|
||||
//////////////////////////////////////////////////////////
|
||||
class TLCO_form : public TForm
|
||||
{
|
||||
protected:
|
||||
virtual bool validate(TForm_item &, TToken_string &); // gestione dei messaggi estesi nei campi
|
||||
public:
|
||||
TLCO_form(const char* name) ;
|
||||
virtual ~TLCO_form() {}
|
||||
};
|
||||
|
||||
bool TLCO_form::validate(TForm_item &cf, TToken_string &s)
|
||||
{
|
||||
const TString code(s.get(0));
|
||||
TString valore;
|
||||
const TRelation* rel = cf.form().relation();
|
||||
TLocalisamfile& rcondv = rel->lfile(LF_RCONDV);
|
||||
TLocalisamfile& condv = rel->lfile(LF_CONDV);
|
||||
const int ndec = condv.get_int("DECIMALI");
|
||||
|
||||
if (code == "_DESCRIZIONE")
|
||||
{
|
||||
const char tiporiga = rcondv.get_char("TIPORIGA");
|
||||
TLocalisamfile& anamag = rel->lfile(LF_ANAMAG);
|
||||
TLocalisamfile& gmc = rel->lfile(-101);
|
||||
TLocalisamfile& rfa = rel->lfile(-102);
|
||||
if (tiporiga == 'A')
|
||||
valore = anamag.get("DESCR");
|
||||
else
|
||||
if (tiporiga == 'R')
|
||||
valore = rfa.get("S0");
|
||||
else
|
||||
valore = gmc.get("S0");
|
||||
}
|
||||
else
|
||||
if (code == "_QTAFROM")
|
||||
{
|
||||
// Legge la riga precedente, controllando che sia dello scaglione
|
||||
// precedente a questo. Se si prende la sua qta limite e vi aggiunge un
|
||||
// decimale specificato da LF_CONDV->DECIMALI (funziona anche per le unita')
|
||||
// Se non esiste la riga prec vale 0
|
||||
TRectype rec(rcondv.curr());
|
||||
rcondv.prev();
|
||||
real r = rcondv.good() && rcondv.curr().same_key(rec, 1, 1) ? rcondv.get_real("QLIM") : ZERO;
|
||||
if (r != ZERO)
|
||||
r += exp10(((real)-ndec));
|
||||
valore = r.string(15,ndec);
|
||||
rcondv.next();
|
||||
}
|
||||
else
|
||||
if (code == "_QTATO")
|
||||
valore = rcondv.get_real("QLIM").string(15,ndec);
|
||||
cf.set(valore);
|
||||
return TForm::validate(cf, s);
|
||||
}
|
||||
|
||||
TLCO_form::TLCO_form(const char* name) : TForm(name)
|
||||
{
|
||||
set_magic_currency(TRUE);
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////
|
||||
// Applicazione
|
||||
//////////////////////////////////////////////////////////
|
||||
class TStampa_LCO_sintetica : public TSkeleton_application
|
||||
{
|
||||
TMask* _mask;
|
||||
TLCO_form* _form;
|
||||
TString16 _condven,
|
||||
_tipocf,
|
||||
_cod,
|
||||
_catven;
|
||||
long _codcf;
|
||||
bool _codlis_catven, // booleano di abilitazione della categoria di vendita nella chiave dei listini
|
||||
_codcon_codcf, // booleano di abilitazione del codice cliente/fornitore nella chiave dei contratti
|
||||
_gest_um,
|
||||
_gest_sca,
|
||||
_extended;
|
||||
|
||||
protected:
|
||||
virtual bool create(void);
|
||||
virtual bool destroy(void);
|
||||
virtual void main_loop() ;
|
||||
|
||||
public:
|
||||
TStampa_LCO_sintetica() {}
|
||||
virtual ~TStampa_LCO_sintetica() {}
|
||||
};
|
||||
|
||||
bool TStampa_LCO_sintetica::create()
|
||||
{
|
||||
_mask = new TMask("ve3300a");
|
||||
_form = new TLCO_form("ve3300a");
|
||||
|
||||
bool gotcha = FALSE;
|
||||
int indice = 0;
|
||||
_condven= "*";
|
||||
if (argc()>2)
|
||||
_condven= argv(2);
|
||||
else
|
||||
{
|
||||
TMask choose("ve3200");
|
||||
if (choose.run() == K_ENTER)
|
||||
_condven = choose.get(F_TIPOCV);
|
||||
}
|
||||
_condven.upper();
|
||||
TConfig prassid(CONFIG_DITTA, "ve");
|
||||
_mask->set(F_TIPO, _condven); // settaggio del campo di tipo archivio
|
||||
switch (_condven[0])
|
||||
{
|
||||
case 'L': // listini
|
||||
indice = A_LISTINI;
|
||||
if (!(prassid.get_bool("GES", NULL, indice)))
|
||||
error_box("L'archivio Listini non è abilitato");
|
||||
else
|
||||
{
|
||||
_codlis_catven= prassid.get_bool("GESLISCV");
|
||||
gotcha= TRUE;
|
||||
}
|
||||
_mask->set_caption("Stampa Listini");
|
||||
_mask->hide(F_C_COD);
|
||||
_mask->hide(F_C_TIPOCF);
|
||||
_mask->hide(F_C_CODCF);
|
||||
_mask->hide(F_O_COD);
|
||||
if (!_codlis_catven)
|
||||
_mask->disable(F_L_CATVEN); // disabilita condizionalmente le categorie di vendita
|
||||
break;
|
||||
case 'C': // contratti
|
||||
indice= A_CONTRATTI;
|
||||
if (!(prassid.get_bool("GES", NULL, indice)))
|
||||
error_box("L'archivio Contratti non è abilitato");
|
||||
else
|
||||
{
|
||||
_codcon_codcf= prassid.get_bool("GESCONCC");
|
||||
gotcha= TRUE;
|
||||
}
|
||||
_mask->set_caption("Stampa Contratti");
|
||||
_mask->hide(F_L_COD);
|
||||
_mask->hide(F_L_CATVEN);
|
||||
_mask->hide(F_O_COD);
|
||||
if (!_codcon_codcf)
|
||||
{ // disabilita condizionalmente i clienti/fornitori
|
||||
_mask->disable(F_C_TIPOCF);
|
||||
_mask->disable(F_C_CODCF);
|
||||
}
|
||||
break;
|
||||
case 'O': // offerte
|
||||
indice= A_OFFERTE;
|
||||
if (!(prassid.get_bool("GES", NULL, indice)))
|
||||
error_box("L'archivio Offerte non è abilitato");
|
||||
else
|
||||
gotcha= TRUE;
|
||||
_mask->set_caption("Stampa Offerte");
|
||||
_mask->hide(F_L_COD); // settaggio dei campi da eliminare
|
||||
_mask->hide(F_L_CATVEN);
|
||||
_mask->hide(F_C_TIPOCF);
|
||||
_mask->hide(F_C_CODCF);
|
||||
_mask->hide(F_C_COD);
|
||||
break;
|
||||
default:
|
||||
error_box("Indicare l'archivio sulla linea di comando (L, C o O) oppure selezionarla dalla maschera di partenza");
|
||||
break;
|
||||
}
|
||||
if (gotcha)
|
||||
{
|
||||
_gest_um = prassid.get_bool("GESUM", NULL, indice);
|
||||
_gest_sca = prassid.get_bool("GESSCA", NULL, indice);
|
||||
}
|
||||
|
||||
return (gotcha && TSkeleton_application::create());
|
||||
}
|
||||
|
||||
bool TStampa_LCO_sintetica::destroy()
|
||||
{
|
||||
delete _form;
|
||||
delete _mask;
|
||||
|
||||
return TSkeleton_application::destroy();
|
||||
}
|
||||
|
||||
void TStampa_LCO_sintetica::main_loop()
|
||||
{
|
||||
while (_mask->run()!=K_QUIT)
|
||||
{
|
||||
_extended = _mask->get_bool(F_EXTENDED);
|
||||
_catven = _mask->get(F_L_CATVEN);
|
||||
_tipocf = _condven[0] == 'C' ? _mask->get(F_C_TIPOCF) : "";
|
||||
_codcf = _mask->get_long(F_C_CODCF);
|
||||
const char cv = _condven[0];
|
||||
if (cv == 'L')
|
||||
_cod = _mask->get(F_L_COD);
|
||||
else
|
||||
if (cv == 'C')
|
||||
_cod = _mask->get(F_C_COD);
|
||||
else
|
||||
_cod = _mask->get( F_O_COD);
|
||||
|
||||
TCursor* cur = _form->cursor();
|
||||
|
||||
TRectype from (LF_CONDV);
|
||||
from.put("TIPO", _condven);
|
||||
from.put("CATVEN", _catven);
|
||||
from.put("TIPOCF", _tipocf);
|
||||
from.put("CODCF", _codcf);
|
||||
from.put("COD", _cod);
|
||||
TRectype to(from);
|
||||
|
||||
cur->setregion(from, to);
|
||||
|
||||
// Spengi la luz...
|
||||
_form->find_field('H', odd_page, 5).show(cv == 'L');
|
||||
_form->find_field('H', odd_page, 6).show(cv == 'C');
|
||||
_form->find_field('H', odd_page, 7).show(cv == 'C');
|
||||
|
||||
_form->find_field('B', odd_page, 9).show(_extended);
|
||||
_form->find_field('B', odd_page, 10).show(_extended);
|
||||
_form->find_field('B', odd_page, 11).show(_extended);
|
||||
_form->find_field('B', odd_page, 109).show(_extended);
|
||||
_form->find_field('B', odd_page, 110).show(_extended);
|
||||
_form->find_field('B', odd_page, 111).show(_extended);
|
||||
|
||||
_form->find_field('B', odd_page, 3).show(_gest_um);
|
||||
_form->find_field('B', odd_page, 103).show(_gest_um);
|
||||
|
||||
_form->find_field('B', odd_page, 4).show(_gest_sca);
|
||||
_form->find_field('B', odd_page, 5).show(_gest_sca);
|
||||
_form->find_field('B', odd_page, 104).show(_gest_sca);
|
||||
_form->find_field('B', odd_page, 105).show(_gest_sca);
|
||||
|
||||
const int hh = 7;
|
||||
const int fl = printer().formlen();
|
||||
int rows[4]; // Righe orizzontali
|
||||
rows[0] = hh-2;
|
||||
rows[1] = hh;
|
||||
rows[2] = fl-1;
|
||||
rows[3] = 0;
|
||||
_form->genera_intestazioni(odd_page, hh-1);
|
||||
_form->genera_fincatura(odd_page, hh-2, fl-1, rows);
|
||||
|
||||
// stampa
|
||||
if (_form->cursor()->items() > 0)
|
||||
_form->print();
|
||||
}
|
||||
}
|
||||
|
||||
int ve3300(int argc, char **argv)
|
||||
{
|
||||
TStampa_LCO_sintetica a;
|
||||
|
||||
a.run(argc, argv, "Stampa condizioni vendita");
|
||||
return 0;
|
||||
}
|
||||
|
17
ve/ve3300.h
17
ve/ve3300.h
@ -1,17 +0,0 @@
|
||||
|
||||
// ve3200.uml
|
||||
#define F_TIPOCV 101
|
||||
|
||||
// ve3300a.uml
|
||||
#define F_TIPO 102
|
||||
#define F_L_CATVEN 103
|
||||
#define F_L_COD 104
|
||||
|
||||
#define F_C_TIPOCF 105
|
||||
#define F_C_CODCF 106
|
||||
#define F_C_COD 107
|
||||
|
||||
#define F_O_COD 108
|
||||
#define F_DESCR 109
|
||||
#define F_EXTENDED 110
|
||||
|
132
ve/ve3300.uml
132
ve/ve3300.uml
@ -1,132 +0,0 @@
|
||||
#include "ve3300.h"
|
||||
|
||||
TOOLBAR "Toolbar" 0 0 0 2
|
||||
|
||||
#include <relapbar.h>
|
||||
|
||||
ENDPAGE
|
||||
|
||||
|
||||
PAGE "Archivio sconti incondizionati " 0 0 0 0
|
||||
|
||||
LISTBOX F_TIPO 1
|
||||
BEGIN
|
||||
PROMPT 0 0 ""
|
||||
ITEM "I|"
|
||||
FLAG "H"
|
||||
END
|
||||
|
||||
STRING F_CODCAT 2
|
||||
BEGIN
|
||||
PROMPT 3 2 "Categoria vendita "
|
||||
USE CVE
|
||||
FLAG "U"
|
||||
INPUT CODTAB F_CODCAT
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@40" S0
|
||||
|
||||
OUTPUT F_CODCAT CODTAB
|
||||
OUTPUT F_CODCAT1 S0
|
||||
END
|
||||
|
||||
STRING F_CODCAT1 40
|
||||
BEGIN
|
||||
PROMPT 30 2 ""
|
||||
USE CVE KEY 2
|
||||
FLAG "U"
|
||||
INPUT S0 F_CODCAT1
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@40" S0
|
||||
|
||||
OUTPUT F_CODCAT CODTAB
|
||||
OUTPUT F_CODCAT1 S0
|
||||
END
|
||||
|
||||
STRING F_SCONTOC 2
|
||||
BEGIN
|
||||
PROMPT 3 4 "Sconto cliente "
|
||||
// FIELD LF_SCONTI->CODART[4,5]
|
||||
USE %SCC // CATEGORIE VENDITA
|
||||
FLAG "U"
|
||||
INPUT CODTAB F_SCONTOC
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@40" S0
|
||||
|
||||
OUTPUT F_SCONTOC CODTAB
|
||||
OUTPUT F_SCONTOC1 S0
|
||||
END
|
||||
|
||||
STRING F_SCONTOC1 40
|
||||
BEGIN
|
||||
PROMPT 25 4 ""
|
||||
USE %SCC KEY 2
|
||||
FLAG "U"
|
||||
INPUT S0 F_SCONTOC1
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@40" S0
|
||||
|
||||
OUTPUT F_SCONTOC CODTAB
|
||||
OUTPUT F_SCONTOC1 S0
|
||||
END
|
||||
|
||||
STRING F_ZONA 2
|
||||
BEGIN
|
||||
PROMPT 3 6 "Zona "
|
||||
// FIELD LF_SCONTI->CODART[7,8]
|
||||
USE %ZON // ZONE
|
||||
FLAG "U"
|
||||
INPUT CODTAB F_ZONA
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@40" S0
|
||||
|
||||
OUTPUT F_ZONA CODTAB
|
||||
OUTPUT F_ZONA1 S0
|
||||
END
|
||||
|
||||
STRING F_ZONA1 40
|
||||
BEGIN
|
||||
PROMPT 20 6 ""
|
||||
USE %SCC KEY 2
|
||||
FLAG "U"
|
||||
INPUT S0 F_ZONA1
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@40" S0
|
||||
|
||||
OUTPUT F_ZONA CODTAB
|
||||
OUTPUT F_ZONA1 S0
|
||||
END
|
||||
|
||||
STRING F_CODPAG 4
|
||||
BEGIN
|
||||
PROMPT 3 8 "Codice pagamento "
|
||||
// FIELD LF_SCONTI->CODART[10,13]
|
||||
|
||||
END
|
||||
|
||||
STRING F_CODPAG1 40
|
||||
BEGIN
|
||||
PROMPT 25 8 ""
|
||||
FLAG "D"
|
||||
END
|
||||
|
||||
|
||||
STRING F_SCONTO 25
|
||||
BEGIN
|
||||
PROMPT 3 10 "Sconto incondizionato "
|
||||
// FIELD LF_SCONTI->SCONTO
|
||||
END
|
||||
|
||||
|
||||
|
||||
|
||||
GROUPBOX DLG_NULL 70 13
|
||||
|
||||
BEGIN
|
||||
PROMPT 0 0 ""
|
||||
FLAG "R"
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
|
||||
ENDMASK
|
337
ve/ve3300a.frm
337
ve/ve3300a.frm
@ -1,337 +0,0 @@
|
||||
// Form per la stampa delle condizioni di vendita,
|
||||
// Listini/Contratti/Offerte
|
||||
|
||||
USE LF_CONDV
|
||||
JOIN LF_RCONDV INTO TIPO==TIPO CATVEN==CATVEN TIPOCF==TIPOCF CODCF==CODCF COD==COD
|
||||
JOIN LF_ANAMAG TO LF_RCONDV INTO CODART==CODRIGA
|
||||
JOIN GMC TO LF_RCONDV ALIAS 101 INTO CODTAB==CODRIGA
|
||||
JOIN RFA TO LF_RCONDV ALIAS 102 INTO CODTAB==CODRIGA
|
||||
END
|
||||
|
||||
DESCRIPTION
|
||||
BEGIN
|
||||
LF_CONDV->* "Archivio Condizioni di Vendita"
|
||||
LF_RCONDV->* "Archivio Righe Condizioni di Vendita"
|
||||
END
|
||||
|
||||
GENERAL
|
||||
BEGIN
|
||||
OFFSET 0 0
|
||||
END
|
||||
|
||||
SECTION HEADER ODD 7
|
||||
|
||||
STRINGA 1 40 1
|
||||
BEGIN
|
||||
KEY "nome ditta"
|
||||
PROMPT 1 1 "Ditta "
|
||||
MESSAGE _DITTA, !RAGSOC
|
||||
END
|
||||
|
||||
STRINGA 2 10
|
||||
BEGIN
|
||||
KEY "Data"
|
||||
PROMPT 100 1 "Data "
|
||||
MESSAGE _TODAY
|
||||
END
|
||||
|
||||
NUMERO 3 7
|
||||
BEGIN
|
||||
KEY "Nr. pagina"
|
||||
PROMPT 120 1 "Pagina "
|
||||
MESSAGE _PAGENO
|
||||
END
|
||||
|
||||
LISTA 4 15
|
||||
BEGIN
|
||||
KEY "Intestazione stampa"
|
||||
PROMPT 65 2 ""
|
||||
FIELD LF_CONDV->TIPO
|
||||
ITEM "L|Stampa listino"
|
||||
ITEM "C|Stampa contratto"
|
||||
ITEM "O|Stampa offerta"
|
||||
END
|
||||
|
||||
STRINGA 5 12
|
||||
BEGIN
|
||||
KEY "Cat. vendita"
|
||||
PROMPT 1 3 "Cat. ven: "
|
||||
FIELD LF_CONDV->CATVEN
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
LISTA 6 10
|
||||
BEGIN
|
||||
KEY "Tipo C/F"
|
||||
PROMPT 1 3 ""
|
||||
ITEM "|"
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
FIELD LF_CONDV->TIPOCF
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
NUMBER 7 6
|
||||
BEGIN
|
||||
KEY "Codice C/F"
|
||||
PROMPT 11 3 ""
|
||||
FIELD LF_CONDV->CODCF
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
STRINGA 8 11
|
||||
BEGIN
|
||||
KEY "Codice Listino/Contratto/Offerta"
|
||||
PROMPT 20 3 "@BCodice: "
|
||||
FIELD LF_CONDV->COD
|
||||
END
|
||||
|
||||
STRINGA 9 50
|
||||
BEGIN
|
||||
KEY "Descrizione"
|
||||
PROMPT 34 3 ""
|
||||
FIELD LF_CONDV->DESCR
|
||||
END
|
||||
|
||||
STRINGA 10 12
|
||||
BEGIN
|
||||
KEY "Cod. Valuta"
|
||||
PROMPT 1 4 "Valuta: "
|
||||
FIELD LF_CONDV->CODVAL
|
||||
END
|
||||
|
||||
DATA 11 23
|
||||
BEGIN
|
||||
KEY "Inizio validita"
|
||||
PROMPT 15 4 "Inizio val.: "
|
||||
FIELD LF_CONDV->VALIN
|
||||
END
|
||||
|
||||
DATA 13 23
|
||||
BEGIN
|
||||
KEY "Fine validita"
|
||||
PROMPT 40 4 "Fine val.: "
|
||||
FIELD LF_CONDV->VALFIN
|
||||
END
|
||||
|
||||
LISTA 14 20
|
||||
BEGIN
|
||||
KEY "Importi Lordi"
|
||||
PROMPT 65 4 ""
|
||||
FIELD LF_CONDV->IMPLORDI
|
||||
ITEM "|Listino senza IVA"
|
||||
ITEM "X|Listino con IVA"
|
||||
END
|
||||
|
||||
END // HEADER
|
||||
|
||||
|
||||
SECTION BODY ODD 2 COLUMNWISE
|
||||
|
||||
// Intestazioni colonne
|
||||
|
||||
STRINGA 1 20
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "Codice" "Codice"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Codice riga"
|
||||
PROMPT 1 1 ""
|
||||
END
|
||||
|
||||
STRINGA 2 25
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "Descrizione" "Descrizione"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Descrizione"
|
||||
PROMPT 2 1 ""
|
||||
END
|
||||
|
||||
STRINGA 3 4
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "UM" "UM"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Unita' di misura"
|
||||
PROMPT 3 1 ""
|
||||
END
|
||||
|
||||
STRINGA 4 15
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CDa qta" "Da qta"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Qta lim da"
|
||||
PROMPT 4 1 ""
|
||||
END
|
||||
|
||||
STRINGA 5 15
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CA qta" "A qta"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Qta lim a"
|
||||
PROMPT 5 1 ""
|
||||
END
|
||||
|
||||
STRINGA 6 15
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CPrezzo" "Prezzo"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Prezzo"
|
||||
PROMPT 6 1 ""
|
||||
END
|
||||
|
||||
STRINGA 7 25
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CSconto" "Sconto"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Sconto"
|
||||
PROMPT 7 1 ""
|
||||
END
|
||||
|
||||
STRINGA 8 4
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CIVA" "IVA"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Codice IVA"
|
||||
PROMPT 8 1 ""
|
||||
END
|
||||
|
||||
STRINGA 9 15
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CQta base" "Qta base"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Qta base per calcolo sconto"
|
||||
PROMPT 9 1 ""
|
||||
END
|
||||
|
||||
STRINGA 10 15
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CQta omaggio" "Qta omaggio"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Qta Omaggio"
|
||||
PROMPT 10 1 ""
|
||||
END
|
||||
|
||||
STRINGA 11 20
|
||||
BEGIN
|
||||
SPECIAL STRINGA INTESTAZIONE "@CCod. art. Omaggio" "Cod. Art. Omaggio"
|
||||
SPECIAL NUMERO OFFSET "0" "Offset iniziale campo"
|
||||
SPECIAL STRINGA FINCATURA "XX" "Fincatura sinistra e destra"
|
||||
KEY "Cod. articolo omaggio"
|
||||
PROMPT 11 1 ""
|
||||
END
|
||||
|
||||
// Sezione di stampa righe
|
||||
|
||||
SECTION RIGHE 1 1 1 FILE LF_RCONDV
|
||||
|
||||
SECTION H_RIGHE 1 1 1 GROUP
|
||||
|
||||
STRINGA 101 20
|
||||
BEGIN
|
||||
KEY "Codice riga"
|
||||
PROMPT 1 1 "@B"
|
||||
FIELD LF_RCONDV->CODRIGA
|
||||
END
|
||||
|
||||
STRINGA 102 25 2
|
||||
BEGIN
|
||||
KEY "Descrizione"
|
||||
PROMPT 2 1 ""
|
||||
MESSAGE _DESCRIZIONE
|
||||
END
|
||||
END
|
||||
|
||||
SECTION GR_RIGHE 1 1 1 FILE LF_RCONDV GROUP TIPORIGA+CODRIGA
|
||||
|
||||
STRINGA 201 20
|
||||
BEGIN
|
||||
PROMPT 1 1 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRINGA 202 25
|
||||
BEGIN
|
||||
PROMPT 2 1 ""
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
STRINGA 103 4
|
||||
BEGIN
|
||||
KEY "UM"
|
||||
PROMPT 3 1 ""
|
||||
FIELD LF_RCONDV->UM
|
||||
END
|
||||
|
||||
NUMERO 104 15
|
||||
BEGIN
|
||||
KEY "Qta lim da"
|
||||
PROMPT 4 1 ""
|
||||
MESSAGE _QTAFROM
|
||||
END
|
||||
|
||||
NUMERO 105 15
|
||||
BEGIN
|
||||
KEY "Qta lim a"
|
||||
PROMPT 5 1 ""
|
||||
MESSAGE _QTATO
|
||||
END
|
||||
|
||||
NUMERO 106 15
|
||||
BEGIN
|
||||
KEY "Prezzo"
|
||||
PROMPT 6 1 ""
|
||||
FIELD LF_RCONDV->PREZZO
|
||||
END
|
||||
|
||||
STRINGA 107 25
|
||||
BEGIN
|
||||
KEY "Sconto"
|
||||
PROMPT 7 1 ""
|
||||
FIELD LF_RCONDV->SCONTO
|
||||
END
|
||||
|
||||
STRINGA 108 4
|
||||
BEGIN
|
||||
KEY "Cod. IVA"
|
||||
PROMPT 8 1 ""
|
||||
FIELD LF_RCONDV->CODIVA
|
||||
END
|
||||
|
||||
NUMERO 109 15
|
||||
BEGIN
|
||||
KEY "Qta base per calcolo sconto"
|
||||
PROMPT 9 1 ""
|
||||
FIELD LF_RCONDV->QBASE
|
||||
PICTURE "#########@,@@@@@"
|
||||
END
|
||||
|
||||
NUMERO 110 15
|
||||
BEGIN
|
||||
KEY "Qta omaggio"
|
||||
PROMPT 10 1 ""
|
||||
FIELD LF_RCONDV->QOM
|
||||
PICTURE "#########@,@@@@@"
|
||||
END
|
||||
|
||||
STRINGA 111 20
|
||||
BEGIN
|
||||
KEY "Cod. articolo Omaggio"
|
||||
PROMPT 11 1 ""
|
||||
FIELD LF_RCONDV->CODARTOM
|
||||
END
|
||||
END // SECTION
|
||||
END // SECTION
|
||||
|
||||
END // BODY
|
||||
|
||||
END // FORM
|
||||
|
125
ve/ve3300a.uml
125
ve/ve3300a.uml
@ -1,125 +0,0 @@
|
||||
#include "ve3300.h"
|
||||
|
||||
PAGE "Stampa condizioni di vendita" -1 -1 64 10
|
||||
|
||||
GROUPBOX DLG_NULL 62 5 // groupbox attorno agli elementi di selezione della chiave
|
||||
BEGIN
|
||||
PROMPT 1 0 "Selezione"
|
||||
END
|
||||
|
||||
STRING F_TIPO 1 // tipo di archivio
|
||||
BEGIN
|
||||
PROMPT 100 100 ""
|
||||
FLAG "DU"
|
||||
END
|
||||
|
||||
STRING F_L_CATVEN 2 // categoria di vendita, solo listini
|
||||
BEGIN
|
||||
PROMPT 2 1 "Cat. vendita "
|
||||
FLAG "U"
|
||||
USE CVE
|
||||
INPUT CODTAB F_L_CATVEN
|
||||
DISPLAY "Cat." CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_L_CATVEN CODTAB
|
||||
END
|
||||
|
||||
LIST F_C_TIPOCF 9 // tipo cliente/fornitore, solo contratti
|
||||
BEGIN
|
||||
PROMPT 2 1 "Tipo "
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
END
|
||||
|
||||
NUMBER F_C_CODCF 6 // codice cliente/fornitore, solo contratti
|
||||
BEGIN
|
||||
PROMPT 30 1 "Codice "
|
||||
FLAG "U"
|
||||
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_TIPOCF TIPOCF
|
||||
OUTPUT F_C_CODCF CODCF
|
||||
END
|
||||
|
||||
STRING F_L_COD 3 // codice listino, solo listini
|
||||
BEGIN
|
||||
PROMPT 2 2 "Codice listino "
|
||||
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_TIPO TIPO
|
||||
OUTPUT F_L_CATVEN CATVEN
|
||||
OUTPUT F_L_COD COD
|
||||
OUTPUT F_DESCR DESCR
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_C_COD 3 // codice contratto, solo contratti
|
||||
BEGIN
|
||||
PROMPT 2 2 "Nr. contratto "
|
||||
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_TIPOCF TIPOCF
|
||||
OUTPUT F_C_CODCF CODCF
|
||||
OUTPUT F_C_COD COD
|
||||
OUTPUT F_DESCR DESCR
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_O_COD 3 // codice offerta, solo offerte
|
||||
BEGIN
|
||||
PROMPT 2 2 "Codice offerta "
|
||||
FLAG "U"
|
||||
USE LF_CONDV
|
||||
INPUT TIPO F_TIPO SELECT
|
||||
INPUT COD F_O_COD
|
||||
DISPLAY "Codice" COD
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
OUTPUT F_TIPO TIPO
|
||||
OUTPUT F_O_COD COD
|
||||
OUTPUT F_DESCR DESCR
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_DESCR 40
|
||||
BEGIN
|
||||
PROMTP 2 3 "Descrizione "
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BOOLEAN F_EXTENDED
|
||||
BEGIN
|
||||
PROMPT 2 6 "Stampa estesa"
|
||||
END
|
||||
|
||||
BUTTON DLG_PRINT 9 2
|
||||
BEGIN
|
||||
PROMPT -12 -1 "~Stampa"
|
||||
MESSAGE EXIT,K_ENTER
|
||||
END
|
||||
|
||||
BUTTON DLG_QUIT 9 2
|
||||
BEGIN
|
||||
PROMPT -22 -1 ""
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
18
ve/ve3900a.h
Executable file
18
ve/ve3900a.h
Executable file
@ -0,0 +1,18 @@
|
||||
//campi maschera ve3900a.h (stampa fatturato)
|
||||
|
||||
#define F_ANNO 201
|
||||
#define F_CODNUM 202
|
||||
#define F_DESNUM 203
|
||||
#define F_TIPO 204
|
||||
#define F_DESTIPO 205
|
||||
#define F_DASTATO 206
|
||||
#define F_DADESTATO 207
|
||||
#define F_ASTATO 208
|
||||
#define F_ADESTATO 209
|
||||
#define F_DADATA 210
|
||||
#define F_ADATA 211
|
||||
#define F_DACLIFO 212
|
||||
#define F_DARAGSOC 213
|
||||
#define F_ACLIFO 214
|
||||
#define F_ARAGSOC 215
|
||||
#define F_PROFILO 220
|
155
ve/ve3900a.rep
Executable file
155
ve/ve3900a.rep
Executable file
@ -0,0 +1,155 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<report name="ve3900a" lpi="6">
|
||||
<description>Stampa fatturato</description>
|
||||
<font face="Courier New" size="10" />
|
||||
<section type="Head">
|
||||
<field x="0.12" y="0.5" type="Rettangolo" bg_color="#C0C0C0" width="90" height="0.2" />
|
||||
</section>
|
||||
<section type="Head" level="1">
|
||||
<font face="Arial" bold="1" size="8" />
|
||||
<prescript description="H1 PRESCRIPT">MESSAGE RESET,F1.100|RESET,F1.110|RESET,F1.120|RESET,F1.130|RESET,F1.140</prescript>
|
||||
<field border="2" radius="200" x="24" y="0.5" type="Rettangolo" width="32" height="3" pattern="1" />
|
||||
<field x="25" y="1.5" type="Testo" align="center" width="30" height="1.5" pattern="1" text="STAMPA FATTURATO">
|
||||
<font face="Arial" size="12" />
|
||||
</field>
|
||||
<field x="2" y="4" type="Stringa" width="20" pattern="1" text="dalla data: ">
|
||||
<font face="Arial" size="10" />
|
||||
<source>#DADATA</source>
|
||||
</field>
|
||||
<field x="24" y="4" type="Stringa" width="18.5" pattern="1" text="alla data: ">
|
||||
<font face="Arial" size="10" />
|
||||
<source>#ADATA</source>
|
||||
</field>
|
||||
</section>
|
||||
<section repeat="1" keep_with_next="1" type="Head" level="2" height="3">
|
||||
<groupby>CODCF</groupby>
|
||||
<font face="Arial" bold="1" size="10" />
|
||||
<prescript description="H2 PRESCRIPT">MESSAGE RESET,F2.100|RESET,F2.110|RESET,F2.120|RESET,F2.130|RESET,F2.140
|
||||
MESSAGE RESET,B1</prescript>
|
||||
<field x="0.5" type="Testo" width="8" pattern="1" text="Cliente" />
|
||||
<field x="2" y="1.75" type="Testo" width="4" height="0.75" pattern="1" text="Tipo">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="6" y="1.75" type="Testo" align="right" width="7" height="0.75" pattern="1" text="Numero">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="14" y="1.75" type="Testo" align="center" width="10" height="0.75" pattern="1" text="Data">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="29" y="1.75" type="Testo" align="right" width="13" height="0.75" pattern="1" text="Imp. Netto non Sc.">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="48" y="1.75" type="Testo" align="right" width="5" height="0.75" pattern="1" text="Sconto ">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="56.5" y="1.75" type="Testo" align="right" width="10" height="0.75" pattern="1" text="Imp. Netto Scon.">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="68" y="1.75" type="Testo" align="right" width="10" height="0.75" pattern="1" text="Imposta">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="25.75" y="1.8" type="Testo" width="2" height="0.75" pattern="1" text="St">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field x="80.87" y="1.81" type="Testo" align="right" width="10" height="0.75" pattern="1" text="Tot. Documento">
|
||||
<font italic="1" face="Arial" size="8" />
|
||||
</field>
|
||||
<field border="1" y="2.75" type="Linea" width="92" height="0" pattern="1" />
|
||||
<field x="8" type="Stringa" width="7" id="101" pattern="1">
|
||||
<source>CODCF</source>
|
||||
</field>
|
||||
<field x="16" type="Stringa" width="50" id="102" pattern="1">
|
||||
<prescript description="H2.102 PRESCRIPT">MESSAGE ISAMREAD,20,TIPOCF=C!CODCF=#101,RAGSOC</prescript>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Body" />
|
||||
<section type="Body" level="1">
|
||||
<font face="Arial" size="8" />
|
||||
<postscript description="B1 POSTSCRIPT">MESSAGE RESET,B1</postscript>
|
||||
<field x="26" type="Stringa" width="1" pattern="1">
|
||||
<source>DOC.STATO</source>
|
||||
</field>
|
||||
<field x="106" type="Stringa" hidden="1" width="10" pattern="1">
|
||||
<source>CODNUM</source>
|
||||
</field>
|
||||
<field x="2" type="Stringa" width="4" id="50" pattern="1">
|
||||
<source>TIPODOC</source>
|
||||
</field>
|
||||
<field x="92" type="Stringa" hidden="1" width="4" id="55" pattern="1">
|
||||
<source>ANNO</source>
|
||||
</field>
|
||||
<field x="6" type="Numero" align="right" link="NDOC" width="7" id="60" pattern="1">
|
||||
<source>NDOC</source>
|
||||
</field>
|
||||
<field x="14" type="Data" width="10" id="65" pattern="1">
|
||||
<source>DATADOC</source>
|
||||
</field>
|
||||
<field x="96" type="Stringa" hidden="1" width="10" id="68" pattern="1">
|
||||
<source>IF(TIPODOC='NAC',-1,1)</source>
|
||||
</field>
|
||||
<field x="31" type="Valuta" align="right" width="11" id="70" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<source>#68*33.TOTLORDO</source>
|
||||
<prescript description="B1.70 PRESCRIPT">MESSAGE ADD,F2.100|ADD,F1.100</prescript>
|
||||
</field>
|
||||
<field x="43" type="Valuta" align="right" width="10" id="75" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<source>#68*33.SCONTOD</source>
|
||||
<prescript description="B1.75 PRESCRIPT">MESSAGE ADD,F2.110|ADD,F1.110</prescript>
|
||||
</field>
|
||||
<field x="54" type="Valuta" align="right" width="13" id="80" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<source>#68*33.IMPONIBILI</source>
|
||||
<prescript description="B1.80 PRESCRIPT">MESSAGE ADD,F2.120|ADD,F1.120</prescript>
|
||||
</field>
|
||||
<field x="68" type="Valuta" align="right" width="10" id="85" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<source>#68*33.IMPOSTE</source>
|
||||
<prescript description="B1.85 PRESCRIPT">MESSAGE ADD,F2.130|ADD,F1.130</prescript>
|
||||
</field>
|
||||
<field x="78.5" type="Valuta" align="right" width="13" id="90" pattern="1" text="###.###.###,@@">
|
||||
<source>#68*33.TOTDOC</source>
|
||||
<prescript description="B1.90 PRESCRIPT">MESSAGE ADD,F2.140|ADD,F1.140</prescript>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Foot">
|
||||
<font italic="1" face="Arial" size="10" />
|
||||
<field x="-0.13" y="0.18" type="Rettangolo" bg_color="#C0C0C0" width="92" height="0.2" />
|
||||
<field y="0.75" type="Stringa" width="20" pattern="1" text="Data: ">
|
||||
<source>#SYSTEM.DATE</source>
|
||||
</field>
|
||||
<field x="82.87" y="0.75" type="Stringa" width="7.5" pattern="1" text="Pag.">
|
||||
<source>#PAGE</source>
|
||||
</field>
|
||||
</section>
|
||||
<section type="Foot" level="1">
|
||||
<font face="Arial" bold="1" size="11" />
|
||||
<field border="2" type="Linea" width="92" height="0" pattern="1" />
|
||||
<field x="0.5" y="0.25" type="Testo" width="21.5" pattern="1" text="TOTALE GENERALE" />
|
||||
<field x="29" y="0.25" type="Valuta" align="right" width="13" id="100" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<font face="Arial" bold="1" size="10" />
|
||||
</field>
|
||||
<field x="43" y="0.25" type="Valuta" align="right" width="10" id="110" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<font face="Arial" bold="1" size="10" />
|
||||
</field>
|
||||
<field x="54" y="0.25" type="Valuta" align="right" width="13" id="120" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<font face="Arial" bold="1" size="10" />
|
||||
</field>
|
||||
<field x="68" y="0.25" type="Valuta" align="right" width="10" id="130" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<font face="Arial" bold="1" size="10" />
|
||||
</field>
|
||||
<field x="78.5" y="0.25" type="Valuta" align="right" width="13" id="140" pattern="1" hide_zero="1" text="###.###.###,@@">
|
||||
<font face="Arial" bold="1" size="10" />
|
||||
</field>
|
||||
</section>
|
||||
<section type="Foot" level="2" height="3">
|
||||
<field border="1" y="0.25" type="Rettangolo" shade_offset="50" width="92" height="1.5" />
|
||||
<field x="11" y="0.5" type="Testo" width="16.5" pattern="1" text="Totale Cliente" />
|
||||
<field x="29" y="0.5" type="Valuta" align="right" width="13" id="100" pattern="1" hide_zero="1" text="###.###.###,@@" />
|
||||
<field x="43" y="0.5" type="Valuta" align="right" width="10" id="110" pattern="1" hide_zero="1" text="###.###.###,@@" />
|
||||
<field x="54" y="0.5" type="Valuta" align="right" width="13" id="120" pattern="1" hide_zero="1" text="###.###.###,@@" />
|
||||
<field x="68" y="0.5" type="Valuta" align="right" width="10" id="130" pattern="1" hide_zero="1" text="###.###.###,@@" />
|
||||
<field x="78.5" y="0.5" type="Valuta" align="right" width="13" id="140" pattern="1" hide_zero="1" text="###.###.###,@@" />
|
||||
</section>
|
||||
<sql>USE DOC KEY 3
|
||||
SELECT (BETWEEN(STATO,#DASTATO,#ASTATO))(CODNUM=#CODNUM)(TIPODOC=#TIPODOC)(BETWEEN(CODCF,#DACLIFO,#ACLIFO))
|
||||
BY CODCF NDOC
|
||||
FROM DATADOC=#DADATA PROVV='D' ANNO=#ANNO
|
||||
TO DATADOC=#ADATA PROVV='D' ANNO=#ANNO </sql>
|
||||
</report>
|
212
ve/ve3900a.uml
Executable file
212
ve/ve3900a.uml
Executable file
@ -0,0 +1,212 @@
|
||||
#include "ve3900a.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 fatturato" 0 2 0 0
|
||||
|
||||
GROUPBOX DLG_NULL 78 9
|
||||
BEGIN
|
||||
PROMPT 1 1 "@bDocumenti da considerare"
|
||||
END
|
||||
|
||||
NUMBER F_ANNO 4
|
||||
BEGIN
|
||||
PROMPT 2 2 "Anno "
|
||||
USE ESC
|
||||
INPUT CODTAB F_ANNO
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Data inizio esercizio" D0
|
||||
DISPLAY "Data fine esercizio" D1
|
||||
OUTPUT F_ANNO CODTAB
|
||||
OUTPUT F_DADATA D0
|
||||
OUTPUT F_ADATA D1
|
||||
FLAGS "Z"
|
||||
FIELD #ANNO
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_CODNUM 4
|
||||
BEGIN
|
||||
PROMPT 2 3 "Numer. "
|
||||
USE %NUM
|
||||
INPUT CODTAB F_CODNUM
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_CODNUM CODTAB
|
||||
OUTPUT F_DESNUM S0
|
||||
FLAGS "UPA"
|
||||
FIELD #CODNUM
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
STRING F_DESNUM 50
|
||||
BEGIN
|
||||
PROMPT 20 3 ""
|
||||
USE %NUM KEY 2
|
||||
INPUT S0 F_DESNUM
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT F_CODNUM
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_TIPO 4
|
||||
BEGIN
|
||||
PROMPT 2 4 "Tipo "
|
||||
USE %TIP
|
||||
INPUT CODTAB F_TIPO
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_TIPO CODTAB
|
||||
OUTPUT F_DESTIPO S0
|
||||
FLAGS "UPA"
|
||||
FIELD #TIPODOC
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_DESTIPO 50
|
||||
BEGIN
|
||||
PROMPT 20 4 ""
|
||||
USE %TIP KEY 2
|
||||
INPUT S0 F_DESTIPO
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT F_TIPO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
NUMBER F_DASTATO 1
|
||||
BEGIN
|
||||
PROMPT 2 5 "Da stato "
|
||||
USE %STD
|
||||
INPUT CODTAB F_DASTATO
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_DASTATO CODTAB
|
||||
OUTPUT F_DADESTATO S0
|
||||
FLAGS "U"
|
||||
FIELD #DASTATO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_DADESTATO 50
|
||||
BEGIN
|
||||
PROMPT 20 5 ""
|
||||
USE %STD KEY 2
|
||||
INPUT S0 F_DADESTATO
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT F_DASTATO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
NUMBER F_ASTATO 1
|
||||
BEGIN
|
||||
PROMPT 2 6 "A stato "
|
||||
USE %STD
|
||||
INPUT CODTAB F_ASTATO
|
||||
DISPLAY "Codice" CODTAB
|
||||
DISPLAY "Descrizione@50" S0
|
||||
OUTPUT F_ASTATO CODTAB
|
||||
OUTPUT F_ADESTATO S0
|
||||
FLAGS "U"
|
||||
FIELD #ASTATO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_ADESTATO 50
|
||||
BEGIN
|
||||
PROMPT 20 6 ""
|
||||
USE %STD KEY 2
|
||||
INPUT S0 F_ADESTATO
|
||||
DISPLAY "Descrizione@50" S0
|
||||
DISPLAY "Codice" CODTAB
|
||||
COPY OUTPUT F_ASTATO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
DATE F_DADATA
|
||||
BEGIN
|
||||
PROMPT 2 7 "Da data "
|
||||
FIELD #DADATA
|
||||
END
|
||||
|
||||
DATE F_ADATA
|
||||
BEGIN
|
||||
PROMPT 2 8 "A data "
|
||||
FIELD #ADATA
|
||||
END
|
||||
|
||||
|
||||
GROUPBOX DLG_NULL 78 4
|
||||
BEGIN
|
||||
PROMPT 1 10 "@bFiltri secondari"
|
||||
END
|
||||
|
||||
NUMBER F_DACLIFO 6
|
||||
BEGIN
|
||||
PROMPT 2 11 "Da Cliente "
|
||||
USE 20
|
||||
INPUT TIPOCF "C"
|
||||
INPUT CODCF F_DACLIFO
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||
OUTPUT F_DACLIFO CODCF
|
||||
OUTPUT F_DARAGSOC RAGSOC
|
||||
FLAGS "R"
|
||||
FIELD #DACLIFO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_DARAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 25 11 ""
|
||||
USE 20 KEY 2
|
||||
INPUT TIPOCF "C"
|
||||
INPUT RAGSOC F_DARAGSOC
|
||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||
DISPLAY "Codice" CODCF
|
||||
COPY OUTPUT F_DACLIFO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
NUMBER F_ACLIFO 6
|
||||
BEGIN
|
||||
PROMPT 2 12 "A Cliente "
|
||||
USE 20
|
||||
INPUT TIPOCF "C"
|
||||
INPUT CODCF F_ACLIFO
|
||||
DISPLAY "Codice" CODCF
|
||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||
OUTPUT F_ACLIFO CODCF
|
||||
OUTPUT F_ARAGSOC RAGSOC
|
||||
FLAGS "R"
|
||||
FIELD #ACLIFO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
STRING F_ARAGSOC 50
|
||||
BEGIN
|
||||
PROMPT 25 12 ""
|
||||
USE 20 KEY 2
|
||||
INPUT TIPOCF "C"
|
||||
INPUT RAGSOC F_ARAGSOC
|
||||
DISPLAY "Ragione Sociale@50" RAGSOC
|
||||
DISPLAY "Codice" CODCF
|
||||
COPY OUTPUT F_ACLIFO
|
||||
CHECKTYPE NORMAL
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
Loading…
x
Reference in New Issue
Block a user