Функция GetMemoHandleFF Назад В начало Вперед

Назначение

Возвращает хендл для работы с мемо-полем по хендлу на файл.

Описание

function GetMemoHandleFF(fileHandle : longInt ) : longInt;

Параметры

fileHandle - хендл на файл.

Возвращаемое значение

Хендл на мемо-поле.

Функция не выбрасывает исключений.

Пример

#include recAaa1.inc

handler with replace c_aaa1 on trigger aaa1 convert
action
{
  var old_buf: record as table aaa1; // буфер старой таблицы
  var new_buf: recAAA1; // буфер новой таблицы, берем из include-файла
  var f, ff: longInt; 
  var s, n : string;

  GetTableBuffer(old_buf);  // считываем старый буфер
  new_buf := recAAA1(old_buf); // копируем не изменившиеся поля
  new_buf.x := '['+string(old_buf.w)+']'; // и модифицированное поле
 
  f := OpenFileHandle(GetTableMemo); // открываем поток с мемо-полем
  ff := CreateFileHandle('xxx');  // создаем хендл с именем ххх
  n := CreateTmpFileName; 	
  file_openFile(n, stCreate, ff); // открываем файл для нового мемо-поля
  file_readln(s, f); 			 // читеам старое
  s := '['+s+']'; 				// как-то обрабатываем
  file_writeln(s, ff); 		 // записываем в файл
  SetTableMemo(GetMemoHandleFF(ff)); // сохраняем изменения как мемо-поле
 
  // реальное копирование мемо-поля из файла происходит в этой функции
  // поэтому закрывать хендлы нужно после нее
  ModifyTableRecord(new_buf);

  DeleteFileHandle(f); 	 // закрываем хендл
  DeleteFileHandle(ff); 	// закрываем хендл

  result := true;
}

Версия

Атлантис 5.0.02.