Cambiata l'impostazione della stampa SCONTI. Ora viene fatta con i
forms. Iniziata la stessa cosa sulla stampa listini/contratti/offerte. git-svn-id: svn://10.65.10.50/trunk@3888 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
e730387da9
commit
3052fab70e
531
ve/ve3100.cpp
531
ve/ve3100.cpp
@ -1,198 +1,64 @@
|
|||||||
|
#include <applicat.h>
|
||||||
#include <printapp.h>
|
#include <relation.h>
|
||||||
|
#include <form.h>
|
||||||
#include <mask.h>
|
#include <mask.h>
|
||||||
|
#include <printer.h>
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
#include <execp.h>
|
#include <urldefid.h>
|
||||||
#include <mailbox.h>
|
#include <tabutil.h>
|
||||||
|
|
||||||
|
#include <nditte.h>
|
||||||
#include "ve3100.h"
|
#include "ve3100.h"
|
||||||
|
|
||||||
#define KILL(x) { mask->field(x).reset_key(1); mask->disable(x); }
|
#define KILL(x) { ((TEditable_field &)mask->field(x)).reset_key(1); mask->disable(x); }
|
||||||
#define REVIVE(x) { mask->field(x).set_key(1); mask->enable(x); }
|
#define REVIVE(x) { ((TEditable_field &)mask->field(x)).set_key(1); mask->enable(x); }
|
||||||
|
|
||||||
#define SCON1 135
|
class TForm_sconti : public TForm
|
||||||
#define CVE1 201
|
{
|
||||||
#define ZON1 202
|
|
||||||
#define CPG1 203
|
|
||||||
#define UMS1 204
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class TStampa_sconti: public TPrint_application {
|
|
||||||
TRelation *_rel; // relazione principale
|
|
||||||
TString16 _sconti; // tipo di archivio
|
|
||||||
TString16 _gessco; // configurazione della gestione sconti
|
|
||||||
bool _descriz; // abilitazione della stampa delle descrizioni
|
|
||||||
bool _compat; // abilita le descrizioni compatte (vengono ristampate solo al cambio dei valori)
|
|
||||||
bool _catven; // abilitazione della categoria di vendita (gesliscv)
|
|
||||||
bool _scokey_catven; // abilitazione della categoria di vendita
|
|
||||||
bool _scokey_scclienti; // abilitazione degli sconti clienti
|
|
||||||
bool _scokey_zone; // abilitazione delle zone
|
|
||||||
bool _scokey_condpag; // abilitazione delle condizioni di pagamento
|
|
||||||
TString _last_catven, _last_codart, _last_um, _last_sccliente, _last_zona, _last_condpag; // inseguitori dei campi da descrivere
|
|
||||||
//int _rcondv_link_id; // id del link ipertestuale all'anagrafica di magazzino
|
|
||||||
protected:
|
protected:
|
||||||
virtual bool user_create(void);
|
virtual word set_header(word p, bool u);
|
||||||
virtual bool user_destroy(void);
|
public:
|
||||||
virtual bool set_print(int);
|
void compact(const bool what); // Compatta i campi disabilitati del corpo, in modo che non ci siano buchi...
|
||||||
virtual void set_page(int, int);
|
TForm_sconti(const char* form);
|
||||||
virtual void preprocess_header(void);
|
virtual ~TForm_sconti() {};
|
||||||
virtual void preprocess_footer(void);
|
|
||||||
//virtual void process_link(int, const char *);
|
|
||||||
};
|
};
|
||||||
|
word TForm_sconti::set_header(word p, bool u)
|
||||||
|
{
|
||||||
|
TPrinter& pr = printer();
|
||||||
bool TStampa_sconti::user_create() {
|
TForm_item& pagina = find_field('H',odd_page,3);
|
||||||
bool gotcha= FALSE; // booleano di avvenuta inizializzazione
|
TString16 pg; pg << (int)pr.getcurrentpage();
|
||||||
_sconti= "*"; // inizializzazione dell'indicatore del tipo di tabella
|
pagina.set(pg);
|
||||||
if (argc()>2) _sconti= argv(2); // se c'è, prende il tipo di tabella dalla linea di comando
|
return TForm::set_header(p,u);
|
||||||
else {
|
|
||||||
TMask choose("VE3100"); // istanzia la maschera di scelta del tipo di tabella
|
|
||||||
if (choose.run() == K_ENTER) _sconti= choose.get(F_TIPOSC); // prende il tipo di tabella dalla maschera
|
|
||||||
}
|
|
||||||
TConfig prassid(CONFIG_DITTA, "ve"); // apre il file di configurazione di ditta
|
|
||||||
switch (_sconti[0]) {
|
|
||||||
case 'D': // sconti documento
|
|
||||||
_rel= new TRelation(LF_SCONTI); // crea la relazione principale
|
|
||||||
gotcha= TRUE;
|
|
||||||
break;
|
|
||||||
case 'R': // sconti di riga
|
|
||||||
_rel= new TRelation(LF_SCONTI); // crea la relazione principale
|
|
||||||
_rel->add(LF_ANAMAG, "CODART==CODART");
|
|
||||||
_rel->add("%UMS", "CODTAB==UM", 1, LF_SCONTI, UMS1);
|
|
||||||
_rel->add("CVE", "CODTAB==CODCAT", 1, LF_SCONTI, CVE1);
|
|
||||||
gotcha= TRUE;
|
|
||||||
break;
|
|
||||||
case 'I': // sconti incondizionati
|
|
||||||
_gessco= prassid.get("GESSCO"); // legge lo stato del parametro di abilitazione degli sconti
|
|
||||||
if (_gessco=="A") {
|
|
||||||
_rel= new TRelation(LF_SCONTI); // crea la relazione principale
|
|
||||||
_rel->add("CVE", "CODTAB==CODCAT", 1, LF_SCONTI, CVE1);
|
|
||||||
_rel->add(LF_SCONTI, "TIPO==\"D\"|CODCAT==CODART[1,2]", 1, LF_SCONTI, SCON1);
|
|
||||||
_rel->add("%ZON", "CODTAB==CODART[3,4]", 1, LF_SCONTI, ZON1);
|
|
||||||
_rel->add("%CPG", "CODTAB==CODART[5,8]", 1, LF_SCONTI, CPG1);
|
|
||||||
gotcha= TRUE;
|
|
||||||
} else error_box("Gli sconti incondizionati non sono abilitati nella configurazione");
|
|
||||||
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) {
|
|
||||||
add_cursor(new TCursor(_rel)); // costruisce il cursore sulla relazione e lo passa alla stampa
|
|
||||||
add_file(LF_SCONTI); // notifica il file delle principale alla stampa
|
|
||||||
enable_print_menu(); // abilita il menù di stampa
|
|
||||||
enable_setprint_menu(); // abilita il menù di settaggio della stampa
|
|
||||||
}
|
|
||||||
return (gotcha);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TStampa_sconti::user_destroy() {
|
void TForm_sconti::compact(const bool what)
|
||||||
delete _rel;
|
// Scorre i campi del corpo, compattando i campi abilitati
|
||||||
return TRUE;
|
{
|
||||||
|
word togli;
|
||||||
|
if (what) // sconti di riga
|
||||||
|
togli = 4;
|
||||||
|
else // sconti incondizionati
|
||||||
|
togli = 5;
|
||||||
|
TPrint_section& b = section('B',odd_page);
|
||||||
|
const word fields = b.fields();
|
||||||
|
const word height = b.height();
|
||||||
|
const word max = fields - togli;
|
||||||
|
int y = 1; // first coordinate of first field
|
||||||
|
for (word i = 1; i <= fields; i++)
|
||||||
|
{
|
||||||
|
TForm_item& f = b.find_field(i);
|
||||||
|
if (f.enabled())
|
||||||
|
if (i <= max)
|
||||||
|
f.y() = y++;
|
||||||
|
else
|
||||||
|
f.y() = y;
|
||||||
|
}
|
||||||
|
b.set_height(y+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TStampa_sconti::set_print(int) {
|
TForm_sconti::TForm_sconti(const char* form)
|
||||||
bool gotcha= FALSE;
|
: TForm(form)
|
||||||
TConfig prassid(CONFIG_DITTA, "ve");
|
{}
|
||||||
TMask *mask;
|
|
||||||
switch (_sconti[0]) {
|
|
||||||
case 'D': // sconti documento
|
|
||||||
mask= new TMask("ve3100d");
|
|
||||||
gotcha= TRUE;
|
|
||||||
break;
|
|
||||||
case 'R': // sconti di riga
|
|
||||||
mask= new TMask("ve3100r");
|
|
||||||
if (!_catven) {
|
|
||||||
KILL(F_R_CODCAT_DA);
|
|
||||||
KILL(F_R_CODCAT_A);
|
|
||||||
} else {
|
|
||||||
REVIVE(F_R_CODCAT_DA);
|
|
||||||
REVIVE(F_R_CODCAT_A);
|
|
||||||
}
|
|
||||||
gotcha= TRUE;
|
|
||||||
break;
|
|
||||||
case 'I': // sconti incondizionati
|
|
||||||
mask= new TMask("ve3100i");
|
|
||||||
short k_id[2][4]= { F_I_CATVEN_DA, F_I_CATVEN_A, F_I_SCCLIENTI_DA, F_I_SCCLIENTI_A, F_I_ZONE_DA, F_I_ZONE_A, F_I_CONDPAG_DA, F_I_CONDPAG_A }; // vettore dei campi da controllare
|
|
||||||
for (int i=0; i<4; i++) {
|
|
||||||
bool enab= prassid.get_bool("SCOKEY", NULL, i+1);
|
|
||||||
switch (i) {
|
|
||||||
case 0: _scokey_catven= enab; break;
|
|
||||||
case 1: _scokey_scclienti= enab; break;
|
|
||||||
case 2: _scokey_zone= enab; break;
|
|
||||||
case 3: _scokey_condpag= enab; break;
|
|
||||||
}
|
|
||||||
if (enab) { // se nel file di config. il campo è abilitato...
|
|
||||||
REVIVE(k_id[0][i]); // ...i campi vengono abilitati anche sulla maschera
|
|
||||||
REVIVE(k_id[1][i]);
|
|
||||||
gotcha= TRUE;
|
|
||||||
} else {
|
|
||||||
KILL(k_id[0][i]); // se nel file di config. i campi non sono abilitati vengono disabilitati anche sulla maschera
|
|
||||||
KILL(k_id[1][i]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!_catven) {
|
|
||||||
KILL(k_id[0][1]); // se nel file di config. la categoria vendite è disabilitata viene ucciso il campo
|
|
||||||
KILL(k_id[1][1]);
|
|
||||||
}
|
|
||||||
if (!gotcha) error_box("Non ci sono campi chiave abilitati nella configurazione della ditta");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (gotcha && (mask->run()== K_ENTER)) { // lancia la maschera, se viene confermata vengono trovati gli estremi del cursore
|
|
||||||
if (_sconti=="R") {
|
|
||||||
_descriz= mask->get_bool(F_R_DESCRIZ);
|
|
||||||
_compat= mask->get_bool(F_R_COMPAT);
|
|
||||||
} else if (_sconti=="I") {
|
|
||||||
_descriz= mask->get_bool(F_I_DESCRIZ);
|
|
||||||
_compat= mask->get_bool(F_I_COMPAT);
|
|
||||||
}
|
|
||||||
TLocalisamfile &sconti= _rel->lfile();
|
|
||||||
TRectype da(sconti.curr()); // prepara il record di inizio regione
|
|
||||||
da.zero();
|
|
||||||
da.put("TIPO", _sconti);
|
|
||||||
TRectype a(da); // prepara il record di fine regione
|
|
||||||
TString codart; // stringa per la composizione del campo CODART negli sconti incondizionati
|
|
||||||
switch (_sconti[0]) { // impostazione della chiave della testata
|
|
||||||
case 'D': // sconti documento
|
|
||||||
da.put("CODCAT", mask->get(F_D_CODCAT_DA));
|
|
||||||
a.put("CODCAT", mask->get(F_D_CODCAT_A));
|
|
||||||
break;
|
|
||||||
case 'R': // sconti di riga
|
|
||||||
if (_catven) {
|
|
||||||
da.put("CODCAT", mask->get(F_R_CODCAT_DA));
|
|
||||||
a.put("CODCAT", mask->get(F_R_CODCAT_A));
|
|
||||||
} else {
|
|
||||||
da.blank("CODCAT"); // i campi non gestiti vengono riempiti di blank
|
|
||||||
a.blank("CODCAT");
|
|
||||||
}
|
|
||||||
da.put("CODART", mask->get(F_R_CODART_DA));
|
|
||||||
a.put("CODART", mask->get(F_R_CODART_A));
|
|
||||||
break;
|
|
||||||
case 'I': // sconti incondizionati
|
|
||||||
if (_catven && _scokey_catven) {
|
|
||||||
da.put("CODCAT", mask->get(F_I_CATVEN_DA));
|
|
||||||
a.put("CODCAT", mask->get(F_I_CATVEN_A));
|
|
||||||
} else {
|
|
||||||
da.blank("CODCAT"); // i campi non gestiti vengono riempiti di blank
|
|
||||||
a.blank("CODCAT");
|
|
||||||
}
|
|
||||||
if (_scokey_scclienti || _scokey_zone || _scokey_condpag) {
|
|
||||||
codart.format("%2s%2s%4s", (_scokey_scclienti)?(mask->get(F_I_SCCLIENTI_DA)):(""), (_scokey_zone)?(mask->get(F_I_ZONE_DA)):(""), (_scokey_condpag)?(mask->get(F_I_CONDPAG_DA)):(""));
|
|
||||||
da.put("CODART", codart);
|
|
||||||
codart.format("%2s%2s%4s", (_scokey_scclienti)?(mask->get(F_I_SCCLIENTI_A)):(""), (_scokey_zone)?(mask->get(F_I_ZONE_A)):(""), (_scokey_condpag)?(mask->get(F_I_CONDPAG_A)):(""));
|
|
||||||
a.put("CODART", codart);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
current_cursor()->setregion(da, a); // setta la regione sul cursore
|
|
||||||
force_setpage(); // forza il lancio della set_page() ad ogni record del file da stampare
|
|
||||||
disable_links(); // disabilita tutti i link ipertestuali
|
|
||||||
// _rcondv_link_id= enable_link("Collegamento a archivio sconti", 'g'); // abilita il collegamento
|
|
||||||
return TRUE;
|
|
||||||
} else return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 1 1 1 1
|
/* 1 1 1 1
|
||||||
1 2 3 4 5 6 7 8 9 0 1 2 3
|
1 2 3 4 5 6 7 8 9 0 1 2 3
|
||||||
@ -215,104 +81,225 @@ Categoria vendite: ..................................................
|
|||||||
Sconto cliente: ..................................................
|
Sconto cliente: ..................................................
|
||||||
Zona: ..................................................
|
Zona: ..................................................
|
||||||
Condizione di pagamento: ..................................................
|
Condizione di pagamento: ..................................................
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void TStampa_sconti::preprocess_header() {
|
class TStampa_sconti: public TApplication {
|
||||||
reset_header(); // l'header viene resettato
|
TForm_sconti *_frm; // form di stampa
|
||||||
int i= 1; // contatore delle linee
|
TLocalisamfile *_anamag,*_scon; // file per i controlli sulle anagrafiche
|
||||||
const long firm= get_firm(); // legge l'id della ditta corrente
|
TTable *_cve, *_zon, *_cpg; // Tabella categorie di vendita
|
||||||
TLocalisamfile ditte(LF_NDITTE); // apre il file ditte
|
TString16 _sconti; // tipo di archivio
|
||||||
ditte.zero(); // vuota il record
|
bool _catven; // abilitazione della categoria di vendita (gesliscv)
|
||||||
ditte.put("CODDITTA", firm); // riempie la chiave
|
bool _scokey_catven; // abilitazione della categoria di vendita
|
||||||
if (ditte.read()== NOERR) { // se il record della ditta viene trovato viene settato l'header
|
bool _scokey_scclienti; // abilitazione degli sconti clienti
|
||||||
const TString &s= ditte.get("RAGSOC"); // legge la ragione sociale della ditta
|
bool _scokey_zone; // abilitazione delle zone
|
||||||
set_header(i, "@1gDitta %ld %s", firm, (const char *)s); // setta il nome e l'id della ditta della prima linea dell'header
|
bool _scokey_condpag; // abilitazione delle condizioni di pagamento
|
||||||
}
|
protected:
|
||||||
set_header(++i,"@1gCC"); // codice di categoria
|
virtual bool create(void);
|
||||||
switch (_sconti[0]) {
|
virtual bool destroy(void);
|
||||||
case 'D': // sconti documento
|
virtual bool menu(MENU_TAG m);
|
||||||
set_header(i, "@4gDescrizione @55gSconto"); // descrizione e sconto
|
public:
|
||||||
break;
|
TStampa_sconti() {};
|
||||||
case 'R': // sconti di riga
|
virtual ~TStampa_sconti() {}
|
||||||
set_header(i, "@4gCod. articolo @25gUM @28gSconto"); // codice articolo, unità di misura e sconto
|
};
|
||||||
break;
|
|
||||||
case 'I': // sconti incondizionati
|
|
||||||
set_header(i, "@4gSC @7gZn @10gCPg @15gSconto"); // sconto cliente, zona, condizione di pagamento e sconto
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
set_header(++i, ""); // aggiunge due linee vuote
|
|
||||||
set_header(++i, "");
|
|
||||||
}
|
|
||||||
|
|
||||||
void TStampa_sconti::preprocess_footer() {
|
bool TStampa_sconti::create()
|
||||||
reset_footer();
|
{
|
||||||
int i= 1; // indice di linea
|
bool gotcha= FALSE; // booleano di avvenuta inizializzazione
|
||||||
set_footer(i, ""); // salta una linea
|
_sconti= "*"; // inizializzazione dell'indicatore del tipo di tabella
|
||||||
set_footer(++i, "@125gPag @#"); // l'unica linea del footer contiene il numero di pagina
|
if (argc()>2) _sconti= argv(2); // se c'è, prende il tipo di tabella dalla linea di comando
|
||||||
}
|
else
|
||||||
|
{
|
||||||
void TStampa_sconti::set_page(int file, int) {
|
TMask choose("VE3100"); // istanzia la maschera di scelta del tipo di tabella
|
||||||
if (file== LF_SCONTI) { // se il file in stampa non è il file principale non c'è nulla da fare
|
if (choose.run() == K_ENTER) _sconti= choose.get(F_TIPOSC); // prende il tipo di tabella dalla maschera
|
||||||
TLocalisamfile &sconti= _rel->lfile();
|
}
|
||||||
int i= 0; // indice di riga
|
switch (_sconti[0])
|
||||||
switch (_sconti[0]) {
|
{
|
||||||
case 'D': // sconti documento
|
case 'D': // sconti documento
|
||||||
set_row(++i, "@1g@2s @4g@50s @55g@25s", FLD(LF_SCONTI, "CODCAT"), FLD(LF_SCONTI, "DESCR"), FLD(LF_SCONTI, "SCONTO"));
|
_frm = new TForm_sconti("scontid");
|
||||||
break;
|
gotcha= TRUE;
|
||||||
case 'R': // sconti di riga
|
break;
|
||||||
if (_descriz) {
|
case 'R': // sconti di riga
|
||||||
const TString &catven= sconti.get("CODCAT"); // categoria di vendita
|
_frm = new TForm_sconti("scontir");
|
||||||
if (_catven && ((!_compat) || (catven != _last_catven))) {
|
gotcha= TRUE;
|
||||||
set_row(++i, "@1gCategoria vendite: @20g@50s", FLD(-CVE1, "S0"));
|
break;
|
||||||
_last_catven= catven;
|
case 'I': // sconti incondizionati
|
||||||
}
|
_frm = new TForm_sconti("scontii");
|
||||||
const TString &codart= sconti.get("CODART"); // codice articolo
|
gotcha= TRUE;
|
||||||
if ((!_compat) || (codart != _last_codart)) {
|
break;
|
||||||
set_row(++i, "@1gArticolo: @20g@50s", FLD(LF_ANAMAG, "DESCR"));
|
default: // messaggio di errore se si indica una tabella non valida
|
||||||
_last_codart= codart;
|
error_box("Indicare la tabella sulla linea di comando (D, R o I) oppure selezionarla dalla maschera di partenza");
|
||||||
}
|
|
||||||
const TString &um= sconti.get("UM"); // unità di misura
|
|
||||||
if ((!_compat) || (codart != _last_codart)) {
|
|
||||||
set_row(++i, "@1gUnità di misura: @20g@50s", FLD(-UMS1, "S0"));
|
|
||||||
_last_um= um;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
set_row(++i, "@1g@2s @4g@20s @25g@2s @28g@25s", FLD(LF_SCONTI, "CODCAT"), FLD(LF_SCONTI, "CODART"), FLD(LF_SCONTI, "UM"), FLD(LF_SCONTI, "SCONTO"));
|
|
||||||
break;
|
|
||||||
case 'I': // sconti incondizionati
|
|
||||||
if (_descriz) {
|
|
||||||
const TString &catven= sconti.get("CODCAT"); // categoria di vendita
|
|
||||||
if (_catven && _scokey_catven && ((!_compat) || (catven != _last_catven))) {
|
|
||||||
set_row(++i, "@1gCategoria vendite: @26g@50s", FLD(-CVE1, "S0"));
|
|
||||||
_last_catven= catven;
|
|
||||||
}
|
|
||||||
const TString &sccliente= sconti.get("CODART").sub(0,1); // sconto cliente
|
|
||||||
if (_scokey_scclienti && ((!_compat) || (sccliente != _last_sccliente))) {
|
|
||||||
set_row(++i, "@1gSconto cliente: @26g@50s", FLD(-SCON1, "DESCR"));
|
|
||||||
_last_sccliente= sccliente;
|
|
||||||
}
|
|
||||||
const TString &zona= sconti.get("CODART").sub(2,3); // zona
|
|
||||||
if (_scokey_zone && ((!_compat) || (zona != _last_zona))) {
|
|
||||||
set_row(++i, "@1gZona: @26g@50s", FLD(-ZON1, "S0"));
|
|
||||||
_last_zona= zona;
|
|
||||||
}
|
|
||||||
const TString &condpag= sconti.get("CODART").sub(4,7); // condizione di pagamento
|
|
||||||
if (_scokey_condpag && ((!_compat) || (zona != _last_zona))) {
|
|
||||||
set_row(++i, "@1gCondizioni pagamento: @26g@50s", FLD(-CPG1, "S0"));
|
|
||||||
_last_condpag= condpag;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
set_row(++i, "@1g@2s @4g@2s @7g@2s @10g@4s @15g@25s", FLD(LF_SCONTI, "CODCAT"), FLD(LF_SCONTI, "CODART", 1, 2), FLD(LF_SCONTI, "CODART", 3, 4), FLD(LF_SCONTI, "CODART", 5, 8), FLD(LF_SCONTI, "SCONTO"));
|
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
set_row(++i, ""); // salta una linea
|
|
||||||
}
|
}
|
||||||
|
_anamag = new TLocalisamfile(LF_ANAMAG);
|
||||||
|
_scon = new TLocalisamfile(LF_SCONTI);
|
||||||
|
_cve = new TTable("CVE");
|
||||||
|
_zon = new TTable("%ZON");
|
||||||
|
_cpg = new TTable("%CPG");
|
||||||
|
dispatch_e_menu(BAR_ITEM(1));
|
||||||
|
return (gotcha);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool TStampa_sconti::destroy()
|
||||||
|
{
|
||||||
|
if (_frm) delete _frm;
|
||||||
|
if (_anamag) delete _anamag;
|
||||||
|
if (_scon) delete _scon;
|
||||||
|
if (_cve) delete _cve;
|
||||||
|
if (_cpg) delete _cpg;
|
||||||
|
if (_zon) delete _zon;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TStampa_sconti::menu(MENU_TAG)
|
||||||
|
{
|
||||||
|
bool gotcha= FALSE;
|
||||||
|
TConfig prassid(CONFIG_DITTA, "ve");
|
||||||
|
TMask *mask;
|
||||||
|
switch (_sconti[0])
|
||||||
|
{
|
||||||
|
case 'D': // sconti documento
|
||||||
|
mask= new TMask("ve3100d");
|
||||||
|
gotcha= TRUE;
|
||||||
|
break;
|
||||||
|
case 'R': // sconti di riga
|
||||||
|
mask= new TMask("ve3100r");
|
||||||
|
_catven = prassid.get_bool("GESSCORIGACV");
|
||||||
|
if (!_catven)
|
||||||
|
{
|
||||||
|
KILL(F_R_CODCAT_DA);
|
||||||
|
KILL(F_R_CODCAT_A);
|
||||||
|
_frm->find_field('B',odd_page,1).disable();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
REVIVE(F_R_CODCAT_DA);
|
||||||
|
REVIVE(F_R_CODCAT_A);
|
||||||
|
_frm->find_field('B',odd_page,1).enable();
|
||||||
|
}
|
||||||
|
_frm->compact(TRUE);
|
||||||
|
gotcha= TRUE;
|
||||||
|
break;
|
||||||
|
case 'I': // sconti incondizionati
|
||||||
|
mask= new TMask("ve3100i");
|
||||||
|
short k_id[2][4]= { F_I_CATVEN_DA, F_I_CATVEN_A, F_I_SCCLIENTI_DA, F_I_SCCLIENTI_A, F_I_ZONE_DA, F_I_ZONE_A, F_I_CONDPAG_DA, F_I_CONDPAG_A }; // vettore dei campi da controllare
|
||||||
|
for (int i=0; i<4; i++)
|
||||||
|
{
|
||||||
|
bool enab= prassid.get_bool("SCOKEY", NULL, i+1);
|
||||||
|
switch (i)
|
||||||
|
{
|
||||||
|
case 0: _scokey_catven= enab; break;
|
||||||
|
case 1: _scokey_scclienti= enab; break;
|
||||||
|
case 2: _scokey_zone= enab; break;
|
||||||
|
case 3: _scokey_condpag= enab; break;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
if (enab)
|
||||||
|
{ // se nel file di config. il campo è abilitato...
|
||||||
|
REVIVE(k_id[0][i]); // ...i campi vengono abilitati anche sulla maschera
|
||||||
|
REVIVE(k_id[1][i]);
|
||||||
|
_frm->find_field('B',odd_page,i+1).enable();
|
||||||
|
gotcha= TRUE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
KILL(k_id[0][i]); // se nel file di config. i campi non sono abilitati vengono disabilitati anche sulla maschera
|
||||||
|
KILL(k_id[1][i]);
|
||||||
|
_frm->find_field('B',odd_page,i+1).disable();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!gotcha) error_box("Non ci sono campi chiave abilitati nella configurazione della ditta");
|
||||||
|
else
|
||||||
|
_frm->compact(FALSE);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
CHECK(_frm,"Form pointer is NULL");
|
||||||
|
// Setta ora e per sempre alcuni campi della testata
|
||||||
|
TForm_item& ditta = _frm->find_field('H',odd_page,1);// Nome ditta
|
||||||
|
TForm_item& data = _frm->find_field('H',odd_page,2);// Data stampa
|
||||||
|
TDate td(TODAY);
|
||||||
|
TLocalisamfile ditte(LF_NDITTE);
|
||||||
|
ditte.put(NDT_CODDITTA,get_firm());
|
||||||
|
if (ditte.read()==NOERR) ditta.set(ditte.get(NDT_RAGSOC));
|
||||||
|
data.set(td.string());
|
||||||
|
while (gotcha && (mask->run()== K_ENTER))
|
||||||
|
{ // lancia la maschera, se viene confermata vengono trovati gli estremi del cursore
|
||||||
|
TRectype da(_frm->relation()->lfile().curr()); // prepara il record di inizio regione
|
||||||
|
da.zero();
|
||||||
|
da.put("TIPO", _sconti);
|
||||||
|
TRectype a(da); // prepara il record di fine regione
|
||||||
|
|
||||||
|
if (_sconti=="R")
|
||||||
|
{
|
||||||
|
TString cod_art_to = mask->get(F_R_CODCAT_A);
|
||||||
|
TString cod_art_from = mask->get(F_R_CODCAT_DA);
|
||||||
|
if (!_catven)
|
||||||
|
{
|
||||||
|
_anamag->last();
|
||||||
|
cod_art_to = _anamag->get("CODART");
|
||||||
|
}
|
||||||
|
da.put("CODART", cod_art_from);
|
||||||
|
a.put("CODART", cod_art_to);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if (_sconti=="I")
|
||||||
|
{
|
||||||
|
TString cod_cat_from = mask->get(F_I_CATVEN_DA);
|
||||||
|
TString cod_cat_to = mask->get(F_I_CATVEN_A);
|
||||||
|
TString codart,sc_cl,zon,cpg;
|
||||||
|
da.put("CODCAT",cod_cat_from);
|
||||||
|
if (cod_cat_to.empty())
|
||||||
|
{
|
||||||
|
_cve->last();
|
||||||
|
cod_cat_to = _cve->get("CODTAB");
|
||||||
|
}
|
||||||
|
a.put("CODCAT",cod_cat_to);
|
||||||
|
if (_scokey_scclienti || _scokey_zone || _scokey_condpag)
|
||||||
|
{
|
||||||
|
if (_scokey_scclienti)
|
||||||
|
sc_cl = mask->get(F_I_SCCLIENTI_DA);
|
||||||
|
if (_scokey_zone)
|
||||||
|
sc_cl = mask->get(F_I_ZONE_DA);
|
||||||
|
if (_scokey_condpag)
|
||||||
|
sc_cl = mask->get(F_I_CONDPAG_DA);
|
||||||
|
codart.format("%2s%2s%4s", (const char*)sc_cl, (const char*)zon,(const char*)cpg);
|
||||||
|
da.put("CODART", codart);
|
||||||
|
if (_scokey_scclienti && mask->get(F_I_SCCLIENTI_A).empty())
|
||||||
|
{
|
||||||
|
_scon->put("TIPO","E");
|
||||||
|
if (_scon->read(_isgteq)==NOERR)
|
||||||
|
{
|
||||||
|
if (_scon->prev() == NOERR && _scon->get("TIPO") == "D")
|
||||||
|
sc_cl = _scon->get("CODCAT"); //ultimo sconto documento
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (_scokey_zone && mask->get(F_I_ZONE_A).empty())
|
||||||
|
{
|
||||||
|
_zon->last();
|
||||||
|
zon = _zon->get("CODTAB");
|
||||||
|
} else zon = mask->get(F_I_ZONE_A);
|
||||||
|
if (_scokey_condpag && mask->get(F_I_CONDPAG_A).empty())
|
||||||
|
{
|
||||||
|
_cpg->last();
|
||||||
|
cpg = _cpg->get("CODTAB");
|
||||||
|
} else cpg = mask->get(F_I_CONDPAG_A);
|
||||||
|
codart.format("%2s%2s%4s", (const char*)sc_cl, (const char*)zon,(const char*)cpg);
|
||||||
|
a.put("CODART", codart);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if (_sconti=="D")
|
||||||
|
{
|
||||||
|
da.put("CODCAT", mask->get(F_D_CODCAT_DA));
|
||||||
|
a.put("CODCAT", mask->get(F_D_CODCAT_A));
|
||||||
|
}
|
||||||
|
_frm->cursor()->setregion(da,a);
|
||||||
|
_frm->print();
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
int ve3100(int argc, char **argv) {
|
int ve3100(int argc, char **argv)
|
||||||
|
{
|
||||||
TStampa_sconti a;
|
TStampa_sconti a;
|
||||||
|
|
||||||
a.run(argc, argv, "Stampa sconti");
|
a.run(argc, argv, "Stampa sconti");
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
#include <lffiles.h>
|
#include <lffiles.h>
|
||||||
#include "ve3100d.h"
|
#include "ve3100d.h"
|
||||||
|
|
||||||
PAGE "Stampa sconti documenti " -1 -1 55 7
|
PAGE "Stampa sconti documenti " -1 -1 58 7
|
||||||
|
|
||||||
LISTA F_D_TIPO 1
|
LISTA F_D_TIPO 16
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 100 100 ""
|
PROMPT 100 100 ""
|
||||||
FIELD LF_SCONTI->TIPO
|
FIELD LF_SCONTI->TIPO
|
||||||
@ -11,9 +11,19 @@ BEGIN
|
|||||||
ITEM "D|Sconti documento"
|
ITEM "D|Sconti documento"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 55 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 0 "Da"
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 55 3
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 3 "A"
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_D_CODCAT_DA 2
|
STRING F_D_CODCAT_DA 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Cod. sconto doc. "
|
PROMPT 2 1 "Codice sconto documento "
|
||||||
FLAG "UR"
|
FLAG "UR"
|
||||||
USE LF_SCONTI
|
USE LF_SCONTI
|
||||||
INPUT TIPO F_D_TIPO SELECT
|
INPUT TIPO F_D_TIPO SELECT
|
||||||
@ -24,14 +34,9 @@ BEGIN
|
|||||||
OUTPUT F_D_CODCAT_DA CODCAT
|
OUTPUT F_D_CODCAT_DA CODCAT
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 55 3
|
|
||||||
BEGIN
|
|
||||||
PROMPT 0 0 "Da"
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_D_CODCAT_A 2
|
STRING F_D_CODCAT_A 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 4 "Cod. sconto doc. "
|
PROMPT 2 4 "Codice sconto documento "
|
||||||
FLAG "UR"
|
FLAG "UR"
|
||||||
USE LF_SCONTI
|
USE LF_SCONTI
|
||||||
INPUT TIPO F_D_TIPO SELECT
|
INPUT TIPO F_D_TIPO SELECT
|
||||||
@ -42,14 +47,9 @@ BEGIN
|
|||||||
OUTPUT F_D_CODCAT_A CODCAT
|
OUTPUT F_D_CODCAT_A CODCAT
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 55 3
|
BUTTON DLG_PRINT 9 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 3 "A"
|
PROMPT -12 -1 "~Stampa"
|
||||||
END
|
|
||||||
|
|
||||||
BUTTON DLG_SELECT 9 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT -12 -1 "Selezione"
|
|
||||||
MESSAGE EXIT,K_ENTER
|
MESSAGE EXIT,K_ENTER
|
||||||
END
|
END
|
||||||
|
|
||||||
|
@ -1,15 +1,25 @@
|
|||||||
#include <lffiles.h>
|
#include <lffiles.h>
|
||||||
#include "ve3100i.h"
|
#include "ve3100i.h"
|
||||||
|
|
||||||
PAGE "Stampa sconti incondizionati " -1 -1 55 15
|
PAGE "Stampa sconti incondizionati " -1 -1 58 15
|
||||||
|
|
||||||
LISTA F_I_TIPO 1
|
LISTA F_I_TIPO 21
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 100 100 ""
|
PROMPT 100 100 ""
|
||||||
FLAG "H"
|
FLAG "H"
|
||||||
ITEM "I|Sconti incondizionati"
|
ITEM "I|Sconti incondizionati"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 55 6
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 0 "Da"
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 55 6
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 6 "A"
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_I_CATVEN_DA 2
|
STRING F_I_CATVEN_DA 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Cat. vendite "
|
PROMPT 2 1 "Cat. vendite "
|
||||||
@ -55,11 +65,6 @@ BEGIN
|
|||||||
OUTPUT F_I_CONDPAG_DA CODTAB
|
OUTPUT F_I_CONDPAG_DA CODTAB
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 55 6
|
|
||||||
BEGIN
|
|
||||||
PROMPT 0 0 "Da"
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_I_CATVEN_A 2
|
STRING F_I_CATVEN_A 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 7 "Cat. vendite "
|
PROMPT 2 7 "Cat. vendite "
|
||||||
@ -105,26 +110,9 @@ BEGIN
|
|||||||
OUTPUT F_I_CONDPAG_A CODTAB
|
OUTPUT F_I_CONDPAG_A CODTAB
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 55 6
|
BUTTON DLG_PRINT 9 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 6 "A"
|
PROMPT -12 -1 "~Stampa"
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN F_I_DESCRIZ
|
|
||||||
BEGIN
|
|
||||||
PROMPT 2 12 "Descrizioni"
|
|
||||||
MESSAGE FALSE DISABLE,F_I_COMPAT
|
|
||||||
MESSAGE TRUE ENABLE,F_I_COMPAT
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN F_I_COMPAT
|
|
||||||
BEGIN
|
|
||||||
PROMPT 20 12 "Compatte"
|
|
||||||
END
|
|
||||||
|
|
||||||
BUTTON DLG_SELECT 9 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT -12 -1 "Selezione"
|
|
||||||
MESSAGE EXIT,K_ENTER
|
MESSAGE EXIT,K_ENTER
|
||||||
END
|
END
|
||||||
|
|
||||||
|
@ -1,15 +1,25 @@
|
|||||||
#include <lffiles.h>
|
#include <lffiles.h>
|
||||||
#include "ve3100r.h"
|
#include "ve3100r.h"
|
||||||
|
|
||||||
PAGE "Stampa sconti di riga " -1 -1 55 11
|
PAGE "Stampa sconti di riga " -1 -1 58 10
|
||||||
|
|
||||||
LISTA F_R_TIPO 1
|
LISTA F_R_TIPO 15
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 100 100 ""
|
PROMPT 100 100 ""
|
||||||
FLAG "H"
|
FLAG "H"
|
||||||
ITEM "R|Sconti di riga"
|
ITEM "R|Sconti di riga"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 55 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 0 "Da"
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 55 4
|
||||||
|
BEGIN
|
||||||
|
PROMPT 1 4 "A"
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_R_CODCAT_DA 2
|
STRING F_R_CODCAT_DA 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Cat. vendita "
|
PROMPT 2 1 "Cat. vendita "
|
||||||
@ -32,11 +42,6 @@ BEGIN
|
|||||||
OUTPUT F_R_CODART_DA CODART
|
OUTPUT F_R_CODART_DA CODART
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 55 4
|
|
||||||
BEGIN
|
|
||||||
PROMPT 0 0 "Da"
|
|
||||||
END
|
|
||||||
|
|
||||||
STRING F_R_CODCAT_A 2
|
STRING F_R_CODCAT_A 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 5 "Cat. vendita "
|
PROMPT 2 5 "Cat. vendita "
|
||||||
@ -59,11 +64,7 @@ BEGIN
|
|||||||
OUTPUT F_R_CODART_A CODART
|
OUTPUT F_R_CODART_A CODART
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 55 4
|
/*
|
||||||
BEGIN
|
|
||||||
PROMPT 0 4 "A"
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN F_R_DESCRIZ
|
BOOLEAN F_R_DESCRIZ
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 8 "Descrizioni"
|
PROMPT 2 8 "Descrizioni"
|
||||||
@ -75,10 +76,11 @@ BOOLEAN F_R_COMPAT
|
|||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 20 8 "Compatte"
|
PROMPT 20 8 "Compatte"
|
||||||
END
|
END
|
||||||
|
*/
|
||||||
|
|
||||||
BUTTON DLG_SELECT 9 2
|
BUTTON DLG_PRINT 9 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -12 -1 "Selezione"
|
PROMPT -12 -1 "~Stampa"
|
||||||
MESSAGE EXIT,K_ENTER
|
MESSAGE EXIT,K_ENTER
|
||||||
END
|
END
|
||||||
|
|
||||||
|
@ -12,8 +12,8 @@
|
|||||||
|
|
||||||
#define RCONDV_APP "ve2 -2"
|
#define RCONDV_APP "ve2 -2"
|
||||||
|
|
||||||
#define DESTROY(x) { mask.field(x).reset_key(1); mask.hide(x); }
|
#define DESTROY(x) { ((TEditable_field &)mask.field(x)).reset_key(1); mask.hide(x); }
|
||||||
#define KILL(x) { mask.field(x).reset_key(1); mask.disable(x); }
|
#define KILL(x) { ((TEditable_field &)mask.field(x)).reset_key(1); mask.disable(x); }
|
||||||
|
|
||||||
#define CVE 201
|
#define CVE 201
|
||||||
#define VAL 202
|
#define VAL 202
|
||||||
|
@ -3,6 +3,16 @@
|
|||||||
|
|
||||||
PAGE "Stampa condizioni di vendita" -1 -1 64 15
|
PAGE "Stampa condizioni di vendita" -1 -1 64 15
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 63 10 // groupbox attorno agli elementi di selezione della chiave
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 0 ""
|
||||||
|
END
|
||||||
|
|
||||||
|
GROUPBOX DLG_NULL 63 5 // groupbox attorno agli ultimi tre checkbox
|
||||||
|
BEGIN
|
||||||
|
PROMPT 0 9 ""
|
||||||
|
END
|
||||||
|
|
||||||
STRING F_TIPO 1 // tipo di archivio
|
STRING F_TIPO 1 // tipo di archivio
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 100 100 ""
|
PROMPT 100 100 ""
|
||||||
@ -20,11 +30,11 @@ BEGIN
|
|||||||
OUTPUT F_L_CATVEN CODTAB
|
OUTPUT F_L_CATVEN CODTAB
|
||||||
END
|
END
|
||||||
|
|
||||||
LIST F_C_TIPOCF 7 // tipo cliente/fornitore, solo contratti
|
LIST F_C_TIPOCF 9 // tipo cliente/fornitore, solo contratti
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 1 "Tipo "
|
PROMPT 2 1 "Tipo "
|
||||||
ITEM "C|Cliente"
|
ITEM "C|Cliente"
|
||||||
ITEM "F|Fornit."
|
ITEM "F|Fornitore"
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING F_C_CODCF 6 // codice cliente/fornitore, solo contratti
|
STRING F_C_CODCF 6 // codice cliente/fornitore, solo contratti
|
||||||
@ -88,7 +98,7 @@ BEGIN
|
|||||||
OUTPUT F_O_COD COD
|
OUTPUT F_O_COD COD
|
||||||
END
|
END
|
||||||
|
|
||||||
LIST F_TIPORIGHE 8 // listbox per tipo di selezione righe
|
LIST F_TIPORIGHE 9 // listbox per tipo di selezione righe
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 5 "Righe "
|
PROMPT 2 5 "Righe "
|
||||||
ITEM "A|Articolo " MESSAGE CLEAR,F_DARIGA_A|ENABLE,F_DARIGA_A|SHOW,F_DARIGA_A|CLEAR,F_ARIGA_A|ENABLE,F_ARIGA_A|SHOW,F_ARIGA_A|HIDE,F_DARIGA_G|HIDE,F_DARIGA_R|HIDE,F_ARIGA_G|HIDE,F_ARIGA_R
|
ITEM "A|Articolo " MESSAGE CLEAR,F_DARIGA_A|ENABLE,F_DARIGA_A|SHOW,F_DARIGA_A|CLEAR,F_ARIGA_A|ENABLE,F_ARIGA_A|SHOW,F_ARIGA_A|HIDE,F_DARIGA_G|HIDE,F_DARIGA_R|HIDE,F_ARIGA_G|HIDE,F_ARIGA_R
|
||||||
@ -167,11 +177,6 @@ BEGIN
|
|||||||
MESSAGE COPY,F_ARIGA_A
|
MESSAGE COPY,F_ARIGA_A
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 63 10 // groupbox attorno agli elementi di selezione della chiave
|
|
||||||
BEGIN
|
|
||||||
PROMPT 0 0 ""
|
|
||||||
END
|
|
||||||
|
|
||||||
BOOLEAN F_TESTACOMP // checkbox per stampa completa della testata
|
BOOLEAN F_TESTACOMP // checkbox per stampa completa della testata
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 2 10 "Testata completa"
|
PROMPT 2 10 "Testata completa"
|
||||||
@ -187,14 +192,9 @@ BEGIN
|
|||||||
PROMPT 2 12 "Listino in valuta"
|
PROMPT 2 12 "Listino in valuta"
|
||||||
END
|
END
|
||||||
|
|
||||||
GROUPBOX DLG_NULL 63 5 // groupbox attorno agli ultimi tre checkbox
|
BUTTON DLG_PRINT 9 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 0 9 ""
|
PROMPT -12 -1 "~Stampa"
|
||||||
END
|
|
||||||
|
|
||||||
BUTTON DLG_SELECT 9 2
|
|
||||||
BEGIN
|
|
||||||
PROMPT -12 -1 "Selezione"
|
|
||||||
MESSAGE EXIT,K_ENTER
|
MESSAGE EXIT,K_ENTER
|
||||||
END
|
END
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user