![]() |
#2 |
Administrator
|
а привет
создаем табличку: тип, старый ID, новый ID выгружаем объекты в текст. IF FileName = '' THEN ERROR('файлик не выбран'); F.OPEN(FileName); F.TEXTMODE(TRUE); F1.CREATE(<новое имя файла>); F1.TEXTMODE(TRUE); F1.WRITEMODE(TRUE); REPEAT //_pos := F.POS; CLEAR(fString); F.READ(fString); ConvertString(); //F.SEEK(_pos); F1.WRITE(fString); UNTIL F.POS = F.LEN; F.CLOSE; F1.CLOSE; ConvertString() IF <табличка>.FIND('-') THEN REPEAT CLEAR(_From); CLEAR(_To); _From := FORMAT(<табличка>.Type) + ' ' + FORMAT(<табличка>."ID From"); _To := FORMAT(<табличка>.Type) + ' ' + FORMAT(<табличка>."ID To"); IF STRPOS(fString, _From) <> 0 THEN BEGIN //MESSAGE(fString); fString := COPYSTR(fString, 1, STRPOS(fString, _From)-1) + _To + COPYSTR(fString, STRPOS(fString, _From) + STRLEN(_From)); //MESSAGE(fString); END; _From := FORMAT(<табличка>.Type) + FORMAT(<табличка>."ID From"); _To := FORMAT(<табличка>.Type) + FORMAT(<табличка>."ID To"); IF STRPOS(fString, _From) <> 0 THEN BEGIN fString := COPYSTR(fString, 1, STRPOS(fString, _From)-1) + _To + COPYSTR(fString, STRPOS(fString, _From) + STRLEN(_From)); END; _From := 'Record ' + FORMAT(<табличка>."ID From"); _To := 'Record ' + FORMAT(<табличка>."ID To"); IF STRPOS(fString, _From) <> 0 THEN BEGIN fString := COPYSTR(fString, 1, STRPOS(fString, _From)-1) + _To + COPYSTR(fString, STRPOS(fString, _From) + STRLEN(_From)); END; UNTIL <табличка>.NEXT = 0; далее импортируем текстовичек в пустую базу (в эту же нельзя, название объектов) почти все переносится, не помню где какой-то хвостик остается с переносом данных не помогу. |
|