Загрузка данных в Memo из файла
Загрузка данных в memo из файла, эти данные дальше передаются запросу в качестве параметра (строки)
У меня проблемка,
Объясните, пожалуйста, особенности загрузки из текстового файла данных в memo...
в запрос на выборку передается строка с перечислеными через запятую
значениями для некотрого поля (например: 1111, 2222, 3333, 4444)
если я руками пишу в memo , то запрос отрабатывает нормально,
если читаю из текстового файла (memo.lines.LoadFromFile), то запрос не срабатывает, если в конце тестового файла нет символа перевода строки и корретки (символы 13 и 10), хотя параметр передается...
текстовый файл: 1111, 2222, 3333, 4444
В отчете:
var
ListCardNumber
....
procedure LoadFromFileOnClick(Sender: TfrxComponent);
begin
OpenDialog := TOpenDialog.Create(nil);
try
if OpenDialog.Execute then
begin
Memo14.Clear;
MessageDlg('Ура выбрали файл', mtWarning, mbOk, 0);
Memo14.Lines.LoadFromFile(OpenDialog.FileName); // загрузка данных из файла в memo
end
else
begin
MessageDlg('Ничего не выбрали', mtWarning, mbOk, 0);
end;
finally
OpenDialog.Free;
end;
...
ListNumber := Memo14.Lines.Text ; // Инициализация переменной для передачи запросу TfrxADOQuery
...
В запросе инициализирую
SET @ParamNumber = :ListNumber
дальше парсю значения записываю во временную таблицу и использую в выборке (база данных Sybase)
У меня проблемка,
Объясните, пожалуйста, особенности загрузки из текстового файла данных в memo...
в запрос на выборку передается строка с перечислеными через запятую
значениями для некотрого поля (например: 1111, 2222, 3333, 4444)
если я руками пишу в memo , то запрос отрабатывает нормально,
если читаю из текстового файла (memo.lines.LoadFromFile), то запрос не срабатывает, если в конце тестового файла нет символа перевода строки и корретки (символы 13 и 10), хотя параметр передается...
текстовый файл: 1111, 2222, 3333, 4444
В отчете:
var
ListCardNumber
....
procedure LoadFromFileOnClick(Sender: TfrxComponent);
begin
OpenDialog := TOpenDialog.Create(nil);
try
if OpenDialog.Execute then
begin
Memo14.Clear;
MessageDlg('Ура выбрали файл', mtWarning, mbOk, 0);
Memo14.Lines.LoadFromFile(OpenDialog.FileName); // загрузка данных из файла в memo
end
else
begin
MessageDlg('Ничего не выбрали', mtWarning, mbOk, 0);
end;
finally
OpenDialog.Free;
end;
...
ListNumber := Memo14.Lines.Text ; // Инициализация переменной для передачи запросу TfrxADOQuery
...
В запросе инициализирую
SET @ParamNumber = :ListNumber
дальше парсю значения записываю во временную таблицу и использую в выборке (база данных Sybase)
Комментарии
1. Memo предварительно очищается.
2. Загружаются в память все данные из текстового файла.
3. Парсинг. Проход от начала данных к концу. Если попадается код каретки, значит, пройдена строка.
Строка добавляется в Strings (хранилище строк в Memo). Если есть данные после последнего кода каретки, они также формируются в строку.
Вам следует копать в другую сторону, а именно: