Patch level : 10.0
Files correlati : cg2.exe Ricompilazione Demo : [ ] Commento : Corretta decodifica contropartite di saldaconto per GUIMATRAG git-svn-id: svn://10.65.10.50/branches/R_10_00@22027 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
ae3a9eb666
commit
599002f415
@ -894,6 +894,31 @@ bool TPrimanota_application::test_swap(bool ritsoc)
|
||||
return s;
|
||||
}
|
||||
|
||||
void TPrimanota_application::add_cup_or_cig(short id, const TRectype& rec, TToken_string& riga) const
|
||||
{
|
||||
const bool cup = id == CG_CUP;
|
||||
const TString80 cod = rec.get(cup ? RMV_CUP : RMV_CIG);
|
||||
if (cod.full())
|
||||
{
|
||||
riga.add(cod, id-FIRST_FIELD); // Tipo di riga 115 o 117
|
||||
const TString& desc = cache().get(cup ? "%CUP" : "%CIG", cod, "S0");
|
||||
riga.add(desc, (cup ? CG_DCUP : CG_DCIG) - FIRST_FIELD);
|
||||
}
|
||||
}
|
||||
|
||||
void TPrimanota_application::add_cup_or_cig(short id, TConfig& ini, TToken_string& riga) const
|
||||
{
|
||||
const bool cup = id == CG_CUP;
|
||||
const TString80 cod = ini.get(cup ? RMV_CUP : RMV_CIG);
|
||||
if (cod.full())
|
||||
{
|
||||
riga.add(cod, id-FIRST_FIELD); // Tipo di riga 115 o 117
|
||||
const TString& desc = cache().get(cup ? "%CUP" : "%CIG", cod, "S0");
|
||||
riga.add(desc, (cup ? CG_DCUP : CG_DCIG) - FIRST_FIELD);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int TPrimanota_application::read(TMask& m)
|
||||
{
|
||||
m.reset(); // Azzera campi e relativi dirty = 3
|
||||
@ -946,14 +971,14 @@ int TPrimanota_application::read(TMask& m)
|
||||
conto.get(r, true);
|
||||
riga.add(conto.string(0x3)); // Contropartita 110-114
|
||||
|
||||
riga.add(r.get(RMV_CUP), CG_CUP-FIRST_FIELD);// Tipo di riga 115
|
||||
riga.add(r.get(RMV_CIG), CG_CIG-FIRST_FIELD);// Tipo di riga 117
|
||||
add_cup_or_cig(CG_CUP, r, riga); // CUP 115-116
|
||||
add_cup_or_cig(CG_CIG, r, riga); // CIG 117-118
|
||||
|
||||
const char tipo = r.get_char(RMV_ROWTYPE);
|
||||
riga.add(tipo, CG_ROWTYPE-FIRST_FIELD); // Tipo di riga 119
|
||||
|
||||
disable_cgs_cells(i, tipo);
|
||||
cgs().check_row(i);
|
||||
//cgs().check_row(i); // Fare le decodifche a mano: NON USARE!
|
||||
}
|
||||
|
||||
if (_iva == nessuna_iva && is_fattura()) // Ci dovrebbero essere delle scadenze
|
||||
@ -961,7 +986,7 @@ int TPrimanota_application::read(TMask& m)
|
||||
pags().reset(); // Azzera sheet rate
|
||||
if (!read_scadenze(m)) // Se non esiste fattura
|
||||
{
|
||||
const TString dd(m.get(F_DATADOC));
|
||||
const TString16 dd = m.get(F_DATADOC);
|
||||
set_pagamento(NULL, dd); // Ignora codice pagamento in testata
|
||||
}
|
||||
}
|
||||
@ -1822,11 +1847,11 @@ void TPrimanota_application::ini2mask(TConfig& ini, TMask& msk, bool query)
|
||||
ini2bill(ini, conto, true);
|
||||
if (conto.gruppo() > 0)
|
||||
conto.add_to(riga, 9, 0x3); // Contropartita 110-114
|
||||
|
||||
|
||||
riga.add(tipo, cg.cid2index(CG_ROWTYPE)); // Tipo di riga 115
|
||||
riga.add(ini.get(RMV_CUP), cg.cid2index(CG_CUP)); // CUP
|
||||
riga.add(ini.get(RMV_CIG), cg.cid2index(CG_CIG)); // CIG
|
||||
|
||||
add_cup_or_cig(CG_CUP, ini, riga); // CUP 115-116
|
||||
add_cup_or_cig(CG_CIG, ini, riga); // CIG 117-118
|
||||
|
||||
riga.add(tipo, cg.cid2index(CG_ROWTYPE)); // Tipo di riga 119
|
||||
}
|
||||
|
||||
if (is_fattura())
|
||||
|
@ -327,7 +327,7 @@ void TPrimanota_application::disable_cgs_cells(int n, char tipo)
|
||||
break;
|
||||
first = 2;
|
||||
case 'I':
|
||||
last = 7; // Imponibile
|
||||
last = 7; // Imponibile o contropartita saldaconto
|
||||
break;
|
||||
default:
|
||||
last = 0; // Solo contabile
|
||||
@ -336,10 +336,15 @@ void TPrimanota_application::disable_cgs_cells(int n, char tipo)
|
||||
|
||||
bool needs_update = false;
|
||||
|
||||
if (last)
|
||||
if (last > first)
|
||||
{
|
||||
for (int i = first; i < last; i++)
|
||||
cg.disable_cell(n, i);
|
||||
if (first == 0)
|
||||
{
|
||||
for (short cc = CG_CUP; cc <= CG_DCIG; cc++)
|
||||
cg.disable_cell(n, cc - FIRST_FIELD);
|
||||
}
|
||||
needs_update = true;
|
||||
}
|
||||
|
||||
|
@ -253,6 +253,9 @@ protected:
|
||||
bool sub_cgs_imp(int n, const TImporto& importo);
|
||||
void disable_cgs_cells(int n, char tipo);
|
||||
|
||||
void add_cup_or_cig(short id, const TRectype& rec, TToken_string& riga) const;
|
||||
void add_cup_or_cig(short id, TConfig& ini, TToken_string& riga) const;
|
||||
|
||||
void add_cgs_rit(bool fisc);
|
||||
void generazione_righe_cg(int r);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user