Patch level :

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :


git-svn-id: svn://10.65.10.50/branches/R_10_00@20884 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2010-09-21 10:56:12 +00:00
parent 4fa383ebd2
commit 2184df7b0a
4 changed files with 38 additions and 10 deletions

8
ps/ps1001.men Executable file
View File

@ -0,0 +1,8 @@
[CAMENU_99]
Caption = "Personalizzazioni CA"
Picture = <cg01>
Module = 22
Flags = ""
Item_01 = "Importazione movimento da righe .csv", "ps1001 -0", ""
Item_02 = "Importazione movimenti budget da .csv", "ps1001 -1", ""
Item_03 = "Gestione movimenti budget", "ps1001 -2", ""

View File

@ -261,6 +261,7 @@ bool TImporta_movana::transfer(const TFilename& file)
TImporto totale;
//giro su tutti i record del recordset per importarli; ogni record è una riga
//TRACCIATO RECORD all'ultima moda (21/09/2010): codcms/cdc/importo/sezione/gr/co/sott/fase (valido per crpa e dinamica)
//righe analitiche
//----------------
for (bool ok = s.move_first(); ok; ok = s.move_next())
@ -271,18 +272,25 @@ bool TImporta_movana::transfer(const TFilename& file)
//prende i dati dal record di input del file csv
//----------------------------------------------
//codcms ci deve essere e va maiuscolizzato; se non c'è va segnalato sul log..
//CODCMS ci deve essere e va maiuscolizzato; se non c'è va segnalato sul log..
//..ed impedirà la write del movana
TString80 codcms = s.get(0).as_string();
if (codcms.blank())
{
TString msg;
msg.format("Manca la commessa nella riga %ld", curr_line);
log.log(2, msg);
//controllo necessario e decisivo per evitare l'errore dovuto all'ultimo 'a capo' che pretendeva una riga ulteriore
if (curr_line < recset_items)
{
TString msg;
msg.format("Manca la commessa nella riga %ld", curr_line);
log.log(2, msg);
}
continue;
}
codcms.upper();
//cdc ci deve essere e va maiuscolizzato; se non c'è va segnalato sul log..
//altra modifica all'ultima moda: se c'è un '_' in realtà vorrebbe un '/' (21/09/2010)
codcms.replace('_', '/');
//CDC ci deve essere e va maiuscolizzato; se non c'è va segnalato sul log..
//..ed impedirà la write del movana
TString80 cdc = s.get(1).as_string();
if (cdc.blank())
@ -294,7 +302,7 @@ bool TImporta_movana::transfer(const TFilename& file)
}
cdc.upper();
//importo (inizialmente come stringa x poter fare le replace); se nullo va segnalato..
//IMPORTO (inizialmente come stringa x poter fare le replace); se nullo va segnalato..
//..ma niente bloccaggio della write
TString80 str_importo = s.get(2).as_string();
if (sep_dec == ',')
@ -313,7 +321,7 @@ bool TImporta_movana::transfer(const TFilename& file)
log.log(0, msg);
}*/
//sezione
//SEZIONE
TString8 str_sezione = s.get(3).as_string();
if (str_sezione.blank())
{
@ -325,7 +333,7 @@ bool TImporta_movana::transfer(const TFilename& file)
str_sezione.upper();
const char sezione = str_sezione[0];
//conto
//CONTO
const int gr = s.get(4).as_int();
const int co = s.get(5).as_int();
const long so = s.get(6).as_int();
@ -339,6 +347,17 @@ bool TImporta_movana::transfer(const TFilename& file)
continue;
}
//FASE ci può essere e va maiuscolizzata;
TString80 fase = s.get(7).as_string();
/*if (fase.blank())
{
TString msg;
msg.format("Manca la fase nella riga %ld", curr_line);
log.log(2, msg);
continue;
}*/
fase.upper();
//riempie la riga analitica
//-------------------------
//nuova riga del movana (sfrutta il fatto che è un multiple rectype)
@ -348,6 +367,7 @@ bool TImporta_movana::transfer(const TFilename& file)
rmovana.put(RMOVANA_CODCONTO, conto);
rmovana.put(RMOVANA_CODCMS, codcms);
rmovana.put(RMOVANA_CODCCOSTO, cdc);
rmovana.put(RMOVANA_CODFASE, fase);
rmovana.put(RMOVANA_SEZIONE, sezione);
rmovana.put(RMOVANA_IMPORTO, importo);
//aggiorna anche il totale documento..

View File

@ -227,7 +227,7 @@ END
TEXT -1
BEGIN
PROMPT 1 13 "COMMESSA ; SEDE ; IMPORTO ; SEZIONE ; GRUPPO ; CONTO ; SOTTOCONTO"
PROMPT 1 13 "COMMESSA ; SEDE ; IMPORTO ; SEZIONE ; GRUPPO ; CONTO ; SOTTOCONTO ; FASE"
END
ENDPAGE

View File

@ -1334,7 +1334,7 @@ void TVariazione_budget_mask::calcola_impegnato(const TString& cms, const bool i
{
TToken_string& row = sf_righe.row(index);
#ifdef DBG
if (rmovana_conto == "004001000037")
if (rmovana_conto == "004001000015")
int cazzone = 1;
#endif
real row_valore_impegnato = row.get(_pos_ipg);