Correzione errori

git-svn-id: svn://10.65.10.50/trunk@1488 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
nik 1995-06-20 07:24:18 +00:00
parent d1209e146b
commit 56eb66a4a0
3 changed files with 293 additions and 330 deletions

View File

@ -1,30 +1,12 @@
// Apertura nuovo esercizio // Apertura nuovo esercizio
#include <relation.h>
#include <tabutil.h>
#include <printapp.h>
#include <mask.h>
#include <utility.h>
#include <config.h>
#include <urldefid.h>
#include <mov.h>
#include <rmov.h>
#include <rmoviva.h>
#include <saldi.h>
#include <causali.h>
#include <nditte.h>
#include "cg4501.h" #include "cg4501.h"
#include "cg4500a.h" #include "cg4500a.h"
class TAp_eser : public TApplication class TAp_eser : public TApplication
{ {
TTable* _esc, * _reg; TTable* _esc, * _reg;
TLocalisamfile* _nditte; int _anno, _newanno;
int _anno, _newanno, _annoiva;
TDate _dataini, _datafin, _datainp, _datafip; TDate _dataini, _datafin, _datainp, _datafip;
TString _annop;
long _ditta;
char _frequenza;
protected: protected:
static bool mask_dataini (TMask_field&, KEY); static bool mask_dataini (TMask_field&, KEY);
@ -126,7 +108,6 @@ bool TAp_eser::mask_dataini (TMask_field& f, KEY k)
bool TAp_eser::create() bool TAp_eser::create()
{ {
_nditte = new TLocalisamfile(LF_NDITTE);
_esc = new TTable("ESC"); _esc = new TTable("ESC");
_reg = new TTable("REG"); _reg = new TTable("REG");
@ -139,7 +120,6 @@ bool TAp_eser::create()
bool TAp_eser::destroy() bool TAp_eser::destroy()
{ {
delete _nditte;
delete _esc; delete _esc;
delete _reg; delete _reg;

View File

@ -1,279 +1,263 @@
//Apertura nuovo esercizio IVA //Apertura nuovo esercizio IVA
#include <relation.h> #include "nditte.h"
#include <tabutil.h> #include "cg4501.h"
#include <printapp.h> #include "cg4500b.h"
#include <mask.h>
#include <utility.h> bool TAp_iva::mask_annoiva (TMask_field& f, KEY k)
#include <config.h> {
#include <urldefid.h> if ( (k == K_ENTER) && f.to_check(k) )
#include <mov.h> //if ( (k == K_TAB) && f.mask().is_running() )
#include <rmov.h> {
#include <rmoviva.h> int annoiva = f.mask().get_int(F_ANNOIVA);
#include <saldi.h> TConfig conf(CONFIG_DITTA);
#include <causali.h> int annoivap = atoi(conf.get("AnLiIv"));
#include <nditte.h> if (annoiva != annoivap + 1)
{
#include "cg4501.h" f.warning_box("Il nuovo anno esercizio IVA deve essere successivo all'anno esercizio IVA precedente");
#include "cg4500b.h" return FALSE;
}
bool TAp_iva::mask_annoiva (TMask_field& f, KEY k) }
{ return TRUE;
if ( (k == K_ENTER) && f.to_check(k) ) }
//if ( (k == K_TAB) && f.mask().is_running() )
{ bool TAp_iva::create()
int annoiva = f.mask().get_int(F_ANNOIVA); {
TConfig conf(CONFIG_DITTA); _nditte = new TLocalisamfile(LF_NDITTE);
int annoivap = atoi(conf.get("AnLiIv")); _reg = new TTable("REG");
if (annoiva != annoivap + 1) _lia = new TTable("%LIA");
{ _lbu = new TTable("%LBU");
f.warning_box("Il nuovo anno esercizio IVA deve essere successivo all'anno esercizio IVA precedente");
return FALSE; enable_menu_item(M_FILE_NEW, FALSE);
}
} dispatch_e_menu (BAR_ITEM(1));
return TRUE;
} return TRUE;
}
bool TAp_iva::create()
{ bool TAp_iva::destroy()
_nditte = new TLocalisamfile(LF_NDITTE); {
_esc = new TTable("ESC"); delete _nditte;
_reg = new TTable("REG"); delete _reg;
_lia = new TTable("%LIA"); delete _lia;
_lbu = new TTable("%LBU"); delete _lbu;
enable_menu_item(M_FILE_NEW, FALSE); return TRUE;
}
dispatch_e_menu (BAR_ITEM(1));
bool TAp_iva::apertura_iva()
return TRUE; {
} TTable TabReg ("REG");
TTable TabLia ("%LIA");
bool TAp_iva::destroy() TTable TabLbu ("%LBU");
{ TLocalisamfile nditte (LF_NDITTE);
delete _nditte; TString annoiva (4);
delete _esc; TDate data;
delete _reg; bool ok = FALSE;
delete _lia;
delete _lbu; int annop = atoi(_annop);
annoiva = format("%04d", _annoiva);
return TRUE;
} //viene aggiornata la tabella LIA (liquidazione iva annuale)
TabLia.zero();
bool TAp_iva::apertura_iva() TabLia.put ("CODTAB", format("%05ld%04d", get_firm(), _annoiva));
{ if (TabLia.read() == NOERR)
TTable TabReg ("REG"); TabLia.remove();
TTable TabLia ("%LIA");
TTable TabLbu ("%LBU"); TabLia.zero();
TLocalisamfile nditte (LF_NDITTE); TRectype newrec (TabLia.curr());
TString annoiva (4); TabLia.put ("CODTAB", format("%05ld%04d", get_firm(), annop));
TDate data;
bool ok = FALSE; if (TabLia.read() == NOERR)
{
int annop = atoi(_annop); ok = TRUE;
annoiva = format("%04d", _annoiva); newrec = TabLia.curr();
newrec.put("CODTAB", format("%05ld%04d", get_firm(), _annoiva));
//viene aggiornata la tabella LIA (liquidazione iva annuale) newrec.put("S7", _frequenza);
TabLia.zero();
TabLia.put ("CODTAB", format("%05ld%04d", get_firm(), _annoiva)); TabLia.write(newrec);
if (TabLia.read() == NOERR) }
TabLia.remove(); if (!ok)
{
TabLia.zero(); error_box("Non esiste il record relativo all'anno iva precedente sulla tabella liquidazione annuale iva");
TRectype newrec (TabLia.curr()); return FALSE;
TabLia.put ("CODTAB", format("%05ld%04d", get_firm(), annop)); }
if (TabLia.read() == NOERR) //viene aggiornata la tabella del libro unico.
{ TabLbu.zero();
ok = TRUE; TabLbu.put ("CODTAB", annoiva);
newrec = TabLia.curr();
newrec.put("CODTAB", format("%05ld%04d", get_firm(), _annoiva)); TRectype r (TabLbu.curr());
newrec.put("S7", _frequenza);
TabLbu.read(_isgteq);
TabLia.write(newrec);
} for (; !TabLbu.eof(); TabLbu.next())
if (!ok) {
{ if (TabLbu.curr() != r) break;
error_box("Non esiste il record relativo all'anno iva precedente sulla tabella liquidazione annuale iva");
return FALSE; TabLbu.remove();
} }
//viene aggiornata la tabella del libro unico. ok = FALSE;
TabLbu.zero(); TabLbu.zero();
TabLbu.put ("CODTAB", annoiva); TRectype nrec (TabLbu.curr());
TabLbu.put ("CODTAB", _annop);
TRectype r (TabLbu.curr());
TRectype rec (TabLbu.curr());
TabLbu.read(_isgteq);
TabLbu.read(_isgteq);
for (; !TabLbu.eof(); TabLbu.next())
{ for (; !TabLbu.eof(); TabLbu.next())
if (TabLbu.curr() != r) break; {
if (TabLbu.curr() != rec) break;
TabLbu.remove();
} TRecnotype nr = TabLbu.recno();
TString cod_lib = TabLbu.get("CODTAB");
ok = FALSE; cod_lib = cod_lib.mid(4,3);
TabLbu.zero(); ok = TRUE;
TRectype nrec (TabLbu.curr()); nrec = TabLbu.curr();
TabLbu.put ("CODTAB", _annop); TString16 cod;
cod << _annoiva << cod_lib;
TRectype rec (TabLbu.curr()); nrec.put("CODTAB", cod);
nrec.put("I0", 0L);
TabLbu.read(_isgteq);
TabLbu.write(nrec);
for (; !TabLbu.eof(); TabLbu.next()) TabLbu.readat(nr);
{ }
if (TabLbu.curr() != rec) break; /*
if (!ok)
TRecnotype nr = TabLbu.recno(); {
TString cod_lib = TabLbu.get("CODTAB"); error_box("Non esistono i registri del libro unico relativi all'anno iva precedente");
cod_lib = cod_lib.mid(4,3); return FALSE;
ok = TRUE; }
nrec = TabLbu.curr(); */
TString16 cod;
cod << _annoiva << cod_lib; //viene aggiornata la tabella dei registri.
nrec.put("CODTAB", cod); TabReg.zero();
nrec.put("I0", 0L); TabReg.put ("CODTAB", annoiva);
TabLbu.write(nrec); TRectype rr (TabReg.curr());
TabLbu.readat(nr);
} TabReg.read(_isgteq);
/*
if (!ok) for (; !TabReg.eof(); TabReg.next())
{ {
error_box("Non esistono i registri del libro unico relativi all'anno iva precedente"); if (TabReg.curr() != rr) break;
return FALSE;
} int tiporeg = TabReg.get_int("I0");
*/ if ( (tiporeg == 1)||(tiporeg == 2)||(tiporeg == 3) )
TabReg.remove();
//viene aggiornata la tabella dei registri. }
TabReg.zero();
TabReg.put ("CODTAB", annoiva); ok = FALSE;
TabReg.zero();
TRectype rr (TabReg.curr()); TRectype nuovo (TabReg.curr());
TabReg.put ("CODTAB", _annop);
TabReg.read(_isgteq);
TRectype recc (TabReg.curr());
for (; !TabReg.eof(); TabReg.next())
{ TabReg.read(_isgteq);
if (TabReg.curr() != rr) break;
for (; !TabReg.eof(); TabReg.next())
int tiporeg = TabReg.get_int("I0"); {
if ( (tiporeg == 1)||(tiporeg == 2)||(tiporeg == 3) ) if (TabReg.curr() != recc) break;
TabReg.remove();
} TRecnotype nr = TabReg.recno();
int tiporeg = TabReg.get_int("I0");
ok = FALSE; TString cod_reg = TabReg.get("CODTAB");
TabReg.zero(); TDate data_vid = TabReg.get_date("D0");
TRectype nuovo (TabReg.curr()); data_vid.addyear();
TabReg.put ("CODTAB", _annop); cod_reg = cod_reg.mid(4,3);
if ( (tiporeg == 1)||(tiporeg == 2)||(tiporeg==3) )
TRectype recc (TabReg.curr()); {
ok = TRUE;
TabReg.read(_isgteq); nuovo = TabReg.curr();
TString16 cod;
for (; !TabReg.eof(); TabReg.next()) cod << annoiva << cod_reg;
{ nuovo.put("CODTAB", cod);
if (TabReg.curr() != recc) break; nuovo.put("I1", 0L);
nuovo.put("I2", 0L);
TRecnotype nr = TabReg.recno(); nuovo.put("I4", 0L);
int tiporeg = TabReg.get_int("I0"); nuovo.put("I5", 0L);
TString cod_reg = TabReg.get("CODTAB"); nuovo.put("I6", 0L);
TDate data_vid = TabReg.get_date("D0"); nuovo.put("S1", "");
data_vid.addyear(); nuovo.put("D0", data_vid);
cod_reg = cod_reg.mid(4,3); nuovo.put("D2", data);
if ( (tiporeg == 1)||(tiporeg == 2)||(tiporeg==3) ) nuovo.put("D3", data);
{ nuovo.put("R1", real(0.0));
ok = TRUE; nuovo.put("R2", real(0.0));
nuovo = TabReg.curr();
TString16 cod; TabReg.write(nuovo);
cod << annoiva << cod_reg; TabReg.readat(nr);
nuovo.put("CODTAB", cod); }
nuovo.put("I1", 0L); }
nuovo.put("I2", 0L); /*
nuovo.put("I4", 0L); if (!ok)
nuovo.put("I5", 0L); {
nuovo.put("I6", 0L); error_box("Non esistono i registri iva relativi all'anno iva precedente");
nuovo.put("S1", ""); return FALSE;
nuovo.put("D0", data_vid); }
nuovo.put("D2", data); */
nuovo.put("D3", data);
nuovo.put("R1", real(0.0)); //viene aggiornato l'anno iva sui parametri ditta
nuovo.put("R2", real(0.0)); TConfig conf(CONFIG_DITTA);
conf.set("AnLiIv", annoiva);
TabReg.write(nuovo);
TabReg.readat(nr); //sull'anagrafica ditte viene aggiornata la frequenza versamento
} nditte.zero();
} nditte.put("CODDITTA", _ditta);
/* if (nditte.read() == NOERR)
if (!ok) {
{ nditte.put(NDT_FREQVIVA, _frequenza);
error_box("Non esistono i registri iva relativi all'anno iva precedente"); nditte.rewrite();
return FALSE; }
} message_box("Apertura nuovo esercizio IVA completata");
*/ return TRUE;
}
//viene aggiornato l'anno iva sui parametri ditta
TConfig conf(CONFIG_DITTA); bool TAp_iva::menu(MENU_TAG m)
conf.set("AnLiIv", annoiva); {
TTable TabLia ("%LIA");
//sull'anagrafica ditte viene aggiornata la frequenza versamento TLocalisamfile nditte (LF_NDITTE);
nditte.zero(); TMask msk ("cg4500b");
nditte.put("CODDITTA", _ditta);
if (nditte.read() == NOERR) TConfig conf(CONFIG_DITTA);
{ _annop = conf.get("AnLiIv");
nditte.put(NDT_FREQVIVA, _frequenza); int aivap = atoi(_annop);
nditte.rewrite(); int anno = aivap+1;
}
TabLia.zero();
message_box("Apertura nuovo esercizio IVA completata"); TString16 chiave; chiave.format("%05ld%04d", get_firm(), anno);
return TRUE; TabLia.put("CODTAB",chiave);
} if (TabLia.read() == NOERR)
msk.set(F_FREQUENZA, TabLia.get("S7"));
bool TAp_iva::menu(MENU_TAG m) else
{ {
TTable TabLia ("%LIA"); TabLia.zero();
TLocalisamfile nditte (LF_NDITTE); chiave = "";
TMask msk ("cg4500b"); chiave.format("%05ld%04d", get_firm(), aivap);
TabLia.put("CODTAB", chiave);
TConfig conf(CONFIG_DITTA); if (TabLia.read() == NOERR)
_annop = conf.get("AnLiIv"); msk.set(F_FREQUENZA, TabLia.get("S7"));
//int aivap = atoi(conf.get("AnLiIv")); else
//TString16 anno ( format("%04d", aivap+1) ); {
int aivap = atoi(_annop); nditte.zero();
int anno = aivap+1; nditte.put("CODDITTA", get_firm());
if (nditte.read() == NOERR)
TabLia.zero(); msk.set(F_FREQUENZA, nditte.get(NDT_FREQVIVA));
TString16 chiave; chiave.format("%05ld%04d", get_firm(), anno); }
TabLia.put("CODTAB",chiave); }
if (TabLia.read() == NOERR)
msk.set(F_FREQUENZA, TabLia.get("S7")); msk.set(F_ANNOIVA, aivap+1);
else
{ msk.set_handler (F_ANNOIVA, mask_annoiva);
TabLia.zero();
chiave = ""; if (msk.run() == K_ENTER)
chiave.format("%05ld%04d", get_firm(), aivap); {
TabLia.put("CODTAB", chiave); _ditta = msk.get_long(F_CODDITTA);
if (TabLia.read() == NOERR) _annoiva = msk.get_int(F_ANNOIVA);
msk.set(F_FREQUENZA, TabLia.get("S7")); _frequenza = msk.get(F_FREQUENZA)[0];
else
{ apertura_iva();
nditte.zero(); }
nditte.put("CODDITTA", get_firm()); return FALSE;
if (nditte.read() == NOERR) }
msk.set(F_FREQUENZA, nditte.get(NDT_FREQVIVA));
}
}
msk.set(F_ANNOIVA, aivap+1);
msk.set_handler (F_ANNOIVA, mask_annoiva);
if (msk.run() == K_ENTER)
{
_ditta = msk.get_long(F_CODDITTA);
_annoiva = msk.get_int(F_ANNOIVA);
_frequenza = msk.get(F_FREQUENZA)[0];
}
return FALSE;
}

View File

@ -1,31 +1,30 @@
#include <relation.h> #include <relation.h>
#include <tabutil.h> #include <tabutil.h>
#include <printapp.h> #include <printapp.h>
#include <mask.h> #include <mask.h>
#include <utility.h> #include <utility.h>
#include <config.h> #include <config.h>
#include <urldefid.h> #include <urldefid.h>
class TAp_iva : public TApplication class TAp_iva : public TApplication
{ {
TTable* _esc, * _reg, * _lia, * _lbu; TTable* _reg, * _lia, * _lbu;
TLocalisamfile* _nditte; TLocalisamfile* _nditte;
int _anno, _newanno, _annoiva; int _annoiva;
TDate _dataini, _datafin, _datainp, _datafip; TString _annop;
TString _annop; long _ditta;
long _ditta; char _frequenza;
char _frequenza;
protected:
protected: static bool mask_annoiva(TMask_field&, KEY);
static bool mask_annoiva(TMask_field&, KEY);
public:
public: virtual bool create();
virtual bool create(); virtual bool destroy();
virtual bool destroy(); virtual bool menu(MENU_TAG m);
virtual bool menu(MENU_TAG m);
bool setta();
bool setta(); bool apertura_iva();
bool apertura_iva();
TAp_iva() {}
TAp_iva() {}
}; };