Страница 1 из 1

Работа с файлами

СообщениеДобавлено: Ср янв 09, 2013 4:44 pm
Shin
Добрый день!
Возник вопрос по быстродействию InTouch при работе с файлами.
Задача сформировать HTML файл из данных, получаемых от SQL сервера.
В проекте создана кнопка "Button", по нажатию которой вызывается программа:

SQLSetStatement( ConnectionId, SqlQuery);
SQLPrepareStatement( ConnectionId,StatementID);
SQLExecute( ConnectionId,"DataTableQuery",StatementID);
SQLFirst( ConnectionId );

FOR I = 1 TO SQLNumRows( ConnectionId) (в результате запроса таблица из 17082 строк)

LogMessage( StringFromIntg( I, 10));

{ Обработка данных SQL, в результате получаем очень длинную строку}

FileWriteMessage(1_G_DTTablePath,-1,"Моя очень длинная строка, 131 символ", 1 );
SQLNext( ConnectionId );

NEXT;


Исполнение данной команды затягивается на 25 минут. Если убрать строку FileWriteMessage время обработки сокращается до 9 секунд. Отсюда вопрос, существуют ли способы более быстрой работать с файлами (точно такая же функция на другой скаде занимает 2 минуты, поэтому и возник данный вопрос)?

Re: Работа с файлами

СообщениеДобавлено: Ср янв 09, 2013 6:15 pm
Генератор зла
Написать Stored Procedure в MSSQL.

Re: Работа с файлами

СообщениеДобавлено: Ср янв 09, 2013 6:31 pm
Shin
SQL вряд ли поможет, из него можно выгрузить данные в файл с помощью виндового приложения bcp, но потом требуется еще и переработка полученных данных в HTML файл.
Придется выкручиваться так, скада в этом не помощник(((

Re: Работа с файлами

СообщениеДобавлено: Ср янв 09, 2013 6:52 pm
Генератор зла

Re: Работа с файлами

СообщениеДобавлено: Пт янв 11, 2013 10:04 am
Shin
Спасибо, ссылка помогла