Запись мемо поля в Галактику
Модераторы: m0p3e, edward_K, Модераторы
-
- Постоянный гость
- Сообщения: 55
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва ЗАО "Рантайм Системс"
- Контактная информация:
Запись мемо поля в Галактику
Что лучше использовать для записи мемо поля Галактику??? Фокус с ImportFileToMemo (Table.MemoName, FileName, true) не проходит.
.`)
.`)
Re: Запись мемо поля в Галактику
А MyMemo.WriteLn(ххххххххх);
не подходит?
У меня ImportFileToMemo тоже не работает.
============prim code================
if ( inStr('FROM:',TekStr)>0 ) { FROM := trim(replace(TekStr,'FROM:','')) }
if ( inStr('BODYLENGTH:',TekStr)>0 ) { BODYLENGTH := trim(replace(TekStr,'BODYLENGTH:','')) }
if ( inStr('BODYTYPE:',TekStr)>0 ) { BODYTYPE := trim(replace(TekStr,'BODYTYPE:','')) }
if ( inStr('BODY:',TekStr)>0 )
{
IsBody:= True; //все поля считали создаем документ
if((Insert TABLEDOC set
TABLEDOC.DocName := UNIVERSALID,
TABLEDOC.DocDate := Cur_Date,
TABLEDOC.DocTime := Cur_Time,
TABLEDOC.TypeCode := FORMTYPE,
TABLEDOC.code := NOTEID,
TABLEDOC.Primech0 := CREATED,
TABLEDOC.Primech1 := LASTACCESSED,
TABLEDOC.Primech2 := Ansi2Oem(SUBJECT), //41 СИМВОЛ
TABLEDOC.FILENAME := Ansi2Oem(SUBJECT), //101 СИМВОЛ
TABLEDOC.CINTCODESOST := ReVidDoc, //Viddoc-Системный вид документа на который ответ
TABLEDOC.CTABLEDOC := ReNrecDoc, //Nrec-Nrec документа на который ответ
TABLEDOC.Primech3 := Ansi2Oem(FROM),
TABLEDOC.Primech4 := BODYLENGTH,
TABLEDOC.Primech5 := BODYTYPE,
TABLEDOC.Primech6 := Substr(SUBJECT,Poz1+2,3) ,
TABLEDOC.cIntCodeSost := ISDELETED
)=tsOk)
if(( Insert DOCCONT set DOCCONT.CTABLEDOC := TABLEDOC.nrec )= tsOk)
if (MyMemo.OpenMemo(DOCCONT.DOCDATA))
{
IsOpenMemo := True;
MyMemo.Seek(0);
! MyMemo.WriteLn(CREATED);
}
}
}
else
{
// если поле текта документа то все строки далее загоняем в мемополе! ИТ ПАРК itpark.ru
If IsOpenMemo MyMemo.WriteLn(Ansi2Oem(TekStr));
}
не подходит?
У меня ImportFileToMemo тоже не работает.
============prim code================
if ( inStr('FROM:',TekStr)>0 ) { FROM := trim(replace(TekStr,'FROM:','')) }
if ( inStr('BODYLENGTH:',TekStr)>0 ) { BODYLENGTH := trim(replace(TekStr,'BODYLENGTH:','')) }
if ( inStr('BODYTYPE:',TekStr)>0 ) { BODYTYPE := trim(replace(TekStr,'BODYTYPE:','')) }
if ( inStr('BODY:',TekStr)>0 )
{
IsBody:= True; //все поля считали создаем документ
if((Insert TABLEDOC set
TABLEDOC.DocName := UNIVERSALID,
TABLEDOC.DocDate := Cur_Date,
TABLEDOC.DocTime := Cur_Time,
TABLEDOC.TypeCode := FORMTYPE,
TABLEDOC.code := NOTEID,
TABLEDOC.Primech0 := CREATED,
TABLEDOC.Primech1 := LASTACCESSED,
TABLEDOC.Primech2 := Ansi2Oem(SUBJECT), //41 СИМВОЛ
TABLEDOC.FILENAME := Ansi2Oem(SUBJECT), //101 СИМВОЛ
TABLEDOC.CINTCODESOST := ReVidDoc, //Viddoc-Системный вид документа на который ответ
TABLEDOC.CTABLEDOC := ReNrecDoc, //Nrec-Nrec документа на который ответ
TABLEDOC.Primech3 := Ansi2Oem(FROM),
TABLEDOC.Primech4 := BODYLENGTH,
TABLEDOC.Primech5 := BODYTYPE,
TABLEDOC.Primech6 := Substr(SUBJECT,Poz1+2,3) ,
TABLEDOC.cIntCodeSost := ISDELETED
)=tsOk)
if(( Insert DOCCONT set DOCCONT.CTABLEDOC := TABLEDOC.nrec )= tsOk)
if (MyMemo.OpenMemo(DOCCONT.DOCDATA))
{
IsOpenMemo := True;
MyMemo.Seek(0);
! MyMemo.WriteLn(CREATED);
}
}
}
else
{
// если поле текта документа то все строки далее загоняем в мемополе! ИТ ПАРК itpark.ru
If IsOpenMemo MyMemo.WriteLn(Ansi2Oem(TekStr));
}
-
- Постоянный гость
- Сообщения: 55
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва ЗАО "Рантайм Системс"
- Контактная информация:
Re: Запись мемо поля в Галактику
To GalPro
MyMemo.WriteLn(ххххххххх);
Это мы загоняем мемо в память, а как мемо записать в БД Галактики, например в ALLMEMO.MEM .`)
MyMemo.WriteLn(ххххххххх);
Это мы загоняем мемо в память, а как мемо записать в БД Галактики, например в ALLMEMO.MEM .`)
Re: Запись мемо поля в Галактику
вероятно Вы не поняли:
сначала объявляем как
File MyMemo;
далее
открываем наше мемо для записи
if (MyMemo.OpenMemo(ALLMEMO.MEM))
{
IsOpenMemo := True;
}
далее пишем и закрываем.
Апдейтим таблицу и усе
"Это мы загоняем мемо в память"
сначала объявляем как
File MyMemo;
далее
открываем наше мемо для записи
if (MyMemo.OpenMemo(ALLMEMO.MEM))
{
IsOpenMemo := True;
}
далее пишем и закрываем.
Апдейтим таблицу и усе
"Это мы загоняем мемо в память"
-
- Абориген
- Сообщения: 943
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: External Developer
- Контактная информация:
Re: Запись мемо поля в Галактику
Если стандартный ImportFileToMemo не проходит, следовательно и построчная запись не прокатит... видимо файл слишком большой - см. ограничение на хранение данных в мемополях.
тем более для бинарников построчное чтение/запись однозначно не пойдет.
рекомендую все-таки разобратьс, почему у вас не работает ImportFileToMemo.
Я например этой функцией без проблем храню в мемополях RTF и PDF файлы...
кроме того, если файлы слишком большие я их автоматически пакую и только потом пишу в мемо-поле... при этом используется стандартная ImportFileToMemo.
Ройтесь в этом направлении
тем более для бинарников построчное чтение/запись однозначно не пойдет.
рекомендую все-таки разобратьс, почему у вас не работает ImportFileToMemo.
Я например этой функцией без проблем храню в мемополях RTF и PDF файлы...
кроме того, если файлы слишком большие я их автоматически пакую и только потом пишу в мемо-поле... при этом используется стандартная ImportFileToMemo.
Ройтесь в этом направлении
-
- Постоянный гость
- Сообщения: 55
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва ЗАО "Рантайм Системс"
- Контактная информация:
Re: Запись мемо поля в Галактику
Проблема была не с размером, ведь я заменял просто строчку в существующем мемо, на самом деле, там есть еще один ключик к ларчику, без которого ничего не получается. Пришлось запрашивать исходники Галки, чтобы во всем разобраться. Спасибо всем за помощь!
-
- Местный житель
- Сообщения: 291
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: С-Петербург
- Контактная информация:
Re: Запись мемо поля в Галактику
А что, нынче раздают исходники Галки?
Безвыходных ситуаций не бывает: DO LOOP WHILE TRUE
-
- Постоянный гость
- Сообщения: 55
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва ЗАО "Рантайм Системс"
- Контактная информация:
Re: Запись мемо поля в Галактику
Просто, некоторые за них платят деньги.
как быть с мемо без частей
Всем привет!
Апну темку, чтобы не плодить.
В katmc есть примечание, в котором храним фотки продукции.
в мемо есть записи, не имеющие частей (GetPartMemoCount дает -1)
SQL запрос к такому мемо полю
возвращает одну строку, владелец записи не я.
Если открыть карточку этой мц, и заглянуть в комментарий, то мы увидим пустое белое поле с расширением TXT.
Т.е. мемо по сути чисто? Видимо владелец записи добавил файл, потом удалил?
ОК, если я в цикле записываю что-то в это поле, причем не важно, полностью заменяя содержимое
или записывая в конец
в результате в карточке отображается файл, который добавлен первым!
В логе ошибок нет, файлы разные.
В мемо-поля, имеющих несколько частей, добавляются новые файлы без проблем.
Что я делаю не так? Что можно сделать? Я бы добавлял новую часть в мемо, но не вижу такой функции..
Апну темку, чтобы не плодить.
В katmc есть примечание, в котором храним фотки продукции.
в мемо есть записи, не имеющие частей (GetPartMemoCount дает -1)
SQL запрос к такому мемо полю
возвращает одну строку, владелец записи не я.
Если открыть карточку этой мц, и заглянуть в комментарий, то мы увидим пустое белое поле с расширением TXT.
Т.е. мемо по сути чисто? Видимо владелец записи добавил файл, потом удалил?
ОК, если я в цикле записываю что-то в это поле, причем не важно, полностью заменяя содержимое
Код: Выделить всё
ImportFileToMemo(allmemo.mem, path + NameFile[i], FALSE)
if (UpDate current AllMemo = tsOK)
...
Код: Выделить всё
ImportFileToMemo(allmemo.mem, path + NameFile[i] , TRUE)
if (UpDate current AllMemo = tsOK)
...
В логе ошибок нет, файлы разные.
В мемо-поля, имеющих несколько частей, добавляются новые файлы без проблем.
Что я делаю не так? Что можно сделать? Я бы добавлял новую часть в мемо, но не вижу такой функции..
Re: Запись мемо поля в Галактику
Нашел, это функция ImportFileToMemoAZM
Именно она и создает часть в мемо, что решает мой вопрос.
Всем спасибо за прочтение!
Именно она и создает часть в мемо, что решает мой вопрос.
Всем спасибо за прочтение!