Patch level : nopatch

Files correlati     :
Commento        :

Implementazione FP
This commit is contained in:
Alessandro Bonazzi 2021-12-17 17:04:04 +01:00
parent ed176f1c39
commit 830e58a74f
9 changed files with 381 additions and 341 deletions

File diff suppressed because it is too large Load Diff

@ -1,6 +1,10 @@
#ifndef __BA1100_H
#define __BA1100_H
#ifndef __APPLICAT_H
#include <applicat.h>
#endif
#ifndef __CONFIG_H
#include <config.h>
#endif
@ -17,6 +21,14 @@
class TMask_field;
#endif
#ifndef __PRINTER_H
#include <printer.h>
#endif
#ifndef __REPUTILS_H
#include <reputils.h>
#endif
#include "ba1100a.h"
///////////////////////////////////////////////////////////
@ -25,71 +37,129 @@ class TMask_field;
class TDir_sheet : public TSheet
{
TTrec _rec;
TDir _dir;
FileDes _s_dir;
long _items;
TTrec _rec;
TDir _dir;
FileDes _s_dir;
long _items;
protected:
virtual long get_items() const { return _items; }
virtual void get_row(long n, TToken_string& r);
protected:
virtual long get_items() const { return _items; }
virtual void get_row(long n, TToken_string& r);
public:
const TDir& dir() const { return _dir; }
TDir& dir() { return _dir; }
const TTrec& rec() const { return _rec; }
TTrec& rec(){ return _rec; }
void set_items(long items) { _items = items; }
void add();
void rebuild() { _items = _dir.items();}
const TDir& dir() const { return _dir; }
TDir& dir() { return _dir; }
const TTrec& rec() const { return _rec; }
TTrec& rec() { return _rec; }
void set_items(long items) { _items = items; }
void add();
void rebuild() { _items = _dir.items(); }
TDir_sheet(const char* title, bool superprassi);
TDir_sheet(const char* title, bool superprassi);
};
class TRec_sheet : public TObject
{
TTrec _rec;
TTrec _rec_old;
TDir _dir;
bool _comfile;
TConfig *_descr;
static TMask *_mask;
TFilename _descfname;
TString16 _tab;
bool _external;
TTrec _rec;
TTrec _rec_old;
TDir _dir;
bool _comfile;
TConfig *_descr;
static TMask *_mask;
TFilename _descfname;
TString16 _tab;
bool _external;
protected:
bool check_key_expr(int key, const char* key_expr);
static bool key_notify(TSheet_field& s, int r, KEY k);
static bool fld_notify(TSheet_field& s, int r, KEY k);
void save();
void save_desc();
virtual long get_items() const { return _rec.fields(); }
bool check_key_expr(int key, const char* key_expr);
static bool key_notify(TSheet_field& s, int r, KEY k);
static bool fld_notify(TSheet_field& s, int r, KEY k);
void save();
void save_desc();
virtual long get_items() const { return _rec.fields(); }
public:
const TDir& dir() const { return _dir; }
const TTrec& rec() const { return _rec; }
const char* descfname() const { return _descfname;}
const char* tab() const { return _tab; }
void edit();
const TDir& dir() const { return _dir; }
const TTrec& rec() const { return _rec; }
const char* descfname() const { return _descfname; }
const char* tab() const { return _tab; }
void edit();
TRec_sheet(int logicnum, const char* tab);
TRec_sheet(TExternisamfile* file);
virtual ~TRec_sheet();
TRec_sheet(int logicnum, const char* tab);
TRec_sheet(TExternisamfile* file);
virtual ~TRec_sheet();
};
class TEdit_file : public TObject
{
protected:
void edit_record(TRectype& rec);
bool browse_cursor(TCursor& cur, const TFilename& name);
void edit_record(TRectype& rec);
bool browse_cursor(TCursor& cur, const TFilename& name);
public:
bool browse_file(int logicnum, const TFilename& name, const TString& tab, const int selKey = 1);
bool browse_file(TExternisamfile* file, const TFilename& name);
TEdit_file() {}
virtual ~TEdit_file() {}
bool browse_file(int logicnum, const TFilename& name, const TString& tab, const int selKey = 1);
bool browse_file(TExternisamfile* file, const TFilename& name);
TEdit_file() {}
virtual ~TEdit_file() {}
};
class TManutenzione_app : public TSkeleton_application
{
TDir_sheet* _browse;
TArray _dirs;
TArray _recs;
TMask* _mask;
long _firm;
long _level;
long _history_firm;
TRec_sheet* _rec;
TLog_report* _log;
bool _print_log;
bool _superprassi;
protected:
virtual void main_loop();
virtual bool create();
virtual bool destroy();
void insert_riga(long, TToken_string&);
void edit_riga(long, TToken_string&);
void edit_riga(const TString&);
void delete_riga(long);
virtual bool extended_firm() const { return true; }
bool set_converting();
bool reset_converting();
bool try_to_recover(TSystemisamfile& f, int err);
void update();
void update_dir();
void convert_dir();
virtual void print();
virtual void do_print(TPrinter & p, TRec_sheet & r);
const char* dumpfilename(const FileDes& dep) const;
void load_des();
void open_history();
void put_history(const char* firm);
void close_history();
void dump_trc(const char * dir, const bool des_too, const long modules);
void repair_file(int i);
void save_file(const char * file);
virtual void show_log();
void open_log();
void write_log(const char* line, const int severity = 0);
void close_log();
bool moveable_file(int file) const;
public:
long get_firm() const { return _firm; }
TManutenzione_app();
};
inline TManutenzione_app & app() { return (TManutenzione_app &)main_app(); }
#endif

@ -275,9 +275,17 @@ void TRec_sheet::edit()
}
f2.set_notify(key_notify);
f2.set_append(FALSE);
int nkeys = _rec.keys();
for (i = 0; i < nkeys; i++) f2.row(i) = _rec.keydef(i);
f2.disable_cell(0, 1);
int nkeys = _rec.keys();
for (i = 0; i < nkeys; i++)
f2.row(i) = _rec.keydef(i);
f2.disable_cell(0, 1);
const bool enable_save = (_dir.is_com() && app().get_firm() == 0) ||
(_dir.is_firm() && app().get_firm() > 0);
_mask->enable(DLG_SAVEREC, enable_save);
while (true)
{
f1.force_update(0); // Non togliere, serve per fare l'update della descrizione quando si fa l'import!!

@ -136,7 +136,7 @@ protected:
bool dir_gen() const;
bool trc_gen() const;
bool export_manager(const TString generalErrors) const;
bool show_log();
bool show_export_log();
void log(int severity, const char* msg);
public:
@ -980,7 +980,7 @@ bool TMSSQLExport_app::export_manager(TString generalErrors) const
return true;
}
bool TMSSQLExport_app::show_log()
bool TMSSQLExport_app::show_export_log()
{
if (_log)
{
@ -1089,7 +1089,7 @@ void TMSSQLExport_app::main_loop()
}
message_box("Migrazione effettuata correttamente!");
} while (loop);
show_log();
show_export_log();
}
else
message_box("Fallita connessione");

@ -52,26 +52,24 @@ bool TTestrel_application::user_destroy()
// Testmask
///////////////////////////////////////////////////////////
class TTest_application : public TApplication
class TTest_application : public TSkeleton_application
{
const char* _maskname;
protected:
bool create() { return menu(0); }
bool destroy() { return TRUE; }
bool menu(MENU_TAG);
void main_loop();
public:
TTest_application(const char* name) : _maskname(name) {}
};
bool TTest_application::menu(MENU_TAG)
void TTest_application::main_loop()
{
if (*_maskname)
{
TMask m(_maskname);
KEY k = m.run();
if (k == K_QUIT) stop_run();
while (m.run() == K_ENTER);
}
else
{
@ -83,8 +81,6 @@ bool TTest_application::menu(MENU_TAG)
m.run();
}
}
return FALSE;
}
///////////////////////////////////////////////////////////

@ -4,7 +4,7 @@ PAGE "Richiesta" -1 -1 76 12
STRING F_NOME 50
BEGIN
PROMPT 3 3 "Nome maschera"
PROMPT 3 3 "Maschera "
END
BUTTON DLG_OK 10 2

@ -1742,6 +1742,7 @@ class TMailer : public TSkeleton_application
bool _start_full_screen;
protected:
virtual bool task_win_iconized() const { return !_start_full_screen && xvt_win_is_taskbar_visible(); }
virtual bool create();
virtual void main_loop();
};
@ -1767,7 +1768,7 @@ void TMailer::main_loop()
WINDOW tray = xvt_trayicon_create(TASK_WIN, 9013, appname); // CampoServer.ico
open_files(LF_USER, 0);
if (!_start_full_screen && xvt_win_is_taskbar_visible())
/* if (!_start_full_screen && xvt_win_is_taskbar_visible())
{
if (tray != NULL_WIN)
{
@ -1778,7 +1779,7 @@ void TMailer::main_loop()
if (xvt_rect_get_width(&rct_postman) >= xvt_rect_get_width(&rct_screen) - 64)
xvt_vobj_set_visible(TASK_WIN, FALSE);
}
}
} */
TMailer_mask mm;

@ -46,7 +46,7 @@ BEGIN
WARNING "Manca la descrizione"
END
LIST LST_TABIVA_S1 2 20
LIST LST_TABIVA_S1 2 28
BEGIN
PROMPT 2 2 "Tipo "
FIELD S1
@ -70,11 +70,15 @@ BEGIN
MESSAGE CLEAR,FLD_TABIVA_R0|CLEAR,FLD_TABIVA_I0
MESSAGE ENABLE,FLD_TABIVA_I3|ENABLE,FLD_TABIVA_I4|SHOW,CHK_TABIVA_B5
MESSAGE ENABLE,FLD_TABIVA_S6
END
ITEM "RC|Reverse Charge (vendite)"
MESSAGE CLEAR,FLD_TABIVA_R0|CLEAR,FLD_TABIVA_I0
MESSAGE CLEAR,FLD_TABIVA_I3|CLEAR,FLD_TABIVA_I4|HIDE,CHK_TABIVA_B5
MESSAGE ENABLE,FLD_TABIVA_S6
END
STRING FLD_TABIVA_S6 4
BEGIN
PROMPT 39 2 "C.IVA a cui ventilare "
PROMPT 44 2 "C.IVA a cui ventilare "
FLAGS "U"
FIELD S6
COPY USE FLD_TABIVA_CODTAB
@ -146,7 +150,7 @@ END
BOOLEAN CHK_TABIVA_B5
BEGIN
PROMPT 30 5 "Escluso dal calcolo dei bolli sufatture esenti"
PROMPT 30 5 "Escluso dal calcolo dei bolli su fatture esenti"
FIELD B5
END
@ -188,6 +192,8 @@ BEGIN
INPUT FLD_TABIVA_I3
OUTPUT FLD_TABIVA_I3
ITEM " |Nessuno"
ITEM "14|Passaggi interni"
ITEM "16|Cessioni beni ammortizzabili"
ITEM "20|Operazioni non imponibili (comma 1, artt.8, 8bis e 9)"
ITEM "21|Operazioni non imponibili a seguito di dich. d'intento"
ITEM "22|Altre operazioni non imponibili"
@ -201,6 +207,7 @@ BEGIN
ITEM "36|Cessione di microprocessori"
ITEM "37|Prestazioni comparto edile e settori connessi"
ITEM "38|Operazioni settore energetico"
ITEM "39|Reverse charge altri casi"
ITEM "B1|Ammontare op. es. escluse da nr. 1 a 9 e 11 art. 10"
ITEM "B2|Ammontare op. es. di cui al nr. 11 art. 10"
ITEM "B3|Ammontare op. es. di cui ai nr. 1 a 9 art. 10"

@ -1,7 +1,3 @@
9
1
<<<<<<< HEAD
%nditte|0|0|652|0|Ditte|||
=======
%nditte|0|0|754|0|Ditte|||
>>>>>>> 0cadcd6dee4a4a67021c26174d7dea2a761fe182