Patch level :10.0 868
Files correlati :ve0.exe verig*.msk Ricompilazione Demo : [ ] Commento : 1)ripristinata la gestione della indetraibilita' per le commesse esenti o similia 2) migliorato il riconoscimento dei docs vuoti da parte delle elaborazioni interattive; e' vuoto un doc che abbia solo righe generate git-svn-id: svn://10.65.10.50/trunk@16051 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
3459429d3a
commit
1cae1f83a7
@ -4,6 +4,7 @@
|
|||||||
#include "sconti.h"
|
#include "sconti.h"
|
||||||
#include "vepriv.h"
|
#include "vepriv.h"
|
||||||
#include "verig.h"
|
#include "verig.h"
|
||||||
|
#include "../ca/commesse.h"
|
||||||
#include "../mg/mglib.h"
|
#include "../mg/mglib.h"
|
||||||
|
|
||||||
#include "rdoc.h"
|
#include "rdoc.h"
|
||||||
@ -991,9 +992,41 @@ void TRiga_documento::autosave(TSheet_field& f)
|
|||||||
break;
|
break;
|
||||||
fldref->write(fld.get(), *this);
|
fldref->write(fld.get(), *this);
|
||||||
}
|
}
|
||||||
|
TString codcms = get(RDOC_CODCMS); //dalla rigadoc
|
||||||
|
|
||||||
|
if (codcms.blank()) //se non la trova cerca nella maschera di testata
|
||||||
|
{
|
||||||
|
TDocumento_mask& doc_mask = (TDocumento_mask&)f.mask();
|
||||||
|
const short cms_start = doc_mask.cms_start();
|
||||||
|
const short cms_end = doc_mask.cms_end();
|
||||||
|
codcms.cut(0);
|
||||||
|
for (short j = cms_start; j <= cms_end; j++)
|
||||||
|
{
|
||||||
|
const TEdit_field& fld = doc_mask.efield(j);
|
||||||
|
TString80 str = fld.get();
|
||||||
|
str.rpad(fld.size());
|
||||||
|
codcms << str;
|
||||||
|
}
|
||||||
|
codcms.rtrim();
|
||||||
|
}
|
||||||
|
if (codcms.full())
|
||||||
|
{
|
||||||
|
const TRectype& rec_cms = cache().get(LF_COMMESSE, codcms);
|
||||||
|
const TString& regiva = rec_cms.get(COMMESSE_REGIVA);
|
||||||
|
|
||||||
|
if (regiva.full())
|
||||||
|
{
|
||||||
|
put( RDOC_TIPODET, 9 );
|
||||||
|
row.add(f.cid2index(FR_TIPODET), 9);
|
||||||
|
m.set(FR_TIPODET, 9);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
put( RDOC_TIPODET, row.get( f.cid2index(FR_TIPODET)) );
|
||||||
|
}
|
||||||
|
|
||||||
put( RDOC_CODAGG1, row.get( f.cid2index(FR_CODAGG1)) );
|
put( RDOC_CODAGG1, row.get( f.cid2index(FR_CODAGG1)) );
|
||||||
put( RDOC_CODAGG2, row.get( f.cid2index(FR_CODAGG2)) );
|
put( RDOC_CODAGG2, row.get( f.cid2index(FR_CODAGG2)) );
|
||||||
put( RDOC_TIPODET, row.get( f.cid2index(FR_TIPODET)) );
|
|
||||||
for (short jid = FR_JOLLY1; jid <= FR_JOLLY10; jid++)
|
for (short jid = FR_JOLLY1; jid <= FR_JOLLY10; jid++)
|
||||||
{
|
{
|
||||||
const int pos = m.id2pos(jid);
|
const int pos = m.id2pos(jid);
|
||||||
|
@ -2620,7 +2620,7 @@ void TElabora_mask::update_ndoc_filter(bool is_tipo_elaborazione)
|
|||||||
const bool elab_changed = e != _last_elab;
|
const bool elab_changed = e != _last_elab;
|
||||||
_last_elab = e;
|
_last_elab = e;
|
||||||
|
|
||||||
const bool aggiungi_doc_att = get_bool(F_TYPE);
|
const bool aggiungi_doc_att = get_bool(F_TYPE);
|
||||||
enable(-1, aggiungi_doc_att);
|
enable(-1, aggiungi_doc_att);
|
||||||
if (!aggiungi_doc_att && is_tipo_elaborazione )
|
if (!aggiungi_doc_att && is_tipo_elaborazione )
|
||||||
reset(-1);
|
reset(-1);
|
||||||
@ -2632,7 +2632,14 @@ void TElabora_mask::update_ndoc_filter(bool is_tipo_elaborazione)
|
|||||||
{
|
{
|
||||||
if (aggiungi_doc_att)
|
if (aggiungi_doc_att)
|
||||||
{
|
{
|
||||||
const bool agg_test = e->aggiorna_testata_se_vuoto() && _main->sfield(F_SHEET).items() == 0;
|
bool agg_test = e->aggiorna_testata_se_vuoto();
|
||||||
|
int nrighe = _main->doc().physical_rows();
|
||||||
|
|
||||||
|
for (int i = nrighe; i >= 1; i--)
|
||||||
|
if (_main->doc()[i].is_generata())
|
||||||
|
nrighe--;
|
||||||
|
agg_test &= nrighe == 0;
|
||||||
|
|
||||||
set(F_UPDATE_HEADER, agg_test ? "X" : "");
|
set(F_UPDATE_HEADER, agg_test ? "X" : "");
|
||||||
const TString8 num_in = e->codice_numerazione_iniziale();
|
const TString8 num_in = e->codice_numerazione_iniziale();
|
||||||
if (elab_changed)
|
if (elab_changed)
|
||||||
|
12
ve/verig.uml
12
ve/verig.uml
@ -1303,7 +1303,7 @@ ENDIF
|
|||||||
|
|
||||||
STRING FR_TIPODET 1
|
STRING FR_TIPODET 1
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 55 15 "Indetraibilita' "
|
PROMPT 2 16 "Indetraib. "
|
||||||
USE %DET
|
USE %DET
|
||||||
INPUT CODTAB FR_TIPODET
|
INPUT CODTAB FR_TIPODET
|
||||||
DISPLAY "Codice" CODTAB
|
DISPLAY "Codice" CODTAB
|
||||||
@ -1322,7 +1322,7 @@ BEGIN
|
|||||||
IFDEF(X_ADDIVA)
|
IFDEF(X_ADDIVA)
|
||||||
PROMPT X_ADDIVA Y_ADDIVA PR_ADDIVA
|
PROMPT X_ADDIVA Y_ADDIVA PR_ADDIVA
|
||||||
ELSEIF
|
ELSEIF
|
||||||
PROMPT 2 16 "Addebito IVA"
|
PROMPT 2 17 "Addebito IVA"
|
||||||
ENDIF
|
ENDIF
|
||||||
FIELD ADDIVA
|
FIELD ADDIVA
|
||||||
END
|
END
|
||||||
@ -1334,7 +1334,7 @@ BEGIN
|
|||||||
IFDEF(X_ASPBENI)
|
IFDEF(X_ASPBENI)
|
||||||
PROMPT X_ASPBENI Y_ASPBENI PR_ASPBENI
|
PROMPT X_ASPBENI Y_ASPBENI PR_ASPBENI
|
||||||
ELSEIF
|
ELSEIF
|
||||||
PROMPT 2 17 "Asp. Beni "
|
PROMPT 2 18 "Asp. Beni "
|
||||||
ENDIF
|
ENDIF
|
||||||
USE %ABE
|
USE %ABE
|
||||||
INPUT CODTAB FR_ASPBENI
|
INPUT CODTAB FR_ASPBENI
|
||||||
@ -1363,7 +1363,7 @@ BEGIN
|
|||||||
IFDEF(X_DESASP)
|
IFDEF(X_DESASP)
|
||||||
PROMPT X_DESASP Y_DESASP PR_DESASP
|
PROMPT X_DESASP Y_DESASP PR_DESASP
|
||||||
ELSEIF
|
ELSEIF
|
||||||
PROMPT 22 17 ""
|
PROMPT 22 18 ""
|
||||||
ENDIF
|
ENDIF
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
@ -1376,7 +1376,7 @@ BEGIN
|
|||||||
IFDEF(X_CAUS)
|
IFDEF(X_CAUS)
|
||||||
PROMPT X_CAUS Y_CAUS PR_CAUS
|
PROMPT X_CAUS Y_CAUS PR_CAUS
|
||||||
ELSEIF
|
ELSEIF
|
||||||
PROMPT 2 18 "Caus.mag. "
|
PROMPT 2 19 "Caus.mag. "
|
||||||
ENDIF
|
ENDIF
|
||||||
USE %CAU
|
USE %CAU
|
||||||
INPUT CODTAB FR_CAUS
|
INPUT CODTAB FR_CAUS
|
||||||
@ -1405,7 +1405,7 @@ BEGIN
|
|||||||
IFDEF(X_DESCRCAUS)
|
IFDEF(X_DESCRCAUS)
|
||||||
PROMPT X_DESCRCAUS Y_DESCRCAUS PR_DESCRCAUS
|
PROMPT X_DESCRCAUS Y_DESCRCAUS PR_DESCRCAUS
|
||||||
ELSEIF
|
ELSEIF
|
||||||
PROMPT 22 18 ""
|
PROMPT 22 19 ""
|
||||||
ENDIF
|
ENDIF
|
||||||
FLAGS "D"
|
FLAGS "D"
|
||||||
END
|
END
|
||||||
|
Loading…
x
Reference in New Issue
Block a user