Patch level :2.0 partners nopatch

Files correlati     :ce4.exe ce4200a.frm
Ricompilazione Demo : [ ]
Commento            :migliorata stampa quote cespiti per commessa (CRPA personalizzazione)


git-svn-id: svn://10.65.10.50/trunk@11673 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2003-12-18 10:51:25 +00:00
parent 3d3e82c2c0
commit 598ccda5e2
3 changed files with 87 additions and 32 deletions

View File

@ -39,6 +39,8 @@ bool TCalc_cesp_cms_mask::on_field_event(TOperable_field& o, TField_event e, lon
class TCalc_cesp_cms_form : public TForm
{
protected:
bool validate(TForm_item &cf, TToken_string &s);
public:
TCalc_cesp_cms_form();
@ -53,6 +55,22 @@ TCalc_cesp_cms_form::~TCalc_cesp_cms_form()
{
}
bool TCalc_cesp_cms_form::validate(TForm_item &cf, TToken_string &s)
{
if (s == "_DESCRCESPITE")
{
TString16 str;
str.format("%010ld",cursor()->curr().get_long(DOC_NDOC));
const TString& descr = cache().get(LF_CESPI, str, CESPI_DESC);
cf.set(descr);
return true; //ricava la descrizione del cespite e la manda in stampa
}
return TForm::validate(cf,s);
}
//===============================================================================================
//Applicazione
@ -174,17 +192,20 @@ void TCalc_cesp_cms::utilizzo_per_cms(const TRectype& ammce_rec)
for (i=1; i<=salcecms.last_row(); i++ )
{
TRiga_documento& rigadoc = doc_cesp.new_row(tiporiga);
rigadoc.put(RDOC_CODCMS, salcecms[i].get(SALCECMS_CODCMS)); //codice commessa
TString80 codcms = salcecms[i].get(SALCECMS_CODCMS);
rigadoc.put(RDOC_CODCMS, codcms); //codice commessa
rigadoc.put(RDOC_QTA, 1);
const real quota = distrib.get();
TString80 descr; //descrizione cosi' tanto x mettercela
descr.format("Quota ammortamento");
const TRectype& cms = cache().get("CMS", codcms);
TString80 descr = cms.get("S0"); //descrizione commessa cosi' tanto x mettercela
rigadoc.put(RDOC_DESCR, descr);
rigadoc.put(RDOC_PREZZO, quota); //ammortamento cespite per la commessa
const real perc_cms = salcecms[i].get_real(SALCECMS_PERCUTIL);
rigadoc.put(RDOC_QTAGG1, perc_cms); //% utilizzo cespite nella commessa
rigadoc.put(RDOC_QTAGG2, dtfine - dtini); //giorni di utilizzo cespite nella commessa
rigadoc.put(RDOC_QTAGG3, delta_cesp); //giorni di utilizzo cespite nell'esercizio
rigadoc.put(RDOC_QTAGG3, delta_cesp); //giorni di utilizzo cespite nell'esercizio
real perc = quota * CENTO / qtot; perc.round(2); //percentuale della quota
rigadoc.put(RDOC_QTAGG4, perc);
rigadoc.put(RDOC_DATACONS, TDate(TODAY)); //data di elaborazione
rigadoc.put(RDOC_CODIVA, _mask->get(F_CODIVA)); //codice IVA obbligatorio
}
@ -228,8 +249,7 @@ void TCalc_cesp_cms::stampa_docs()
_form->find_field('H', odd_page, FR_DATAINIZIO).set(_mask->get(F_INIZIO_ES));
_form->find_field('H', odd_page, FR_DATAFINE).set(_mask->get(F_FINE_ES));
//stampa i documenti via form (necessaria una setregion x stampare solo i documenti con la
//numerazione selezionata!!)
//stampa i documenti via form (ci vuole una setregion)
TCursor& curform = *_form->cursor();
TRectype darec(curform.curr());
darec.put(RDOC_PROVV, 'D');

View File

@ -6,9 +6,13 @@
#define FR_DATAFINE 15
#define FR_B_IDCESPITE 16
#define FR_B_CODCMS 17
#define FR_B_DESC 18
#define FR_B_VALAMM 19
#define FR_B_TOTVALAMM 20
#define FR_B_DESCRCESPITE 17
#define FR_B_CODCMS 18
#define FR_B_DESC 19
#define FR_B_PERC 20
#define FR_B_VALAMM 21
#define FR_B_TOTVALAMM 22
#define FR_B_TOTPERC 23

View File

@ -4,8 +4,24 @@ USE LF_DOC
JOIN LF_RIGHEDOC INTO PROVV==PROVV ANNO==ANNO CODNUM==CODNUM NDOC==NDOC
END
//-----------------------parte grafica con le righe di separazione-------------------
SECTION GRAPHICS ODD
LINEA -1 80 1
BEGIN
PROMPT 1 4 "@b"
END
LINEA -1 80 1
BEGIN
PROMPT 1 7 "@b"
END
END
//-----------------------intestazione form-------------------------------------------
SECTION HEADER ODD 7
SECTION HEADER ODD 8
STRINGA -1
BEGIN
@ -43,12 +59,6 @@ SECTION HEADER ODD 7
PROMPT 41 3 ""
END
STRINGA -1
BEGIN
KEY "separatore"
PROMPT 1 4 "______________________________________________________________________________"
END
STRINGA -1
BEGIN
KEY "codice cespite"
@ -58,19 +68,19 @@ SECTION HEADER ODD 7
STRINGA -1
BEGIN
KEY "codice commessa"
PROMPT 12 5 "@bCommessa"
PROMPT 5 6 "@bCommessa"
END
STRINGA -1
BEGIN
KEY "percentuale ammortizzata"
PROMPT 59 6 "@bPerc."
END
STRINGA -1
BEGIN
KEY "valore ammortizzato"
PROMPT 73 5 "@bQuota"
END
STRINGA -1
BEGIN
KEY "separatore"
PROMPT 1 6 "______________________________________________________________________________"
PROMPT 75 6 "@bQuota"
END
END
@ -86,30 +96,45 @@ SECTION BODY ODD 3
KEY "idcespite"
PROMPT 1 1 ""
PICTURE "@@@@@@@@@@"
MESSAGE RESET,FR_B_TOTVALAMM
MESSAGE RESET,FR_B_TOTVALAMM|RESET,FR_B_TOTPERC
FIELD NDOC
END
STRINGA FR_B_DESCRCESPITE 50
BEGIN
KEY "descrizione cespite"
PROMPT 12 1 ""
MESSAGE _DESCRCESPITE
END
SECTION TOTALE_CESPITE 2 1 1 FILE LF_RIGHEDOC GROUP LF_RIGHEDOC->NDOC
STRINGA FR_B_CODCMS 20
BEGIN
KEY "codcms"
PROMPT 11 1 ""
PROMPT 5 1 ""
FIELD LF_RIGHEDOC->CODCMS
END
STRINGA FR_B_DESC 30
BEGIN
KEY "desc"
PROMPT 32 1 ""
KEY "descrizione commessa"
PROMPT 26 1 ""
FIELD LF_RIGHEDOC->DESCR
END
NUMERO FR_B_PERC 6 2
BEGIN
KEY "percentuale"
PROMPT 58 1 ""
FIELD LF_RIGHEDOC->QTAGG4
MESSAGE ADD,FR_B_TOTPERC
END
VALUTA FR_B_VALAMM 15
BEGIN
KEY "valamm"
PROMPT 63 1 ""
PROMPT 66 1 ""
FIELD LF_RIGHEDOC->PREZZO
MESSAGE ADD,FR_B_TOTVALAMM
END
@ -119,13 +144,19 @@ SECTION BODY ODD 3
STRINGA -1
BEGIN
KEY "totale valore ammortizzato"
PROMPT 32 2 "@bTotale valore ammortizzato"
PROMPT 26 2 "@bTotali"
END
NUMERO FR_B_TOTPERC 6 2
BEGIN
KEY "totale percentuale"
PROMPT 58 2 "@b"
END
VALUTA FR_B_TOTVALAMM 15
BEGIN
KEY "totale valamm"
PROMPT 63 2 "@b"
PROMPT 66 2 "@b"
END
END