Sostituite TProgind con TProgres_monitor
git-svn-id: svn://10.65.10.50/branches/R_10_00@23006 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									dc133a5ec1
								
							
						
					
					
						commit
						30fb95bbaf
					
				@ -4,18 +4,15 @@
 | 
			
		||||
#include "mglib.h"
 | 
			
		||||
#include "../cg/cglib01.h"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class TMask_buildmov: public TMask 
 | 
			
		||||
{
 | 
			
		||||
  TEsercizi_contabili _esercizi;
 | 
			
		||||
  static bool handle_annoes(TMask_field &, KEY); // handler del numero di registrazione
 | 
			
		||||
public:
 | 
			
		||||
  TMask_buildmov();
 | 
			
		||||
  virtual ~TMask_buildmov() {}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
TMask_buildmov::TMask_buildmov() 
 | 
			
		||||
  : TMask("mg1200")
 | 
			
		||||
TMask_buildmov::TMask_buildmov() : TMask("mg1200")
 | 
			
		||||
{
 | 
			
		||||
  set_handler(F_ANNOES, handle_annoes);
 | 
			
		||||
}
 | 
			
		||||
@ -26,31 +23,29 @@ bool TMask_buildmov::handle_annoes(TMask_field &fld, KEY k)
 | 
			
		||||
  if (fld.empty())
 | 
			
		||||
  {
 | 
			
		||||
    // DEFAULT
 | 
			
		||||
    const long esc=mask._esercizi.date2esc(mask.get_date(F_DATA));
 | 
			
		||||
    if (esc!=0)
 | 
			
		||||
      fld.set(esc);
 | 
			
		||||
    const TDate d = mask.get_date(F_DATA);
 | 
			
		||||
    const int codes = mask._esercizi.date2esc(d);
 | 
			
		||||
    if (codes > 0)
 | 
			
		||||
      fld.set(codes);
 | 
			
		||||
  } 
 | 
			
		||||
  if (fld.to_check(k) || k == K_ENTER) 
 | 
			
		||||
  {
 | 
			
		||||
    if (mask._esercizi.exist(mask.get_int(F_ANNOES)))
 | 
			
		||||
    const int codes = mask.get_int(F_ANNOES);
 | 
			
		||||
    if (codes > 0 && mask._esercizi.exist(codes))
 | 
			
		||||
    {
 | 
			
		||||
      const TEsercizio & e=mask._esercizi.esercizio(mask.get_int(F_ANNOES));
 | 
			
		||||
      if (e.chiusura_mag()!=TDate(NULLDATE))
 | 
			
		||||
      {
 | 
			
		||||
        fld.error_box(TR("Il magazzino dell'esercizio indicato risulta chiuso \nImpossibile effettuare la ricostruzione saldi"))  ;
 | 
			
		||||
        return FALSE; 
 | 
			
		||||
      const TEsercizio& e = mask._esercizi.esercizio(codes);
 | 
			
		||||
      if (e.chiusura_mag().ok())
 | 
			
		||||
        return fld.error_box(TR("Il magazzino dell'esercizio indicato risulta chiuso\n"
 | 
			
		||||
                                "Impossibile effettuare la ricostruzione saldi"));
 | 
			
		||||
    } 
 | 
			
		||||
  }
 | 
			
		||||
  }
 | 
			
		||||
  return TRUE;
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
class TApp_rebuildbalances : public TSkeleton_application 
 | 
			
		||||
{
 | 
			
		||||
  TRelation* _rel;   // relazione 
 | 
			
		||||
  TCursor* _cur;     // cursore
 | 
			
		||||
  int _annoes;
 | 
			
		||||
  bool _reset_giac;
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
  virtual bool create();
 | 
			
		||||
@ -71,7 +66,8 @@ void TApp_rebuildbalances::main_loop()
 | 
			
		||||
  while (m.run()==K_ENTER)
 | 
			
		||||
  {
 | 
			
		||||
	  if (!rebuild_balances(m.get_int(F_ANNOES)))
 | 
			
		||||
      warning_box(TR("A causa degli errori riscontrati i saldi di magazzino \npotrebbero non essere stati del tutto aggiornati. \nProcedere ad una nuova operazione di ''Ricostruzione saldi''"));
 | 
			
		||||
      warning_box(TR("A causa degli errori riscontrati i saldi di magazzino\npotrebbero non essere stati del tutto aggiornati.\n"
 | 
			
		||||
                     "Procedere ad una nuova operazione di ''Ricostruzione saldi''"));
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -621,22 +621,15 @@ bool TMov_mag::update_balances(bool lock)
 | 
			
		||||
    TRectype& magcurr = mag.curr();
 | 
			
		||||
 | 
			
		||||
		TString_array keys_mag;
 | 
			
		||||
 | 
			
		||||
		_saldi_mag.get_keys(keys_mag);
 | 
			
		||||
		keys_mag.sort();
 | 
			
		||||
 | 
			
		||||
    TProgind* pi = NULL;
 | 
			
		||||
    if (keys_mag.items() >= 100)
 | 
			
		||||
    {
 | 
			
		||||
    TString msg; 
 | 
			
		||||
    msg << TR("Aggiornamento saldi del movimento ") << get(MOVMAG_NUMREG) 
 | 
			
		||||
        << ": " << get(MOVMAG_DESCR);
 | 
			
		||||
      pi = new TProgind(keys_mag.items(), msg, false, true);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    TProgress_monitor pi(keys_mag.items(), msg, false);
 | 
			
		||||
    FOR_EACH_ARRAY_ROW(keys_mag, r, curr_key)
 | 
			
		||||
		{
 | 
			
		||||
      if (pi) pi->addstatus(1);
 | 
			
		||||
			const TSaldo_mag& saldo = (const TSaldo_mag&)_saldi_mag[*curr_key];
 | 
			
		||||
      const TCodice_articolo& codart = saldo.codart();
 | 
			
		||||
 | 
			
		||||
@ -665,9 +658,8 @@ bool TMov_mag::update_balances(bool lock)
 | 
			
		||||
				if (lock)
 | 
			
		||||
					art.unlock();
 | 
			
		||||
			}       
 | 
			
		||||
      pi.add_status();
 | 
			
		||||
		} 
 | 
			
		||||
 | 
			
		||||
    if (pi) delete pi;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (_saldi_mag_clifo.items() > 0)
 | 
			
		||||
@ -1028,10 +1020,12 @@ bool rebuild_balances(int codes, const TTipo_valorizz tipo_valorizz,
 | 
			
		||||
	if (a.open(_excllock) != NOERR)
 | 
			
		||||
		return false;
 | 
			
		||||
 | 
			
		||||
  const TEsercizi_contabili& esc = esercizi();
 | 
			
		||||
 | 
			
		||||
  TBalance_params p;
 | 
			
		||||
	p.codes = codes;
 | 
			
		||||
	p.codesprec = esercizi().pred(codes);
 | 
			
		||||
  p.closed = p.codesprec <= 0 || esercizi().esercizio(p.codesprec).chiusura_mag().ok();
 | 
			
		||||
	p.codesprec = esc.pred(codes);
 | 
			
		||||
  p.closed = p.codesprec <= 0 || esc[p.codesprec].chiusura_mag().ok();
 | 
			
		||||
  p.zero_giac = p.closed;
 | 
			
		||||
	p.catv = catven;
 | 
			
		||||
	p.codl = codlis;
 | 
			
		||||
@ -1049,8 +1043,11 @@ bool rebuild_balances(int codes, const TTipo_valorizz tipo_valorizz,
 | 
			
		||||
	  anamag_cur.scan(reset_giac, (void*)&p, msg);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  if (p.codesprec > 0)
 | 
			
		||||
  {
 | 
			
		||||
	  TString filter; filter << CLIFOGIAC_ANNOES << "==" << p.codesprec;
 | 
			
		||||
	  TString16 filter; 
 | 
			
		||||
    filter << CLIFOGIAC_ANNOES << "==" << p.codesprec; // Copia giacenze da anno precedente ad anno corrente
 | 
			
		||||
    
 | 
			
		||||
    TRelation clifogiac_rel(LF_CLIFOGIAC);
 | 
			
		||||
	  TCursor c(&clifogiac_rel, filter);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user