Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.03.29;
Скачать: CL | DM;

Вниз

Данные формата txt в таблицу MSSQL   Найти похожие ветки 

 
Alexandra   (2008-07-29 07:43) [0]

Суть такова : на ftp сервере автоматом  создаются  каждые 15 минут файлы формата txt, их надо раз в день импортировать в одну и туже таблицу, и так изо дня в день в эту же таблицу. Если файлы уже были импортированы, то брать уже последующие файлы.
Вопрос: сможет ли DTS справится с этим ?  Если да, то как сделать чтобы она брала файлы только в названии которых есть слово "ccr" , и как настроить чтобы она брала файлы за опред-ый день. Если же DTS не справится , то что надо для того чтобы решить эту задачу ? Спасибо.


 
Vlad Oshin ©   (2008-07-29 09:16) [1]


> сможет ли DTS справится с этим ?

не знаю, но D6 сможет


> как сделать чтобы она брала файлы только в названии которых
> есть слово "ccr" , и как настроить чтобы она брала файлы
> за опред-ый ден

FindFirst FindNext +маска +аттрибуты файла


 
Ega23 ©   (2008-07-29 09:21) [2]


> сможет ли DTS справится с этим


По-идее - должно, для таких задач и делалось. Как конкретно - тебе лучше на sql.ru в MSSQL спросить.


 
Alexandra   (2008-07-29 12:27) [3]

Vlad Oshin, подскажите с чего начать чтобы сделать при помощи D6?


 
Плохиш ©   (2008-07-29 13:41) [4]


> Alexandra   (29.07.08 12:27) [3]
> подскажите с чего начать чтобы сделать при помощи D6?

Начать надо с найма программиста...


 
stas ©   (2008-07-29 13:41) [5]

Есть процедура вычисления размера папки, (она рекурсивная в вашем случае рекурсия ненужна) используя ее как пример можете написать свою

> function GetDirectorySize(const Path: string): Int64;
> var
>  FD : TWin32FindData;
>  FH : THandle;
>  TempSize: TULargeInteger;
>  SR:TsearchRec;
> begin
>  Result := 0;
>  if Path="" then exit;
>  if not(DirectoryExists(Path)) then exit;
>  FH := FindFirstFile( PChar( Path + "*.*" ), FD );
>  repeat
>    if (FH<>INVALID_HANDLE_VALUE) and (FD.cFileName <> string(".
> ")) and
>                                               (FD.cFileName<>string(".
> .")) then
>      begin
>        if (FILE_ATTRIBUTE_DIRECTORY and FD.dwFileAttributes)
> <> 0 then
>          Inc(Result, GetDirectorySize(Path + FD.cFileName
> + "\"))
>        else
>          begin
>            TempSize.LowPart := FD.nFileSizeLow;
>            TempSize.HighPart := FD.nFileSizeHigh;
>            Inc(Result, TempSize.QuadPart);
>          end;
>      end;
>  until FindNextFile(FH,FD) = false;
> FindClose (SR);
> end;


 
stone   (2008-07-29 15:28) [6]


> Вопрос: сможет ли DTS справится с этим ?

Смотря что ты там пропишешь.

> Если да, то как сделать чтобы она брала файлы только в названии
> которых есть слово "ccr" , и как настроить чтобы она брала
> файлы за опред-ый день.

есть такая процедура xp_cmdshell
правильное ее использование в паре с BULKINSERT
может выполнить твою задачу


 
Vlad Oshin ©   (2008-07-30 11:51) [7]


> с чего начать чтобы сделать при помощи D6?



> FindFirst FindNext

+F1

TadoConnection +F1
TadoXXX +F1

www.ya.ru + TadoConnection
www.ya.ru + TadoXXX
www.ya.ru + +Delphi +FindFirst +маска +пример


 
Павел Калугин ©   (2008-07-30 18:20) [8]

Пишется сервис который если нашел файл, соответствующий условиям в директории натравливает на него ДТС пакет (или парсит сам и в базу закорачивает) и перекладывает обработаный файл в соседнюю директорию.
Потенциальная грабля - процесс сохранения файла растянут во времени.


 
Павел Калугин ©   (2008-07-30 18:22) [9]

и еще одна грабля  Если в 8 первыз строках (в настройках можно докрутить до 16) в поле нет данных то данное поле при импорте дтс пакетом останется пустым для всего файла



Страницы: 1 вся ветка

Текущий архив: 2009.03.29;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.018 c
15-1233183371
Германн
2009-01-29 01:56
2009.03.29
Ох уж мне эти писатели "кривых" драйверов! -2


6-1200853816
Gbp
2008-01-20 21:30
2009.03.29
Странная трабла моего локального прокси с гуглом


2-1234172245
TTLr
2009-02-09 12:37
2009.03.29
Подскажите как склеить 2 таблицы


3-1216950454
Konrads
2008-07-25 05:47
2009.03.29
Смена пароля в FireBird 2.0


1-1208283210
Михаил
2008-04-15 22:13
2009.03.29
Как задать пределы шкалы по осям диаграммы Excel ?