Aggiunto metodo TRiga_documento::tipo_valido() per sapere se il tipo di
riga non e' vuoto. Corretto errore su bolli() e sul settaggio del tipo di riga in caso di descrizione di riferimento. git-svn-id: svn://10.65.10.50/trunk@3829 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									4e9575b1a5
								
							
						
					
					
						commit
						e7a8be7908
					
				| @ -620,7 +620,8 @@ real TDocumento::bolli(real & imp, int ndec, bool netto) const | |||||||
|               for (int i = 0; i < nscagl - 1; i++) |               for (int i = 0; i < nscagl - 1; i++) | ||||||
|                 if ((real &) sca_bolli[i] >= imp) |                 if ((real &) sca_bolli[i] >= imp) | ||||||
|                   break; |                   break; | ||||||
|               tot_bolli += (real &) imp_bolli[i]; |               if (imp_bolli.items() > 0) | ||||||
|  |                 tot_bolli += (real &) imp_bolli[i]; | ||||||
|             } |             } | ||||||
|             break; |             break; | ||||||
|           case _tratta: |           case _tratta: | ||||||
| @ -1344,7 +1345,7 @@ bool TRiga_documento::sola_descrizione() const | |||||||
| void TRiga_documento::forza_sola_descrizione()  | void TRiga_documento::forza_sola_descrizione()  | ||||||
| {      | {      | ||||||
|   // In realta' il test serve anche a caricare la lista dei tipi riga!
 |   // In realta' il test serve anche a caricare la lista dei tipi riga!
 | ||||||
|   if (tipo().tipo() != 'D') |   if (!tipo_valido() || tipo().tipo() != 'D') | ||||||
|   { |   { | ||||||
|     _tipi.restart(); |     _tipi.restart(); | ||||||
|     for (const TObject* o = _tipi.get(); o; o = _tipi.get()) |     for (const TObject* o = _tipi.get(); o; o = _tipi.get()) | ||||||
| @ -1552,28 +1553,31 @@ void TRiga_documento::dirty_fields(bool dirty_document) | |||||||
| bool TRiga_documento::doc_dependent() const  | bool TRiga_documento::doc_dependent() const  | ||||||
| 
 | 
 | ||||||
| {                      | {                      | ||||||
|   const char tipor = tipo().tipo(); |   if (tipo_valido()) | ||||||
|               |   { | ||||||
|   if (tipor == 'S') |     const char tipor = tipo().tipo(); | ||||||
|     return spesa().tipo() == 'P'; |  | ||||||
|   else |  | ||||||
|     if (tipor == 'C') |  | ||||||
|       return get("SCONTO").not_empty(); |  | ||||||
|                 |                 | ||||||
|  |     if (tipor == 'S') | ||||||
|  |       return spesa().tipo() == 'P'; | ||||||
|  |     else | ||||||
|  |       if (tipor == 'C') | ||||||
|  |         return get("SCONTO").not_empty(); | ||||||
|  |   }                  | ||||||
|   return FALSE; |   return FALSE; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void TRiga_documento::put_str(const char* fieldname, const char* val) | void TRiga_documento::put_str(const char* fieldname, const char* val) | ||||||
| {           | {           | ||||||
|   if (strcmp(fieldname, "TIPORIGA") == 0 && TRectype::get("TIPORIGA") != val) |   TString v(val); | ||||||
|  |   if (strcmp(fieldname, "TIPORIGA") == 0 && TRectype::get("TIPORIGA") != v) | ||||||
|   { |   { | ||||||
|     TAuto_variable_rectype::put_str(fieldname, val); |     TAuto_variable_rectype::put_str(fieldname, v); | ||||||
|     reset_fields(*this); |     reset_fields(*this); | ||||||
|     set_fields(*this); |     set_fields(*this); | ||||||
|   } |   } | ||||||
|   else |   else | ||||||
|   { |   { | ||||||
|     TAuto_variable_rectype::put_str(fieldname, val); |     TAuto_variable_rectype::put_str(fieldname, v); | ||||||
|     dirty_fields(); |     dirty_fields(); | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  | |||||||
| @ -280,6 +280,7 @@ public: | |||||||
|   static const TIVA & iva(const char * codice); |   static const TIVA & iva(const char * codice); | ||||||
|   const TIVA & iva() const {const TString16 cod(get("CODIVA")); return iva(cod);} |   const TIVA & iva() const {const TString16 cod(get("CODIVA")); return iva(cod);} | ||||||
|    |    | ||||||
|  |   const bool tipo_valido() const { return get("TIPORIGA").not_empty(); } | ||||||
|   void set_tipo(const char * tipo) { put("TIPORIGA", tipo);} |   void set_tipo(const char * tipo) { put("TIPORIGA", tipo);} | ||||||
|   bool sola_descrizione() const; |   bool sola_descrizione() const; | ||||||
|   void forza_sola_descrizione(); |   void forza_sola_descrizione(); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user