Patch level : 12.0 846
Files correlati : cg1.exe cg2.exe cg4.exe f23.dir f23.trr cg1500a.msk cg2100b.msk cg2100c.msk cg2200a.msk cg5500b.msk Commento : Aggiunta data competenza costi ricavi Issue #15 Aggiunto tipo provvisorio "B" Bilancio costi/ricavi (Prima nota, Stampa Bilancio, Apertura Chiusura conti)
This commit is contained in:
parent
8a2cd7296e
commit
b8d551c339
BIN
lib/AgaLib.lib
Normal file
BIN
lib/AgaLib.lib
Normal file
Binary file not shown.
BIN
lib/Uno.lib
Normal file
BIN
lib/Uno.lib
Normal file
Binary file not shown.
BIN
lib/cb6.exp
Normal file
BIN
lib/cb6.exp
Normal file
Binary file not shown.
BIN
lib/cb6.lib
Normal file
BIN
lib/cb6.lib
Normal file
Binary file not shown.
BIN
lib/gfm.exp
Normal file
BIN
lib/gfm.exp
Normal file
Binary file not shown.
BIN
lib/gfm.lib
Normal file
BIN
lib/gfm.lib
Normal file
Binary file not shown.
BIN
lib/pdflib.exp
Normal file
BIN
lib/pdflib.exp
Normal file
Binary file not shown.
BIN
lib/pdflib.lib
Normal file
BIN
lib/pdflib.lib
Normal file
Binary file not shown.
BIN
lib/pdflibwrap.lib
Normal file
BIN
lib/pdflibwrap.lib
Normal file
Binary file not shown.
BIN
lib/vedoc.lib
Normal file
BIN
lib/vedoc.lib
Normal file
Binary file not shown.
BIN
lib/vedocext.lib
Normal file
BIN
lib/vedocext.lib
Normal file
Binary file not shown.
BIN
lib/xi.exp
Normal file
BIN
lib/xi.exp
Normal file
Binary file not shown.
BIN
lib/xi.lib
Normal file
BIN
lib/xi.lib
Normal file
Binary file not shown.
BIN
lib/xvaga.exp
Normal file
BIN
lib/xvaga.exp
Normal file
Binary file not shown.
BIN
lib/xvaga.lib
Normal file
BIN
lib/xvaga.lib
Normal file
Binary file not shown.
BIN
lib/xvapp.lib
Normal file
BIN
lib/xvapp.lib
Normal file
Binary file not shown.
@ -1449,7 +1449,7 @@ bool TStampa_bilanci::bil_verifica()
|
||||
_mov_ap = FALSE;
|
||||
//modifica del 19/06/95
|
||||
movimentato = calcola(g,c,s);
|
||||
if (_stampa_mov_prov != 3)
|
||||
if (_stampa_mov_prov & 0x1)
|
||||
{
|
||||
if (movimentato)
|
||||
{
|
||||
@ -1472,7 +1472,7 @@ bool TStampa_bilanci::bil_verifica()
|
||||
{
|
||||
if (_annoes != 0 && (indbil_conto == 1 || indbil_conto == 2 || indbil_conto == 5))
|
||||
{
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov == 2);
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov);
|
||||
//modifica del 21/11/95
|
||||
if (saldo_iniziale > ZERO)
|
||||
_saldo_ini_dare = saldo_iniziale;
|
||||
@ -1502,7 +1502,7 @@ bool TStampa_bilanci::bil_verifica()
|
||||
{
|
||||
if (_annoes != 0 && (indbil_conto == 1 || indbil_conto == 2 || indbil_conto == 5))
|
||||
{
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov == 2);
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov);
|
||||
//modifica del 21/11/95
|
||||
if (saldo_iniziale > ZERO)
|
||||
_saldo_ini_dare = saldo_iniziale;
|
||||
@ -1543,7 +1543,7 @@ bool TStampa_bilanci::bil_verifica()
|
||||
{
|
||||
movimentato = sld.ultima_immissione_verifica(_annoes,g,c,s,indbil_conto,_stampa_mov_prov);
|
||||
|
||||
if (_stampa_mov_prov != 3)
|
||||
if (_stampa_mov_prov & 0x1)
|
||||
{
|
||||
if (movimentato)
|
||||
saldo_iniziale = sld.saldoini();
|
||||
@ -1551,7 +1551,7 @@ bool TStampa_bilanci::bil_verifica()
|
||||
{
|
||||
if (indbil_conto == 1 || indbil_conto == 2 || indbil_conto == 5)
|
||||
{
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,FALSE,_stampa_mov_prov == 2);
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,FALSE,_stampa_mov_prov);
|
||||
if (_stampav == 1 && sld.significativo())
|
||||
movimentato = TRUE;
|
||||
}
|
||||
@ -1753,10 +1753,10 @@ bool TStampa_bilanci::calcola(int g, int c, long s)
|
||||
const char provvis = mov.get_char(MOV_PROVVIS);
|
||||
const TDate datacomp = mov.get_date(MOV_DATACOMP);
|
||||
|
||||
if (_stampa_mov_prov == 1 && provvis != '\0') //bilancio normale (non comprende i provvisori)
|
||||
if (_stampa_mov_prov == 0x1 && provvis != '\0') //bilancio normale (non comprende i provvisori)
|
||||
continue;
|
||||
|
||||
if (_stampa_mov_prov == 3 && provvis == '\0') //bilancio dei soli provvisori
|
||||
if (!(_stampa_mov_prov & 0x1) && provvis == '\0') //bilancio dei soli provvisori
|
||||
continue;
|
||||
|
||||
const TString& codcaus = mov.get(MOV_CODCAUS);
|
||||
@ -1853,7 +1853,7 @@ bool TStampa_bilanci::ricerca_cf(int g,int c,char tipocf,int ib, real& saldo_fin
|
||||
//modifica del 19/06. Vedi appunti per capire
|
||||
bool movimentato = calcola(g,c,s);
|
||||
|
||||
if (_stampa_mov_prov != 3)
|
||||
if (_stampa_mov_prov & 0x1)
|
||||
{
|
||||
if (movimentato)
|
||||
{
|
||||
@ -1879,7 +1879,7 @@ bool TStampa_bilanci::ricerca_cf(int g,int c,char tipocf,int ib, real& saldo_fin
|
||||
{
|
||||
if (_annoes != 0 && (ib == 1 || ib == 2 || ib == 5))
|
||||
{
|
||||
saldo_iniziale += sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov==2);
|
||||
saldo_iniziale += sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov);
|
||||
//modifica del 21/11/1995
|
||||
if (saldo_iniziale > ZERO)
|
||||
_saldo_ini_dare = saldo_iniziale;
|
||||
@ -1909,7 +1909,7 @@ bool TStampa_bilanci::ricerca_cf(int g,int c,char tipocf,int ib, real& saldo_fin
|
||||
{
|
||||
if (_annoes != 0 && (ib == 1 || ib == 2 || ib == 5))
|
||||
{
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov==2);
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov);
|
||||
//modifica del 21/11/1995
|
||||
if (saldo_iniziale > ZERO)
|
||||
_saldo_ini_dare = saldo_iniziale;
|
||||
@ -1956,7 +1956,7 @@ bool TStampa_bilanci::ricerca_cf(int g,int c,char tipocf,int ib, real& saldo_fin
|
||||
//modifica del 31/03/1995
|
||||
bool movimentato = sld.ultima_immissione_verifica(_annoes,g,c,s,ib,_stampa_mov_prov);
|
||||
|
||||
if (_stampa_mov_prov != 3)
|
||||
if (_stampa_mov_prov & 0x1)
|
||||
{
|
||||
saldo_iniziale = sld.saldoini();
|
||||
if (!movimentato)
|
||||
@ -1967,7 +1967,7 @@ bool TStampa_bilanci::ricerca_cf(int g,int c,char tipocf,int ib, real& saldo_fin
|
||||
//solo se e' un conto patrimoniale
|
||||
if (ib == 1 || ib == 2 || ib == 5)
|
||||
{
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov==2);
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,s,false,_stampa_mov_prov);
|
||||
movimentato = sld.significativo();
|
||||
}
|
||||
}
|
||||
@ -2331,12 +2331,12 @@ void TStampa_bilanci::leggi_clifo(const TArray& gccf)
|
||||
//modifica del 19/06/95
|
||||
_indbil = cerca_indbil(g,c);
|
||||
movimentato = calcola(g,c,codcf);
|
||||
if (_stampa_mov_prov != 3)
|
||||
if (_stampa_mov_prov & 0x1)
|
||||
if (!movimentato)
|
||||
if (_indbil == 1 || _indbil == 2 || _indbil == 5)
|
||||
if (_annoes != 0) //cioe' se sto ragionando per competenza
|
||||
{
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,codcf,false,_stampa_mov_prov==2);
|
||||
saldo_iniziale = sld.saldofin_esprec(_annoes,g,c,codcf,false,_stampa_mov_prov);
|
||||
if (saldo_iniziale > ZERO)
|
||||
_saldo_ini_dare = saldo_iniziale;
|
||||
else _saldo_ini_avere = -saldo_iniziale;
|
||||
@ -2359,11 +2359,11 @@ void TStampa_bilanci::leggi_clifo(const TArray& gccf)
|
||||
if (saldi.read() == NOERR)
|
||||
{
|
||||
const real s = saldi.get_real(SLD_SALDO);
|
||||
if (_stampa_mov_prov != 3)
|
||||
if (_stampa_mov_prov & 0x1)
|
||||
if (_indbil == 1 || _indbil == 2 || _indbil == 5)
|
||||
if (s.is_zero() && _annoes != 0) //competenza!!!
|
||||
{
|
||||
saldo_iniziale += sld.saldofin_esprec(_annoes,g,c,codcf,false,_stampa_mov_prov==2);
|
||||
saldo_iniziale += sld.saldofin_esprec(_annoes,g,c,codcf,false,_stampa_mov_prov);
|
||||
//modifica del 21/11/1995
|
||||
if (saldo_iniziale > ZERO)
|
||||
_saldo_ini_dare = saldo_iniziale;
|
||||
@ -2398,10 +2398,10 @@ void TStampa_bilanci::leggi_clifo(const TArray& gccf)
|
||||
_indbil = cerca_indbil(g,c);
|
||||
movimentato = sld.ultima_immissione_verifica(anno,g,c,codcf,_indbil,_stampa_mov_prov);
|
||||
|
||||
if (_stampa_mov_prov != 3)
|
||||
if (_stampa_mov_prov & 0x1)
|
||||
if (!movimentato /* && _stampac!=1 */ )
|
||||
if (_indbil == 1 || _indbil == 2 || _indbil == 5)
|
||||
saldo_iniziale = sld.saldofin_esprec(anno,g,c,codcf,false,_stampa_mov_prov==2);
|
||||
saldo_iniziale = sld.saldofin_esprec(anno,g,c,codcf,false,_stampa_mov_prov);
|
||||
|
||||
if (movimentato)
|
||||
saldo_iniziale = sld.saldoini();
|
||||
@ -3787,15 +3787,19 @@ bool TStampa_bilanci::set_print(int)
|
||||
m.set_handler (F_DATALIM, mask_datalim);
|
||||
m.set_handler (F_DATADA, mask_date);
|
||||
m.set_handler (F_DATAA, mask_date);
|
||||
m.set_handler (F_ANNO, mask_anno);
|
||||
m.set_handler (F_ANNO, mask_anno);
|
||||
m.set(F_NORMALI, "X");
|
||||
|
||||
while (m.run() == K_ENTER)
|
||||
{
|
||||
_annoes = m.get_int(F_ANNO);
|
||||
_bilancio = m.get_int(F_BILANCIO);
|
||||
_data = m.get(F_DATASTAMPA);
|
||||
_stampa_mov_prov = m.get_int(F_STAMPAMPROV);
|
||||
_quadratura = m.get_bool(F_QUADRATURA);
|
||||
_stampa_mov_prov = m.get_bool(F_NORMALI) ? 0x1 : 0; // qui
|
||||
_stampa_mov_prov |= m.get_bool(F_PROVVM) ? 0x2 : 0; // qui
|
||||
_stampa_mov_prov |= m.get_bool(F_PROVVB) ? 0x4 : 0; // qui
|
||||
_stampa_mov_prov |= m.get_bool(F_PROVVC) ? 0x8 : 0; // qui
|
||||
_quadratura = m.get_bool(F_QUADRATURA);
|
||||
_hide_clifo = m.get_bool(F_HIDE_CLIFO);
|
||||
_noseparator = m.get_bool(F_SEPARATOR);
|
||||
#ifdef CONT_SEP
|
||||
@ -3905,9 +3909,9 @@ int TStampa_bilanci::stampa_intestazione_ditta()
|
||||
|
||||
//_stampa_mov_provv(1=normale,2=globale,3=solo provvisori)
|
||||
const char* tipoprovv = "";
|
||||
if (_stampa_mov_prov == 2)
|
||||
if (_stampa_mov_prov > 0x1)
|
||||
tipoprovv = TR("GLOBALE");
|
||||
if (_stampa_mov_prov == 3)
|
||||
if (!(_stampa_mov_prov & 0x1))
|
||||
tipoprovv = TR("PROVVISORIO");
|
||||
//l'uso della overwrite e' una vera vaccata!
|
||||
riga.overwrite (format("%s %s %s %s", TR("Partita iva"), (const char*)_paiva, TR("Codice fiscale"), (const char*)_cofi));
|
||||
|
@ -20,7 +20,7 @@
|
||||
#define F_STAMPAC 119
|
||||
#define F_ORDINAMENTO 120
|
||||
#define F_MODULO 121
|
||||
#define F_STAMPAMPROV 122
|
||||
#define F_NORMALI 122
|
||||
#define F_QUADRATURA 123
|
||||
#define F_SEPARATOR 124
|
||||
#define F_PICTURE 125
|
||||
@ -34,8 +34,11 @@
|
||||
#define F_A_SOTTOCONTO 138
|
||||
#define F_A_DESCRIZIONE 139
|
||||
#define F_PRINT_FULL_CODE 140
|
||||
#define F_PROVVM 141
|
||||
#define F_PROVVB 142
|
||||
#define F_PROVVC 143
|
||||
#ifdef CONT_SEP
|
||||
#define F_CONTSEP 141
|
||||
#define F_CONTSEP 144
|
||||
#endif
|
||||
|
||||
#endif // __CG1500_H
|
||||
|
@ -166,12 +166,24 @@ BEGIN
|
||||
PROMPT 60 10 ""
|
||||
END
|
||||
|
||||
LIST F_STAMPAMPROV 15
|
||||
BOOLEAN F_NORMALI
|
||||
BEGIN
|
||||
PROMPT 2 11 "Bilancio "
|
||||
ITEM "1|Normale"
|
||||
ITEM "2|Globale"
|
||||
ITEM "3|Solo provvisori"
|
||||
PROMPT 2 11 "Movimenti : Normali"
|
||||
END
|
||||
|
||||
BOOLEAN F_PROVVM
|
||||
BEGIN
|
||||
PROMPT 30 11 "Provv.Manuali"
|
||||
END
|
||||
|
||||
BOOLEAN F_PROVVB
|
||||
BEGIN
|
||||
PROMPT 50 11 "Provv.Bilancio"
|
||||
END
|
||||
|
||||
BOOLEAN F_PROVVC
|
||||
BEGIN
|
||||
PROMPT 70 11 "Provv.Cespiti"
|
||||
END
|
||||
|
||||
LIST F_MODULO 1 12
|
||||
|
@ -46,6 +46,7 @@ public:
|
||||
TDate _datadoc, _datareg;
|
||||
TString8 _numdoc;
|
||||
real _totale;
|
||||
long _movcoll;
|
||||
TString4 _causale_originale;
|
||||
TipoIVA _iva_originale;
|
||||
};
|
||||
@ -184,7 +185,10 @@ TMask* TPrimanota_application::load_mask(int n)
|
||||
// Se esiste lo sheet delle rate
|
||||
if (is_fattura())
|
||||
{
|
||||
m->set_handler(F_DATACOMPCR, datacompcr_handler);
|
||||
|
||||
TSheet_field& ps = m->sfield(FS_RATESHEET);
|
||||
|
||||
ps.set_notify(pag_notify);
|
||||
m->set_handler(FS_RATESHEET, pag_sheet_handler);
|
||||
m->set_handler(F_ANNORIF, annorif_handler);
|
||||
@ -672,6 +676,10 @@ void TPrimanota_application::init_mask(TMask& m)
|
||||
TEdit_field& rc = m.efield(F_REVCHARGE);
|
||||
rc.show(cc.iva() == iva_acquisti && cc.reverse_charge());
|
||||
|
||||
m.efield(F_MOVCOLL).show((cc.iva() == iva_acquisti && cc.reverse_charge()) ||
|
||||
(cc.iva() == iva_vendite && cc.causale_reg_iva()));
|
||||
// m.efield(F_GOCOLL).show((c.iva() == iva_acquisti && c.reverse_charge()) ||
|
||||
// (c.iva() == iva_vendite && c.causale_reg_iva()));
|
||||
activate_split_payment(m);
|
||||
}
|
||||
|
||||
@ -841,6 +849,15 @@ bool TPrimanota_application::get_next_key(TToken_string& tmp)
|
||||
else
|
||||
tmp.add(m.get(F_DATACOMP));
|
||||
|
||||
if (_iva != nessuna_iva)
|
||||
{
|
||||
tmp.add(F_DATACOMPCR); // Ricopia data competenza
|
||||
if (m.field(F_DATACOMPCR).empty())
|
||||
tmp.add(m.get(F_DATAREG));
|
||||
else
|
||||
tmp.add(m.get(F_DATACOMPCR));
|
||||
}
|
||||
|
||||
if (_iva == iva_vendite)
|
||||
{
|
||||
tmp.add(F_DATADOC); tmp.add(m.get(F_DATADOC)); // Ricopia data documento
|
||||
@ -915,7 +932,11 @@ void TPrimanota_application::init_insert_mode(TMask& m)
|
||||
if (_automatico->_step == 1)
|
||||
genera_automatico(_automatico->_tipo, NULL);
|
||||
else
|
||||
{
|
||||
m.reset(F_DATACOMP); // Azzera quasi sempre la data di competenza
|
||||
if (m.find_by_id(F_DATACOMPCR))
|
||||
m.reset(F_DATACOMPCR);
|
||||
}
|
||||
// La preservo solo per l'incasso immediato
|
||||
|
||||
_as400 = false; // Un movimento nuovo non puo' essere trasferito da AS400
|
||||
@ -1145,7 +1166,7 @@ int TPrimanota_application::read(TMask& m)
|
||||
}
|
||||
|
||||
_saldi.reset(); // Azzera saldi
|
||||
_saldi.set_movprovv(_rel->curr().get_char(MOV_PROVVIS) > ' ');
|
||||
_saldi.set_movprovv(_rel->curr().get_char(MOV_PROVVIS));
|
||||
tiposal tsal = causale().apertura() ? apertura :
|
||||
(causale().chiusura() ? chiusura : normale);
|
||||
_saldi.set_tipo_saldo(tsal);
|
||||
@ -1268,7 +1289,7 @@ void TPrimanota_application::mask2rel(const TMask& m)
|
||||
const TDate datareg(m.get(F_DATAREG));
|
||||
const int annoes = m.get_int(F_ANNOES);
|
||||
|
||||
_saldi.set_movprovv(m.get(F_PROVVISORIO)[0] > ' ');
|
||||
_saldi.set_movprovv(m.get(F_PROVVISORIO)[0]);
|
||||
tiposal tsal = causale().apertura() ? apertura :
|
||||
(causale().chiusura() ? chiusura : normale);
|
||||
_saldi.set_tipo_saldo(tsal);
|
||||
@ -1467,8 +1488,49 @@ bool TPrimanota_application::has_tot_doc(TToken_string& fppro_keys)
|
||||
return tot.full() && real(tot) != 0;
|
||||
}
|
||||
|
||||
int TPrimanota_application::controlli_f1(const TMask& m)
|
||||
void TPrimanota_application::find_movcoll(const long numreg)
|
||||
{
|
||||
const TCausale& cau = cached_causale(_rel->file().get(MOV_CODCAUS), _rel->file().get_int(MOV_ANNOES));
|
||||
const TString4 cau_reg = cau.causale_reg_iva();
|
||||
TMask * m = mask(CGMaskType::_iva);
|
||||
TToken_string key(m->get(F_CLIFO)); key.add(m->get_long(F_CODCLIFOR));
|
||||
const long codcli = cache().get(LF_CLIFO, key).get_long(CLI_CODCFASS);
|
||||
TString query("USE ");
|
||||
|
||||
query << LF_MOV << " KEY 1 SELECT " << MOV_CODCAUS << "==\"" << cau_reg << "\"\nFROM " << MOV_NUMREG << "==" << numreg;
|
||||
|
||||
TISAM_recordset mov(query);
|
||||
long movcoll = 0L;
|
||||
|
||||
for (bool ok = mov.move_first(); ok ; ok = mov.move_next())
|
||||
{
|
||||
TRectype& curr = (TRectype&) mov.cursor()->curr();
|
||||
const long movcoll_found = curr.get_long(MOV_MOVCOLL);
|
||||
|
||||
if ((curr.get_long(MOV_CODCF) == codcli) && ((movcoll_found == 0L) || (movcoll_found == numreg)))
|
||||
{
|
||||
movcoll = mov.get(MOV_NUMREG).as_int();
|
||||
curr.put(MOV_MOVCOLL, numreg);
|
||||
curr.rewrite(TLocalisamfile(LF_MOV));
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (movcoll != 0L)
|
||||
m->set(F_MOVCOLL, movcoll);
|
||||
}
|
||||
|
||||
void TPrimanota_application::set_movcoll(const long movcoll, const long numreg)
|
||||
{
|
||||
TRectype mov(LF_MOV);
|
||||
|
||||
mov.put(MOV_NUMREG, movcoll);
|
||||
if (mov.read(TLocalisamfile(LF_MOV)) == NOERR)
|
||||
{
|
||||
mov.put(MOV_MOVCOLL, numreg);
|
||||
const int err = mov.rewrite(TLocalisamfile(LF_MOV));
|
||||
}
|
||||
}
|
||||
int TPrimanota_application::controlli_f1(const TMask& m){
|
||||
if (m.find_by_id(F_PROKEY) != NULL && m.get(F_PROKEY).full() && has_f1_db((TMask*)&m) && fp_db().sq_is_connect() && check_causale(m.get(F_CODCAUS)))
|
||||
{
|
||||
TToken_string keys(m.get(F_PROKEY), ';');
|
||||
@ -1522,8 +1584,17 @@ int TPrimanota_application::write(const TMask& m)
|
||||
}
|
||||
|
||||
const int err = _rel->write(true);
|
||||
|
||||
if (err == NOERR)
|
||||
{
|
||||
if (cached_causale(_rel->file().get(MOV_CODCAUS), _rel->file().get_int(MOV_ANNOES)).regolarizzazione())
|
||||
{
|
||||
const long movcoll = _rel->file().get_long(MOV_MOVCOLL);
|
||||
const long numreg = _rel->file().get_long(MOV_NUMREG);
|
||||
|
||||
if (movcoll != 0L)
|
||||
set_movcoll(movcoll, numreg);
|
||||
}
|
||||
write_fppro();
|
||||
|
||||
_saldi.registra();
|
||||
@ -1579,7 +1650,7 @@ int TPrimanota_application::write(const TMask& m)
|
||||
if (tipauto <= 1)
|
||||
{
|
||||
causauto = causale().causale_collegata();
|
||||
if (cached_causale(causauto, causale().reg().year()).ril_fat_em_ric())
|
||||
if (causauto.full() && cached_causale(causauto, causale().reg().year()).ril_fat_em_ric())
|
||||
tipauto = 4;
|
||||
}
|
||||
if (tipauto <= 0)
|
||||
@ -1609,6 +1680,13 @@ int TPrimanota_application::write(const TMask& m)
|
||||
|
||||
int TPrimanota_application::rewrite(const TMask& m)
|
||||
{
|
||||
if (cached_causale(_rel->file().get(MOV_CODCAUS), _rel->file().get_int(MOV_ANNOES)).reverse_charge())
|
||||
{
|
||||
const long movcoll = m.get_long(F_MOVCOLL);
|
||||
|
||||
if (movcoll == 0L)
|
||||
find_movcoll(_rel->file().get_long(MOV_NUMREG));
|
||||
}
|
||||
mask2rel(m);
|
||||
|
||||
switch (controlli_f1(m)) // Solo con F1
|
||||
@ -1619,7 +1697,7 @@ int TPrimanota_application::rewrite(const TMask& m)
|
||||
return _isnowarning;
|
||||
default: case pro_noerr: break;
|
||||
}
|
||||
|
||||
|
||||
const int err = _rel->rewrite(true);
|
||||
if (err == NOERR)
|
||||
{
|
||||
@ -1770,6 +1848,7 @@ void TPrimanota_application::genera_automatico(int tipo, const char* causimm)
|
||||
if (_automatico->_tipo == 2)
|
||||
{
|
||||
_automatico->_totale += m.get_real(F_REVCHARGE) + m.get_real(F_RITFIS);
|
||||
_automatico->_movcoll = m.get_long(F_NUMREG);
|
||||
_automatico->_codiva = m.get(F_CODIVA);
|
||||
if (_automatico->_codiva.blank() && _rel->iva_items() > 0)
|
||||
_automatico->_codiva = _rel->iva(0).get(RMI_CODIVA);
|
||||
@ -1847,6 +1926,7 @@ void TPrimanota_application::genera_automatico(int tipo, const char* causimm)
|
||||
m.set(F_CODCLIFOR, clnt);
|
||||
}
|
||||
m.set(F_TOTALE, _automatico->_totale); // Imposta il totale documento e ...
|
||||
m.set(F_MOVCOLL, _automatico->_movcoll); // Imposta il movimenti collegato e ...
|
||||
m.set(F_CODIVA, _automatico->_codiva, true); // ... scatena creazione prima riga IVA
|
||||
if (TRelation_application::is_transaction())
|
||||
m.send_key(K_CTRL+'R', 0);
|
||||
|
@ -22,6 +22,7 @@
|
||||
#define F_RITFATT 231
|
||||
#define F_PROKEY 232
|
||||
#define F_COLFPPRO 233
|
||||
#define F_DATACOMPCR 234
|
||||
|
||||
#define F_CLIFO 128
|
||||
#define F_CODCLIFOR 151
|
||||
@ -88,6 +89,8 @@
|
||||
#define F_SOTTOCONTO 182
|
||||
#define F_SALDOCONTO 183
|
||||
#define F_REVCHARGE 184
|
||||
#define F_MOVCOLL 185
|
||||
#define F_GOCOLL 186
|
||||
|
||||
#define F_SHEETCG 190
|
||||
#define F_SHEETIVA 191
|
||||
|
@ -75,13 +75,15 @@ BEGIN
|
||||
MESSAGE COPY,K_DESCRCAUS
|
||||
END
|
||||
|
||||
LIST F_PROVVISORIO 1 24
|
||||
LIST F_PROVVISORIO 1 28
|
||||
BEGIN
|
||||
PROMPT 1 5 "Movimento provvisorio "
|
||||
PROMPT 1 5 "Mov.provvisorio "
|
||||
FIELD PROVVIS
|
||||
ITEM " |No (movimento normale)"
|
||||
ITEM "P|Si (cancellabile)"
|
||||
ITEM "C|Cespiti"
|
||||
ITEM "N|Si (Non cancellabile)"
|
||||
ITEM "B|Si (Bilancio costi/ricavi)"
|
||||
ITEM "C|Si (Cespiti)"
|
||||
END
|
||||
|
||||
STRING F_TIPODOC 2
|
||||
|
@ -85,9 +85,16 @@ BEGIN
|
||||
FIELD REG
|
||||
END
|
||||
|
||||
DATE F_DATACOMPCR
|
||||
BEGIN
|
||||
PROMPT 1 3 "Data comp.c/r "
|
||||
FIELD DATACOMPCR
|
||||
FLAGS "G"
|
||||
END
|
||||
|
||||
STRING F_CODCAUS 3
|
||||
BEGIN
|
||||
PROMPT 1 3 "Causale "
|
||||
PROMPT 1 4 "Causale "
|
||||
FLAGS "UZ"
|
||||
FIELD CODCAUS
|
||||
USE LF_CAUSALI SELECT REG!=""
|
||||
@ -107,7 +114,7 @@ END
|
||||
|
||||
STRING F_DESCRCAUS 50
|
||||
BEGIN
|
||||
PROMPT 25 3 ""
|
||||
PROMPT 25 4 ""
|
||||
USE LF_CAUSALI KEY 2 SELECT REG!=""
|
||||
INPUT DESCR F_DESCRCAUS
|
||||
DISPLAY "Descrizione@50" DESCR
|
||||
@ -122,13 +129,13 @@ END
|
||||
|
||||
STRING F_NUMDOCEXT 50
|
||||
BEGIN
|
||||
PROMPT 1 4 "Numero documento esteso "
|
||||
PROMPT 1 5 "Numero documento esteso "
|
||||
FIELD NUMDOCEXT
|
||||
END
|
||||
|
||||
STRING F_NUMDOC 7
|
||||
BEGIN
|
||||
PROMPT 1 5 "Documento n. "
|
||||
PROMPT 1 6 "Documento n. "
|
||||
FIELD NUMDOC
|
||||
FLAGS "U"
|
||||
WARNING "La causale o il saldaconto richiedono il numero documento"
|
||||
@ -136,7 +143,7 @@ END
|
||||
|
||||
DATE F_DATADOC
|
||||
BEGIN
|
||||
PROMPT 27 5 "Data documento "
|
||||
PROMPT 27 6 "Data documento "
|
||||
FIELD DATADOC
|
||||
WARNING "Inserire una data documento non superiore alla data dell'operazione"
|
||||
VALIDATE DATE_CMP_FUNC <= F_DATAREG
|
||||
@ -144,37 +151,38 @@ END
|
||||
|
||||
STRING F_TIPODOC 2
|
||||
BEGIN
|
||||
PROMPT 56 5 "Tipo "
|
||||
PROMPT 56 6 "Tipo "
|
||||
FIELD TIPODOC
|
||||
FLAGS "D"
|
||||
END
|
||||
|
||||
BUTTON F_LINKDOC 3 1
|
||||
BEGIN
|
||||
PROMPT 73 5 "Doc."
|
||||
PROMPT 73 6 "Doc."
|
||||
END
|
||||
|
||||
LIST F_SOLAIVA 1 3
|
||||
BEGIN
|
||||
PROMPT 1 6 "Movimento di sola IVA "
|
||||
PROMPT 1 7 "Movimento di sola IVA "
|
||||
ITEM " |No"
|
||||
ITEM "X|Si"
|
||||
END
|
||||
|
||||
LIST F_PROVVISORIO 1 22
|
||||
LIST F_PROVVISORIO 1 28
|
||||
BEGIN
|
||||
PROMPT 31 6 "Movimento provvisorio "
|
||||
PROMPT 31 7 "Mov.provvisorio "
|
||||
FIELD PROVVIS
|
||||
ITEM " |No (movimento normale)"
|
||||
ITEM "P|Si (cancellabile)"
|
||||
ITEM "N|Si (Non cancellabile)"
|
||||
ITEM "C|Cespiti"
|
||||
ITEM "B|Si (Bilancio costi/ricavi)"
|
||||
ITEM "C|Si (Cespiti)"
|
||||
FLAGS "DG"
|
||||
END
|
||||
|
||||
STRING F_DESCAGG 5 6
|
||||
BEGIN
|
||||
PROMPT 1 7 "Descrizione "
|
||||
PROMPT 1 8 "Descrizione "
|
||||
FLAGS "UZ"
|
||||
USE %DPN
|
||||
INPUT CODTAB F_DESCAGG
|
||||
@ -187,7 +195,7 @@ END
|
||||
|
||||
STRING F_DESCR 50
|
||||
BEGIN
|
||||
PROMPT 25 7 ""
|
||||
PROMPT 25 8 ""
|
||||
FIELD DESCR
|
||||
USE %DPN KEY 2
|
||||
INPUT S0 F_DESCR
|
||||
@ -198,13 +206,13 @@ END
|
||||
|
||||
NUMBER F_PROTIVA 6
|
||||
BEGIN
|
||||
PROMPT 1 8 "Protocollo IVA "
|
||||
PROMPT 1 9 "Protocollo IVA "
|
||||
FIELD PROTIVA
|
||||
END
|
||||
|
||||
NUMBER F_RIEPILOGO 6
|
||||
BEGIN
|
||||
PROMPT 25 8 "Riepilogo al n."
|
||||
PROMPT 25 9 "Riepilogo al n."
|
||||
FIELD UPROTIVA
|
||||
NUM_EXPR {(#F_RIEPILOGO==0)||(#F_RIEPILOGO>=#F_PROTIVA)}
|
||||
WARNING "Inserire un riepilogo non inferiore al protocollo IVA (Obbigatorio se il cliente/fornitore ha codice inserimento in allegati uguale a 3)"
|
||||
@ -212,14 +220,14 @@ END
|
||||
|
||||
LIST F_DIFFERITA 1 19
|
||||
BEGIN
|
||||
PROMPT 48 8 "Liquid. "
|
||||
PROMPT 48 9 "Liquid. "
|
||||
ITEM " |periodo in corso"
|
||||
ITEM "X|periodo precedente"
|
||||
END
|
||||
|
||||
NUMBER F_CODCLIFOR 6
|
||||
BEGIN
|
||||
PROMPT 1 9 "Cliente "
|
||||
PROMPT 1 10 "Cliente "
|
||||
FIELD CODCF
|
||||
GROUP 1
|
||||
USE LF_CLIFO
|
||||
@ -244,7 +252,7 @@ END
|
||||
|
||||
STRING F_RAGSOCCF 50
|
||||
BEGIN
|
||||
PROMPT 25 9 ""
|
||||
PROMPT 25 10 ""
|
||||
GROUP 2
|
||||
USE LF_CLIFO KEY 2
|
||||
INPUT TIPOCF F_CLIFO SELECT
|
||||
@ -262,7 +270,7 @@ END
|
||||
|
||||
STRING F_COFI 16
|
||||
BEGIN
|
||||
PROMPT 1 10 "C.F. "
|
||||
PROMPT 1 11 "C.F. "
|
||||
GROUP 1
|
||||
USE LF_CLIFO KEY 4
|
||||
INPUT TIPOCF F_CLIFO SELECT
|
||||
@ -279,7 +287,7 @@ END
|
||||
|
||||
STRING F_PIVA 12
|
||||
BEGIN
|
||||
PROMPT 26 10 "P.I. "
|
||||
PROMPT 26 11 "P.I. "
|
||||
GROUP 1
|
||||
USE LF_CLIFO KEY 5
|
||||
INPUT TIPOCF F_CLIFO SELECT
|
||||
@ -297,7 +305,7 @@ END
|
||||
|
||||
STRING F_STATOPAIV 2
|
||||
BEGIN
|
||||
PROMPT 46 10 ""
|
||||
PROMPT 46 11 ""
|
||||
FLAGS "U"
|
||||
USE %SCE
|
||||
INPUT CODTAB F_STATOPAIV
|
||||
@ -309,7 +317,7 @@ END
|
||||
|
||||
STRING F_RICALT 30 18
|
||||
BEGIN
|
||||
PROMPT 52 10 "Alt. "
|
||||
PROMPT 52 11 "Alt. "
|
||||
USE LF_CLIFO KEY 6
|
||||
INPUT TIPOCF F_CLIFO SELECT
|
||||
INPUT RICALT F_RICALT
|
||||
@ -327,13 +335,13 @@ END
|
||||
|
||||
BUTTON F_OCCASEDIT 50
|
||||
BEGIN
|
||||
PROMPT 1 10 "Dati del cliente o fornitore occasionale"
|
||||
PROMPT 1 11 "Dati del cliente o fornitore occasionale"
|
||||
FLAGS "H"
|
||||
END
|
||||
|
||||
STRING F_CODPAG 4
|
||||
BEGIN
|
||||
PROMPT 1 11 "Codice Pagamento "
|
||||
PROMPT 1 12 "Codice Pagamento "
|
||||
FIELD CODPAG
|
||||
FLAGS "U#"
|
||||
USE %CPG
|
||||
@ -349,7 +357,7 @@ END
|
||||
|
||||
STRING F_DESPAG 50
|
||||
BEGIN
|
||||
PROMPT 25 11 ""
|
||||
PROMPT 25 12 ""
|
||||
USE %CPG KEY 2
|
||||
INPUT S0 F_DESPAG
|
||||
DISPLAY "Descrizione@60" S0
|
||||
@ -362,7 +370,7 @@ END
|
||||
|
||||
LIST F_CLIFO 1 10
|
||||
BEGIN
|
||||
PROMPT 1 12 "Tipo "
|
||||
PROMPT 1 13 "Tipo "
|
||||
ITEM "|Conto"
|
||||
ITEM "C|Cliente"
|
||||
ITEM "F|Fornitore"
|
||||
@ -372,7 +380,7 @@ END
|
||||
|
||||
NUMBER F_BOLLACODCLI 6
|
||||
BEGIN
|
||||
PROMPT 1 12 "Forn. collegato "
|
||||
PROMPT 1 13 "Forn. collegato "
|
||||
FIELD CFBOLLADOG
|
||||
USE LF_CLIFO
|
||||
INPUT TIPOCF "F"
|
||||
@ -392,7 +400,7 @@ END
|
||||
|
||||
STRING F_BOLLARAGCLI 50 47
|
||||
BEGIN
|
||||
PROMPT 28 12 ""
|
||||
PROMPT 28 13 ""
|
||||
USE LF_CLIFO KEY 2
|
||||
INPUT TIPOCF "F"
|
||||
INPUT RAGSOC F_BOLLARAGCLI
|
||||
@ -412,7 +420,7 @@ END
|
||||
|
||||
STRING SK_VALUTA 3
|
||||
BEGIN
|
||||
PROMPT 1 13 "Valuta "
|
||||
PROMPT 1 14 "Valuta "
|
||||
FIELD CODVAL
|
||||
FLAGS "UZ"
|
||||
GROUP 3
|
||||
@ -427,7 +435,7 @@ END
|
||||
|
||||
DATE SK_DATACAMBIO
|
||||
BEGIN
|
||||
PROMPT 18 13 "Data cambio "
|
||||
PROMPT 18 14 "Data cambio "
|
||||
FIELD DATACAM
|
||||
FLAGS "R"
|
||||
USE CAM
|
||||
@ -446,7 +454,7 @@ END
|
||||
|
||||
NUMBER SK_CAMBIO 15 6
|
||||
BEGIN
|
||||
PROMPT 44 13 "Cambio "
|
||||
PROMPT 44 14 "Cambio "
|
||||
FIELD CAMBIO
|
||||
FLAGS "RU"
|
||||
GROUP 3
|
||||
@ -457,13 +465,13 @@ END
|
||||
|
||||
CURRENCY F_TOTALE 18
|
||||
BEGIN
|
||||
PROMPT 1 14 "Totale documento "
|
||||
PROMPT 1 15 "Totale documento "
|
||||
FIELD TOTDOC
|
||||
END
|
||||
|
||||
CURRENCY SK_TOTDOCVAL 18
|
||||
BEGIN
|
||||
PROMPT 38 14 "in valuta "
|
||||
PROMPT 38 15 "in valuta "
|
||||
FIELD TOTDOCVAL
|
||||
GROUP 3
|
||||
VALIDATE REQIF_FUNC 1 F_TOTALE
|
||||
@ -472,7 +480,7 @@ END
|
||||
|
||||
STRING F_CODIVA 4
|
||||
BEGIN
|
||||
PROMPT 67 14 "IVA "
|
||||
PROMPT 67 15 "IVA "
|
||||
FLAGS "U"
|
||||
USE %IVA
|
||||
INPUT CODTAB F_CODIVA
|
||||
@ -488,25 +496,39 @@ END
|
||||
|
||||
CURRENCY F_RITFIS 18
|
||||
BEGIN
|
||||
PROMPT 1 15 "Ritenute fiscali "
|
||||
PROMPT 1 16 "Ritenute fiscali "
|
||||
FIELD RITFIS
|
||||
END
|
||||
|
||||
CURRENCY F_RITSOC 18
|
||||
BEGIN
|
||||
PROMPT 1 16 "Ritenute sociali "
|
||||
PROMPT 1 17 "Ritenute sociali "
|
||||
FIELD RITSOC
|
||||
END
|
||||
|
||||
CURRENCY F_REVCHARGE 18
|
||||
BEGIN
|
||||
PROMPT 1 17 "Reverse charge "
|
||||
PROMPT 1 18 "Reverse charge "
|
||||
FIELD REVCHARGE
|
||||
END
|
||||
|
||||
NUMBER F_MOVCOLL 7
|
||||
BEGIN
|
||||
PROMPT 40 18 "Mov.collegato"
|
||||
WARNING "Movimento collegato reverse charge"
|
||||
FIELD MOVCOLL
|
||||
FLAGS "HDG"
|
||||
END
|
||||
|
||||
BUTTON F_GOCOLL 10 1
|
||||
BEGIN
|
||||
PROMPT 64 18 "Mov.Coll."
|
||||
FLAGS "HDG"
|
||||
END
|
||||
|
||||
DATE F_DATA74TER
|
||||
BEGIN
|
||||
PROMPT 52 15 "Data 74/ter "
|
||||
PROMPT 52 16 "Data 74/ter "
|
||||
WARNING "E' richiesta la data del 74/ter"
|
||||
CHECKTYPE REQUIRED
|
||||
FIELD DATA74TER
|
||||
@ -514,14 +536,14 @@ END
|
||||
|
||||
BOOLEAN F_IVAXCASSA
|
||||
BEGIN
|
||||
PROMPT 1 18 "IVA per cassa"
|
||||
PROMPT 1 20 "IVA per cassa"
|
||||
FIELD IVAXCASSA
|
||||
MODULE IC
|
||||
END
|
||||
|
||||
BOOLEAN F_LIQDIFF
|
||||
BEGIN
|
||||
PROMPT 25 18 "Liquidazione differita"
|
||||
PROMPT 25 20 "Liquidazione differita"
|
||||
WARNING "Data di incasso per liquidazione differita"
|
||||
FIELD LIQDIFF
|
||||
MESSAGE FALSE CLEAR,F_DATAINC
|
||||
@ -531,7 +553,7 @@ END
|
||||
|
||||
LIST F_SPLITPAY 1 2
|
||||
BEGIN
|
||||
PROMPT 51 18 "Scissione pagamenti "
|
||||
PROMPT 51 20 "Scissione pagamenti "
|
||||
FIELD SPLITPAY
|
||||
ITEM "| "
|
||||
ITEM "S|Si"
|
||||
@ -541,28 +563,28 @@ END
|
||||
|
||||
DATE F_DATAINC
|
||||
BEGIN
|
||||
PROMPT 52 17 "Data incasso "
|
||||
PROMPT 52 19 "Data incasso "
|
||||
WARNING "Data di incasso per liquidazione differita"
|
||||
FIELD DATAINC
|
||||
END
|
||||
|
||||
NUMBER F_ANNORIF 4
|
||||
BEGIN
|
||||
PROMPT 48 16 "Rif.partita "
|
||||
PROMPT 48 17 "Rif.partita "
|
||||
FIELD LF_PARTITE->ANNO
|
||||
FLAGS "U"
|
||||
END
|
||||
|
||||
STRING F_NUMRIF 7
|
||||
BEGIN
|
||||
PROMPT 66 16 "/ "
|
||||
PROMPT 66 17 "/ "
|
||||
FIELD LF_PARTITE->NUMPART
|
||||
FLAGS "U#"
|
||||
END
|
||||
|
||||
STRING F_VALUTAINTRA 3
|
||||
BEGIN
|
||||
PROMPT 1 19 "Cambio intracom. "
|
||||
PROMPT 1 21 "Cambio intracom. "
|
||||
FIELD CODVALI
|
||||
FLAGS "UZ"
|
||||
GROUP 4
|
||||
@ -580,7 +602,7 @@ END
|
||||
|
||||
NUMBER F_CAMBIOINTRA 15 6
|
||||
BEGIN
|
||||
PROMPT 25 19 ""
|
||||
PROMPT 25 21 ""
|
||||
FIELD CAMBIOI
|
||||
FLAGS "U"
|
||||
GROUP 4
|
||||
@ -589,20 +611,20 @@ END
|
||||
|
||||
DATE F_DATAINTRA
|
||||
BEGIN
|
||||
PROMPT 43 19 "Data competenza intra "
|
||||
PROMPT 43 21 "Data competenza intra "
|
||||
FIELD DATACOMPI
|
||||
END
|
||||
|
||||
CURRENCY F_CORRISPETTIVO 18
|
||||
BEGIN
|
||||
PROMPT 1 20 "Corrispettivo "
|
||||
PROMPT 1 22 "Corrispettivo "
|
||||
FIELD CORRLIRE
|
||||
GROUP 4
|
||||
END
|
||||
|
||||
CURRENCY F_CORRVALUTA 18
|
||||
BEGIN
|
||||
PROMPT 39 20 "Corrispet. valuta "
|
||||
PROMPT 39 22 "Corrispet. valuta "
|
||||
FIELD CORRVALUTA
|
||||
GROUP 4
|
||||
VALIDATE REQIF_FUNC 1 F_VALUTAINTRA
|
||||
@ -617,7 +639,7 @@ END
|
||||
|
||||
STRING F_PROKEY 80
|
||||
BEGIN
|
||||
PROMPT 1 19 "db key"
|
||||
PROMPT 1 20 "db key"
|
||||
HELP "Chiave database"
|
||||
FIELD KEYFPPRO
|
||||
FLAGS "H"
|
||||
@ -625,7 +647,7 @@ END
|
||||
|
||||
BOOLEAN F_RITFATT
|
||||
BEGIN
|
||||
PROMPT 1 21 "Fattura in ritardo "
|
||||
PROMPT 1 23 "Fattura in ritardo "
|
||||
FIELD RITFATT
|
||||
END
|
||||
|
||||
@ -638,7 +660,7 @@ END
|
||||
#endif
|
||||
STRING NP_CONTSEP 6
|
||||
BEGIN
|
||||
PROMPT 1 22 "Cont. separata "
|
||||
PROMPT 1 23 "Cont. separata "
|
||||
USE &NPENT
|
||||
INPUT CODTAB NP_CONTSEP
|
||||
DISPLAY "Codice@6" CODTAB
|
||||
@ -651,7 +673,7 @@ END
|
||||
|
||||
STRING NP_DESCONTSEP 50
|
||||
BEGIN
|
||||
PROMPT 25 22 ""
|
||||
PROMPT 25 24 ""
|
||||
USE &NPENT KEY 2
|
||||
INPUT S0 NP_DESCONTSEP
|
||||
DISPLAY "Descrizione@50" S0
|
||||
|
@ -80,7 +80,7 @@ class TPrimanota_application : public TRelation_application
|
||||
bool _sal_dirty; // Il saldaconto e' stato "toccato"?
|
||||
|
||||
TipoIVA _iva; // Tipo di IVA corrente
|
||||
TCausale* _causale; // Causale corrente
|
||||
TCausale * _causale; // Causale corrente
|
||||
TLibro_giornale* _giornale; // Libro giornale corrente
|
||||
long _lastreg; // Numero ultima registrazione
|
||||
|
||||
@ -118,8 +118,9 @@ class TPrimanota_application : public TRelation_application
|
||||
static void check_fppro_fields(TMask& m);
|
||||
static bool caus_modify_handler(TMask_field& f, KEY key);
|
||||
static bool datareg_handler(TMask_field& f, KEY key);
|
||||
static bool datacomp_handler(TMask_field& f, KEY key);
|
||||
static bool data74ter_handler(TMask_field& f, KEY key);
|
||||
static bool datacomp_handler(TMask_field& f, KEY key);
|
||||
static bool datacompcr_handler(TMask_field& f, KEY key);
|
||||
static bool data74ter_handler(TMask_field& f, KEY key);
|
||||
static bool datadoc_handler(TMask_field& f, KEY key);
|
||||
static bool numdoc_handler(TMask_field& f, KEY key);
|
||||
static bool ndocext_handler(TMask_field& f, KEY key);
|
||||
@ -251,7 +252,9 @@ protected: // TRelation_application
|
||||
virtual bool is_transaction() const;
|
||||
virtual bool get_next_key(TToken_string& key);
|
||||
virtual int read(TMask& m);
|
||||
virtual int write(const TMask& m);
|
||||
void find_movcoll(const long numreg);
|
||||
void set_movcoll(const long movcoll, const long numreg);
|
||||
virtual int write(const TMask& m);
|
||||
virtual int rewrite(const TMask& m);
|
||||
virtual bool remove();
|
||||
virtual void write_enable(bool) {}
|
||||
@ -385,7 +388,7 @@ public:
|
||||
void reset_colors();
|
||||
real calcola_saldo() const;
|
||||
|
||||
TCausale& causale() const { return *_causale; }
|
||||
TCausale& causale() const { return * _causale; }
|
||||
TPartite_array& partite() { return _partite; } // Partite editate
|
||||
bool edit_pagamento(TPartita& p, int nriga, int nrata, int nrigp);
|
||||
bool notify_edit_pagamento(TPartita& partita, TRectype& new_pag,
|
||||
|
@ -17,13 +17,23 @@ TCausale::TCausale(const char* cod, int year)
|
||||
: TArray(12), _rec(LF_CAUSALI),
|
||||
_iva(iva_errata), _corrisp(false),
|
||||
_sezione_clifo(' '), _provvisorio(' '),
|
||||
_sezione_ritsoc(' '), _sezione_ritfis(' '), _sezione_revcharge(' ')
|
||||
_sezione_ritsoc(' '), _sezione_ritfis(' '), _sezione_revcharge(' '),
|
||||
_regolarizzazione(false)
|
||||
|
||||
|
||||
{
|
||||
_regolarizzazione = 0x2;
|
||||
if (cod && *cod)
|
||||
read(cod, year);
|
||||
if (cod && *cod)
|
||||
read(cod, year);
|
||||
if (soloiva())
|
||||
{
|
||||
TCursor c(new TRelation(LF_CAUSALI));
|
||||
int items = c.items();
|
||||
|
||||
for (c = 0L; c.pos() < items && !_regolarizzazione; ++c)
|
||||
_regolarizzazione = c.curr().get(CAU_CODCAUREG) == codice();
|
||||
}
|
||||
}
|
||||
|
||||
bool TCausale::reread()
|
||||
{
|
||||
const TString4 cod = codice();
|
||||
@ -145,22 +155,8 @@ bool TCausale::soloiva() const
|
||||
int TCausale::regime_speciale() const
|
||||
{ return _rec.get_int(CAU_REGSPIVA); }
|
||||
|
||||
bool TCausale::regolarizzazione()
|
||||
{
|
||||
if ((int) _regolarizzazione == 0x2)
|
||||
{
|
||||
_regolarizzazione = false;
|
||||
if (soloiva())
|
||||
{
|
||||
TCursor c(new TRelation(LF_CAUSALI));
|
||||
int items = c.items();
|
||||
|
||||
for (c = 0L; c.pos() < items && !_regolarizzazione; ++c)
|
||||
_regolarizzazione = c.curr().get(CAU_CODCAUREG) == codice();
|
||||
}
|
||||
}
|
||||
return _regolarizzazione != 0;
|
||||
}
|
||||
bool TCausale::regolarizzazione() const
|
||||
{ return _regolarizzazione; }
|
||||
|
||||
bool TCausale::ril_fat_em_ric() const
|
||||
{
|
||||
|
@ -14,7 +14,7 @@ class TCausale : public TArray
|
||||
TipoIVA _iva;
|
||||
bool _corrisp;
|
||||
char _sezione_clifo, _sezione_ritsoc, _sezione_ritfis, _sezione_revcharge, _provvisorio;
|
||||
int _regolarizzazione;
|
||||
bool _regolarizzazione;
|
||||
|
||||
protected:
|
||||
const TRectype* row(int num) const { return (const TRectype*)objptr(num); }
|
||||
@ -41,7 +41,7 @@ public:
|
||||
bool valintra() const;
|
||||
bool soloiva() const;
|
||||
bool reverse_charge() const;
|
||||
bool regolarizzazione();
|
||||
bool regolarizzazione() const;
|
||||
bool ril_fat_em_ric() const;
|
||||
bool datareg_prec() const;
|
||||
char provvisorio() const { return _provvisorio; }
|
||||
|
@ -158,8 +158,9 @@ bool TProvvisori_msk::on_field_event(TOperable_field& o, TField_event e, long jo
|
||||
switch (o.get()[0])
|
||||
{
|
||||
case 'C': fil << "=\"C\""; break;
|
||||
case 'P': fil << "=\"P\""; break;
|
||||
default : fil << "!=\"\""; break;
|
||||
case 'B': fil << "=\"B\""; break;
|
||||
case 'P': fil << "=\"P\""; break;
|
||||
default : fil << "!=\"\""; break;
|
||||
}
|
||||
update_search(F_FROMDATE, fil);
|
||||
update_search(F_TODATE, fil);
|
||||
@ -297,7 +298,7 @@ void TProvvisori_app::aggiungi_saldi(const TRectype& r, bool lettura)
|
||||
TBill conto; conto.get(r);
|
||||
TImporto importo(r.get_char(RMV_SEZIONE), r.get_real(RMV_IMPORTO));
|
||||
|
||||
_saldi.set_movprovv(lettura); // In lettura sono tutti provvisori
|
||||
_saldi.set_movprovv(lettura); // In lettura sono tutti provvisori qui
|
||||
_saldi.aggiorna(conto, importo, !lettura); // In lettura devo sottrarre l'importo
|
||||
}
|
||||
|
||||
|
@ -24,12 +24,13 @@ ENDPAGE
|
||||
|
||||
PAGE "Gestione Movimenti Provvisori" -1 -1 52 14
|
||||
|
||||
LIST F_PROVV 10
|
||||
LIST F_PROVV 25
|
||||
BEGIN
|
||||
PROMPT 1 0 "@bTipo movimenti provvisori "
|
||||
ITEM "P|Contabili"
|
||||
ITEM " |Tutti"
|
||||
ITEM "C|Cespiti"
|
||||
ITEM "B|Bilancio costi/ricavi"
|
||||
ITEM "C|Cespiti"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 50 3
|
||||
|
@ -728,7 +728,7 @@ void TApertura_chiusura::costi()
|
||||
}
|
||||
|
||||
s = saldi.get_long(SLD_SOTTOCONTO);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 1);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil);
|
||||
_saldo = sale.saldo();
|
||||
|
||||
if (_saldo.is_zero())
|
||||
@ -875,7 +875,7 @@ void TApertura_chiusura::ricavi()
|
||||
//numrig++;
|
||||
s = saldi.get_long(SLD_SOTTOCONTO);
|
||||
//sale.calcola_ultima_immissione(_annoesch,0,g,c,s,indbil);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 1);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil);
|
||||
_saldo = sale.saldo();
|
||||
|
||||
if (_saldo.is_zero()) continue;
|
||||
@ -1114,7 +1114,7 @@ void TApertura_chiusura::chiudi_attivita()
|
||||
}
|
||||
|
||||
s = saldi.get_long(SLD_SOTTOCONTO);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 1);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil);
|
||||
_saldo = sale.saldo();
|
||||
const int dbkey = saldi.getkey();
|
||||
saldi.setkey(1);
|
||||
@ -1264,7 +1264,7 @@ void TApertura_chiusura::chiudi_passivita()
|
||||
//numrig++;
|
||||
s = saldi.get_long(SLD_SOTTOCONTO);
|
||||
//sale.calcola_ultima_immissione(_annoesch,0,g,c,s,indbil);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 1);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil);
|
||||
_saldo = sale.saldo();
|
||||
|
||||
if (_saldo.is_zero()) continue;
|
||||
@ -1409,7 +1409,7 @@ void TApertura_chiusura::chiudi_conti_ordine()
|
||||
}
|
||||
|
||||
s = saldi.get_long(SLD_SOTTOCONTO);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 1);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil);
|
||||
_saldo = sale.saldo();
|
||||
const int dbkey = saldi.getkey();
|
||||
saldi.setkey(1);
|
||||
@ -1606,7 +1606,7 @@ void TApertura_chiusura::apri_attivita()
|
||||
|
||||
//numrig++;
|
||||
s = saldi.get_long(SLD_SOTTOCONTO);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 1, false);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 0x1, false);
|
||||
_saldo = sale.saldo();
|
||||
|
||||
if (_saldo == ZERO) continue;
|
||||
@ -1752,7 +1752,7 @@ void TApertura_chiusura::apri_passivita()
|
||||
|
||||
//numrig++;
|
||||
s = saldi.get_long(SLD_SOTTOCONTO);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 1, false);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 0x1, false);
|
||||
_saldo = sale.saldo();
|
||||
|
||||
if (_saldo.is_zero()) continue;
|
||||
@ -1898,7 +1898,7 @@ void TApertura_chiusura::apri_conti_ordine()
|
||||
//numrig++;
|
||||
s = saldi.get_long(SLD_SOTTOCONTO);
|
||||
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 1, false);
|
||||
sale.ultima_immissione_bilancio(_annoesch,g,c,s,indbil, 0x1, false);
|
||||
_saldo = sale.saldo();
|
||||
|
||||
if (_saldo == ZERO) continue;
|
||||
|
@ -313,7 +313,7 @@ END
|
||||
|
||||
CURRENCY S_INTERESSI 15
|
||||
BEGIN
|
||||
PROMPT 1 6 "Interessi "
|
||||
PROMPT 1 7 "Interessi "
|
||||
FLAGS "RD"
|
||||
END
|
||||
|
||||
|
@ -1,3 +1,3 @@
|
||||
23
|
||||
0
|
||||
$mov|96174|96174|559|0|Movimenti di prima nota|NMOV||
|
||||
$mov|||574|0|Movimenti di prima nota|NMOV||
|
||||
|
@ -1,9 +1,10 @@
|
||||
23
|
||||
60
|
||||
62
|
||||
ANNOES|9|4|0|Codice esercizio
|
||||
NUMREG|3|7|0|Numero di operazione
|
||||
DATAREG|5|8|0|Data operazione
|
||||
DATACOMP|5|8|0|Data competenza
|
||||
DATACOMPCR|5|8|0|Data competenza costi/ricavi
|
||||
DATADOC|5|8|0|Data documento
|
||||
RITFATT|8|1|0|Fattura in ritardo
|
||||
DATA74TER|5|8|0|Data per art. 74 ter
|
||||
@ -31,7 +32,7 @@ TOTDOCVAL|4|18|3|Totale documento in valuta
|
||||
RITFIS|4|18|3|Ritenute fiscali
|
||||
RITSOC|4|18|3|Ritenute sociali
|
||||
REVCHARGE|4|18|3|Reverse charge
|
||||
PROVVIS|1|1|0|Tipo movimento (" " Normale, "P" Provvisorio cancellabile, "C" Provvisorio cespiti)
|
||||
PROVVIS|1|1|0|Tipo movimento (< > Normale, Provvisorio <P> cancellabile, <C> cespiti, <B> bilancio costi/ricavi
|
||||
CODVALI|1|3|0|Codice valuta intra-comunitaria
|
||||
CAMBIOI|4|15|6|Cambio della valuta intra-comunitaria
|
||||
CORRLIRE|4|18|3|Corrispettivo in lire intra-comunitario
|
||||
@ -60,6 +61,7 @@ TFINVIO|7|1|0|Flag Invio Trasferimento Fatture
|
||||
TFDATA|5|8|0|Data ultimo invio Trasferimento Fatture
|
||||
IVALIQ|8|1|0|Iva per cassa liquidata completamente
|
||||
KEYFPPRO|1|80|0|Chiavi dell'FPPRO [KEYPRGINVIO;KEYHEADERFATT;KEYBODYFATT]
|
||||
MOVCOLL|3|7|0|Movimento collegato
|
||||
4
|
||||
NUMREG|
|
||||
DATAREG+NUMREG|X
|
||||
|
Loading…
x
Reference in New Issue
Block a user