Как извлечь информацию из мемо-поля?

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
sol
Постоянный обитатель
Сообщения: 165
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Орловская обл. коммерческая организация

Как извлечь информацию из мемо-поля?

Сообщение sol »

Может кто знает?
ecasoft
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"

Re: Как извлечь информацию из мемо-поля?

Сообщение ecasoft »

Если там текст, то можно вывести в форму..например в форму DocFilt из таблицы DocCont. См. ниже. СПРАВКА При работе с мемо полями идет ссылка на имя таблицы, т.к. таблица запись таблицы не может содержать более 1 мемо поля. Вообще-то в документации есть.


if (IsMemoText(#DocCont)) //текст ли это
while (MemoReadLn(str,DocCont) = tsOk)
{
DocFilt.write(str);
}
else
{ if (MemoSeek(longint(1),#DocCont) = 0 )
0 - это кон-та stOk
так хитро устанавливается есть ли вообще
что либо в мемо поле
т.е. попытка позиционироваться на 2й по
счету символ (на 1 позиционируется и при
пустом мемо поле DocFilt.write('<<<Документ содержит не текст>>>');
}
Некоммерческое общение в форуме
maikl
Местный житель
Сообщения: 1503
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Тверь

Re: Как извлечь информацию из мемо-поля?

Сообщение maikl »

Выведи в dbf, а затем смотри Visual Foxpro.
Maverick
Абориген
Сообщения: 943
Зарегистрирован: 29 мар 2005, 17:49
Откуда: External Developer
Контактная информация:

Re: Как извлечь информацию из мемо-поля?

Сообщение Maverick »

А можно и по другому - работаем с мемо как текстовым файлом.
Пример для поля Appendix.Contents
после описания лог таблы интерфейса описываем такую весчь
File MyFile ;
В своем обработчике событий прописываем:
If GetFirst Appendix = tsOk then
{
If Fm.OpenMemo ( Appendix.Contents ) then
{
fm.seek ( 0 );
/*можно циклом а можно фикс кол во раз считать в строку - привожу последний вариант - кол-во ReadLN соответствует кол-ву строк в мемополе*/
var st : string;
fm.ReadLn ( st );
Message(st);
....
fm.ReadLn ( st );
Message(st);
};
};
Изображение
Знающий людей разумен.
Знающий себя просветлён.
Побеждающий людей силен.
Побеждающий самого себя могущественнен
Maverick
Абориген
Сообщения: 943
Зарегистрирован: 29 мар 2005, 17:49
Откуда: External Developer
Контактная информация:

Re: Как извлечь информацию из мемо-поля?

Сообщение Maverick »

А можно и по другому - работаем с мемо как текстовым файлом.
Пример для поля Appendix.Contents
после описания лог таблы интерфейса описываем такую весчь
File MyFile ;
В своем обработчике событий прописываем:
If GetFirst Appendix = tsOk then
{
If Fm.OpenMemo ( Appendix.Contents ) then
{
fm.seek ( 0 );
/*можно циклом а можно фикс кол во раз считать в строку - привожу последний вариант - кол-во ReadLN соответствует кол-ву строк в мемополе*/
var st : string;
fm.ReadLn ( st );
Message(st);
....
fm.ReadLn ( st );
Message(st);
};
};
Изображение
Знающий людей разумен.
Знающий себя просветлён.
Побеждающий людей силен.
Побеждающий самого себя могущественнен
Frodo
Посетитель
Сообщения: 37
Зарегистрирован: 29 мар 2005, 17:49

Re: Как извлечь информацию из мемо-поля?

Сообщение Frodo »

Еще вопрос:
1. Как работать с двоичными данными? Например: поле x$journal.datarec
2. У кого есть опыт вытаскивания данных из вышеуказвнного поля? Интересно как VIP-ом так и через ODBC.
sth
Постоянный обитатель
Сообщения: 148
Зарегистрирован: 29 мар 2005, 17:49

Re: Как извлечь информацию из мемо-поля?

Сообщение sth »

для работы с журнальными мемо-полями есть специально заточенные функции:
GetJournalKeyNo
GetNewFieldValueFromJournal
GetOldFieldValueFromJournal
Ответить