*** empty log message ***

git-svn-id: svn://10.65.10.50/trunk@238 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1994-09-14 16:45:19 +00:00
parent da64109dde
commit 0d135ae092
5 changed files with 2762 additions and 2761 deletions

View File

@ -79,6 +79,7 @@
7|Causali|cg0 -4 7|Causali|cg0 -4
7|Clienti/Fornitori|cg0 -1 7|Clienti/Fornitori|cg0 -1
7|Banche|ba3 -0 %ban 7|Banche|ba3 -0 %ban
7|Esercizi|ba3 -0 esc
8|Stampa tabelle ditta| 8|Stampa tabelle ditta|
8|Registri|ba3 -1 reg 8|Registri|ba3 -1 reg
8|Piano dei conti|cg1 -0 8|Piano dei conti|cg1 -0

View File

@ -139,7 +139,7 @@ END
SPREADSHEET F_SHEET_GCS SPREADSHEET F_SHEET_GCS
BEGIN BEGIN
PROMPT 2 7 "" PROMPT 0 7 ""
ITEM "Tipo conto@21" ITEM "Tipo conto@21"
ITEM "C/F" ITEM "C/F"
ITEM "Gr." ITEM "Gr."

View File

@ -1,4 +1,5 @@
#include <config.h> #include <config.h>
#include <execp.h>
#include <tabutil.h> #include <tabutil.h>
#include <utility.h> #include <utility.h>
#include <urldefid.h> #include <urldefid.h>
@ -13,7 +14,7 @@
TPrimanota_application::TPrimanota_application() TPrimanota_application::TPrimanota_application()
: _rel(NULL), _lastreg(0), _mode(0), _iva(nessuna_iva) : _rel(NULL), _lastreg(0), _mode(0), _iva(nessuna_iva)
{ {
memset(_msk, 0, sizeof(_msk)); memset(_msk, 0, sizeof(_msk));
} }
@ -148,6 +149,13 @@ bool TPrimanota_application::user_destroy()
return TRUE; return TRUE;
} }
void TPrimanota_application::print()
{
TExternal_app stampa("cg3 -0");
stampa.run();
}
// Legge la causale di codice cod ed il relativo registro dell'anno year // Legge la causale di codice cod ed il relativo registro dell'anno year
// Certified 99% // Certified 99%
bool TPrimanota_application::read_caus(const char* cod, int year) bool TPrimanota_application::read_caus(const char* cod, int year)
@ -221,6 +229,8 @@ TMask* TPrimanota_application::get_mask(int mode)
void TPrimanota_application::init_mask(TMask& m) void TPrimanota_application::init_mask(TMask& m)
{ {
disable_menu_item(M_FILE_PRINT);
fill_sheet(m); fill_sheet(m);
// Show/Hide campi valuta: F_VALUTA, F_CAMBIO, F_VISVAL (GROUP 3) // Show/Hide campi valuta: F_VALUTA, F_CAMBIO, F_VISVAL (GROUP 3)
@ -238,7 +248,7 @@ void TPrimanota_application::init_mask(TMask& m)
else else
{ {
forg = 'h'; forg = 'h';
clig = causale().reg().corrispettivi() ? 'h' : 's'; clig = causale().corrispettivi() ? 'h' : 's';
} }
m.send_key(K_SHIFT+K_CTRL+clig, -1); // group 1 (clienti) m.send_key(K_SHIFT+K_CTRL+clig, -1); // group 1 (clienti)
m.send_key(K_SHIFT+K_CTRL+forg, -2); // group 2 (fornitori) m.send_key(K_SHIFT+K_CTRL+forg, -2); // group 2 (fornitori)
@ -256,6 +266,7 @@ void TPrimanota_application::init_mask(TMask& m)
void TPrimanota_application::init_query_mode(TMask& m) void TPrimanota_application::init_query_mode(TMask& m)
{ {
enable_menu_item(M_FILE_PRINT);
m.enable(DLG_NEWREC); m.enable(DLG_NEWREC);
} }
@ -297,7 +308,8 @@ void TPrimanota_application::init_insert_mode(TMask& m)
_saldi.set_movap(_causale.apertura()); _saldi.set_movap(_causale.apertura());
_saldi.set_anno_es(m.get_int(F_ANNOES)); _saldi.set_anno_es(m.get_int(F_ANNOES));
_saldi.set_num_ulmov(m.get_long(F_NUMREG)); _saldi.set_num_ulmov(m.get_long(F_NUMREG));
_saldi.set_data_ulmov(TDate(m.get(F_DATAREG))); const TDate datareg(m.get(F_DATAREG));
_saldi.set_data_ulmov(datareg);
if (_iva != nessuna_iva) if (_iva != nessuna_iva)
{ {
@ -337,7 +349,8 @@ void TPrimanota_application::init_insert_mode(TMask& m)
if (iva() == nessuna_iva) if (iva() == nessuna_iva)
{ {
set_cgs_row(-1,zero,tc,desc,' '); const int n = set_cgs_row(-1,zero,tc,desc,' ');
cgs().disable_cell(n, sezione == 'D' ? 1 : 0);
} }
else else
{ {
@ -578,7 +591,7 @@ void TPrimanota_application::mask2rel(const TMask& m)
} }
if (_iva == nessuna_iva) return; if (_iva == nessuna_iva) return;
if (causale().reg().corrispettivi()) if (causale().corrispettivi())
{ {
TRectype& rec = _rel->lfile()->curr(); TRectype& rec = _rel->lfile()->curr();
rec.put("TIPO", ""); rec.put("TIPO", "");

View File

@ -67,7 +67,8 @@ real TPrimanota_application::totale_documento()
const bool swaps = test_swap(TRUE); // Ritenute sociali invertite ? const bool swaps = test_swap(TRUE); // Ritenute sociali invertite ?
real tot(m.get(F_TOTALE)); real tot(m.get(F_TOTALE));
tot += real(m.get(F_RITFIS)); const real ritfis(m.get(F_RITFIS));
tot += ritfis;
real ritsoc(m.get(F_RITSOC)); real ritsoc(m.get(F_RITSOC));
if (swapt ^ swaps) if (swapt ^ swaps)
@ -78,7 +79,7 @@ real TPrimanota_application::totale_documento()
} }
// Determina se un codice sospeso o no // Determina se un codice sospeso o no
// Certified 50% // Certified 90%
bool TPrimanota_application::suspended_handler(TMask_field& f, KEY k) bool TPrimanota_application::suspended_handler(TMask_field& f, KEY k)
{ {
if (f.to_check(k)) if (f.to_check(k))
@ -342,9 +343,6 @@ int TPrimanota_application::set_cgs_row(int n, const TImporto& imp,
row << '|' << tipo; row << '|' << tipo;
disable_cgs_cells(n, tipo); disable_cgs_cells(n, tipo);
if (tipo == ' ')
cg.disable_cell(n, imp.sezione() == 'D' ? 1 : 0);
cg.force_update(n); cg.force_update(n);
return n; return n;
@ -465,8 +463,9 @@ bool TPrimanota_application::cg_notify(int r, KEY k)
TImporto i; i = row; i.swap_section(); TImporto i; i = row; i.swap_section();
TConto contro(row, 9, 0x3); TConto contro(row, 9, 0x3);
app().set_cgs_row(1, i, contro, "", ' '); app().set_cgs_row(1, i, contro, "", ' ');
TConto conto(cg.row(1), 2, 0x3); TConto conto(row, 2, 0x3);
conto.add_to(cg.row(1), 2, 0x3); conto.add_to(cg.row(1), 9, 0x3);
app().cgs().force_update(1);
} }
app().calcola_saldo(); app().calcola_saldo();
break; break;
@ -886,16 +885,22 @@ bool TPrimanota_application::datacomp_handler(TMask_field& f, KEY key)
if (ae) if (ae)
{ {
const char* data = "";
if (f.dlg() == F_DATACOMP) if (f.dlg() == F_DATACOMP)
{
m.set(F_ANNOES, ae); m.set(F_ANNOES, ae);
data = "di competenza";
}
else
data = "del 74/ter";
const TDate dr(m.get(F_DATAREG)); // Data operazione const TDate dr(m.get(F_DATAREG)); // Data operazione
int pr; // Esercizio precedente int pr; // Esercizio precedente
const int ar = date2esc(dr, &pr); // Esercizio in corso const int ar = date2esc(dr, &pr); // Esercizio in corso
if (ae != ar && ae != pr) if (ae != ar && ae != pr)
{ {
TString80 e("La data deve appartenere all'esercizio "); TString80 e;
e << ar; e << "La data " << data << " deve appartenere all'esercizio " << ar;
if (pr > 0) e << " o al " << pr; if (pr > 0) e << " o al " << pr;
return f.error_box(e); return f.error_box(e);
} }
@ -929,34 +934,13 @@ bool TPrimanota_application::data74ter_handler(TMask_field& f, KEY key)
// Certified 99% // Certified 99%
bool TPrimanota_application::reg_handler(TMask_field& f, KEY key) bool TPrimanota_application::reg_handler(TMask_field& f, KEY key)
{ {
if (f.to_check(key, TRUE)) if (key == K_TAB)
{ {
// if (!suspended_handler(f, key)) return FALSE; TRegistro& reg = app().causale().reg();
const int ai = f.mask().get_int(F_ANNOIVA);
const char* r = f.get();
TRegistro reg(r, ai);
const TipoIVA i = reg.iva();
if (i == iva_errata)
return f.error_box("Tipo registro errato");
if (reg.iva() != app().iva())
{
const TString16 i1(iva2name(reg.iva()));
const TString16 i2(iva2name(app().iva()));
return f.error_box("Tipo registro (%s) incongruente col tipo di registrazione (%s)",
(const char*)i1, (const char*)i2);
}
const bool av = reg.agenzia_viaggi(); const bool av = reg.agenzia_viaggi();
f.mask().show(F_DATA74TER, av); f.mask().show(F_DATA74TER, av);
if (!av) f.mask().reset(F_DATA74TER); if (!av) f.mask().reset(F_DATA74TER);
if (key == K_TAB)
app().causale().reg() = reg;
} }
return TRUE; return TRUE;
} }

View File

@ -230,7 +230,7 @@ TLibro_giornale::TLibro_giornale(int y)
TCausale::TCausale(const char* cod, int year) TCausale::TCausale(const char* cod, int year)
: TArray(12), _rec(LF_CAUSALI), _iva(iva_errata), : TArray(12), _rec(LF_CAUSALI), _iva(iva_errata),
_sezione_clifo(' '), _sezione_ritsoc(' ') _sezione_clifo(' '), _sezione_ritsoc(' '), _corrisp(FALSE)
{ {
if (*cod) read(cod, year); if (*cod) read(cod, year);
} }
@ -284,6 +284,7 @@ bool TCausale::read(const char* cod, int year)
else else
{ {
_iva = nessuna_iva; // Clear IVA data _iva = nessuna_iva; // Clear IVA data
_corrisp = FALSE;
_reg.read("", year); _reg.read("", year);
} }
@ -375,7 +376,8 @@ TipoIVA TCausale::iva() const
{ {
if (_iva == iva_errata) if (_iva == iva_errata)
{ {
TipoIVA i = nessuna_iva; TipoIVA i = nessuna_iva; // Tipo IVA di default
bool c = FALSE; // Corrispettivi di default
TString16 tipodoc(_rec.get("TIPODOC")); TString16 tipodoc(_rec.get("TIPODOC"));
if (tipodoc.not_empty()) if (tipodoc.not_empty())
@ -393,11 +395,11 @@ TipoIVA TCausale::iva() const
error_box("Tipo documento incompatibile con tipo registro"); error_box("Tipo documento incompatibile con tipo registro");
i = iva_errata; i = iva_errata;
} }
c = tpd.get_bool("B0");
((TCausale*)this)->_corrisp = tpd.get_bool("B0"); // Ricorda flag per la prossima volta
} }
} }
((TCausale*)this)->_iva = i; // Ricorda IVA per la prossima volta ((TCausale*)this)->_iva = i; // Ricorda IVA per la prossima volta
((TCausale*)this)->_corrisp = c; // Ricorda flag per la prossima volta
} }
return _iva; return _iva;
} }
@ -413,7 +415,8 @@ bool TCausale::similar(const TCausale& c) const
return iva() == c.iva() && return iva() == c.iva() &&
sezionale() == c.sezionale() && sezionale() == c.sezionale() &&
valuta() == c.valuta() && valuta() == c.valuta() &&
intra() == c.intra(); intra() == c.intra() &&
corrispettivi() == c.corrispettivi();
} }
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////