Patch level :
Files correlati : ca3.exe ca3299a.rep Ricompilazione Demo : [ ] Commento : 0001399: CG + GC - mancano descrizioni e codici in stampa Lanciando la stampa , senza impostare nessun parametro, manca il codice della commessa e la descrizione del conto contabile git-svn-id: svn://10.65.10.50/trunk@19095 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
301bef9e9c
commit
15d685f999
@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
#include "../cg/cglib01.h"
|
#include "../cg/cglib01.h"
|
||||||
|
|
||||||
|
#include "commesse.h"
|
||||||
#include "pconana.h"
|
#include "pconana.h"
|
||||||
#include "movana.h"
|
#include "movana.h"
|
||||||
#include "rmovana.h"
|
#include "rmovana.h"
|
||||||
@ -194,7 +195,7 @@ bool TPrint_mastrini_ca_recordset::valid_record(const TRelation& rel) const
|
|||||||
{
|
{
|
||||||
case 'P': tipomov_int = 2; break;
|
case 'P': tipomov_int = 2; break;
|
||||||
case 'V': tipomov_int = 4; break;
|
case 'V': tipomov_int = 4; break;
|
||||||
default: tipomov_int = 1; break;
|
default : tipomov_int = 1; break;
|
||||||
}
|
}
|
||||||
if ((_tipimov & tipomov_int) == 0)
|
if ((_tipimov & tipomov_int) == 0)
|
||||||
return false;
|
return false;
|
||||||
@ -447,7 +448,7 @@ void TPrint_mastrini_ca_alternative_recordset::set_filter(const TPrint_mastrini_
|
|||||||
_dadata, _adata, _tipimov, _tipoconti==1, _tipoconti==2);
|
_dadata, _adata, _tipimov, _tipoconti==1, _tipoconti==2);
|
||||||
|
|
||||||
const long pconana_items = pconana.items();
|
const long pconana_items = pconana.items();
|
||||||
TProgind pi(pconana_items, "Scansione conti...");
|
TProgind pi(pconana_items, TR("Scansione conti..."));
|
||||||
|
|
||||||
TRelation rel_rmovana(LF_RMOVANA);
|
TRelation rel_rmovana(LF_RMOVANA);
|
||||||
rel_rmovana.add(LF_MOVANA, "NUMREG==NUMREG"); //aggiunge le testate x avere i tipi mov.
|
rel_rmovana.add(LF_MOVANA, "NUMREG==NUMREG"); //aggiunge le testate x avere i tipi mov.
|
||||||
@ -474,9 +475,10 @@ void TPrint_mastrini_ca_alternative_recordset::set_filter(const TPrint_mastrini_
|
|||||||
}
|
}
|
||||||
|
|
||||||
//scandisce il piano dei conti..
|
//scandisce il piano dei conti..
|
||||||
for (TRecnotype j = 0; pconana.move_to(j); j++)
|
for (bool pok = pconana.move_first(); pok; pok = pconana.move_next())
|
||||||
{
|
{
|
||||||
pi.addstatus(1);
|
if (!pi.addstatus(1))
|
||||||
|
break;
|
||||||
const TString& conto = pconana.get(PCONANA_CODCONTO).as_string();
|
const TString& conto = pconana.get(PCONANA_CODCONTO).as_string();
|
||||||
|
|
||||||
//..crea un cursore su rmovana per vedere se i conti selezionati hanno veri movimenti che soddisfano
|
//..crea un cursore su rmovana per vedere se i conti selezionati hanno veri movimenti che soddisfano
|
||||||
@ -486,10 +488,10 @@ void TPrint_mastrini_ca_alternative_recordset::set_filter(const TPrint_mastrini_
|
|||||||
|
|
||||||
TCursor cur_rmovana(&rel_rmovana, filtro, 2, &da_rmovana, &a_rmovana);
|
TCursor cur_rmovana(&rel_rmovana, filtro, 2, &da_rmovana, &a_rmovana);
|
||||||
const long rmovana_items = cur_rmovana.items();
|
const long rmovana_items = cur_rmovana.items();
|
||||||
cur_rmovana.freeze();
|
|
||||||
bool almeno_uno_aggiunto = false;
|
bool almeno_uno_aggiunto = false;
|
||||||
if (rmovana_items > 0)
|
if (rmovana_items > 0)
|
||||||
{
|
{
|
||||||
|
cur_rmovana.freeze();
|
||||||
for (cur_rmovana = 0; cur_rmovana.pos() < rmovana_items; ++cur_rmovana)
|
for (cur_rmovana = 0; cur_rmovana.pos() < rmovana_items; ++cur_rmovana)
|
||||||
{
|
{
|
||||||
//deve coincidere anche il tipomov! sarebbe stato troppo semplice...
|
//deve coincidere anche il tipomov! sarebbe stato troppo semplice...
|
||||||
@ -507,6 +509,7 @@ void TPrint_mastrini_ca_alternative_recordset::set_filter(const TPrint_mastrini_
|
|||||||
almeno_uno_aggiunto = true;
|
almeno_uno_aggiunto = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
cur_rmovana.freeze(false);
|
||||||
}
|
}
|
||||||
//se non ha aggiunto nemmeno un record valido..
|
//se non ha aggiunto nemmeno un record valido..
|
||||||
//crea un record di rmovana con il solo conto,datacomp e lo aggiunge al file temporaneo
|
//crea un record di rmovana con il solo conto,datacomp e lo aggiunge al file temporaneo
|
||||||
@ -527,7 +530,6 @@ void TPrint_mastrini_ca_alternative_recordset::set_filter(const TPrint_mastrini_
|
|||||||
////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////
|
||||||
class TPrint_mastrini_ca_rep : public TAnal_report
|
class TPrint_mastrini_ca_rep : public TAnal_report
|
||||||
{
|
{
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual bool set_recordset(const TString& sql);
|
virtual bool set_recordset(const TString& sql);
|
||||||
|
|
||||||
@ -549,7 +551,7 @@ void TPrint_mastrini_ca_rep::set_filter(const TPrint_mastrini_ca_mask& msk, int
|
|||||||
|
|
||||||
TPrint_mastrini_ca_recordset* recset = NULL;
|
TPrint_mastrini_ca_recordset* recset = NULL;
|
||||||
|
|
||||||
const char* query ="USE RMOVANA KEY 2\nJOIN MOVANA INTO NUMREG==NUMREG";
|
const char* const query ="USE RMOVANA KEY 2\nJOIN MOVANA INTO NUMREG==NUMREG";
|
||||||
switch (tipoconti)
|
switch (tipoconti)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
@ -570,7 +572,6 @@ class TPrint_mastrini_ca : public TSkeleton_application
|
|||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
virtual const char * extra_modules() const {return "cm";} //funziona anche con autorizzazione CM
|
virtual const char * extra_modules() const {return "cm";} //funziona anche con autorizzazione CM
|
||||||
|
|
||||||
virtual void main_loop();
|
virtual void main_loop();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -596,18 +597,27 @@ void TPrint_mastrini_ca::main_loop()
|
|||||||
|
|
||||||
//stabilisce quale è il primo livello (tra CDC e CMS)..
|
//stabilisce quale è il primo livello (tra CDC e CMS)..
|
||||||
const TMultilevel_code_info& liv1 = *ca_multilevel_code_info_by_index(0);
|
const TMultilevel_code_info& liv1 = *ca_multilevel_code_info_by_index(0);
|
||||||
TISAM_recordset set(liv1.logic() == LF_CDC ? "USE CDC" : "USE COMMESSE"); //..e di conseguenza scrive la use giusta
|
const int logic1 = liv1.logic();
|
||||||
|
TISAM_recordset set(logic1 == LF_CDC ? "USE CDC" : "USE COMMESSE"); //..e di conseguenza scrive la use giusta
|
||||||
|
|
||||||
|
bool skip_closed = false;
|
||||||
|
if (logic1 == LF_COMMESSE)
|
||||||
|
skip_closed = !yesno_box(TR("E' stata richiesta la stampa di tutte le commesse:\n"
|
||||||
|
"Si desidera includere anche le commesse chiuse?"));
|
||||||
|
|
||||||
TProgind pi(set.items(), video_string, true, true);
|
TProgind pi(set.items(), video_string, true, true);
|
||||||
for (int i = 0; set.move_to(i); i++) //fighissimo metodo per scandire un file in 1 riga!
|
for (bool sok = set.move_first(); sok; sok = set.move_next()) //fighissimo metodo per scandire un file in 1 riga!
|
||||||
{
|
{
|
||||||
pi.addstatus(1);
|
if (!pi.addstatus(1))
|
||||||
if (pi.iscancelled())
|
|
||||||
break;
|
break;
|
||||||
row = set.get((unsigned int)0).as_string(); //prende il valore del primo campo del file (CDC o CMS code)
|
|
||||||
|
|
||||||
video_string = TR("Scansione");
|
if (skip_closed && set.get(COMMESSE_CHIUSA).as_bool())
|
||||||
video_string << " " << row; //completa la stringa da visualizzare sulla progind
|
continue;
|
||||||
|
|
||||||
|
row = set.get(0u).as_string(); //prende il valore del primo campo del file (CDC o CMS code)
|
||||||
|
|
||||||
|
//completa la stringa da visualizzare sulla progind
|
||||||
|
video_string.cut(0) << row << '\n' << set.get(1u);
|
||||||
pi.set_text(video_string);
|
pi.set_text(video_string);
|
||||||
|
|
||||||
for (int l = liv1.levels()-2; l >= 0; l--) //se la struttura è a più livelli costruisce la tokenstring
|
for (int l = liv1.levels()-2; l >= 0; l--) //se la struttura è a più livelli costruisce la tokenstring
|
||||||
|
@ -65,7 +65,8 @@ MESSAGE RESET,F2.202
|
|||||||
</field>
|
</field>
|
||||||
<field x="31" type="Stringa" width="50" pattern="1">
|
<field x="31" type="Stringa" width="50" pattern="1">
|
||||||
<font italic="1" face="Courier New" bold="1" size="8" />
|
<font italic="1" face="Courier New" bold="1" size="8" />
|
||||||
<prescript description="H2.0 PRESCRIPT">MESSAGE ISAMREAD,PCONANA,CODCONTO=CODCONTO,DESCR</prescript>
|
<source>CODCONTO</source>
|
||||||
|
<prescript description="H2.0 PRESCRIPT">CA_FORMAT_CONTO_DESCR</prescript>
|
||||||
</field>
|
</field>
|
||||||
<field x="13" y="1.5" type="Testo" align="center" width="11" pattern="1" text="N.Reg.F;Riga" />
|
<field x="13" y="1.5" type="Testo" align="center" width="11" pattern="1" text="N.Reg.F;Riga" />
|
||||||
<field x="25" y="1.5" type="Testo" width="11" pattern="1" text="Descrizione" />
|
<field x="25" y="1.5" type="Testo" width="11" pattern="1" text="Descrizione" />
|
||||||
|
Loading…
x
Reference in New Issue
Block a user