Implementata Gestione Vendite

git-svn-id: svn://10.65.10.50/trunk@189 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
angelo 1994-09-08 13:45:55 +00:00
parent 94bfe36dfa
commit fcb4332ba2
9 changed files with 1256 additions and 674 deletions

View File

@ -8,58 +8,83 @@
#include <anafis.h> #include <anafis.h>
#include <validate.h> #include <validate.h>
#include <defmask.h> #include <defmask.h>
#include <msksheet.h>
#include <config.h> #include <config.h>
#include "cg0.h" #include "cg0.h"
#include "cg0200.h" #include "cg0200.h"
#include "cg0201.h"
bool gest_vend()
{
TConfig c(CONFIG_DITTA,"cg");
return (c.get("GesVen") == "X");
}
class CG0200_application : public TRelation_application class CG0200_application : public TRelation_application
{ {
TMask* _msk; TMask* _msk;
TRelation *_rel; //TRelation *_rel;
TLocalisamfile* _saldi; TClifoVI *_rel;
TLocalisamfile* _anag; TLocalisamfile* _saldi;
TLocalisamfile* _fis; TLocalisamfile* _anag;
TLocalisamfile* _comuni; TLocalisamfile* _fis;
TLocalisamfile* _pcon; TLocalisamfile* _comuni;
TLocalisamfile* _pcon;
bool user_create(); bool user_create();
bool user_destroy(); bool user_destroy();
virtual TMask* get_mask(int mode) {return _msk;} virtual TMask* get_mask(int mode) {return _msk;}
virtual bool changing_mask(int mode) {return FALSE;} virtual bool changing_mask(int mode) {return FALSE;}
virtual bool protected_record(TRectype &rec); virtual bool protected_record(TRectype &rec);
virtual const char* get_next_key(); virtual const char* get_next_key();
virtual void init_query_mode(TMask& m); virtual void init_query_mode(TMask& m);
virtual void init_insert_mode(TMask& m);
public: ////////////
virtual TRelation* get_relation() const {return _rel;} static bool indsp_notify(int r, KEY key);
CG0200_application() {} static bool indsp_handler(TMask_field& f, KEY key) { return TRUE; }
virtual int write(const TMask& m);
virtual int rewrite(const TMask& m);
virtual int read(TMask& m);
TSheet_field& indsp_sheet() const;
void indsp_pack();
void common_f(const TMask& m);
///////////
public:
virtual TRelation* get_relation() const {return (TRelation*)_rel;}
CG0200_application() {}
}; };
inline CG0200_application& app()
{return (CG0200_application&)*MainApp();}
bool CG0200_application::protected_record(TRectype &rec) bool CG0200_application::protected_record(TRectype &rec)
{ {
TMask* m = get_mask(MODE_MOD); TMask* m = get_mask(MODE_MOD);
const int gruppo = atoi(m->get(F_GRUPPO)); const int gruppo = atoi(m->get(F_GRUPPO));
const int conto = atoi(m->get(F_CONTO)); const int conto = atoi(m->get(F_CONTO));
const long sottoc = atol(m->get(F_CODCF)); const long sottoc = atol(m->get(F_CODCF));
_saldi->zero(); _saldi->zero();
_saldi->put(PCN_GRUPPO, gruppo); _saldi->put(PCN_GRUPPO, gruppo);
_saldi->put(PCN_CONTO, conto); _saldi->put(PCN_CONTO, conto);
_saldi->put(PCN_SOTTOCONTO, sottoc); _saldi->put(PCN_SOTTOCONTO, sottoc);
_saldi->read(); _saldi->read();
return _saldi->good() && return _saldi->good() &&
gruppo ==_saldi->get_int(PCN_GRUPPO) && gruppo ==_saldi->get_int(PCN_GRUPPO) &&
conto ==_saldi->get_int(PCN_CONTO) && conto ==_saldi->get_int(PCN_CONTO) &&
sottoc ==_saldi->get_long(PCN_SOTTOCONTO); sottoc ==_saldi->get_long(PCN_SOTTOCONTO);
} }
const char* CG0200_application::get_next_key() const char* CG0200_application::get_next_key()
{ {
TLocalisamfile& clifo = *_rel->lfile() ; TLocalisamfile& clifo = *_rel->lfile() ;
long codcf = 1L ; long codcf = 1L ;
const TString tipo(_msk->get(F_TIPOCF)) ; const TString tipo(_msk->get(F_TIPOCF)) ;
if (!clifo.empty()) if (!clifo.empty())
@ -87,95 +112,95 @@ const char* CG0200_application::get_next_key()
HIDDEN bool no_dup_fis(TMask_field& f, KEY key) HIDDEN bool no_dup_fis(TMask_field& f, KEY key)
{ {
TMask& msk = f.mask() ; TMask& msk = f.mask() ;
if (msk.query_mode() || !f.to_check(key)) return TRUE; if (msk.query_mode() || !f.to_check(key)) return TRUE;
CG0200_application* app = (CG0200_application*) MainApp(); CG0200_application* app = (CG0200_application*) MainApp();
TLocalisamfile& clifo = *app->get_relation()->lfile(LF_CLIFO) ; TLocalisamfile& clifo = *app->get_relation()->lfile(LF_CLIFO) ;
if ( f.get().not_empty() && !clifo.empty() ) if ( f.get().not_empty() && !clifo.empty() )
{ {
clifo.zero() ; clifo.zero() ;
const char t1 = msk.get(F_TIPOCF)[0] ; const char t1 = msk.get(F_TIPOCF)[0] ;
clifo.put(CLI_TIPOCF, t1); clifo.put(CLI_TIPOCF, t1);
clifo.put(CLI_COFI, f.get()); clifo.put(CLI_COFI, f.get());
clifo.setkey(4) ; clifo.setkey(4) ;
clifo.read() ; clifo.read() ;
clifo.setkey(1) ; clifo.setkey(1) ;
const char t = clifo.get_char(CLI_TIPOCF); const char t = clifo.get_char(CLI_TIPOCF);
const TFixed_string s = clifo.get(CLI_CODCF); const TFixed_string s = clifo.get(CLI_CODCF);
const TFixed_string s1(msk.get(F_CODCF)); const TFixed_string s1(msk.get(F_CODCF));
if (clifo.good() && (t1 != t || s1 != s)) if (clifo.good() && (t1 != t || s1 != s))
{ {
f.yesno_box("Codice fiscale gia' utilizzato per il codice : %c/%s", f.yesno_box("Codice fiscale gia' utilizzato per il codice : %c/%s",
t, (const char*) s); t, (const char*) s);
return FALSE; return FALSE;
} }
} }
return TRUE ; return TRUE ;
} }
HIDDEN bool no_dup_iva(TMask_field& f, KEY key) HIDDEN bool no_dup_iva(TMask_field& f, KEY key)
{ {
TMask& msk = f.mask() ; TMask& msk = f.mask() ;
if (msk.query_mode() || !f.to_check(key)) return TRUE; if (msk.query_mode() || !f.to_check(key)) return TRUE;
CG0200_application* app = (CG0200_application*) MainApp(); CG0200_application* app = (CG0200_application*) MainApp();
TLocalisamfile& clifo = *app->get_relation()->lfile(LF_CLIFO) ; TLocalisamfile& clifo = *app->get_relation()->lfile(LF_CLIFO) ;
if ( f.get().not_empty() && !clifo.empty() ) if ( f.get().not_empty() && !clifo.empty() )
{ {
clifo.zero() ; clifo.zero() ;
const char t1 = msk.get(F_TIPOCF)[0]; const char t1 = msk.get(F_TIPOCF)[0];
clifo.put(CLI_TIPOCF, t1) ; clifo.put(CLI_TIPOCF, t1) ;
clifo.put(CLI_STATOPAIV, msk.get(F_STATOPAIV)) ; clifo.put(CLI_STATOPAIV, msk.get(F_STATOPAIV)) ;
clifo.put(CLI_PAIV, f.get()) ; clifo.put(CLI_PAIV, f.get()) ;
clifo.setkey(5) ; clifo.setkey(5) ;
clifo.read() ; clifo.read() ;
clifo.setkey(1) ; clifo.setkey(1) ;
const char t = clifo.get_char(CLI_TIPOCF); const char t = clifo.get_char(CLI_TIPOCF);
const TFixed_string s = clifo.get(CLI_CODCF); const TFixed_string s = clifo.get(CLI_CODCF);
const TFixed_string s1(msk.get(F_CODCF)); const TFixed_string s1(msk.get(F_CODCF));
if (clifo.good() && (t1 != t || s1 != s)) if (clifo.good() && (t1 != t || s1 != s))
{ {
f.error_box("Partita iva gia' definita per il codice : %c/%s", f.error_box("Partita iva gia' definita per il codice : %c/%s",
t, (const char*) s); t, (const char*) s);
return FALSE ; return FALSE ;
} }
} }
return TRUE ; return TRUE ;
} }
HIDDEN bool autoexit_handler(TMask_field& f, KEY key) HIDDEN bool autoexit_handler(TMask_field& f, KEY key)
{ {
if (f.mask().query_mode()) if (f.mask().query_mode())
{ {
if (key == K_TAB && f.focusdirty()) if (key == K_TAB && f.focusdirty())
{ {
TArray parms; TArray parms;
parms.add((TString)format("%d", f.dlg())); parms.add((TString)format("%d", f.dlg()));
::validate(AUTOEXIT_FUNC, (TEdit_field&) f, key, parms); ::validate(AUTOEXIT_FUNC, (TEdit_field&) f, key, parms);
} }
} }
else else
if (f.to_check(key) && f.mask().get(F_ALLEG) != "4") if (f.to_check(key) && f.mask().get(F_ALLEG) != "4")
{ {
if (f.dlg() == F_COFI) return no_dup_fis(f, key); if (f.dlg() == F_COFI) return no_dup_fis(f, key);
else return no_dup_iva(f, key); else return no_dup_iva(f, key);
} }
return TRUE; return TRUE;
} }
HIDDEN bool lbcn = FALSE; HIDDEN bool lbcn = FALSE;
HIDDEN bool tipo_handler(TMask_field& f, KEY key) HIDDEN bool tipo_handler(TMask_field& f, KEY key)
{ {
TMask& m = f.mask(); TMask& m = f.mask();
@ -186,58 +211,58 @@ HIDDEN bool tipo_handler(TMask_field& f, KEY key)
} }
HIDDEN bool percip_handler(TMask_field& f, KEY key) HIDDEN bool percip_handler(TMask_field& f, KEY key)
{ {
TMask& m = f.mask(); TMask& m = f.mask();
if (f.to_check(key) && m.get(F_CODANAGPER).not_empty()) if (f.to_check(key) && m.get(F_CODANAGPER).not_empty())
{ {
TLocalisamfile anag(LF_ANAG); TLocalisamfile anag(LF_ANAG);
TString c(m.get(F_COFI)), p(m.get(F_PAIV)); TString c(m.get(F_COFI)), p(m.get(F_PAIV));
if ((c.not_empty() && c != anag.get(ANA_COFI)) || if ((c.not_empty() && c != anag.get(ANA_COFI)) ||
(p.not_empty() && p != anag.get(ANA_PAIV))) return error_box("Percipiente non corretto"); (p.not_empty() && p != anag.get(ANA_PAIV))) return error_box("Percipiente non corretto");
TString r(anag.get(ANA_RAGSOC)); TString r(anag.get(ANA_RAGSOC));
if (m.get(F_RAGSOC).empty() || if (m.get(F_RAGSOC).empty() ||
(key == K_TAB && yesno_box("Ragione sociale differente correggo in %s", (const char*) r))) (key == K_TAB && yesno_box("Ragione sociale differente correggo in %s", (const char*) r)))
m.set(F_RAGSOC, r, TRUE); m.set(F_RAGSOC, r, TRUE);
if (m.get(F_INDCF).empty()) m.set(F_INDCF, anag.get(ANA_INDRES)); if (m.get(F_INDCF).empty()) m.set(F_INDCF, anag.get(ANA_INDRES));
if (m.get(F_CIVCF).empty()) m.set(F_CIVCF, anag.get(ANA_CIVRES)); if (m.get(F_CIVCF).empty()) m.set(F_CIVCF, anag.get(ANA_CIVRES));
if (m.get(F_CAPCF).empty()) m.set(F_CAPCF, anag.get(ANA_CAPRES)); if (m.get(F_CAPCF).empty()) m.set(F_CAPCF, anag.get(ANA_CAPRES));
if (m.get(F_COMCF).empty()) if (m.get(F_COMCF).empty())
{ {
m.set(F_STATOCF, anag.get(ANA_STATORES), TRUE); m.set(F_STATOCF, anag.get(ANA_STATORES), TRUE);
m.set(F_COMCF, anag.get(ANA_COMRES), TRUE); m.set(F_COMCF, anag.get(ANA_COMRES), TRUE);
} }
if (c.empty()) m.set(F_COFI, anag.get(ANA_COFI)); if (c.empty()) m.set(F_COFI, anag.get(ANA_COFI));
if (p.empty()) m.set(F_PAIV, anag.get(ANA_PAIV)); if (p.empty()) m.set(F_PAIV, anag.get(ANA_PAIV));
if (m.get(F_TIPOAPER) == "F") if (m.get(F_TIPOAPER) == "F")
{ {
m.send_key(K_SHIFT + K_CTRL + (lbcn ? 's' : 'h'), -5); m.send_key(K_SHIFT + K_CTRL + (lbcn ? 's' : 'h'), -5);
if (lbcn) if (lbcn)
{ {
TLocalisamfile fis(LF_ANAGFIS); TLocalisamfile fis(LF_ANAGFIS);
fis.zero(); fis.zero();
fis.put(ANF_CODANAGR, anag.get(ANA_CODANAGR)); fis.put(ANF_CODANAGR, anag.get(ANA_CODANAGR));
fis.read(); fis.read();
if (fis.good()) if (fis.good())
{ {
if (m.get(F_DATANASC).empty()) m.set(F_DATANASC, fis.get(ANF_DATANASC)); if (m.get(F_DATANASC).empty()) m.set(F_DATANASC, fis.get(ANF_DATANASC));
if (m.get(F_COMNASC).empty()) if (m.get(F_COMNASC).empty())
{ {
m.set(F_STATONASC, fis.get(ANF_STATONASC)); m.set(F_STATONASC, fis.get(ANF_STATONASC));
m.set(F_COMNASC, fis.get(ANF_COMNASC)); m.set(F_COMNASC, fis.get(ANF_COMNASC));
} }
} }
} }
} }
} }
return TRUE; return TRUE;
} }
HIDDEN bool alleg_handler(TMask_field& f, KEY key) HIDDEN bool alleg_handler(TMask_field& f, KEY key)
{ {
@ -305,37 +330,195 @@ HIDDEN bool codalleg_handler(TMask_field& f, KEY key)
return TRUE; return TRUE;
} }
void CG0200_application::init_insert_mode(TMask& m)
{
if (!gest_vend())
{
for (int j=3; j<8;j++)
m.disable_page(j);
for (int i=F_CODINDDOC; i<= F_SHEET_G_VEN; i++)
m.disable(i);
}
else
{
for (int j=3; j<8;j++)
m.enable_page(j);
for (int i=F_CODINDDOC; i<= F_SHEET_G_VEN; i++)
m.enable(i);
}
}
void CG0200_application::init_query_mode(TMask& m) void CG0200_application::init_query_mode(TMask& m)
{ {
TConfig conf(CONFIG_DITTA, "cg"); TConfig conf(CONFIG_DITTA, "cg");
lbcn = (conf.get("GsLbCn") == "X"); lbcn = (conf.get("GsLbCn") == "X");
m.send_key(K_SHIFT + K_CTRL + (lbcn ? 's' : 'h'), -5); m.send_key(K_SHIFT + K_CTRL + (lbcn ? 's' : 'h'), -5);
// Se non e' abilitata la gestione delle vendite disabilita le
// maschere dalla 4 in poi
if (!gest_vend())
{
for (int j=3; j<8;j++)
m.disable_page(j);
for (int i=F_CODINDDOC; i<= F_SHEET_G_VEN; i++)
m.disable(i);
}
else
{
for (int j=3; j<8;j++)
m.enable_page(j);
for (int i=F_CODINDDOC; i<= F_SHEET_G_VEN; i++)
m.enable(i);
}
}
int CG0200_application::read(TMask& m)
{
m.autoload(_rel);
indsp_sheet().reset();
TToken_string riga(240);
for (int i=0; i< _rel->indirizzi_items();i++)
{
TRectype& rec=_rel->indirizzo(i);
riga.cut(0);
riga.add(rec.get("CODIND"));
riga.add(rec.get("RAGSOC"));
riga.add(rec.get("INDIR"));
riga.add(rec.get("CIV"));
riga.add(rec.get("LOCALITA"));
riga.add(rec.get("CAP"));
riga.add(rec.get("STATO"));
riga.add(rec.get("COM"));
riga.add(rec.get("PTEL"));
riga.add(rec.get("TEL"));
riga.add(rec.get("PFAX"));
riga.add(rec.get("FAX"));
riga.add(rec.get("IVARID"));
indsp_sheet().row(i)=riga;
}
return _rel->status();
}
int CG0200_application::rewrite(const TMask& m)
{
common_f(m);
return _rel->rewrite(TRUE);
}
int CG0200_application::write(const TMask& m)
{
common_f(m);
return _rel->write(TRUE);
}
TSheet_field& CG0200_application::indsp_sheet() const
{
TSheet_field& o_sheet=(TSheet_field&) _msk->field(F_SHEET_G_VEN);
return o_sheet;
}
void CG0200_application::indsp_pack()
{
TArray& rows = indsp_sheet().rows_array();
int nr=rows.items();
for (int i=0; i<nr; i++)
{
TToken_string& riga=(TToken_string&)rows[i];
if (riga.empty_items())
rows.destroy(i,FALSE);
}
rows.pack();
}
void CG0200_application::common_f(const TMask& m)
{
char tipocf = m.get(F_TIPOCF)[0];
long codcf = m.get_long(F_CODCF);
_rel->lfile()->zero();
m.autosave(_rel);
_rel->destroy_rows();
indsp_pack();
TArray& rows=indsp_sheet().rows_array();
int n_items = rows.items();
for (int i=0; i<n_items;i++)
{
TToken_string& row=(TToken_string&)rows[i];
TRectype& rec=_rel->indirizzo(i);
rec.zero();
rec.put("TIPOCF",tipocf);
rec.put("CODCF",codcf);
rec.put("CODIND",row.get_long());
rec.put("RAGSOC",row.get());
rec.put("INDIR",row.get());
rec.put("CIV",row.get());
rec.put("LOCALITA",row.get());
rec.put("CAP",row.get());
rec.put("STATO",atoi(row.get()));
rec.put("COM",row.get());
rec.put("PTEL",row.get());
rec.put("TEL",row.get());
rec.put("PFAX",row.get());
rec.put("FAX",row.get());
rec.put("IVARID",row.get());
}
}
bool CG0200_application::indsp_notify(int r, KEY key)
{
TSheet_field& indsp=app().indsp_sheet();
switch (key)
{
case K_DEL:
// Request to delete the row #r
// I need an empty record; leave only TIPOCF CODCF & CODIND
// so it returns FALSE because I don't want it to remove this row
// see cg0200b.uml
return FALSE;
break;
case K_SPACE: //request to modify row #r
// I hope it's always something like K_SPACE (Request to modify)
// Disable field # 101 (CODIND) update # of row
TMask& m = indsp.sheet_mask();
if (m.get_int(101)==0) // Is it a new row ?
m.set(101,(long)indsp.items());
m.disable(101);
break;
case K_INS: // request to add the row #r
if (indsp.items() == 999)
{
error_box("Raggiunto il numero massimo degli indirizzi per questo C/F");
return FALSE; // Refuse Permission
}
break;
default:
break;
}
return TRUE;
} }
bool CG0200_application::user_create() // initvar e arrmask bool CG0200_application::user_create() // initvar e arrmask
{ {
const bool ftaut = has_module(FTAUT); const bool ftaut = has_module(FTAUT);
const bool spaut = has_module(SPAUT); const bool spaut = has_module(SPAUT);
const bool anyaut = spaut || ftaut; const bool anyaut = spaut || ftaut;
_rel = new TClifoVI;
_rel = new TRelation(LF_CLIFO);
_saldi = new TLocalisamfile(LF_SALDI); _saldi = new TLocalisamfile(LF_SALDI);
_anag = new TLocalisamfile(LF_ANAG); _anag = new TLocalisamfile(LF_ANAG);
_fis = new TLocalisamfile(LF_ANAGFIS); _fis = new TLocalisamfile(LF_ANAGFIS);
_pcon = new TLocalisamfile(LF_PCON); _pcon = new TLocalisamfile(LF_PCON);
_comuni = new TLocalisamfile(LF_COMUNI); _comuni = new TLocalisamfile(LF_COMUNI);
_msk = new TMask("cg0200a") ; _msk = new TMask("cg0200a") ;
_msk->enable(F_SCONTO,ftaut);
_msk->enable(F_CODVAL,ftaut); _msk->enable(F_CODVAL,ftaut);
_msk->enable(F_RAGGRB,ftaut);
_msk->enable(F_RAGGFT,ftaut);
_msk->enable(F_CODVETT1,ftaut); _msk->enable(F_CODVETT1,ftaut);
_msk->enable(F_CODVETT2,ftaut); _msk->enable(F_CODVETT2,ftaut);
_msk->enable(F_CODVETT3,ftaut); _msk->enable(F_CODVETT3,ftaut);
_msk->enable(F_CODCFFATT,ftaut);
_msk->enable(F_DESTIN,ftaut);
_msk->enable(F_FIDO,spaut); _msk->enable(F_FIDO,spaut);
_msk->enable(F_CODABI, anyaut); _msk->enable(F_CODABI, anyaut);
_msk->enable(F_CODBAN, anyaut); _msk->enable(F_CODBAN, anyaut);
@ -348,6 +531,11 @@ bool CG0200_application::user_create() // initvar e arrmask
_msk->set_handler(F_ALLEG, alleg_handler); _msk->set_handler(F_ALLEG, alleg_handler);
_msk->set_handler(F_CODALLEG, codalleg_handler); _msk->set_handler(F_CODALLEG, codalleg_handler);
_msk->set_handler(F_SHEET_G_VEN, indsp_handler);
TSheet_field& ind = (TSheet_field&) _msk->field(F_SHEET_G_VEN);
ind.set_notify(indsp_notify);
_saldi->setkey(2); _saldi->setkey(2);
return TRUE; return TRUE;
} }

View File

@ -1,15 +1,14 @@
#ifndef __CG0200_H #ifndef __CG0200_H
#define __CG0200_H #define __CG0200_H
//#define PZ_COMUNI 0 //#define PZ_COMUNI 0
// posizione file comuni in _arrfiles // posizione file comuni in _arrfiles
#define TCLI "C" #define TCLI "C"
#define TFOR "F" #define TFOR "F"
#define F_TIPOCF 101 #define F_TIPOCF 101
#define F_CODCF 102 #define F_CODCF 102
#define F_RAGSOC 103 #define F_RAGSOC 103
@ -18,15 +17,15 @@
#define F_STATOCF 106 #define F_STATOCF 106
#define F_COMCF 107 #define F_COMCF 107
#define F_CAPCF 108 #define F_CAPCF 108
#define F_COFI 109 #define F_COFI 109
#define F_STATOPAIV 110 #define F_STATOPAIV 110
#define F_PAIV 111 #define F_PAIV 111
#define F_TIPOPERS 112 #define F_TIPOPERS 112
#define F_ALLEG 113 #define F_ALLEG 113
#define F_GRUPPO 114 #define F_GRUPPO 114
#define F_CONTO 115 #define F_CONTO 115
#define F_GRUPPORIC 116 #define F_GRUPPORIC 116
#define F_CONTORIC 117 #define F_CONTORIC 117
#define F_SOTTOCRIC 118 #define F_SOTTOCRIC 118
#define F_TIPOAPER 119 #define F_TIPOAPER 119
#define F_CODANAGPER 120 #define F_CODANAGPER 120
@ -44,23 +43,86 @@
#define F_RAGSOC1 132 #define F_RAGSOC1 132
#define F_CODABI 133 #define F_CODABI 133
#define F_CODBAN 134 #define F_CODBAN 134
#define F_SCONTO 135
#define F_CODVAL 136 #define F_CODVAL 136
#define F_RAGGRB 137
#define F_RAGGFT 138
#define F_FIDO 139 #define F_FIDO 139
#define F_CODVETT1 140 #define F_LOCALITACF 144
#define F_CODVETT2 141
#define F_CODVETT3 142
#define F_CODCFFATT 143
#define F_DESTIN 144
#define F_CODAG 145 #define F_CODAG 145
#define F_SOSPESO 146 #define F_SOSPESO 146
#define F_CODALLEG 148 #define F_CODALLEG 148
#define F_OCCASIONALE 149 #define F_OCCASIONALE 149
#define F_DENCOMCF 150 #define F_DENCOMCF 150
#define F_PROVCF 152 #define F_PROVCF 152
#define DLG_RIC 200 #define F_RICALT 151
#define DLG_CST 201 #define F_PTEL2 153
#endif // __CG0200_H #define F_TEL2 154
#define F_PTEL3 155
#define F_TEL3 156
#define F_CODLIN 157
#define F_TIPOCFVEN 158
#define F_CODCFVEN 159
#define F_CODINDDOC 160
#define F_CODNOTE 161
#define F_CODLEG 162
#define F_CODCATC 163
#define F_CODZONA 164
#define F_PROVV 165
#define F_LIQPAG 166
#define F_CODPRCF 167
#define F_CODINDSP 168
#define F_CODPORTO 169
#define F_RAGGDOC 170
#define F_NCOPIE 171
#define F_CODCFASS 172
#define F_ASSFIS 173
#define F_FATTSOSP 174
#define F_VSNRPROT 175
#define F_VSDATAREG 176
#define F_NSNRPROT 177
#define F_NSDATAREG 178
#define F_ADDBNS1500 179
#define F_CATFIN 180
#define F_CODABIPR 181
#define F_CODBANPR 182
#define F_CODINDEFF 183
#define F_EMEFFRICH 184
#define F_CODNOTESP1 185
#define F_CODNOTESP2 186
#define F_CODSPMEZZO 187
#define F_IMPMINEFF 188
#define F_NONACCEFF 189
#define F_NONSCADEFF 190
#define F_ADDBOLLIRB 191
#define F_ADDBOLLITR 192
#define F_ADDSPINC 193
#define F_IVARID 194
#define F_GESTCONTR 195
#define F_CATVEN 196
#define F_CODLIST 197
#define F_CODSCINC 198
#define F_SCONTOCL 199
#define F_CODMAG 200
#define F_CODSP1 201
#define F_CODSP2 202
#define F_CODSP3 203
#define F_CODSP4 204
#define F_PROFSOLL 205
#define F_MAXSOLL 206
#define F_DATAESC 207
#define F_DATASOLL 208
#define F_SCONTOR 209
#define F_TITOLO 210
#define F_RAGGOR 211
#define F_MINORD 212
#define F_MAXORD 213
#define F_PREVORD 214
#define F_TIPOEVORD 215
#define F_SHEET_G_VEN 216
#define F_CODVETT1 217
#define F_CODVETT2 218
#define F_CODVETT3 219
#define DLG_RIC 300
#define DLG_CST 301
#endif // __CG0200_H

138
cg/cg0200b.uml Executable file
View File

@ -0,0 +1,138 @@
#include "cg0200.h"
PAGE "" -1 -1 74 16
NUMBER 101 3
BEGIN
PROMPT 1 1 "Codice "
END
STRING 102 50
BEGIN
PROMPT 1 2 "Rag. soc. "
HELP "Inserire la ragione sociale"
GROUP 1
END
STRING 103 35
BEGIN
PROMPT 1 4 "Indirizzo "
HELP "Inserire l'indirizzo"
GROUP 1
END
STRING 104 10
BEGIN
PROMPT 54 4 "N. "
HELP "Inserire il numero civico"
GROUP 1
END
STRING 105 35
BEGIN
PROMPT 1 5 "Localita "
HELP "Inserire la localita"
GROUP 1
END
STRING 106 5
BEGIN
PROMPT 54 5 "CAP "
HELP "Inserire il Codice di Avviamento Postale"
GROUP 1
END
NUMBER 107 3
BEGIN
PROMPT 1 6 "Stato "
FLAGS "RZ"
USE %STA
INPUT CODTAB 107
DISPLAY "Codice" CODTAB
DISPLAY "Stato@50" S0
OUTPUT 107 CODTAB
CHECKTYPE NORMAL
WARNING "Stato assente"
HELP "Inserire il codice dello stato"
GROUP 1
END
STRING 108 4
BEGIN
PROMPT 54 6 "Comune "
FLAGS "U"
USE LF_COMUNI
INPUT STATO 107
INPUT COM 108
DISPLAY "Stato" STATO
DISPLAY "Codice" COM
DISPLAY "Comune@50" DENCOM
OUTPUT 107 STATO
OUTPUT 108 COM
OUTPUT 106 CAPCOM
CHECKTYPE NORMAL
WARNING "Comune assente"
ADD MASK ba4100a
HELP "Inserire il codice del comune"
GROUP 1
END
GROUPBOX DLG_NULL 72 4
BEGIN
PROMPT 1 8 "Numeri Telefonici"
END
STRING 109 10
BEGIN
PROMPT 2 9 "Telefono "
HELP "Inserire il prefisso ed il numero di telefono"
GROUP 1
END
STRING 110 30
BEGIN
PROMPT 40 9 ""
GROUP 1
END
STRING 111 10
BEGIN
PROMPT 2 10 "Fax "
HELP "Inserire il prefisso del numero di fax"
GROUP 1
END
STRING 112 30
BEGIN
PROMPT 40 10 ""
GROUP 1
END
BOOLEAN 113
BEGIN
PROMPT 2 13 "Riduzione IVA"
HELP "Flag per la riduzione IVA"
GROUP 1
END
BUTTON DLG_OK 9 2
BEGIN
PROMPT -13 -1 ""
END
BUTTON DLG_CANCEL 9 2
BEGIN
PROMPT -23 -1 ""
END
BUTTON DLG_NULL 9 2
BEGIN
PROMPT -33 -1 "Elimina"
MESSAGE RESET,1@
MESSAGE EXIT,K_ENTER
END
ENDPAGE
ENDMASK

147
cg/cg0201.cpp Executable file
View File

@ -0,0 +1,147 @@
#include "cg0201.h"
#include <lffiles.h>
extern bool gest_vend();
// Definizione dei metodi relativi alla classe TClifoVI
TClifoVI::TClifoVI():TRelation(LF_CLIFO), _oldindirizzi(0)
{
add(LF_CFVEN,"TIPOCF=TIPOCF|CODCF=CODCF");
add(LF_INDSP,"TIPOCF=TIPOCF|CODCF=CODCF");
}
void TClifoVI::destroy_rows()
{
_indirizzi.destroy();
}
TRectype& TClifoVI::indirizzo(int i)
{
TRectype *r=(TRectype*)_indirizzi.objptr(i);
if (r == NULL)
{
r = new TRectype(LF_INDSP);
_indirizzi.add(r,i);
}
return *r;
}
int TClifoVI::read_indirizzi()
{
const TLocalisamfile* rind = lfile(LF_INDSP);
// Put here gest_vend() discrimination
if (gest_vend())
{
position_rels();
destroy_rows();
for (bool ok=is_first_match(LF_INDSP); ok; ok=next_match(LF_INDSP))
{
const int nriga=rind->get_int("CODIND") -1;
indirizzo(nriga)=rind->curr();
}
}
_oldindirizzi=indirizzi_items();
return NOERR;
}
int TClifoVI::read(TIsamop op, TReclock lockop, TDate& atdate)
{
int err=file()->read(op,lockop,atdate);
if (err==NOERR) read_indirizzi();
return err;
}
int TClifoVI::write_rec(bool re, const TRectype& rec, TLocalisamfile* f)
{
if (re)
{
const bool scrivi= (f->rewrite(rec)!=NOERR);
if (scrivi) f->write(rec);
} else
f->write(rec);
return f->status();
}
int TClifoVI::cancella(TLocalisamfile* f, int da, int a)
{
const char tipocf=lfile()->get("TIPOCF")[0];
const long codcf=lfile()->get_long("CODCF");
for (int i=da; i<=a;i++)
{
f->zero();
f->put("TIPOCF",tipocf);
f->put("CODCF",codcf);
f->put("CODIND",i);
if (f->read(_isequal,_lock)==NOERR)
f->remove();
}
return f->status();
}
int TClifoVI::registra(bool re, bool force)
{
TLocalisamfile* c=lfile(LF_CLIFO);
int err=write_rec(re,c->curr(),c);
if (err!=NOERR) return err;
// Put here gest_vend() discrimination
if (gest_vend())
{
TLocalisamfile* v=lfile(LF_CFVEN);
err=write_rec(TRUE,v->curr(),v);
if (err!=NOERR) return err;
TLocalisamfile* rind=lfile(LF_INDSP);
const char tipocf=c->get("TIPOCF")[0];
const long codcf=c->get_long("CODCF");
for (int i=0; i<indirizzi_items(); i++)
{
if (!re)
{
indirizzo(i).put("TIPOCF",tipocf);
indirizzo(i).put("CODCF",codcf);
}
err=write_rec(TRUE,indirizzo(i),rind);
}
if (i<_oldindirizzi)
cancella(rind,i+1,_oldindirizzi);
_oldindirizzi=indirizzi_items();
}
// END of gest_vend() discrimination
return err;
}
int TClifoVI::write(bool force, TDate&)
{
_oldindirizzi=0;
return registra(FALSE,force);
}
int TClifoVI::rewrite(bool force, TDate&)
{
return registra(TRUE,force);
}
int TClifoVI::remove(TDate&)
{
TLocalisamfile* c=lfile(LF_CLIFO);
TLocalisamfile* v=lfile(LF_CFVEN);
TLocalisamfile* rind=lfile(LF_INDSP);
c->remove();
// Put here gest_vend() discrimination
if (gest_vend())
{
cancella(rind,1,_oldindirizzi);
v->remove();
}
_oldindirizzi=0;
return c->status();
}

35
cg/cg0201.h Executable file
View File

@ -0,0 +1,35 @@
#ifndef __RELATION_H
#include <relation.h>
#endif
class TClifoVI:public TRelation
{
// @DPRIV
TArray _indirizzi;
int _oldindirizzi;
// @END
protected:
// @FPROT
int write_rec(bool re, const TRectype& r, TLocalisamfile* f);
int cancella(TLocalisamfile* f, int da, int a);
int registra(bool re, bool force);
int read_indirizzi();
// @END
public:
virtual int next(TReclock lockop=_nolock) {return (lfile()->next(lockop) || read_indirizzi());}
virtual int prev(TReclock lockop=_nolock) {return (lfile()->prev(lockop) || read_indirizzi());}
virtual int first(TReclock lockop=_nolock) {return (lfile()->first(lockop) || read_indirizzi());}
virtual int last(TReclock lockop=_nolock) {return (lfile()->last(lockop) || read_indirizzi());}
virtual int skip(TReclock lockop=_nolock) {return (lfile()->skip(lockop) || read_indirizzi());}
virtual int read(TIsamop = _isgteq, TReclock lockop = _nolock, TDate& atdate = (TDate&) botime);
virtual int write(bool force=TRUE, TDate& atdate = (TDate&) botime);
virtual int rewrite(bool force=TRUE, TDate& atdate = (TDate&) botime);
virtual int remove(TDate& atdate = (TDate&) botime);
TRectype& indirizzo(int i);
int indirizzi_items() const {return _indirizzi.items();}
void destroy_rows();
TClifoVI();
virtual ~TClifoVI() {}
};

View File

@ -40,3 +40,5 @@
#define CHK_RRMECO 139 #define CHK_RRMECO 139
#define FLD_RRCCRA 140 #define FLD_RRCCRA 140
#define FLD_RRCCRI 141 #define FLD_RRCCRI 141
#define CHK_GESVEN 142

View File

@ -1,492 +1,498 @@
#include "cg5100a.h" #include "cg5100a.h"
/* toolbar */ /* toolbar */
TOOLBAR "" 0 20 0 2 TOOLBAR "" 0 20 0 2
BUTTON DLG_OK 8 2 BUTTON DLG_OK 8 2
BEGIN BEGIN
PROMPT -12 -1 "" PROMPT -12 -1 ""
END END
BUTTON DLG_QUIT 8 2 BUTTON DLG_QUIT 8 2
BEGIN BEGIN
PROMPT -22 -1 "" PROMPT -22 -1 ""
END END
ENDPAGE ENDPAGE
/* page1 */ /* page1 */
PAGE "Impostazione parametri ditta" -1 -1 77 8 PAGE "Impostazione parametri ditta" -1 -1 77 8
NUMBER FLD_ANLIIV 4 NUMBER FLD_ANLIIV 4
BEGIN BEGIN
PROMPT 2 1 "@bANNO LIQUIDAZIONE IVA " PROMPT 2 1 "@bANNO LIQUIDAZIONE IVA "
FLAGS "A" FLAGS "A"
FIELD AnLiIv FIELD AnLiIv
END END
BOOLEAN CHK_ANCFCM BOOLEAN CHK_ANCFCM
BEGIN BEGIN
PROMPT 4 4 "Anagrafica clienti / anagrafica fornitori" PROMPT 4 4 "Anagrafica clienti / anagrafica fornitori"
FLAGS "D" FLAGS "D"
FIELD AnCfCm FIELD AnCfCm
END END
BOOLEAN CHK_PCTCCM BOOLEAN CHK_PCTCCM
BEGIN BEGIN
PROMPT 4 5 "Piano conti / tabella causali" PROMPT 4 5 "Piano conti / tabella causali"
FLAGS "D" FLAGS "D"
FIELD PcTcCm FIELD PcTcCm
END END
GROUPBOX DLG_NULL 53 4 GROUPBOX DLG_NULL 53 4
BEGIN BEGIN
PROMPT 2 3 "Archivi in comune" PROMPT 2 3 "Archivi in comune"
END END
RADIOBUTTON LST_RIFPAR 20 RADIOBUTTON LST_RIFPAR 20
BEGIN BEGIN
PROMPT 55 3 "Riferimenti partite " PROMPT 55 3 "Riferimenti partite "
ITEM " |N. protocollo" ITEM " |N. protocollo"
ITEM "X|N. documento" ITEM "X|N. documento"
HELP "" HELP ""
FIELD RifPar FIELD RifPar
END END
GROUPBOX DLG_NULL 76 9 GROUPBOX DLG_NULL 76 10
BEGIN BEGIN
PROMPT 2 7 "" PROMPT 2 7 ""
END END
BOOLEAN CHK_GSLBCN BOOLEAN CHK_GSLBCN
BEGIN BEGIN
PROMPT 4 8 "Gestione libro cronologico " PROMPT 4 8 "Gestione libro cronologico "
HELP "" HELP ""
FIELD GsLbCn FIELD GsLbCn
END END
BOOLEAN CHK_STTFFR BOOLEAN CHK_STTFFR
BEGIN BEGIN
PROMPT 4 9 "Stampa totali fatture a fine registro " PROMPT 4 9 "Stampa totali fatture a fine registro "
HELP "" HELP ""
FIELD StTfFr FIELD StTfFr
END END
BOOLEAN CHK_STLGIU BOOLEAN CHK_STLGIU
BEGIN BEGIN
PROMPT 4 10 "Stampa libro giornale e libro IVA unico " PROMPT 4 10 "Stampa libro giornale e libro IVA unico "
HELP "" HELP ""
FIELD StLgiU FIELD StLgiU
END END
BOOLEAN CHK_GESSAL BOOLEAN CHK_GESSAL
BEGIN BEGIN
PROMPT 4 11 "Gestione saldaconto " PROMPT 4 11 "Gestione saldaconto "
HELP "" HELP ""
FIELD GesSal FIELD GesSal
END END
BOOLEAN CHK_NRCFDX BOOLEAN CHK_NRCFDX
BEGIN BEGIN
PROMPT 4 12 "N. Rif. allineato a destra per clienti/fornitori " PROMPT 4 12 "N. Rif. allineato a destra per clienti/fornitori "
HELP "" HELP ""
MESSAGE TRUE ENABLE,FLD_CMSGPC MESSAGE TRUE ENABLE,FLD_CMSGPC
MESSAGE FALSE DISABLE,FLD_CMSGPC MESSAGE FALSE DISABLE,FLD_CMSGPC
FIELD NrCfDx FIELD NrCfDx
END END
NUMBER FLD_CMSGPC 1 NUMBER FLD_CMSGPC 1
BEGIN BEGIN
PROMPT 56 12 " / " PROMPT 56 12 " / "
HELP "" HELP ""
FIELD CmSgPc FIELD CmSgPc
END END
BOOLEAN CHK_GESVAL BOOLEAN CHK_GESVAL
BEGIN BEGIN
PROMPT 4 13 "Gestione Valuta" PROMPT 4 13 "Gestione Valuta"
HELP "" HELP ""
FIELD GesVal FIELD GesVal
END END
BOOLEAN CHK_GELIDI BOOLEAN CHK_GELIDI
BEGIN BEGIN
PROMPT 4 14 "Gestione liquidazione differita" PROMPT 4 14 "Gestione liquidazione differita"
HELP "" HELP ""
FIELD GeLiDi FIELD GeLiDi
END END
BOOLEAN CHK_GESVEN
ENDPAGE BEGIN
PROMPT 4 15 "Gestione vendite"
PAGE "Impostazione parametri ditta" -1 -1 77 8 HELP ""
FIELD GesVen
GROUPBOX DLG_NULL 55 12 END
BEGIN
PROMPT 2 5 "Codici sottoconto" ENDPAGE
END
PAGE "Impostazione parametri ditta" -1 -1 77 8
GROUPBOX DLG_NULL 20 12
BEGIN GROUPBOX DLG_NULL 55 12
PROMPT 57 5 "Ratei/Riscontri" BEGIN
END PROMPT 2 5 "Codici sottoconto"
END
NUMBER FLD_CODLIC 5
BEGIN GROUPBOX DLG_NULL 20 12
PROMPT 1 2 "Codice libro incassi/pagamenti " BEGIN
HELP "" PROMPT 57 5 "Ratei/Riscontri"
USE ITL END
INPUT CODTAB FLD_CODLIC
DISPLAY "Codice" CODTAB NUMBER FLD_CODLIC 5
DISPLAY "Descrizione@50" S0 BEGIN
OUTPUT FLD_CODLIC CODTAB PROMPT 1 2 "Codice libro incassi/pagamenti "
CHECKTYPE NORMAL HELP ""
FIELD CodLic USE ITL
END INPUT CODTAB FLD_CODLIC
DISPLAY "Codice" CODTAB
NUMBER FLD_CODLIN 5 DISPLAY "Descrizione@50" S0
BEGIN OUTPUT FLD_CODLIC CODTAB
PROMPT 42 2 "Codice lingua " CHECKTYPE NORMAL
HELP "" FIELD CodLic
USE %LIN END
DISPLAY "Codice" CODTAB
DISPLAY "Descrizione " S0 NUMBER FLD_CODLIN 5
OUTPUT FLD_CODLIN CODTAB BEGIN
INPUT CODTAB FLD_CODLIN PROMPT 42 2 "Codice lingua "
FIELD CodLin HELP ""
END USE %LIN
DISPLAY "Codice" CODTAB
STRING FLD_COCACH 3 DISPLAY "Descrizione " S0
BEGIN OUTPUT FLD_CODLIN CODTAB
PROMPT 1 3 "Codice causale chiusura " INPUT CODTAB FLD_CODLIN
HELP "" FIELD CodLin
USE LF_CAUSALI SELECT TIPODOC="" END
INPUT CODCAUS FLD_COCACH
DISPLAY "Codice" CODCAUS STRING FLD_COCACH 3
DISPLAY "Descrizione@50" DESCR BEGIN
OUTPUT FLD_COCACH CODCAUS PROMPT 1 3 "Codice causale chiusura "
CHECKTYPE NORMAL HELP ""
FIELD CoCaCh USE LF_CAUSALI SELECT TIPODOC=""
END INPUT CODCAUS FLD_COCACH
DISPLAY "Codice" CODCAUS
STRING FLD_COCAAP 3 DISPLAY "Descrizione@50" DESCR
BEGIN OUTPUT FLD_COCACH CODCAUS
PROMPT 42 3 "Codice causale apertura " CHECKTYPE NORMAL
HELP "" FIELD CoCaCh
COPY USE FLD_COCACH END
INPUT CODCAUS FLD_COCAAP
COPY DISPLAY FLD_COCACH STRING FLD_COCAAP 3
OUTPUT FLD_COCAAP CODCAUS BEGIN
CHECKTYPE NORMAL PROMPT 42 3 "Codice causale apertura "
FIELD CoCaAp HELP ""
END COPY USE FLD_COCACH
INPUT CODCAUS FLD_COCAAP
COPY DISPLAY FLD_COCACH
NUMBER FLD_CRIVAP 15 OUTPUT FLD_COCAAP CODCAUS
BEGIN CHECKTYPE NORMAL
PROMPT 1 -2 "Credito IVA anno precedente " FIELD CoCaAp
PICTURE "." END
HELP ""
FIELD CrIvAp
END NUMBER FLD_CRIVAP 15
BEGIN
PROMPT 1 -2 "Credito IVA anno precedente "
TEXT DLG_NULL PICTURE "."
BEGIN HELP ""
PROMPT 32 6 "Gruppo Conto Sottoconto" FIELD CrIvAp
END END
TEXT DLG_NULL
BEGIN TEXT DLG_NULL
PROMPT 31 7 "------------------------" BEGIN
END PROMPT 32 6 "Gruppo Conto Sottoconto"
END
NUMBER FLD_CSBICHG 3
BEGIN TEXT DLG_NULL
PROMPT 3 8 "Bilancio di chiusura " BEGIN
HELP "" PROMPT 31 7 "------------------------"
USE LF_PCON SELECT CONTO=="" END
INPUT GRUPPO FLD_CSBICHG
INPUT CONTO FLD_CSBICHC NUMBER FLD_CSBICHG 3
INPUT CONTO FLD_CSBICHS BEGIN
DISPLAY "Gruppo" GRUPPO PROMPT 3 8 "Bilancio di chiusura "
DISPLAY "Conto" CONTO HELP ""
DISPLAY "Sottoconto" SOTTOCONTO USE LF_PCON SELECT CONTO==""
DISPLAY "Descrizione@50" DESCR INPUT GRUPPO FLD_CSBICHG
OUTPUT FLD_CSBICHG GRUPPO INPUT CONTO FLD_CSBICHC
OUTPUT FLD_CSBICHC CONTO INPUT CONTO FLD_CSBICHS
OUTPUT FLD_CSBICHS SOTTOCONTO DISPLAY "Gruppo" GRUPPO
CHECKTYPE NORMAL DISPLAY "Conto" CONTO
FIELD CsBiChG DISPLAY "Sottoconto" SOTTOCONTO
END DISPLAY "Descrizione@50" DESCR
OUTPUT FLD_CSBICHG GRUPPO
NUMBER FLD_CSBICHC 3 OUTPUT FLD_CSBICHC CONTO
BEGIN OUTPUT FLD_CSBICHS SOTTOCONTO
PROMPT 39 8 "" CHECKTYPE NORMAL
COPY ALL FLD_CSBICHG FIELD CsBiChG
CHCKTYPE NORMAL END
FIELD CsBiChC
END NUMBER FLD_CSBICHC 3
BEGIN
NUMBER FLD_CSBICHS 6 PROMPT 39 8 ""
BEGIN COPY ALL FLD_CSBICHG
PROMPT 46 8 "" CHCKTYPE NORMAL
COPY ALL FLD_CSBICHC FIELD CsBiChC
CHECKTYPE NORMAL END
FIELD CsBiChS
END NUMBER FLD_CSBICHS 6
BEGIN
NUMBER FLD_CSPRPEG 3 PROMPT 46 8 ""
BEGIN COPY ALL FLD_CSBICHC
PROMPT 3 9 "Profitti e perdite " CHECKTYPE NORMAL
HELP "" FIELD CsBiChS
COPY USE FLD_CSBICHG END
COPY DISPLAY FLD_CSBICHG
OUTPUT FLD_CSPRPEG GRUPPO NUMBER FLD_CSPRPEG 3
OUTPUT FLD_CSPRPEC CONTO BEGIN
OUTPUT FLD_CSPRPES SOTTOCONTO PROMPT 3 9 "Profitti e perdite "
INPUT GRUPPO FLD_CSPRPEG HELP ""
INPUT CONTO FLD_CSPRPEC COPY USE FLD_CSBICHG
INPUT SOTTOCONTO FLD_CSPRPES COPY DISPLAY FLD_CSBICHG
FIELD CsPrPeG OUTPUT FLD_CSPRPEG GRUPPO
END OUTPUT FLD_CSPRPEC CONTO
NUMBER FLD_CSPRPEC 3 OUTPUT FLD_CSPRPES SOTTOCONTO
BEGIN INPUT GRUPPO FLD_CSPRPEG
COPY USE FLD_CSBICHG INPUT CONTO FLD_CSPRPEC
COPY DISPLAY FLD_CSBICHG INPUT SOTTOCONTO FLD_CSPRPES
COPY OUTPUT FLD_CSPRPEG FIELD CsPrPeG
COPY INPUT FLD_CSPRPEG END
FIELD CsPrPeC NUMBER FLD_CSPRPEC 3
PROMPT 39 9 "" BEGIN
END COPY USE FLD_CSBICHG
NUMBER FLD_CSPRPES 6 COPY DISPLAY FLD_CSBICHG
BEGIN COPY OUTPUT FLD_CSPRPEG
COPY USE FLD_CSBICHG COPY INPUT FLD_CSPRPEG
COPY DISPLAY FLD_CSBICHG FIELD CsPrPeC
COPY OUTPUT FLD_CSPRPEG PROMPT 39 9 ""
COPY INPUT FLD_CSPRPEG END
FIELD CsPrPeS NUMBER FLD_CSPRPES 6
PROMPT 46 9 "" BEGIN
END COPY USE FLD_CSBICHG
COPY DISPLAY FLD_CSBICHG
NUMBER FLD_CSBIAPG 3 COPY OUTPUT FLD_CSPRPEG
BEGIN COPY INPUT FLD_CSPRPEG
PROMPT 3 10 "Bilancio di apertura " FIELD CsPrPeS
COPY USE FLD_CSBICHG PROMPT 46 9 ""
COPY DISPLAY FLD_CSBICHG END
OUTPUT FLD_CSBIAPG GRUPPO
OUTPUT FLD_CSBIAPC CONTO NUMBER FLD_CSBIAPG 3
OUTPUT FLD_CSBIAPS SOTTOCONTO BEGIN
INPUT GRUPPO FLD_CSBIAPG PROMPT 3 10 "Bilancio di apertura "
INPUT CONTO FLD_CSBIAPC COPY USE FLD_CSBICHG
INPUT SOTTOCONTO FLD_CSBIAPS COPY DISPLAY FLD_CSBICHG
HELP "" OUTPUT FLD_CSBIAPG GRUPPO
FIELD CsBiApG OUTPUT FLD_CSBIAPC CONTO
END OUTPUT FLD_CSBIAPS SOTTOCONTO
NUMBER FLD_CSBIAPC 3 INPUT GRUPPO FLD_CSBIAPG
BEGIN INPUT CONTO FLD_CSBIAPC
PROMPT 39 10 "" INPUT SOTTOCONTO FLD_CSBIAPS
COPY USE FLD_CSBICHG HELP ""
COPY DISPLAY FLD_CSBICHG FIELD CsBiApG
COPY OUTPUT FLD_CSBIAPG END
COPY INPUT FLD_CSBIAPG NUMBER FLD_CSBIAPC 3
FIELD CsBiApC BEGIN
END PROMPT 39 10 ""
COPY USE FLD_CSBICHG
NUMBER FLD_CSBIAPS 6 COPY DISPLAY FLD_CSBICHG
BEGIN COPY OUTPUT FLD_CSBIAPG
PROMPT 46 10 "" COPY INPUT FLD_CSBIAPG
COPY USE FLD_CSBICHG FIELD CsBiApC
COPY DISPLAY FLD_CSBICHG END
COPY OUTPUT FLD_CSBIAPG
COPY INPUT FLD_CSBIAPG NUMBER FLD_CSBIAPS 6
FIELD CsBiApS BEGIN
END PROMPT 46 10 ""
COPY USE FLD_CSBICHG
NUMBER FLD_CSUECPG 3 COPY DISPLAY FLD_CSBICHG
BEGIN COPY OUTPUT FLD_CSBIAPG
PROMPT 3 11 "Utile esercizio c/to patrim. " COPY INPUT FLD_CSBIAPG
HELP "" FIELD CsBiApS
COPY USE FLD_CSBICHG END
COPY DISPLAY FLD_CSBICHG
OUTPUT FLD_CSUECPG GRUPPO NUMBER FLD_CSUECPG 3
OUTPUT FLD_CSUECPC CONTO BEGIN
OUTPUT FLD_CSUECPS SOTTOCONTO PROMPT 3 11 "Utile esercizio c/to patrim. "
INPUT GRUPPO FLD_CSUECPG HELP ""
INPUT CONTO FLD_CSUECPC COPY USE FLD_CSBICHG
INPUT SOTTOCONTO FLD_CSUECPS COPY DISPLAY FLD_CSBICHG
FIELD CsUeCpG OUTPUT FLD_CSUECPG GRUPPO
END OUTPUT FLD_CSUECPC CONTO
NUMBER FLD_CSUECPC 3 OUTPUT FLD_CSUECPS SOTTOCONTO
BEGIN INPUT GRUPPO FLD_CSUECPG
PROMPT 39 11 "" INPUT CONTO FLD_CSUECPC
COPY USE FLD_CSBICHG INPUT SOTTOCONTO FLD_CSUECPS
COPY DISPLAY FLD_CSBICHG FIELD CsUeCpG
COPY OUTPUT FLD_CSUECPG END
COPY INPUT FLD_CSUECPG NUMBER FLD_CSUECPC 3
FIELD CsUeCpC BEGIN
END PROMPT 39 11 ""
NUMBER FLD_CSUECPS 6 COPY USE FLD_CSBICHG
BEGIN COPY DISPLAY FLD_CSBICHG
PROMPT 46 11 "" COPY OUTPUT FLD_CSUECPG
COPY USE FLD_CSBICHG COPY INPUT FLD_CSUECPG
COPY DISPLAY FLD_CSBICHG FIELD CsUeCpC
COPY OUTPUT FLD_CSUECPG END
COPY INPUT FLD_CSUECPG NUMBER FLD_CSUECPS 6
FIELD CsUeCpS BEGIN
END PROMPT 46 11 ""
COPY USE FLD_CSBICHG
NUMBER FLD_CSPECPG 3 COPY DISPLAY FLD_CSBICHG
BEGIN COPY OUTPUT FLD_CSUECPG
PROMPT 3 12 "Perdita eserc. c/to patrim. " COPY INPUT FLD_CSUECPG
HELP "" FIELD CsUeCpS
COPY USE FLD_CSBICHG END
COPY DISPLAY FLD_CSBICHG
OUTPUT FLD_CSPECPG GRUPPO NUMBER FLD_CSPECPG 3
OUTPUT FLD_CSPECPC CONTO BEGIN
OUTPUT FLD_CSPECPS SOTTOCONTO PROMPT 3 12 "Perdita eserc. c/to patrim. "
INPUT GRUPPO FLD_CSPECPG HELP ""
INPUT CONTO FLD_CSPECPC COPY USE FLD_CSBICHG
INPUT SOTTOCONTO FLD_CSPECPS COPY DISPLAY FLD_CSBICHG
FIELD CsPeCpG OUTPUT FLD_CSPECPG GRUPPO
END OUTPUT FLD_CSPECPC CONTO
NUMBER FLD_CSPECPC 3 OUTPUT FLD_CSPECPS SOTTOCONTO
BEGIN INPUT GRUPPO FLD_CSPECPG
PROMPT 39 12 "" INPUT CONTO FLD_CSPECPC
COPY USE FLD_CSBICHG INPUT SOTTOCONTO FLD_CSPECPS
COPY DISPLAY FLD_CSBICHG FIELD CsPeCpG
COPY OUTPUT FLD_CSPECPG END
COPY INPUT FLD_CSPECPG NUMBER FLD_CSPECPC 3
FIELD CsPeCpC BEGIN
END PROMPT 39 12 ""
NUMBER FLD_CSPECPS 6 COPY USE FLD_CSBICHG
BEGIN COPY DISPLAY FLD_CSBICHG
PROMPT 46 12 "" COPY OUTPUT FLD_CSPECPG
COPY USE FLD_CSBICHG COPY INPUT FLD_CSPECPG
COPY DISPLAY FLD_CSBICHG FIELD CsPeCpC
COPY OUTPUT FLD_CSPECPG END
COPY INPUT FLD_CSPECPG NUMBER FLD_CSPECPS 6
FIELD CsPeCpS BEGIN
END PROMPT 46 12 ""
COPY USE FLD_CSBICHG
NUMBER FLD_CSUECEG 3 COPY DISPLAY FLD_CSBICHG
BEGIN COPY OUTPUT FLD_CSPECPG
PROMPT 3 13 "Utile esercizio c/to econ. " COPY INPUT FLD_CSPECPG
HELP "" FIELD CsPeCpS
COPY USE FLD_CSBICHG END
COPY DISPLAY FLD_CSBICHG
OUTPUT FLD_CSUECEG GRUPPO NUMBER FLD_CSUECEG 3
OUTPUT FLD_CSUECEC CONTO BEGIN
OUTPUT FLD_CSUECES SOTTOCONTO PROMPT 3 13 "Utile esercizio c/to econ. "
INPUT GRUPPO FLD_CSUECEG HELP ""
INPUT CONTO FLD_CSUECEC COPY USE FLD_CSBICHG
INPUT SOTTOCONTO FLD_CSUECES COPY DISPLAY FLD_CSBICHG
FIELD CsUeCeG OUTPUT FLD_CSUECEG GRUPPO
END OUTPUT FLD_CSUECEC CONTO
NUMBER FLD_CSUECEC 3 OUTPUT FLD_CSUECES SOTTOCONTO
BEGIN INPUT GRUPPO FLD_CSUECEG
PROMPT 39 13 "" INPUT CONTO FLD_CSUECEC
COPY USE FLD_CSBICHG INPUT SOTTOCONTO FLD_CSUECES
COPY DISPLAY FLD_CSBICHG FIELD CsUeCeG
COPY OUTPUT FLD_CSUECEG END
COPY INPUT FLD_CSUECEG NUMBER FLD_CSUECEC 3
FIELD CsUeCeC BEGIN
END PROMPT 39 13 ""
NUMBER FLD_CSUECES 6 COPY USE FLD_CSBICHG
BEGIN COPY DISPLAY FLD_CSBICHG
PROMPT 46 13 "" COPY OUTPUT FLD_CSUECEG
COPY USE FLD_CSBICHG COPY INPUT FLD_CSUECEG
COPY OUTPUT FLD_CSUECEG FIELD CsUeCeC
COPY INPUT FLD_CSUECEG END
COPY DISPLAY FLD_CSBICHG NUMBER FLD_CSUECES 6
FIELD CsUeCeS BEGIN
END PROMPT 46 13 ""
COPY USE FLD_CSBICHG
NUMBER FLD_CSPECEG 3 COPY OUTPUT FLD_CSUECEG
BEGIN COPY INPUT FLD_CSUECEG
PROMPT 3 14 "Perdita eserc. c/to econ. " COPY DISPLAY FLD_CSBICHG
HELP "" FIELD CsUeCeS
COPY USE FLD_CSBICHG END
COPY DISPLAY FLD_CSBICHG
OUTPUT FLD_CSPECEG GRUPPO NUMBER FLD_CSPECEG 3
OUTPUT FLD_CSPECEC CONTO BEGIN
OUTPUT FLD_CSPECES SOTTOCONTO PROMPT 3 14 "Perdita eserc. c/to econ. "
INPUT GRUPPO FLD_CSPECEG HELP ""
INPUT CONTO FLD_CSPECEC COPY USE FLD_CSBICHG
INPUT SOTTOCONTO FLD_CSPECES COPY DISPLAY FLD_CSBICHG
FIELD CsPeCeG OUTPUT FLD_CSPECEG GRUPPO
END OUTPUT FLD_CSPECEC CONTO
NUMBER FLD_CSPECEC 3 OUTPUT FLD_CSPECES SOTTOCONTO
BEGIN INPUT GRUPPO FLD_CSPECEG
PROMPT 39 14 "" INPUT CONTO FLD_CSPECEC
COPY USE FLD_CSBICHG INPUT SOTTOCONTO FLD_CSPECES
COPY DISPLAY FLD_CSBICHG FIELD CsPeCeG
COPY OUTPUT FLD_CSPECEG END
COPY INPUT FLD_CSPECEG NUMBER FLD_CSPECEC 3
FIELD CsPeCeC BEGIN
END PROMPT 39 14 ""
NUMBER FLD_CSPECES 6 COPY USE FLD_CSBICHG
BEGIN COPY DISPLAY FLD_CSBICHG
PROMPT 46 14 "" COPY OUTPUT FLD_CSPECEG
COPY USE FLD_CSBICHG COPY INPUT FLD_CSPECEG
COPY DISPLAY FLD_CSBICHG FIELD CsPeCeC
COPY OUTPUT FLD_CSPECEG END
COPY INPUT FLD_CSPECEG NUMBER FLD_CSPECES 6
FIELD CsPeCeS BEGIN
END PROMPT 46 14 ""
COPY USE FLD_CSBICHG
RADIOBUTTON LST_RRFRAM 15 COPY DISPLAY FLD_CSBICHG
BEGIN COPY OUTPUT FLD_CSPECEG
PROMPT 57 6 "" COPY INPUT FLD_CSPECEG
ITEM "A|Freq. Annuale" FIELD CsPeCeS
ITEM "M|Freq. Mensile" END
HELP ""
FIELD RrFrAm RADIOBUTTON LST_RRFRAM 15
END BEGIN
PROMPT 57 6 ""
BOOLEAN CHK_RRMECO ITEM "A|Freq. Annuale"
BEGIN ITEM "M|Freq. Mensile"
PROMPT 58 15 "Mese Commerc." HELP ""
HELP "" FIELD RrFrAm
FIELD RrMeCo END
END
BOOLEAN CHK_RRMECO
BEGIN
TEXT DLG_NULL PROMPT 58 15 "Mese Commerc."
BEGIN HELP ""
PROMPT 58 10 "Causale ratei" FIELD RrMeCo
END END
TEXT DLG_NULL
BEGIN TEXT DLG_NULL
PROMPT 58 12 "Causale riscontri" BEGIN
END PROMPT 58 10 "Causale ratei"
END
NUMBER FLD_RRCCRA 5 TEXT DLG_NULL
BEGIN BEGIN
PROMPT 64 11 "" PROMPT 58 12 "Causale riscontri"
HELP "" END
COPY USE FLD_COCACH
COPY DISPLAY FLD_COCACH
OUTPUT FLD_RRCCRA CODCAUS NUMBER FLD_RRCCRA 5
INPUT CODCAUS FLD_RRCCRA BEGIN
FIELD RrCcRa PROMPT 64 11 ""
END HELP ""
COPY USE FLD_COCACH
NUMBER FLD_RRCCRI 5 COPY DISPLAY FLD_COCACH
BEGIN OUTPUT FLD_RRCCRA CODCAUS
PROMPT 64 13 "" INPUT CODCAUS FLD_RRCCRA
HELP "" FIELD RrCcRa
COPY USE FLD_COCACH END
COPY DISPLAY FLD_COCACH
OUTPUT FLD_RRCCRI CODCAUS NUMBER FLD_RRCCRI 5
INPUT CODCAUS FLD_RRCCRI BEGIN
FIELD RrCcRi PROMPT 64 13 ""
END HELP ""
COPY USE FLD_COCACH
ENDPAGE COPY DISPLAY FLD_COCACH
OUTPUT FLD_RRCCRI CODCAUS
ENDMASK INPUT CODCAUS FLD_RRCCRI
FIELD RrCcRi
END
ENDPAGE
ENDMASK

View File

@ -32,7 +32,9 @@ $(O)/cg0.o: cg0.cpp $(I10) $(I24) $(I32)
$(O)/cg0100.o: cg0100.cpp $(I15) $(I31) $(I53) cg0100.h cg0.h $(IP)pconti.h $(O)/cg0100.o: cg0100.cpp $(I15) $(I31) $(I53) cg0100.h cg0.h $(IP)pconti.h
$(O)/cg0200.o: cg0200.cpp $(I8) $(I15) $(I31) $(I53) $(I31) $(I43) $(I46) $(I56) cg0200.h cg0.h $(O)/cg0200.o: cg0200.cpp $(I8) $(I15) $(I31) $(I53) $(I31) $(I43) $(I46) $(I56) cg0200.h cg0.h cg0201.h
$(O)/cg0201.o: cg0201.cpp $(I8) $(I15) $(I31) $(I53) $(I31) $(I43) $(I46) $(I56) cg0201.h
$(O)/cg0300.o: cg0300.cpp $(I15) $(I31) $(I53) cg0300.h cg0.h $(O)/cg0300.o: cg0300.cpp $(I15) $(I31) $(I53) cg0300.h cg0.h
@ -41,8 +43,8 @@ $(O)/cg0400.o: cg0400.cpp $(I6) $(I10) $(I24) $(I27) $(I33) $(I43) cg0400.h cg
$(O)/cg0500.o: cg0500.cpp $(I6) $(I10) $(I24) $(I27) $(I33) $(I43) cg0500.h $(O)/cg0500.o: cg0500.cpp $(I6) $(I10) $(I24) $(I27) $(I33) $(I43) cg0500.h
$(O)/cg0501.o: cg0501.cpp $(I6) $(I10) $(I24) $(I27) $(I33) $(I43) cg0500.h cg0501.h $(O)/cg0501.o: cg0501.cpp $(I6) $(I10) $(I24) $(I27) $(I33) $(I43) cg0500.h cg0501.h
$(EP)cg0: $(O)/cg0.o $(O)/cg0100.o $(O)/cg0200.o $(O)/cg0300.o $(O)/cg0400.o $(O)/cg0500.o $(O)/cg0501.o $(O)/conto.o $(LIBD1) $(EP)cg0.frl $(EP)cg0: $(O)/cg0.o $(O)/cg0100.o $(O)/cg0200.o $(O)/cg0201.o $(O)/cg0300.o $(O)/cg0400.o $(O)/cg0500.o $(O)/cg0501.o $(O)/conto.o $(LIBD1) $(EP)cg0.frl
$(LINK) $(LFLAGSD1) $@ $(O)/cg0.o $(O)/cg0100.o $(O)/cg0200.o $(O)/cg0300.o $(O)/cg0400.o $(O)/cg0500.o $(O)/cg0501.o $(O)/conto.o $(LINK) $(LFLAGSD1) $@ $(O)/cg0.o $(O)/cg0100.o $(O)/cg0200.o $(O)/cg0201.o $(O)/cg0300.o $(O)/cg0400.o $(O)/cg0500.o $(O)/cg0501.o $(O)/conto.o
$(EP)cg0.frl: cg0.url $(U1) $(EP)cg0.frl: cg0.url $(U1)
$(RCOMP) cg0 -l $(EP)cg0 $(RCOMP) cg0 -l $(EP)cg0

View File

@ -74,5 +74,7 @@ RrMeCo = X
RrCcRa = RrCcRa =
# Codice causale riscontri # Codice causale riscontri
RrCcRi = RrCcRi =
# Gestione Vendite
GesVen =
[EOF] [EOF]