Patch level : 12.0 nopatch
Files correlati : Commento: sistemazione progetti e programmi che non si compilavano
This commit is contained in:
parent
bf9fc8bb42
commit
89eec902ae
@ -1,4 +1,4 @@
|
||||
#include <relapp.h>
|
||||
#include <relapp.h>
|
||||
#include <automask.h>
|
||||
#include <config.h>
|
||||
#include <lffiles.h>
|
||||
@ -70,7 +70,7 @@ const TRectype getLAM(int anno, int mese)
|
||||
// Ritorna il record valido richiesto di tabcom.VER
|
||||
const TRectype getVER(int anno, int mese)
|
||||
{
|
||||
// Questa tabella ha come chiave l'inizio validità, creo un cursore e scorro finche non trovo l'ultimo periodo valido
|
||||
// Questa tabella ha come chiave l'inizio validità, creo un cursore e scorro finche non trovo l'ultimo periodo valido
|
||||
static TRelation rver(LF_TABCOM);
|
||||
static TRectype from(rver.curr()); from.put("COD", "VER");
|
||||
static TRectype to(rver.curr()); to.put("COD" , "VER");
|
||||
@ -100,7 +100,7 @@ const TRectype getVER(int anno, int mese)
|
||||
}
|
||||
|
||||
/* Scopiazzata e divisa in due da cg4304.cpp
|
||||
* Calcola solo le imposte, aggiunto controllo indetraibilità, non devono essere presi in considerazione
|
||||
* Calcola solo le imposte, aggiunto controllo indetraibilità, non devono essere presi in considerazione
|
||||
* i movimenti se indetraibili
|
||||
*/
|
||||
|
||||
@ -198,7 +198,7 @@ void calcola_credito_prec(real& creprec, real& creaprec, bool mensile, int anno,
|
||||
for(cur_liq = 0; cur_liq.pos() < cur_liq.items(); ++cur_liq)
|
||||
{
|
||||
TRectype row_liq = cur_liq.curr();
|
||||
if(row_liq.get_int("MESE") >= mese) break; // Perchè li prende lo stesso?
|
||||
if(row_liq.get_int("MESE") >= mese) break; // Perchè li prende lo stesso?
|
||||
|
||||
trovato = trovato || row_liq.get_real("CREAPREC") > ZERO;
|
||||
creprec = row_liq.get_real("IVAVERC");
|
||||
@ -218,7 +218,7 @@ class TCom_liq_per_iva_msk : public TAutomask
|
||||
bool _last_elab_pas;
|
||||
protected:
|
||||
bool _mensile;
|
||||
// Aggiunta questa variabile per specificare se è stato impostato un tipo di liquidazione.
|
||||
// Aggiunta questa variabile per specificare se è stato impostato un tipo di liquidazione.
|
||||
// In Release sembra che durante la ricerca salta l'inizializzazione e imposta prima gli altri campi
|
||||
bool _init_liq;
|
||||
TRectype _true_data;
|
||||
@ -316,10 +316,10 @@ bool TCom_liq_per_iva_msk::on_field_event(TOperable_field& o, TField_event e, lo
|
||||
// Vado a prendere i dati di quel mese dalla liquidazione IVA
|
||||
if(e == fe_button)
|
||||
{
|
||||
// Controllo che non ci sia già
|
||||
// Controllo che non ci sia già
|
||||
if(!cache().get(LF_IVALIQ, TString(get(F_ANNO)) << "|" << get(F_MESE) << "|U").empty())
|
||||
{
|
||||
if(!yesno_box("Sono già stati elaborati questi dati, si desidera ricalcolarli?"))
|
||||
if(!yesno_box("Sono già stati elaborati questi dati, si desidera ricalcolarli?"))
|
||||
break;
|
||||
}
|
||||
extractinator();
|
||||
@ -339,13 +339,13 @@ bool TCom_liq_per_iva_msk::on_field_event(TOperable_field& o, TField_event e, lo
|
||||
if(e == fe_init)
|
||||
set(F_ATT_COMP, _last_elab_att ? "X" : " ");
|
||||
else if(e == fe_modify)
|
||||
warning_box("Attenzione la modifica di questo valore comporta un diverso calcolo dei rigo VP2. L'utente è pregato di controllarne la correttezza.\nSi consiglia di ricalcolare e rispedire tutti periodi dell'anno");
|
||||
warning_box("Attenzione la modifica di questo valore comporta un diverso calcolo dei rigo VP2. L'utente è pregato di controllarne la correttezza.\nSi consiglia di ricalcolare e rispedire tutti periodi dell'anno");
|
||||
break;
|
||||
case F_PAS_COMP:
|
||||
if (e == fe_init)
|
||||
set(F_PAS_COMP, _last_elab_pas ? "X" : " ");
|
||||
else if (e == fe_modify)
|
||||
warning_box("Attenzione la modifica di questo valore comporta un diverso calcolo dei rigo VP3. L'utente è pregato di controllarne la correttezza.\nSi consiglia di ricalcolare e rispedire tutti periodi dell'anno");
|
||||
warning_box("Attenzione la modifica di questo valore comporta un diverso calcolo dei rigo VP3. L'utente è pregato di controllarne la correttezza.\nSi consiglia di ricalcolare e rispedire tutti periodi dell'anno");
|
||||
break;
|
||||
case DLG_SAVEREC:
|
||||
if(e == fe_button)
|
||||
@ -411,7 +411,7 @@ bool TCom_liq_per_iva_msk::on_field_event(TOperable_field& o, TField_event e, lo
|
||||
// Ricalcolo VP13 e VP14
|
||||
real debito = get_real(F_IVADOV) + get_real(F_DEBPREC) + get_real(F_INTLIQTRI);
|
||||
|
||||
/* Se il credito anno precedente è negativo devo mantenerlo tale ma sottrarlo al credito dell'anno precedente delle dichiarazioni precedenti */
|
||||
/* Se il credito anno precedente è negativo devo mantenerlo tale ma sottrarlo al credito dell'anno precedente delle dichiarazioni precedenti */
|
||||
real creaprec = get_real(F_CREAPREC);
|
||||
if(creaprec < ZERO)
|
||||
{
|
||||
@ -445,9 +445,9 @@ bool TCom_liq_per_iva_msk::on_field_event(TOperable_field& o, TField_event e, lo
|
||||
// Funzione che effettivamente estrapola i dati necessari
|
||||
void TCom_liq_per_iva_msk::extractinator() // Per gli amici GTFO
|
||||
{
|
||||
/* Devo estrapolare più mesi, per farlo vado ciclo n volte (1 o 3) in base se stiamo parlando di trimestralità o meno
|
||||
/* Devo estrapolare più mesi, per farlo vado ciclo n volte (1 o 3) in base se stiamo parlando di trimestralità o meno
|
||||
* I dati da prelevare saranno in PRM, LIM e %LIA
|
||||
* In PRM e LIM troverò le informazioni suddivise per mese, mentre in %LIA ho l'anno di liquidazione
|
||||
* In PRM e LIM troverò le informazioni suddivise per mese, mentre in %LIA ho l'anno di liquidazione
|
||||
*/
|
||||
int start = _mensile ? get_int(F_MESE) : (((get_int(F_TRIMESTRE) - 1) * 3) + 1);
|
||||
int end = _mensile ? start : start + 2;
|
||||
@ -506,7 +506,7 @@ void TCom_liq_per_iva_msk::extractinator() // Per gli amici GTFO
|
||||
// Riga LIM
|
||||
const TRectype row_lim = getLIM(anno, start);
|
||||
|
||||
// Controllo che la liquidazione è stata effettuata, controllo da fare solo nella 12
|
||||
// Controllo che la liquidazione è stata effettuata, controllo da fare solo nella 12
|
||||
if (dongle().year_assist() > 2121 && (row_lim.empty() || row_lim.get_bool("B0")) && !yesno_box("Attenzione non e' stata calcolata la liquidazione del periodo corrente, si desidera proseguire ugualmente?"))
|
||||
{
|
||||
return;
|
||||
@ -533,7 +533,7 @@ void TCom_liq_per_iva_msk::extractinator() // Per gli amici GTFO
|
||||
// Controllo che la registrazione sia di del mese che mi interessa o con flag "liquidazione periodo precedente"
|
||||
const int month_reg = cur_iva.get("23." MOV_DATAREG).as_date().month();
|
||||
const int month_liq = cur_iva.get("23." MOV_MESELIQ).as_int();
|
||||
// month_liq viene valorizzato solo se è del mese precedente o sempre? Nei record vecchi ovviamente sarà a zero ma adesso che ci mette?
|
||||
// month_liq viene valorizzato solo se è del mese precedente o sempre? Nei record vecchi ovviamente sarà a zero ma adesso che ci mette?
|
||||
// Prendo il tipo di registro
|
||||
TRegistro reg(cur_iva.get(FIELD_NAME(LF_MOV, MOV_REG)).as_string(), anno);
|
||||
int tiporeg = reg.tipo();
|
||||
@ -562,7 +562,7 @@ void TCom_liq_per_iva_msk::extractinator() // Per gli amici GTFO
|
||||
continue;
|
||||
}
|
||||
|
||||
// Se è un movimento IvaXCassa o LiqDiff
|
||||
// Se è un movimento IvaXCassa o LiqDiff
|
||||
if (has_ixc && (cur_iva.get("23.IVAXCASSA").as_bool() || cur_iva.get("23.LIQDIFF").as_bool()))
|
||||
{
|
||||
if (tiporeg == iva_vendite)
|
||||
@ -579,10 +579,10 @@ void TCom_liq_per_iva_msk::extractinator() // Per gli amici GTFO
|
||||
TString key_rc = cur_iva.get("23.NUMREG").as_string(); key_rc << "|1";
|
||||
if (!cache().get(LF_RMOV, key_rc).empty())
|
||||
{
|
||||
// Controllo se è un corrispettivo non scorporato (imponibile e iva assieme)
|
||||
// Controllo se è un corrispettivo non scorporato (imponibile e iva assieme)
|
||||
if (is_corrispettivo && codiva.percentuale() > ZERO && imposta == ZERO)
|
||||
{
|
||||
// Nell'imponibile è presente il totale fattura, devo calcolare l'imposta e sottrarla
|
||||
// Nell'imponibile è presente il totale fattura, devo calcolare l'imposta e sottrarla
|
||||
// Es iva 22% => imp : 122 = x : 100
|
||||
codiva.scorpora(imp);
|
||||
}
|
||||
@ -597,7 +597,7 @@ void TCom_liq_per_iva_msk::extractinator() // Per gli amici GTFO
|
||||
// Sommiamo i corrispettivi al registro delle vendite
|
||||
|
||||
|
||||
// Se ha attiva l'IVA x cassa calcolo le imposte (imponibili per comodità già calcolati sopra)
|
||||
// Se ha attiva l'IVA x cassa calcolo le imposte (imponibili per comodità già calcolati sopra)
|
||||
if(has_ixc)
|
||||
{
|
||||
// IVA esigibile
|
||||
@ -620,7 +620,7 @@ void TCom_liq_per_iva_msk::extractinator() // Per gli amici GTFO
|
||||
|
||||
TRectype row_lam = getLAM(anno, start);
|
||||
|
||||
/* É saltato fuori che in caso di liquidazione trimestrale l'importo ivaes e ivadet
|
||||
/* É saltato fuori che in caso di liquidazione trimestrale l'importo ivaes e ivadet
|
||||
* viene scritto su ogni mese, quindi prendo solo quando
|
||||
* start == end -> iva mensile o ultimo mese della trimestrale */
|
||||
|
||||
@ -883,7 +883,7 @@ private:
|
||||
protected:
|
||||
bool user_create();
|
||||
bool user_destroy();
|
||||
virtual TMask* get_mask(int mode) { return _mask; }
|
||||
virtual TMask* _get_mask(int mode) { return _mask; }
|
||||
|
||||
public:
|
||||
virtual TRelation* get_relation() const {return (TRelation*)_rel;}
|
||||
@ -908,4 +908,4 @@ int tf0200(int argc, char* argv[])
|
||||
TCom_liq_per_iva_app app;
|
||||
app.run(argc, argv, TR("Trasferimento dati liquidazione IVA"));
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user