Corretta formattazione

git-svn-id: svn://10.65.10.50/trunk@732 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 1994-12-05 18:54:04 +00:00
parent 49627f2b18
commit f3b7edcd6f

View File

@ -1,173 +1,173 @@
#include <xvt.h> #include <xvt.h>
#include <applicat.h> #include <applicat.h>
#include <isam.h> #include <isam.h>
#include <mailbox.h> #include <mailbox.h>
#include <progind.h> #include <progind.h>
#include <prefix.h> #include <prefix.h>
#include <urldefid.h> #include <urldefid.h>
#include <utility.h> #include <utility.h>
#include <rmov.h> #include <rmov.h>
#define usage "Errore - uso : bacnv 1 ditta" #define usage "Errore - uso : bacnv 1 ditta"
class TConversione_archivi : public TApplication class TConversione_archivi : public TApplication
{ {
int _nconv; int _nconv;
long _codditta; long _codditta;
long _oldditta; long _oldditta;
int _error; int _error;
protected: protected:
virtual bool create() ; virtual bool create() ;
virtual bool destroy() ; virtual bool destroy() ;
virtual bool menu(MENU_TAG); virtual bool menu(MENU_TAG);
bool convert_rmov(TLocalisamfile & rmov, TArray & recs, int nrecs); bool convert_rmov(TLocalisamfile & rmov, TArray & recs, int nrecs);
void contropartita_rmov(); void contropartita_rmov();
public: public:
TConversione_archivi() : _oldditta(0), _codditta(0), _error(0) {} TConversione_archivi() : _oldditta(0), _codditta(0), _error(0) {}
}; };
bool TConversione_archivi::create() bool TConversione_archivi::create()
{ {
if (argc() < 3) if (argc() < 3)
{ {
_error = 101; _error = 101;
TMessage msg("ba1100", 0, format("%d", _error)); TMessage msg("ba1100", 0, format("%d", _error));
msg.send(); msg.send();
return FALSE; return FALSE;
} }
else else
{ {
_oldditta = get_firm(); _oldditta = get_firm();
_codditta = atol(argv(argc() - 1)); _codditta = atol(argv(argc() - 1));
_nconv = atoi(argv(1)); _nconv = atoi(argv(1));
if (_codditta != _oldditta) if (_codditta != _oldditta)
{ {
if (_codditta == 0) prefhndl->set("com"); if (_codditta == 0) prefhndl->set("com");
else set_firm(_codditta); else set_firm(_codditta);
} }
dispatch_e_menu(MENU_ITEM(1)); dispatch_e_menu(MENU_ITEM(1));
return TRUE; return TRUE;
} }
} }
bool TConversione_archivi::destroy() bool TConversione_archivi::destroy()
{ {
if (_codditta != _oldditta) if (_codditta != _oldditta)
{ {
if (_oldditta == 0) prefhndl->set("com"); if (_oldditta == 0) prefhndl->set("com");
else set_firm(_oldditta); else set_firm(_oldditta);
} }
if (_error > 0) if (_error > 0)
{ {
TMessage msg("ba1100", 0, format("%d", _error)); TMessage msg("ba1100", 0, format("%d", _error));
msg.send(); msg.send();
} }
return TRUE; return TRUE;
} }
bool TConversione_archivi::menu(MENU_TAG) bool TConversione_archivi::menu(MENU_TAG)
{ {
switch (_nconv) switch (_nconv)
{ {
case 1: case 1:
contropartita_rmov(); break; contropartita_rmov(); break;
default: default:
break; break;
} }
return FALSE; return FALSE;
} }
bool TConversione_archivi::convert_rmov(TLocalisamfile & rmov, TArray & recs, int nrecs) bool TConversione_archivi::convert_rmov(TLocalisamfile & rmov, TArray & recs, int nrecs)
{ {
const TRecnotype pos = rmov.recno(); const TRecnotype pos = rmov.recno();
for (int i = 0; i < nrecs; i++) for (int i = 0; i < nrecs; i++)
{ {
TRectype & r0 = (TRectype &) recs[i]; TRectype & r0 = (TRectype &) recs[i];
const int rcontr = r0.get_int(RMV_RCONTR) - 1; const int rcontr = r0.get_int(RMV_RCONTR) - 1;
if (rcontr >= 0 && rcontr < nrecs) if (rcontr >= 0 && rcontr < nrecs)
{ {
const TRectype & r1 = (const TRectype &) recs[rcontr]; const TRectype & r1 = (const TRectype &) recs[rcontr];
r0.put(RMV_TIPOCC, r1.get(RMV_TIPOC)); r0.put(RMV_TIPOCC, r1.get(RMV_TIPOC));
r0.put(RMV_GRUPPOC, r1.get_int(RMV_GRUPPO)); r0.put(RMV_GRUPPOC, r1.get_int(RMV_GRUPPO));
r0.put(RMV_CONTOC, r1.get_int(RMV_CONTO)); r0.put(RMV_CONTOC, r1.get_int(RMV_CONTO));
r0.put(RMV_SOTTOCONTOC, r1.get_long(RMV_SOTTOCONTO)); r0.put(RMV_SOTTOCONTOC, r1.get_long(RMV_SOTTOCONTO));
} }
r0.zero(RMV_RCONTR); r0.zero(RMV_RCONTR);
if (rmov.rewrite(r0) != NOERR) if (rmov.rewrite(r0) != NOERR)
{ {
const long reg = r0.get_long(RMV_NUMREG); const long reg = r0.get_long(RMV_NUMREG);
error_box("Non riesco ad aggiornare la riga contabile %ld / %d\nErrore n. %d", reg, i + 1, rmov.status()); error_box("Non riesco ad aggiornare la riga contabile %ld / %d\nErrore n. %d", reg, i + 1, rmov.status());
rmov.readat(pos); rmov.readat(pos);
_error = 102; _error = 102;
return FALSE; return FALSE;
} }
} }
rmov.readat(pos); rmov.readat(pos);
return TRUE; return TRUE;
} }
void TConversione_archivi::contropartita_rmov() void TConversione_archivi::contropartita_rmov()
{ {
TDir d; TDir d;
d.get(LF_RMOV); d.get(LF_RMOV);
if (d.eox() == 0) return; if (d.eox() == 0) return;
TLocalisamfile rmov(LF_RMOV); TLocalisamfile rmov(LF_RMOV);
const TRecnotype nitems = rmov.items(); const TRecnotype nitems = rmov.items();
TArray recs; TArray recs;
long oldreg = -1; long oldreg = -1;
long reg = -1; long reg = -1;
int nrow = 0; int nrow = 0;
TProgind p(nitems ? nitems : 1, TProgind p(nitems ? nitems : 1,
format("Conversione righe di movimento della ditta %ld", get_firm()), format("Conversione righe di movimento della ditta %ld", get_firm()),
TRUE, TRUE, 70); TRUE, TRUE, 70);
for (rmov.first(); rmov.good(); rmov.next()) for (rmov.first(); rmov.good(); rmov.next())
{ {
p.addstatus(1); p.addstatus(1);
reg = rmov.get_long(RMV_NUMREG); reg = rmov.get_long(RMV_NUMREG);
if (oldreg != reg) if (oldreg != reg)
{ {
if (oldreg > 0) if (oldreg > 0)
if (convert_rmov(rmov, recs, nrow) == FALSE) if (convert_rmov(rmov, recs, nrow) == FALSE)
return; return;
oldreg = reg; oldreg = reg;
nrow = 0; nrow = 0;
} }
recs.add(rmov.curr(), nrow++); recs.add(rmov.curr(), nrow++);
CHECKD(nrow == rmov.get_int(RMV_NUMRIG), "Missed row ", nrow); CHECKD(nrow == rmov.get_int(RMV_NUMRIG), "Missed row ", nrow);
} }
if (oldreg > 0) if (oldreg > 0)
if (convert_rmov(rmov, recs, nrow) == FALSE) if (convert_rmov(rmov, recs, nrow) == FALSE)
return; return;
} }
HIDDEN void bacnv(int argc, char** argv) HIDDEN void bacnv(int argc, char** argv)
{ {
TConversione_archivi a ; TConversione_archivi a ;
a.run(argc, argv, "Conversione archivi"); a.run(argc, argv, "Conversione archivi");
} }
int main(int argc,char** argv) int main(int argc,char** argv)
{ {
const int r = (argc > 1) ? atoi(argv[1]) : 0; const int r = (argc > 1) ? atoi(argv[1]) : 0;
if (r <= 0 || r > 1) if (r <= 0 || r > 1)
{ {
error_box(usage); error_box(usage);
return 100; return 100;
} }
bacnv(argc, argv); bacnv(argc, argv);
return 0; return 0;
} }