Patch level :2.2 nopatch
Files correlati :cacnv ca0 Ricompilazione Demo : [ ] Commento : Aggiunto svuotamento campi CODCMS FASCMS dei files RMOV ed RMOVIVA git-svn-id: svn://10.65.10.50/trunk@12613 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
b6ed830f88
commit
4dfa2136a6
@ -31,11 +31,11 @@ TMask_tabca::~TMask_tabca()
|
||||
|
||||
bool TMask_tabca::on_field_event(TOperable_field& o, TField_event e, long jolly)
|
||||
{
|
||||
switch (o.dlg())
|
||||
/* switch (o.dlg())
|
||||
{
|
||||
|
||||
default: break;
|
||||
}
|
||||
}*/
|
||||
return true;
|
||||
}
|
||||
|
||||
|
42
ca/cacnv.cpp
42
ca/cacnv.cpp
@ -6,6 +6,7 @@
|
||||
|
||||
#include <mov.h>
|
||||
#include <rmov.h>
|
||||
#include <rmoviva.h>
|
||||
|
||||
#include "../cg/cg2101.h"
|
||||
#include "calib01.h"
|
||||
@ -58,7 +59,7 @@ class TConversione_cm2ca : public TSkeleton_application
|
||||
|
||||
protected:
|
||||
virtual void main_loop();
|
||||
void create_new_movana(long numreg_cg);
|
||||
void create_new_movana(long numreg_cg, bool definitiva);
|
||||
|
||||
public:
|
||||
bool convert_clerks();
|
||||
@ -96,6 +97,9 @@ void TConversione_cm2ca::main_loop()
|
||||
}
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------------------------
|
||||
// trasferisce i dati dalle tabelle Commesse e Fasi ai nuovi file di analitica (COMMESSE e FASI)
|
||||
//------------------------------------------------------------------------------------------------
|
||||
bool TConversione_cm2ca::convert_clerks()
|
||||
{
|
||||
TLocalisamfile commesse(LF_COMMESSE); //la conversione blocca in automatico gli altri utenti
|
||||
@ -182,6 +186,9 @@ bool TConversione_cm2ca::convert_phases()
|
||||
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------------------------
|
||||
// mette il flag di ANALITICA nei gr.co.stc. aventi codcms e/o codfsc
|
||||
//------------------------------------------------------------------------------------------------
|
||||
bool TConversione_cm2ca::set_anal()
|
||||
{
|
||||
TRelation relpcon(LF_PCON);
|
||||
@ -208,7 +215,10 @@ bool TConversione_cm2ca::set_anal()
|
||||
}
|
||||
}
|
||||
|
||||
void TConversione_cm2ca::create_new_movana(long numreg_cg)
|
||||
//----------------------------------------------------------------------------------------------------
|
||||
// trasferisce i movimenti e le righe relative (MOV,RMOV) nei nuovi file di analitica (MOVANA,RMOVANA)
|
||||
// ---------------------------------------------------------------------------------------------------
|
||||
void TConversione_cm2ca::create_new_movana(long numreg_cg, bool definitiva)
|
||||
{
|
||||
TAnal_mov analmov;
|
||||
//riempie le righe di testata
|
||||
@ -285,7 +295,28 @@ void TConversione_cm2ca::create_new_movana(long numreg_cg)
|
||||
analmov.put(MOVANA_SEZIONE, importone.sezione());
|
||||
analmov.put(MOVANA_TOTDOC, importone.valore());
|
||||
|
||||
analmov.write();
|
||||
//se e' riuscita la scrittura dei movimenti di analitica ed e' una conversione definitiva...
|
||||
if (analmov.write() == NOERR && definitiva)
|
||||
{
|
||||
//azzera i campi codice commessa e fase in RMOV...
|
||||
for (int m = 0; m < mov.cg_items(); m++)
|
||||
{
|
||||
TRectype& rmov = mov.cg(m);
|
||||
|
||||
rmov.zero(RMV_CODCMS);
|
||||
rmov.zero(RMV_FASCMS);
|
||||
}
|
||||
//...e in RMOVIVA
|
||||
for (int n = 0; n < mov.iva_items(); n++)
|
||||
{
|
||||
TRectype& rmoviva = mov.iva(n);
|
||||
|
||||
rmoviva.zero(RMI_CODCMS);
|
||||
rmoviva.zero(RMI_FASCMS);
|
||||
}
|
||||
//manca il compattamento del file rmov e rmoviva
|
||||
mov.rewrite(); //puo' finalmente riscrivere i files di origine puliti e compattati
|
||||
}
|
||||
}
|
||||
|
||||
bool TConversione_cm2ca::convert_movs()
|
||||
@ -294,10 +325,11 @@ bool TConversione_cm2ca::convert_movs()
|
||||
msk.run();
|
||||
//scandisce il file RMOV,alla ricerca dei record con codice fase o codice commessa compilato
|
||||
TRelation rel_rmov(LF_RMOV);
|
||||
const bool definitiva = msk.get_int(F_TIPOCONV);
|
||||
//costruzione filtro con date (in caso di conversione provvisoria)
|
||||
TString filtro;
|
||||
filtro << "((CODCMS!='')||(FASCMS!=''))&&(ROWTYPE!='T')";
|
||||
if (msk.get_int(F_TIPOCONV) == 0)
|
||||
if (!definitiva)
|
||||
{
|
||||
const TDate dataini = msk.get_date(F_DATAINI);
|
||||
if (dataini.ok())
|
||||
@ -323,7 +355,7 @@ bool TConversione_cm2ca::convert_movs()
|
||||
if (curr_numreg_cg != last_numreg_cg)
|
||||
{
|
||||
//se il numreg di questa riga e' nuovo -> crea un nuovo movimento di analitica (testata)
|
||||
create_new_movana(curr_numreg_cg);
|
||||
create_new_movana(curr_numreg_cg, definitiva);
|
||||
last_numreg_cg = curr_numreg_cg;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user