Aggiunto metodo TSystemisamfile::build(long, const TTrec&), per
la costruzione di files non ancora presenti in TRC.GEN. Corretta la exec_convapp(), prima di chiamare il programma per convertire il livello controlla che esso esista, in caso contrario non segnala alcun errore. Questa necessita' e dovuta alla separazione dei programmi di conversione per modulo: BACNV, 77CNV ecc. git-svn-id: svn://10.65.10.50/trunk@4629 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									d9a95aa969
								
							
						
					
					
						commit
						73a8cf70c6
					
				| @ -1611,16 +1611,12 @@ int TIsamtempfile::close() | ||||
| // TSystemsamfile
 | ||||
| ///////////////////////////////////////////////////////////
 | ||||
| 
 | ||||
| int TSystemisamfile::build(TRecnotype eox) | ||||
|    | ||||
| int TSystemisamfile::build(TRecnotype eox, const TTrec& r) | ||||
| { | ||||
|   CHECKS(filehnd() == NULL, "Can't build open file", (const char*)filename()); | ||||
|   int err=NOERR; | ||||
|   TDir d; | ||||
|   TTrec r; | ||||
|    | ||||
|   d.get(num()); | ||||
|   r.get(num()); | ||||
|   CHECK(r.len() != 0, "Can't create a file with empty field info"); | ||||
| 
 | ||||
|   TFilename f(d.name()); | ||||
| @ -1658,6 +1654,13 @@ int TSystemisamfile::build(TRecnotype eox) | ||||
|   return err; | ||||
| } | ||||
| 
 | ||||
| int TSystemisamfile::build(TRecnotype eox) | ||||
| { | ||||
|   TTrec r; | ||||
|   r.get(num()); | ||||
|   return build(eox,r); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| int TSystemisamfile::extend(TRecnotype eox) | ||||
|    | ||||
| @ -1716,10 +1719,15 @@ int TSystemisamfile::exec_convapp( | ||||
| 
 | ||||
|     if (!conv.new_paragraph() && conv.exist(v, num())) | ||||
|     { | ||||
|       TString80 s(conv.get(v, NULL, num())); s << " " << main_app().get_firm(); | ||||
|       TToken_string s(conv.get(v, NULL, num()), ' '); | ||||
|       TFilename f(s.get(0)); | ||||
|       f.ext(".exe"); | ||||
|       s << " " << main_app().get_firm(); | ||||
|       TExternal_app app(s); | ||||
| 
 | ||||
|       if (app.can_run()) | ||||
|       { | ||||
|         if (fexist(f)) | ||||
|         { | ||||
|           app.run(); | ||||
|           err = app.error(); | ||||
| @ -1728,6 +1736,7 @@ int TSystemisamfile::exec_convapp( | ||||
|           if (err == 0 && msg != NULL) | ||||
|             err = atoi(msg->body()); | ||||
|         } | ||||
|       } | ||||
|       else err = 16; | ||||
|       if (err && err != 8) | ||||
|         return error_box("Impossibile eseguire il programma di %sconversione\ndel livello %ld/%ld\nErrore n.ro %d", before ? "pre" : "post", l / 100, l % 100, err);  | ||||
|  | ||||
| @ -604,7 +604,9 @@ class TSystemisamfile : public TIsamfile | ||||
| 
 | ||||
| // @access Public Member
 | ||||
| public: | ||||
|   // @cmember Costruisce un file isam di dimensione <p eox>
 | ||||
|   // @cmember Costruisce un file isam di dimensione <p eox> sulla base del tracciato <p r> passato
 | ||||
|   int build(TRecnotype eox, const TTrec& r); | ||||
|   // @cmember Costruisce un file isam di dimensione <p eox>.
 | ||||
|   int build(TRecnotype eox); | ||||
|   // @cmember Estende un file preesistente alla dimensione <p eox>
 | ||||
|   int extend(TRecnotype eox); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user