Correzione alla causale di apertura
git-svn-id: svn://10.65.10.50/trunk@1082 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
2b27fb4ab7
commit
3ebeb19440
@ -1442,9 +1442,18 @@ bool CG1500_application::calcola(int g, int c, long s)
|
|||||||
|
|
||||||
TString codcaus(mov.get(MOV_CODCAUS));
|
TString codcaus(mov.get(MOV_CODCAUS));
|
||||||
|
|
||||||
|
// if (codcaus.not_empty())
|
||||||
|
// if (codcaus == causale_chiusura())
|
||||||
|
// continue;
|
||||||
|
|
||||||
|
// Modifica del 03-03-95
|
||||||
|
|
||||||
|
TCaus cau (codcaus);
|
||||||
|
|
||||||
if (codcaus.not_empty())
|
if (codcaus.not_empty())
|
||||||
if (codcaus == causale_chiusura())
|
if (cau.chiusura()) // Si tratta di causale di chiusura
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
//la causale e' uguale a quella di chiusura
|
//la causale e' uguale a quella di chiusura
|
||||||
// break;
|
// break;
|
||||||
|
|
||||||
@ -1459,21 +1468,36 @@ bool CG1500_application::calcola(int g, int c, long s)
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
//calcolo i movimenti del periodo
|
//calcolo i movimenti del periodo
|
||||||
|
/*
|
||||||
|
if ( data_reg >= _datada && data_reg <= _dataa)
|
||||||
|
if ((codcaus == causale_apertura() && _dataini != _datada) ||
|
||||||
|
(codcaus != causale_apertura()))
|
||||||
|
{
|
||||||
|
conto_mov = TRUE;
|
||||||
|
if (sezione == 'D')
|
||||||
|
_mov_periodo_dare += importo;
|
||||||
|
else _mov_periodo_avere += importo;
|
||||||
|
_u_max = fnc_max(_u_max, data);
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
// Modifica del 03-03-95
|
||||||
|
|
||||||
if ( data_reg >= _datada && data_reg <= _dataa)
|
if ( data_reg >= _datada && data_reg <= _dataa)
|
||||||
if ((codcaus == causale_apertura() && _dataini != _datada) ||
|
if ((cau.apertura() && _dataini != _datada) ||
|
||||||
(codcaus != causale_apertura()))
|
(!cau.apertura()))
|
||||||
{
|
{
|
||||||
conto_mov = TRUE;
|
conto_mov = TRUE;
|
||||||
if (sezione == 'D')
|
if (sezione == 'D')
|
||||||
_mov_periodo_dare += importo;
|
_mov_periodo_dare += importo;
|
||||||
else _mov_periodo_avere += importo;
|
else _mov_periodo_avere += importo;
|
||||||
_u_max = fnc_max(_u_max, data);
|
_u_max = fnc_max(_u_max, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
//il saldo inizio es. e' dato dall'importo dare - importo avere di quei movimenti che hanno causale == apertura e data reg >= data inizio es. e <= data limite sup.
|
//il saldo inizio es. e' dato dall'importo dare - importo avere di quei movimenti che hanno causale == apertura e data reg >= data inizio es. e <= data limite sup.
|
||||||
if (_datada == _dataini) //calcolo il saldo iniziale
|
if (_datada == _dataini) //calcolo il saldo iniziale
|
||||||
{
|
{
|
||||||
if (codcaus == causale_apertura())
|
//if (codcaus == causale_apertura())
|
||||||
|
if (cau.apertura())
|
||||||
{
|
{
|
||||||
if (sezione == 'D')
|
if (sezione == 'D')
|
||||||
_saldo_ini_dare += importo;
|
_saldo_ini_dare += importo;
|
||||||
|
@ -1902,10 +1902,19 @@ bool CG1600_application::calcola(int g, int c, long s,
|
|||||||
continue; //stampa mov provv.
|
continue; //stampa mov provv.
|
||||||
//li scarto
|
//li scarto
|
||||||
const TString codcaus(mov.get(MOV_CODCAUS));
|
const TString codcaus(mov.get(MOV_CODCAUS));
|
||||||
|
|
||||||
|
// if (codcaus.not_empty())
|
||||||
|
// if (codcaus == causale_chiusura()) //la causale e' uguale a quella di chiusura
|
||||||
|
// continue;
|
||||||
|
|
||||||
|
// Modifica del 03-03-95
|
||||||
|
|
||||||
|
TCaus cau (codcaus);
|
||||||
|
|
||||||
if (codcaus.not_empty())
|
if (codcaus.not_empty())
|
||||||
if (codcaus == causale_chiusura()) //la causale e' uguale a quella di chiusura
|
if (cau.chiusura()) //la causale e' uguale a quella di chiusura
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|
||||||
if (_annoese == 0)
|
if (_annoese == 0)
|
||||||
data = datareg;
|
data = datareg;
|
||||||
@ -1917,9 +1926,8 @@ bool CG1600_application::calcola(int g, int c, long s,
|
|||||||
TString datastr1 = _dataini.string();
|
TString datastr1 = _dataini.string();
|
||||||
TString datastr2 = _data_ini_ese.string();
|
TString datastr2 = _data_ini_ese.string();
|
||||||
|
|
||||||
TString codcausapp = causale_apertura();
|
|
||||||
|
|
||||||
//calcolo i movimenti del periodo
|
//calcolo i movimenti del periodo
|
||||||
|
/*
|
||||||
if ( (data >= _dataini) && (data <= _datafine) )
|
if ( (data >= _dataini) && (data <= _datafine) )
|
||||||
if ((codcaus == causale_apertura() && _data_ini_ese != _dataini) ||
|
if ((codcaus == causale_apertura() && _data_ini_ese != _dataini) ||
|
||||||
(codcaus != causale_apertura()))
|
(codcaus != causale_apertura()))
|
||||||
@ -1929,12 +1937,25 @@ bool CG1600_application::calcola(int g, int c, long s,
|
|||||||
_mov_periodo_dare += importo;
|
_mov_periodo_dare += importo;
|
||||||
else _mov_periodo_avere += importo;
|
else _mov_periodo_avere += importo;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
// Modifica del 03-03-95
|
||||||
|
|
||||||
|
if ( (data >= _dataini) && (data <= _datafine) )
|
||||||
|
if ((cau.apertura() && _data_ini_ese != _dataini) ||
|
||||||
|
(!cau.apertura()))
|
||||||
|
{
|
||||||
|
conto_mov = TRUE;
|
||||||
|
if (sezione == "D")
|
||||||
|
_mov_periodo_dare += importo;
|
||||||
|
else _mov_periodo_avere += importo;
|
||||||
|
}
|
||||||
|
|
||||||
//il saldo inizio es. e' dato dall'importo dare - importo avere di quei movimenti che hanno causale == apertura e data reg >= data inizio es. e <= data limite sup.
|
//il saldo inizio es. e' dato dall'importo dare - importo avere di quei movimenti che hanno causale == apertura e data reg >= data inizio es. e <= data limite sup.
|
||||||
|
|
||||||
if (_dataini == _data_ini_ese) //calcolo il saldo iniziale
|
if (_dataini == _data_ini_ese) //calcolo il saldo iniziale
|
||||||
{
|
{
|
||||||
if (codcaus == causale_apertura())
|
//if (codcaus == causale_apertura())
|
||||||
|
if (cau.apertura())
|
||||||
{
|
{
|
||||||
if (sezione == "D")
|
if (sezione == "D")
|
||||||
_saldo_ini_dare += importo;
|
_saldo_ini_dare += importo;
|
||||||
|
@ -21,6 +21,13 @@ BEGIN
|
|||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
|
||||||
|
DATE F_DATASTAMPA
|
||||||
|
BEGIN
|
||||||
|
PROMPT 4 4 "Data stampa "
|
||||||
|
HELP "Indicare la data da stampare sul bilancio"
|
||||||
|
FLAGS "A"
|
||||||
|
END
|
||||||
|
|
||||||
NUMBER F_ANNOESE 4
|
NUMBER F_ANNOESE 4
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 4 5 "Anno esercizio "
|
PROMPT 4 5 "Anno esercizio "
|
||||||
@ -88,13 +95,6 @@ BEGIN
|
|||||||
MESSAGE COPY,F_TIPOSTAMPA
|
MESSAGE COPY,F_TIPOSTAMPA
|
||||||
END
|
END
|
||||||
|
|
||||||
DATE F_DATASTAMPA
|
|
||||||
BEGIN
|
|
||||||
PROMPT 4 4 "Data stampa "
|
|
||||||
HELP "Indicare la data da stampare sul bilancio"
|
|
||||||
FLAGS "A"
|
|
||||||
END
|
|
||||||
|
|
||||||
TEXT 96
|
TEXT 96
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 4 9 "Dalla data competenza "
|
PROMPT 4 9 "Dalla data competenza "
|
||||||
@ -174,12 +174,12 @@ END
|
|||||||
|
|
||||||
BUTTON DLG_OK 9 2
|
BUTTON DLG_OK 9 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -12 -1 ""
|
PROMPT -12 -1 ""
|
||||||
END
|
END
|
||||||
|
|
||||||
BUTTON DLG_QUIT 9 2
|
BUTTON DLG_QUIT 9 2
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT -22 -1 ""
|
PROMPT -22 -1 ""
|
||||||
END
|
END
|
||||||
|
|
||||||
ENDPAGE
|
ENDPAGE
|
||||||
|
@ -231,7 +231,7 @@ bool TLibro_giornale::read(int y)
|
|||||||
|
|
||||||
for (int err = reg.read(_isgteq); err == NOERR; err = reg.next())
|
for (int err = reg.read(_isgteq); err == NOERR; err = reg.next())
|
||||||
{
|
{
|
||||||
if (reg.get("CODTAB").compare(anno, 4) != 0) break;
|
//if (reg.get("CODTAB").compare(anno, 4) != 0) break;
|
||||||
if (reg.get_int("I0") == libro_giornale)
|
if (reg.get_int("I0") == libro_giornale)
|
||||||
{
|
{
|
||||||
found = TRUE;
|
found = TRUE;
|
||||||
|
@ -78,7 +78,8 @@ class TCausale : public TArray
|
|||||||
bool _corrisp;
|
bool _corrisp;
|
||||||
char _sezione_clifo, _sezione_ritsoc;
|
char _sezione_clifo, _sezione_ritsoc;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
const TRectype& row(int num) const;
|
const TRectype& row(int num) const;
|
||||||
void calcIVA();
|
void calcIVA();
|
||||||
|
|
||||||
@ -111,7 +112,7 @@ public:
|
|||||||
char sezione_clifo();
|
char sezione_clifo();
|
||||||
char sezione_ritsoc();
|
char sezione_ritsoc();
|
||||||
|
|
||||||
bool read(const char* cod, int year);
|
virtual bool read(const char* cod, int year);
|
||||||
|
|
||||||
TCausale(const char* code = "", int year = 0);
|
TCausale(const char* code = "", int year = 0);
|
||||||
virtual ~TCausale() {}
|
virtual ~TCausale() {}
|
||||||
|
16
cg/cglib.h
16
cg/cglib.h
@ -13,8 +13,22 @@
|
|||||||
|
|
||||||
#include <assoc.h>
|
#include <assoc.h>
|
||||||
#include "conto.h"
|
#include "conto.h"
|
||||||
|
#include "cg2103.h" // per TCausale
|
||||||
|
|
||||||
//TLocalisamfile * get_descr_cf(TLocalisamfile * pconti,TLocalisamfile * clifo , int g, int c, long s);
|
|
||||||
|
class TCaus : public TCausale
|
||||||
|
{
|
||||||
|
private:
|
||||||
|
TRectype _rec;
|
||||||
|
|
||||||
|
public:
|
||||||
|
bool chiusura() const;
|
||||||
|
bool apertura() const;
|
||||||
|
virtual bool read(const char* cod);
|
||||||
|
|
||||||
|
TCaus(const char* cod);
|
||||||
|
~TCaus() {}
|
||||||
|
};
|
||||||
|
|
||||||
class TSaldi_list : public TAssoc_array
|
class TSaldi_list : public TAssoc_array
|
||||||
{
|
{
|
||||||
|
@ -11,10 +11,47 @@
|
|||||||
#include <mov.h>
|
#include <mov.h>
|
||||||
#include <saldi.h>
|
#include <saldi.h>
|
||||||
#include <pconti.h>
|
#include <pconti.h>
|
||||||
|
#include <causali.h>
|
||||||
#include <clifo.h>
|
#include <clifo.h>
|
||||||
|
|
||||||
#include "cglib.h"
|
#include "cglib.h"
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////
|
||||||
|
// Causale
|
||||||
|
///////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
TCaus::TCaus(const char* cod)
|
||||||
|
: _rec(LF_CAUSALI)
|
||||||
|
{
|
||||||
|
if (*cod) read(cod);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Legge le righe della causale attualmente selezionata sulla maschera
|
||||||
|
bool TCaus::read(const char* cod)
|
||||||
|
{
|
||||||
|
TLocalisamfile caus(LF_CAUSALI);
|
||||||
|
|
||||||
|
_rec = caus.curr(); _rec.zero(); // Delete header
|
||||||
|
|
||||||
|
if (*cod > ' ')
|
||||||
|
{
|
||||||
|
caus.setkey(1);
|
||||||
|
caus.put(CAU_CODCAUS, cod);
|
||||||
|
|
||||||
|
int err = caus.read();
|
||||||
|
if (err != NOERR) return FALSE;
|
||||||
|
_rec = caus.curr();
|
||||||
|
}
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool TCaus::chiusura() const
|
||||||
|
{ return _rec.get_char("MOVAP") == 'C'; }
|
||||||
|
|
||||||
|
bool TCaus::apertura() const
|
||||||
|
{ return _rec.get_char("MOVAP") == 'A'; }
|
||||||
|
|
||||||
// aep e' l'esercizio precedente
|
// aep e' l'esercizio precedente
|
||||||
TSaldi_list::TSaldi_list(int gr, int co, int aec, int aep)
|
TSaldi_list::TSaldi_list(int gr, int co, int aec, int aep)
|
||||||
{
|
{
|
||||||
@ -330,7 +367,7 @@ bool TSaldo::data_limite_bilancio(int bilancio, int g, int c, long s, const TDat
|
|||||||
TRectype rec(rmov.curr());
|
TRectype rec(rmov.curr());
|
||||||
|
|
||||||
for (rmov.read(_isgteq); !rmov.eof(); rmov.next())
|
for (rmov.read(_isgteq); !rmov.eof(); rmov.next())
|
||||||
{
|
{
|
||||||
if (rmov.curr() != rec) break;
|
if (rmov.curr() != rec) break;
|
||||||
|
|
||||||
annoe = rmov.get_int(RMV_ANNOES);
|
annoe = rmov.get_int(RMV_ANNOES);
|
||||||
@ -358,11 +395,18 @@ bool TSaldo::data_limite_bilancio(int bilancio, int g, int c, long s, const TDat
|
|||||||
|
|
||||||
// "Se la causale del movimento e' uguale a quella di chiusura,
|
// "Se la causale del movimento e' uguale a quella di chiusura,
|
||||||
// o di apertura il movimento non va considerato"
|
// o di apertura il movimento non va considerato"
|
||||||
if (_codcaus.not_empty())
|
// if (_codcaus.not_empty())
|
||||||
if (_codcaus == causale_chiusura_es() ||
|
// if (_codcaus == causale_chiusura_es() ||
|
||||||
_codcaus == causale_apertura_es())
|
// _codcaus == causale_apertura_es())
|
||||||
continue;
|
// continue;
|
||||||
|
|
||||||
|
// Modifica del 03-03-1995
|
||||||
|
TCaus cau(_codcaus);
|
||||||
|
|
||||||
|
if (_codcaus.not_empty())
|
||||||
|
if (cau.chiusura() || cau.apertura())
|
||||||
|
continue;
|
||||||
|
|
||||||
//se non e' richiesta stampa mov. provvisori li scarto
|
//se non e' richiesta stampa mov. provvisori li scarto
|
||||||
if (!stp_prov && _provv.trim().not_empty())
|
if (!stp_prov && _provv.trim().not_empty())
|
||||||
continue;
|
continue;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user