Corretto il programma di aggiornamento codici attivita su progressivi
IVA: la tabella PLA (progressivi liq. ann.) non era gestita in modo corretto. git-svn-id: svn://10.65.10.50/trunk@3444 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
bfbd4f6293
commit
3c943886d3
@ -1,6 +1,7 @@
|
||||
//*****************************************************
|
||||
//* Aggiornamento codice attivita' su progressivi IVA *
|
||||
//*****************************************************
|
||||
#include <prefix.h>
|
||||
#include <mov.h>
|
||||
#include "cg1300.h"
|
||||
#include "cg1304.h"
|
||||
@ -52,7 +53,7 @@ bool TAgg_codatt::menu(MENU_TAG m)
|
||||
aggiorna_att("POM");
|
||||
aggiorna_att("PAM");
|
||||
aggiorna_att("PPA");
|
||||
aggiorna_att("PLA");
|
||||
aggiorna_att("%PLA");
|
||||
aggiorna_att("PLM");
|
||||
}
|
||||
else
|
||||
@ -123,9 +124,15 @@ void TAgg_codatt::cancella_rec()
|
||||
}
|
||||
}
|
||||
|
||||
TTable pla("PLA");
|
||||
for (pla.first(); !pla.eof(); pla.next())
|
||||
pla.remove();
|
||||
TTable pla("%PLA");
|
||||
TRecfield r_ditta(pla.curr(),"CODTAB",0,4);
|
||||
const long firm = prefix().get_codditta();
|
||||
for (pla.first(); !pla.eof(); pla.next())
|
||||
{
|
||||
if (firm != (long)r_ditta)
|
||||
continue;
|
||||
pla.remove();
|
||||
}
|
||||
/***
|
||||
TTable rmb("RMB");
|
||||
for (rmb.first(); !rmb.eof(); rmb.next())
|
||||
@ -135,19 +142,28 @@ void TAgg_codatt::cancella_rec()
|
||||
|
||||
void TAgg_codatt::aggiorna_att(const char* nome)
|
||||
{
|
||||
const bool is_pla = nome == "%PLA";
|
||||
const long firm = prefix().get_codditta();
|
||||
TTable tab(nome);
|
||||
tab.setkey(1);
|
||||
tab.zero();
|
||||
TString16 chiave;
|
||||
TString16 old_att(_da); old_att.right_just(5,'0');
|
||||
TString16 new_att(_a); new_att.right_just(5,'0');
|
||||
if (is_pla) chiave << firm;
|
||||
chiave << _anno << old_att;
|
||||
tab.put("CODTAB", chiave);
|
||||
TRectype curr (tab.curr());
|
||||
TRecfield r_ditta(tab.curr(),"CODTAB",0,4);
|
||||
tab.read(_isgteq);
|
||||
for (; !tab.eof(); tab.next())
|
||||
{
|
||||
if (tab.curr() != curr) break;
|
||||
{
|
||||
if (is_pla)
|
||||
{
|
||||
if (firm != (long)r_ditta) break;
|
||||
}
|
||||
else
|
||||
if (tab.curr() != curr) break;
|
||||
|
||||
const TString80 codtab = tab.get("CODTAB");
|
||||
//const TString16 cod_att = codtab.mid(4,5); //e' uguale a old_att
|
||||
@ -155,8 +171,13 @@ void TAgg_codatt::aggiorna_att(const char* nome)
|
||||
{
|
||||
TRectype vecchio (tab.curr());
|
||||
TRectype nuovo (tab.curr());
|
||||
const TString80 cc = codtab.sub(9);
|
||||
TString80 cc;
|
||||
if (is_pla)
|
||||
cc = codtab.sub(13);
|
||||
else
|
||||
cc = codtab.sub(9);
|
||||
TString80 cod;
|
||||
if (is_pla) cod << firm;
|
||||
cod << _anno << new_att << cc;
|
||||
nuovo.put("CODTAB", cod);
|
||||
tab.write(nuovo);
|
||||
|
Loading…
x
Reference in New Issue
Block a user