Patch level :4.0 nopatch
Files correlati : Ricompilazione Demo : [ ] Commento :sistemato problema dei conti contabili nei movimenti git-svn-id: svn://10.65.10.50/trunk@14363 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									36e835a42c
								
							
						
					
					
						commit
						4af434baab
					
				@ -132,6 +132,7 @@ class TBudget_Import : public TSkeleton_application
 | 
				
			|||||||
  TCursor*					_cur;
 | 
					  TCursor*					_cur;
 | 
				
			||||||
  TProgind*					_prog;
 | 
					  TProgind*					_prog;
 | 
				
			||||||
	TString						_lastfile;
 | 
						TString						_lastfile;
 | 
				
			||||||
 | 
						TString4					_codcaus;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	virtual const char * extra_modules() const {return "ba";}
 | 
						virtual const char * extra_modules() const {return "ba";}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -140,6 +141,7 @@ protected:
 | 
				
			|||||||
	void ini2mask();
 | 
						void ini2mask();
 | 
				
			||||||
	bool transfer();
 | 
						bool transfer();
 | 
				
			||||||
	void transfer_movimento(const TRecord_text& curr); //, TError_log& log);
 | 
						void transfer_movimento(const TRecord_text& curr); //, TError_log& log);
 | 
				
			||||||
 | 
						const TString& ana2bill(const TString& contone) const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	long get_next_key();
 | 
						long get_next_key();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -173,6 +175,20 @@ long TBudget_Import::get_next_key()
 | 
				
			|||||||
  return numreg;
 | 
					  return numreg;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const TString& TBudget_Import::ana2bill(const TString& contone) const
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						TToken_string key;
 | 
				
			||||||
 | 
						key = contone;
 | 
				
			||||||
 | 
						key.add("1");
 | 
				
			||||||
 | 
						const TRectype& rec = cache().get(LF_PANAPDC, key);
 | 
				
			||||||
 | 
						if (rec.empty())
 | 
				
			||||||
 | 
							return EMPTY_STRING;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  TString& tmp = get_tmp_string();
 | 
				
			||||||
 | 
						tmp.format("%03d%03d%06ld", 
 | 
				
			||||||
 | 
							         rec.get_int("GRUPPO"), rec.get_int("CONTO"), rec.get_long("SOTTOCONTO"));
 | 
				
			||||||
 | 
						return tmp;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void TBudget_Import::transfer_movimento(const TRecord_text& curr) //, TError_log& log)
 | 
					void TBudget_Import::transfer_movimento(const TRecord_text& curr) //, TError_log& log)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@ -210,6 +226,7 @@ void TBudget_Import::transfer_movimento(const TRecord_text& curr) //, TError_log
 | 
				
			|||||||
	movana.put(MOVANA_DATAREG, dataini);
 | 
						movana.put(MOVANA_DATAREG, dataini);
 | 
				
			||||||
	movana.put(MOVANA_DATACOMP, dataini);
 | 
						movana.put(MOVANA_DATACOMP, dataini);
 | 
				
			||||||
	movana.put(MOVANA_DESCR, "Movimento di budget importato");
 | 
						movana.put(MOVANA_DESCR, "Movimento di budget importato");
 | 
				
			||||||
 | 
						movana.put(MOVANA_CODCAUS, _codcaus);
 | 
				
			||||||
	movana.put(MOVANA_TIPOMOV, 'P');
 | 
						movana.put(MOVANA_TIPOMOV, 'P');
 | 
				
			||||||
	movana.put(MOVANA_TOTDOC, soldini);
 | 
						movana.put(MOVANA_TOTDOC, soldini);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -222,14 +239,18 @@ void TBudget_Import::transfer_movimento(const TRecord_text& curr) //, TError_log
 | 
				
			|||||||
	TISAM_recordset pconana(query);
 | 
						TISAM_recordset pconana(query);
 | 
				
			||||||
	const TRecnotype items = pconana.items();
 | 
						const TRecnotype items = pconana.items();
 | 
				
			||||||
	if (items <= 0)
 | 
						if (items <= 0)
 | 
				
			||||||
		warning_box(TR("Il sottoconto %s NON esiste!"), codconto);
 | 
							warning_box(FR("Il sottoconto %s NON esiste!"), (const char*)codconto);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (items > 1)
 | 
						if (items > 1)
 | 
				
			||||||
		warning_box(TR("Esiste piu' di un sottoconto %s!"),codconto);
 | 
							warning_box(FR("Esiste piu' di un sottoconto %s!"), (const char*)codconto);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	pconana.move_last();	//si posiziona sul record corretto
 | 
						pconana.move_last();	//si posiziona sul record corretto
 | 
				
			||||||
	const TString contone = pconana.get(PCONANA_CODCONTO).as_string();
 | 
						const TString& contone = pconana.get(PCONANA_CODCONTO).as_string();
 | 
				
			||||||
	const TString4 sezione = pconana.get(PCONANA_SEZSALDI).as_string();
 | 
					  const TString& contcon = ana2bill(contone);
 | 
				
			||||||
 | 
						if (contcon.empty())
 | 
				
			||||||
 | 
							warning_box(FR("Il conto analitico %s non corrisponde ad alcun conto contabile!"), (const char*)contone);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						const TString& sezione = pconana.get(PCONANA_SEZSALDI).as_string();
 | 
				
			||||||
	//mette quella bastarda di sezione nel record
 | 
						//mette quella bastarda di sezione nel record
 | 
				
			||||||
	movana.put(MOVANA_SEZIONE, sezione);
 | 
						movana.put(MOVANA_SEZIONE, sezione);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -243,7 +264,7 @@ void TBudget_Import::transfer_movimento(const TRecord_text& curr) //, TError_log
 | 
				
			|||||||
	rec_rmovana.put(RMOVANA_SEZIONE ,sezione);
 | 
						rec_rmovana.put(RMOVANA_SEZIONE ,sezione);
 | 
				
			||||||
	rec_rmovana.put(RMOVANA_DATACOMP ,dataini);
 | 
						rec_rmovana.put(RMOVANA_DATACOMP ,dataini);
 | 
				
			||||||
	rec_rmovana.put(RMOVANA_CODCMS ,codcms);
 | 
						rec_rmovana.put(RMOVANA_CODCMS ,codcms);
 | 
				
			||||||
	rec_rmovana.put(RMOVANA_CODCONTO, contone);
 | 
						rec_rmovana.put(RMOVANA_CODCONTO, contcon);
 | 
				
			||||||
	rec_rmovana.put(RMOVANA_DESCR, "Riga movimento di budget importato");
 | 
						rec_rmovana.put(RMOVANA_DESCR, "Riga movimento di budget importato");
 | 
				
			||||||
	rec_rmovana.put(RMOVANA_IMPORTO, soldini);
 | 
						rec_rmovana.put(RMOVANA_IMPORTO, soldini);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -285,6 +306,9 @@ bool TBudget_Import::transfer()
 | 
				
			|||||||
  _trasfile = new TBudget_Import_file(file);
 | 
					  _trasfile = new TBudget_Import_file(file);
 | 
				
			||||||
  _trasfile->open(file,'r');
 | 
					  _trasfile->open(file,'r');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//la causale!!!
 | 
				
			||||||
 | 
						_codcaus = _msk->get(F_COD_CAUS);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	//*** prima va inserito il log in libreria preparazione del log
 | 
						//*** prima va inserito il log in libreria preparazione del log
 | 
				
			||||||
//	TError_log log;
 | 
					//	TError_log log;
 | 
				
			||||||
//	log.set_header(TR("Importazione movimenti"));
 | 
					//	log.set_header(TR("Importazione movimenti"));
 | 
				
			||||||
@ -317,16 +341,23 @@ void TBudget_Import::mask2ini()
 | 
				
			|||||||
	_configfile->set_paragraph("BUDGET");
 | 
						_configfile->set_paragraph("BUDGET");
 | 
				
			||||||
	_configfile->set("PATH", _msk->get(F_PATH));
 | 
						_configfile->set("PATH", _msk->get(F_PATH));
 | 
				
			||||||
	_configfile->set("LASTFILE", _lastfile);
 | 
						_configfile->set("LASTFILE", _lastfile);
 | 
				
			||||||
 | 
						_msk->set(F_COD_CAUS, _codcaus);
 | 
				
			||||||
 | 
						_configfile->set("CODCAUS", _msk->get(F_COD_CAUS));
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void TBudget_Import::ini2mask()
 | 
					void TBudget_Import::ini2mask()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	//carica i parametri del file di configurazione
 | 
						//carica i parametri del file di configurazione
 | 
				
			||||||
	_configfile->set_paragraph("BUDGET");
 | 
						_configfile->set_paragraph("BUDGET");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TString path = _configfile->get("PATH");
 | 
						TString path = _configfile->get("PATH");
 | 
				
			||||||
	_lastfile = _configfile->get("LASTFILE");
 | 
					 | 
				
			||||||
	_msk->set(F_PATH, path);
 | 
						_msk->set(F_PATH, path);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						_lastfile = _configfile->get("LASTFILE");
 | 
				
			||||||
	_msk->set(F_LASTFILE, _lastfile);
 | 
						_msk->set(F_LASTFILE, _lastfile);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						_codcaus = _configfile->get("CODCAUS");
 | 
				
			||||||
 | 
						_msk->set(F_COD_CAUS, _codcaus);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -4,3 +4,5 @@
 | 
				
			|||||||
#define F_NAMEFILE		102
 | 
					#define F_NAMEFILE		102
 | 
				
			||||||
#define F_LASTFILE		103
 | 
					#define F_LASTFILE		103
 | 
				
			||||||
#define F_KILLOLD			104
 | 
					#define F_KILLOLD			104
 | 
				
			||||||
 | 
					#define F_COD_CAUS		105
 | 
				
			||||||
 | 
					#define F_DESCR_CAUS	106
 | 
				
			||||||
 | 
				
			|||||||
@ -50,5 +50,28 @@ BEGIN
 | 
				
			|||||||
  PROMPT 1 7 "Elimina tutti i movimenti ed i saldi preventivi esistenti"
 | 
					  PROMPT 1 7 "Elimina tutti i movimenti ed i saldi preventivi esistenti"
 | 
				
			||||||
END
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_COD_CAUS 3
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 1 9 "Causale "
 | 
				
			||||||
 | 
					  FLAGS "UZ"
 | 
				
			||||||
 | 
					  USE LF_CAUSALI
 | 
				
			||||||
 | 
					  INPUT CODCAUS F_COD_CAUS
 | 
				
			||||||
 | 
					  DISPLAY "Cod." CODCAUS
 | 
				
			||||||
 | 
					  DISPLAY "Descrizione@50" DESCR
 | 
				
			||||||
 | 
					  OUTPUT F_COD_CAUS CODCAUS
 | 
				
			||||||
 | 
					  OUTPUT F_DESCR_CAUS DESCR
 | 
				
			||||||
 | 
					  CHECKTYPE REQUIRED
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					STRING F_DESCR_CAUS 50 40
 | 
				
			||||||
 | 
					BEGIN
 | 
				
			||||||
 | 
					  PROMPT 20 9 "Descriz."
 | 
				
			||||||
 | 
					  USE LF_CAUSALI KEY 2
 | 
				
			||||||
 | 
					  INPUT DESCR F_DESCR_CAUS
 | 
				
			||||||
 | 
					  DISPLAY "Descrizione @50" DESCR
 | 
				
			||||||
 | 
					  DISPLAY "Cod." CODCAUS
 | 
				
			||||||
 | 
					  COPY OUTPUT F_COD_CAUS
 | 
				
			||||||
 | 
					END
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ENDPAGE
 | 
					ENDPAGE
 | 
				
			||||||
ENDMASK
 | 
					ENDMASK
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user