Patch level : 10.0 332
Files correlati : pe0.exe Ricompilazione Demo : [ ] Commento Preventivazione gestione k git-svn-id: svn://10.65.10.50/trunk@19041 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									5ca55b153e
								
							
						
					
					
						commit
						c86cef853f
					
				@ -45,6 +45,7 @@ protected:
 | 
			
		||||
  static bool pe_qta_handler(TMask_field& f, KEY k);
 | 
			
		||||
	static bool pe_k_handler(TMask_field& f, KEY k);
 | 
			
		||||
	static bool pe_prezzo_handler(TMask_field& f, KEY k);
 | 
			
		||||
	static bool pe_costo_handler(TMask_field& f, KEY k);
 | 
			
		||||
 | 
			
		||||
  static bool ss_notify(TSheet_field& ss, int r, KEY key);
 | 
			
		||||
 | 
			
		||||
@ -227,7 +228,6 @@ bool TGestione_preventivo_msk::ss_notify(TSheet_field& ss, int r, KEY key)
 | 
			
		||||
			short id;
 | 
			
		||||
 | 
			
		||||
			sh.enable_cell(r, sh.cid2index(FR_PREZZO), price_enabled);
 | 
			
		||||
//			sh.enable_cell(r, sh.cid2index(FR_JOLLY2), price_enabled && mask.get_bool(F_USEK));
 | 
			
		||||
			sh.enable_cell(r, sh.cid2index(FR_JOLLY3), price_enabled);
 | 
			
		||||
			for (id = FR_CDC1; id < FR_CDC12; id++)
 | 
			
		||||
				sh.enable_cell(r, sh.cid2index(id), prodfin);
 | 
			
		||||
@ -265,7 +265,6 @@ bool TGestione_preventivo_msk::ss_notify(TSheet_field& ss, int r, KEY key)
 | 
			
		||||
					if (level > father_row.get_int(RDOC_LEVEL))
 | 
			
		||||
					{
 | 
			
		||||
						sh.disable_cell(father_sheet_row, sh.cid2index(FR_PREZZO));
 | 
			
		||||
//						sh.disable_cell(father_sheet_row, sh.cid2index(FR_JOLLY2) || !mask.get_bool(F_USEK));
 | 
			
		||||
						sh.disable_cell(father_sheet_row, sh.cid2index(FR_JOLLY3));
 | 
			
		||||
						father_row.zero(RDOC_COSTO);
 | 
			
		||||
						father_row.zero(RDOC_PREZZO);
 | 
			
		||||
@ -357,6 +356,7 @@ TVariable_mask * TGestione_preventivo_msk::riga_mask(int numriga)
 | 
			
		||||
		m->set_handler(FR_QTA, pe_qta_handler);
 | 
			
		||||
		m->set_handler(FR_PREZZO, pe_prezzo_handler);
 | 
			
		||||
		m->set_handler(FR_JOLLY2, pe_k_handler);
 | 
			
		||||
		m->set_handler(FR_JOLLY3, pe_costo_handler);
 | 
			
		||||
		tree.set_field(RDOC_TREE);
 | 
			
		||||
		k.set_field(RDOC_K);
 | 
			
		||||
		v.set_field(RDOC_COSTO);
 | 
			
		||||
@ -383,7 +383,6 @@ void TGestione_preventivo_msk::doc2mask(bool reload_clifo, bool force_load, bool
 | 
			
		||||
		const bool price_enabled = (i + 1 == d.physical_rows()) || (level >= d[i + 2].get_int(RDOC_LEVEL));
 | 
			
		||||
 | 
			
		||||
		s.enable_cell(i, s.cid2index(FR_PREZZO), price_enabled);
 | 
			
		||||
//		s.enable_cell(i, s.cid2index(FR_JOLLY2), price_enabled && has_k);
 | 
			
		||||
		s.enable_cell(i, s.cid2index(FR_JOLLY3), price_enabled);
 | 
			
		||||
		for (short id = FR_CDC1; id < FR_CDC12; id++)
 | 
			
		||||
			s.enable_cell(i, s.cid2index(id), prodfin);
 | 
			
		||||
@ -842,7 +841,9 @@ bool TGestione_preventivo_msk::pe_prezzo_handler(TMask_field& f, KEY k)
 | 
			
		||||
  TMask& row_mask = f.mask();
 | 
			
		||||
	const bool last_level = row_mask.field(FR_JOLLY3).enabled();
 | 
			
		||||
 | 
			
		||||
	if (last_level && k == K_F8)
 | 
			
		||||
	if (last_level)
 | 
			
		||||
	{
 | 
			
		||||
		if (k == K_F8)
 | 
			
		||||
		{
 | 
			
		||||
			TSheet_field * sh = row_mask.get_sheet();
 | 
			
		||||
 | 
			
		||||
@ -856,7 +857,31 @@ bool TGestione_preventivo_msk::pe_prezzo_handler(TMask_field& f, KEY k)
 | 
			
		||||
				condv.set_testa(&mask);
 | 
			
		||||
				condv.set_riga(&row_mask);
 | 
			
		||||
				condv.ricerca();
 | 
			
		||||
			doc[row].put(RDOC_PREZZO, row_mask.get(FR_PREZZO));
 | 
			
		||||
				doc[row + 1].put(RDOC_PREZZO, row_mask.get(FR_PREZZO));
 | 
			
		||||
				row_mask.reset(FR_JOLLY2);
 | 
			
		||||
				row_mask.field(FR_JOLLY2).set_focusdirty(false);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		if (k == K_TAB && f.focusdirty())
 | 
			
		||||
		{
 | 
			
		||||
			row_mask.reset(FR_JOLLY2);
 | 
			
		||||
			row_mask.field(FR_JOLLY2).set_focusdirty(false);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool TGestione_preventivo_msk::pe_costo_handler(TMask_field& f, KEY k)
 | 
			
		||||
{
 | 
			
		||||
  TMask& row_mask = f.mask();
 | 
			
		||||
	const bool last_level = row_mask.field(FR_JOLLY3).enabled();
 | 
			
		||||
 | 
			
		||||
	if (last_level)
 | 
			
		||||
	{
 | 
			
		||||
		if (k == K_TAB && f.focusdirty())
 | 
			
		||||
		{
 | 
			
		||||
			row_mask.reset(FR_JOLLY2);
 | 
			
		||||
			row_mask.field(FR_JOLLY2).set_focusdirty(false);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
  return true;
 | 
			
		||||
@ -964,9 +989,6 @@ int TGestione_preventivo_app::write( const TMask& m )
 | 
			
		||||
	TDocumento& doc = mask.doc();
 | 
			
		||||
	const int rows = doc.physical_rows();
 | 
			
		||||
	const TString k = doc.get(DOC_K);
 | 
			
		||||
	int max_level = 0;
 | 
			
		||||
	TArray valori;
 | 
			
		||||
	TArray costi;
 | 
			
		||||
 | 
			
		||||
	for (int i = rows ; i > 0; i--)
 | 
			
		||||
	{
 | 
			
		||||
@ -985,11 +1007,8 @@ int TGestione_preventivo_app::rewrite( const TMask& m )
 | 
			
		||||
{
 | 
			
		||||
	TGestione_preventivo_msk & mask = (TGestione_preventivo_msk &) m;
 | 
			
		||||
	TDocumento& doc = ((TDocumento_mask&) m).doc();
 | 
			
		||||
	const TString k = doc.get(DOC_K);
 | 
			
		||||
	int max_level = 0;
 | 
			
		||||
	const int rows = doc.physical_rows();
 | 
			
		||||
	TArray valori;
 | 
			
		||||
	TArray costi;
 | 
			
		||||
	const TString k = doc.get(DOC_K);
 | 
			
		||||
 | 
			
		||||
	for (int i = rows ; i > 0; i--)
 | 
			
		||||
	{
 | 
			
		||||
@ -1013,10 +1032,15 @@ int TGestione_preventivo_app::read(TMask& m)
 | 
			
		||||
		TDocumento_mask& mask = (TDocumento_mask&) m;
 | 
			
		||||
		TDocumento& doc = mask.doc();
 | 
			
		||||
		const TString k = doc.get(DOC_K);
 | 
			
		||||
		TSheet_field & sh = mask.sfield(F_SHEET);
 | 
			
		||||
 | 
			
		||||
		for (int i = 1 ; i <= doc.physical_rows(); i++)
 | 
			
		||||
			if (k == doc[i].get(RDOC_K))
 | 
			
		||||
			{
 | 
			
		||||
				doc[i].zero(RDOC_K);
 | 
			
		||||
				TToken_string & r = sh.row(i - 1);
 | 
			
		||||
				r.add("", sh.cid2index(FR_JOLLY2));
 | 
			
		||||
			}
 | 
			
		||||
	}
 | 
			
		||||
	return err;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user