Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
Metodizzato il calcolo delle date competenza nella elaborazione analitica (in modo che le calcoli sempre, sia che esista il movcg sia che non esista).
Messi i campi dei conti analitici nella pagina analitica degli articoli (nella pagina dove erano si sovrapponevano ad altri)


git-svn-id: svn://10.65.10.50/trunk@20348 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2010-04-16 13:04:42 +00:00
parent 847c46f844
commit 8413f380d6
4 changed files with 35 additions and 13 deletions

View File

@ -500,8 +500,8 @@ TMask_anamag::TMask_anamag(TRelation * rel) : TMask("ve2400")
if (!ca_config().get_bool("UsePdcc")) // Creo campi analitici solo se uso vero piano conti analitico if (!ca_config().get_bool("UsePdcc")) // Creo campi analitici solo se uso vero piano conti analitico
{ {
ca_create_fields(*this, 1, LF_PCONANA, 1, 7, F_CONTOPCIA, F_DESCRCONTOPCIA, 0, ANAMAG_CONTOINDA); ca_create_fields(*this, 6, LF_PCONANA, 1, 9, F_CONTOPCIA, F_DESCRCONTOPCIA, 0, ANAMAG_CONTOINDA);
ca_create_fields(*this, 1, LF_PCONANA, 1,13, F_CONTOPCIV, F_DESCRCONTOPCIV, 0, ANAMAG_CONTOINDV); ca_create_fields(*this, 6, LF_PCONANA, 1,15, F_CONTOPCIV, F_DESCRCONTOPCIV, 0, ANAMAG_CONTOINDV);
} }
create_user_fields(); create_user_fields();

View File

@ -1334,6 +1334,16 @@ BEGIN
ADD RUN cg0 -0 ADD RUN cg0 -0
END END
GROUPBOX DLG_NULL 78 6
BEGIN
PROMPT 0 8 "@bConto acquisti"
END
GROUPBOX DLG_NULL 78 6
BEGIN
PROMPT 0 14 "@bConto vendite"
END
ENDPAGE ENDPAGE
PAGE "Lavanderie" 0 0 80 15 PAGE "Lavanderie" 0 0 80 15

View File

@ -620,6 +620,7 @@ protected:
const TCausale& rdoc2caus(const TRiga_documento& rdoc); const TCausale& rdoc2caus(const TRiga_documento& rdoc);
void init_distrib(TString_array& conti, TGeneric_distrib& distrib, bool pareggio); void init_distrib(TString_array& conti, TGeneric_distrib& distrib, bool pareggio);
void calcola_date_comp(const TDocumento& doc, TDate& datareg, TDate& datacomp, TDate& datafcomp, int annoes);
public: public:
bool search_costo_ricavo(const TRiga_documento& riga, TBill& conto, bool riclassifica_fdr_fde); bool search_costo_ricavo(const TRiga_documento& riga, TBill& conto, bool riclassifica_fdr_fde);

View File

@ -479,6 +479,20 @@ void TContabilizzazione_analitica::init_distrib(TString_array& conti, TGeneric_d
} }
} }
void TContabilizzazione_analitica::calcola_date_comp(const TDocumento& doc, TDate& datareg, TDate& datacomp, TDate& datafcomp, int annoes)
{
const TDate& datadoc = doc.get_date(DOC_DATADOC);
datacomp = doc.get_date(DOC_DATACOMP);
if (!datacomp.ok())
datacomp = datadoc;
datafcomp = doc.get_date(DOC_DATAFCOMP);
if (!datafcomp.ok())
datafcomp = datacomp;
datareg = datadoc;
annoes = esercizi().date2esc(datareg); //ci potrebbe andare datacomp? All'analisi l'ardua sentenza
}
bool TContabilizzazione_analitica::elabora(TDocumento& doc, long numreg_cg, TViswin* viswin, bool can_write, TAnal_mov& mov, bool riclassifica_fdr_fde) bool TContabilizzazione_analitica::elabora(TDocumento& doc, long numreg_cg, TViswin* viswin, bool can_write, TAnal_mov& mov, bool riclassifica_fdr_fde)
{ {
TDate datareg, datacomp, datafcomp, datadoc; TDate datareg, datacomp, datafcomp, datadoc;
@ -498,15 +512,8 @@ bool TContabilizzazione_analitica::elabora(TDocumento& doc, long numreg_cg, TVis
} }
else else
{ {
datadoc = doc.get_date(DOC_DATADOC); calcola_date_comp(doc, datareg, datacomp, datafcomp, annoes);
datacomp = doc.get_date(DOC_DATACOMP);
if (!datacomp.ok())
datacomp = datadoc;
datafcomp = doc.get_date(DOC_DATAFCOMP);
if (!datafcomp.ok())
datafcomp = datacomp;
datareg = datadoc;
annoes = esercizi().date2esc(datareg); //ci potrebbe andare datacomp?Allì'analisi l'ardua sentenza
doc.riferimento(descr); doc.riferimento(descr);
if (descr.empty()) if (descr.empty())
descr = doc.tipo().descrizione(); descr = doc.tipo().descrizione();
@ -529,7 +536,8 @@ bool TContabilizzazione_analitica::elabora(TDocumento& doc, long numreg_cg, TVis
dare = doc.get_char(DOC_TIPOCF) == 'F'; dare = doc.get_char(DOC_TIPOCF) == 'F';
if (doc.is_nota_credito()) if (doc.is_nota_credito())
dare= !dare; dare= !dare;
} } //else di if(numreg_cg > 0)...
const char sezione = dare ? 'D' : 'A'; const char sezione = dare ? 'D' : 'A';
const int decimals = TCurrency::get_firm_dec(); const int decimals = TCurrency::get_firm_dec();
@ -549,10 +557,13 @@ bool TContabilizzazione_analitica::elabora(TDocumento& doc, long numreg_cg, TVis
else else
mov.put(MOVANA_NUMREG, numreg_ca = 0); mov.put(MOVANA_NUMREG, numreg_ca = 0);
} }
calcola_date_comp(doc, datareg, datacomp, datafcomp, annoes);
mov.put(MOVANA_DATAREG, datareg); mov.put(MOVANA_DATAREG, datareg);
mov.put(MOVANA_DATACOMP, datacomp); mov.put(MOVANA_DATACOMP, datacomp);
mov.put(MOVANA_DATAFCOMP, datafcomp); mov.put(MOVANA_DATAFCOMP, datafcomp);
mov.put(MOVANA_DATADOC, datadoc); mov.put(MOVANA_DATADOC, datadoc);
mov.put(MOVANA_ANNOES, annoes); mov.put(MOVANA_ANNOES, annoes);
mov.put(MOVANA_DESCR, descr); mov.put(MOVANA_DESCR, descr);
mov.put(MOVANA_NUMREGCG, numreg_cg); // Movimento contabile associato mov.put(MOVANA_NUMREGCG, numreg_cg); // Movimento contabile associato