![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
НЕ могу разобраться с частью проги!
в папке есть 90 dbf -файлов названия которых к примеру 445045_01.08.2010ops или 445044_02.08.2010ic или 445009_09.08.2010ops. Они постоянно подкидываются в эту папку по мере наступления новой даты.нужно чтобы из этой папки все эти dbf-файлы перекидовались в отдельную dbf-таблицу в виде строчек с двумя столбцами где первый столбец это первая часть названия т.е. 445*** и второй столбик это соответствующая дата т.е. 445045|01.08.2010 445044|02.08.2010 445009|09.08.2010 |
|
#2
|
||||
|
||||
|
ну а в чем проблема ?
создавай свою таблицу, а потом проходи цыклом по всем дбф файлам в папке и открывай по очереди. бери нужное значение и пиши в свою БД |
|
#3
|
|||
|
|||
|
спасиба!) мой план почти удался! но вылетела ошибка could not convert variant of type null into type string
вот код. чур, над его нескладностью не смеяться Код:
var sr: TSearchRec;
i,q:integer;
s,str,word,wordd:string;
begin
ListBox1.Items.Clear;
if FindFirst('C:\sdo\files\*.dbf', faAnyFile, sr) = 0
then begin repeat ListBox1.Items.Add(sr.Name);
until FindNext(sr) <> 0; FindClose(sr);
end;
table1.Active:=true;
for i:= 0 to Listbox1.items.count-1 do
begin
str:=Listbox1.items[i];
str:='';
word:=Copy(str,1,Pos('_',str)-1);
wordd:=Copy(str,8,Pos('_',str)+3);
table1.last;
Table1.insert;
Table1.FieldByName('ops').Value:=word;
Table1.FieldByName('data').Value:=wordd;
Table1.Post;
end;Последний раз редактировалось Admin, 16.09.2010 в 15:42. |
|
#4
|
|||
|
|||
|
Ну ты свою ошибку хоть прочитай. И посмотри где она вылетает. Всё поймёшь сам. Удачи!
|