Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выполнение программы из Job.  [new]
edyaN
Member

Откуда:
Сообщений: 185
Есть JOB, последним шагом у которого запускается консольная программа. Это программа на c#. Выполняет экспорт запроса с помощью bcp в файл и импорт этого же файла в другую базу. Если запускать программу вручную, то все работает. Но как шаг в джобе заканчивается без ошибки и длится 2-3 сек, хотя должен работать не менее 10 минут. При этом данные не экспортируются, но при этом создается пустой файл без данных, то есть прав хватает.
В профайлере видно, что bcp соединяется с базой и выполняет запрос для эскпорта.
+ Не знаю, насколько уместен здесь код c#, но вот он:
			// export data only from given month to export file
			string ExportFile = String.Format(@"C:\DB_Backups\tblAstCDR{0}.dat", date.ToString("yyyyMM"));
			DateTime nextMonth = date.AddMonths(1);
			Process proc = new Process();
			proc.StartInfo.FileName = "bcp";
			proc.StartInfo.Arguments = String.Format("\"SELECT * FROM ftRawCDR_staging.dbo.tblAstCDR_staging WHERE startTime >= '{0}' and startTime < '{1}'\" queryout {2} -T -f tblAstCDR.xml", date.ToString("yyyyMM01"), nextMonth.ToString("yyyyMM01"), ExportFile);
			
			//Console.WriteLine(proc.StartInfo.Arguments);
			
			proc.Start();
			proc.WaitForExit();

Подскажите, в чём может быть проблема?
8 авг 17, 18:12    [20709204]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение программы из Job.  [new]
edyaN
Member

Откуда:
Сообщений: 185
select @@version


Microsoft SQL Server 2005 - 9.00.5000.00 (X64)
Dec 10 2010 10:38:40
Copyright (c) 1988-2005 Microsoft Corporation
Standard Edition (64-bit) on Windows NT 5.2 (Build 3790: Service Pack 2)
8 авг 17, 18:19    [20709219]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение программы из Job.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36893
Bcp обычно сообщает текст ошибки в консоль, а у класса Proceess есть свойство ExitCode для определения того, удачно завершился процесс или нет.
8 авг 17, 18:20    [20709220]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение программы из Job.  [new]
edyaN
Member

Откуда:
Сообщений: 185
Гавриленко Сергей Алексеевич,

спасибо за наводку. Оказалось, что xml файл не находился. Прописал полный путь и все заработало.
8 авг 17, 18:53    [20709282]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить