Перенос информации из одной Базы в другю
-
cocos
- Сообщения: 25
- Зарегистрирован: Чт июл 10, 2025 1:44 pm
Перенос информации из одной Базы в другю
Имеются 2 Базы Данных: Лицо "ЛЦ" и Фото "ФТ", связанных прямой-обратной отсылкой по полю ЛЦ110.
Нужно содержимое поля ЛЦ2 (типа "Файл") перенести в поле ФТ1 (тоже типа "Файл").
@N:=0;
A:;
@N:=(@N+1);
@A:=GETIZN(ЛЦ2,@N);
IF(@A = "")THEN(GOTO B)ELSE(@sn:=NEW(ЛЦ110_ФТ));
USERECORD (ФТ{@sn}, ФТ1:=@A);
GOTO A;
B:
При поиске ЛЦ и проведении Массовой коррекции в режиме "пересчитывать все", формула почему-то не работает: в Базу ФТ ничего не переносится, хотя в свойстве формулы (Ctrl-P) стоит галочка "Обязательная". Где в формуле закралась ошибка?
В DOS-овской версии Кроноса аналогичная формула с незначительным изменением работала.
Нужно содержимое поля ЛЦ2 (типа "Файл") перенести в поле ФТ1 (тоже типа "Файл").
@N:=0;
A:;
@N:=(@N+1);
@A:=GETIZN(ЛЦ2,@N);
IF(@A = "")THEN(GOTO B)ELSE(@sn:=NEW(ЛЦ110_ФТ));
USERECORD (ФТ{@sn}, ФТ1:=@A);
GOTO A;
B:
При поиске ЛЦ и проведении Массовой коррекции в режиме "пересчитывать все", формула почему-то не работает: в Базу ФТ ничего не переносится, хотя в свойстве формулы (Ctrl-P) стоит галочка "Обязательная". Где в формуле закралась ошибка?
В DOS-овской версии Кроноса аналогичная формула с незначительным изменением работала.
-
Zuluss
- Сообщения: 51
- Зарегистрирован: Чт авг 22, 2024 1:35 pm
Re: Перенос информации из одной Базы в другю
Для полей типа файл следует использовать функции GETFILE-SETFILE.
-
cocos
- Сообщения: 25
- Зарегистрирован: Чт июл 10, 2025 1:44 pm
Re: Перенос информации из одной Базы в другю
Спасибо, буду думать дальше.
Кстати, в DOS-овской версии несколько измененная формула работала с текстовыми полями.
Кстати, в DOS-овской версии несколько измененная формула работала с текстовыми полями.
-
Zuluss
- Сообщения: 51
- Зарегистрирован: Чт авг 22, 2024 1:35 pm
Re: Перенос информации из одной Базы в другю
Надо проверить, но по-моему функция GETIZN вообще исключена из описания и не работает. Вместо нее используются другие возможности.
-
cocos
- Сообщения: 25
- Зарегистрирован: Чт июл 10, 2025 1:44 pm
Re: Перенос информации из одной Базы в другю
Формулу переделал: перенос из множественного значения поля 2 Базы ЛЦ в немножественное поле 1 создаваемой Базы ФТ – поля типа “Файл”.
@N:=0;
A:;
@N:=(@N+1);
@A:=GETFILE(ЛЦ2(@N));
IF(@A="")THEN(GOTO B)ELSE(@sn:=NEW(ЛЦ110_ФТ));
USERECORD(ФТ{@sn}, SETFILE(ФТ1,@A));
GOTO A;
B:
К сожалению формула не заработала – зацикливается на создание множества Баз ФТ.
Где ошибка?
@N:=0;
A:;
@N:=(@N+1);
@A:=GETFILE(ЛЦ2(@N));
IF(@A="")THEN(GOTO B)ELSE(@sn:=NEW(ЛЦ110_ФТ));
USERECORD(ФТ{@sn}, SETFILE(ФТ1,@A));
GOTO A;
B:
К сожалению формула не заработала – зацикливается на создание множества Баз ФТ.
Где ошибка?
-
Zuluss
- Сообщения: 51
- Зарегистрирован: Чт авг 22, 2024 1:35 pm
Re: Перенос информации из одной Базы в другю
Работающая формула
Код: Выделить всё
@N:=VALCOUNT(ЛЦ1);
@I:=1
while (@I<=@N) do
[
@F:=GETFILE(ЛЦ1(@I))
@SN:=NEW(ЛЦ510_ФТ);
USERECORD(ФТ{@SN},SETFILE(ФТ1,@F));
@I:=@I+1
]-
cocos
- Сообщения: 25
- Зарегистрирован: Чт июл 10, 2025 1:44 pm
Re: Перенос информации из одной Базы в другю
К сожалению, данная формула не заработала: программа начала зависать, создавая множество пустых связанных Баз ФТ. Может причина в том, что пересылается .PDF-файл, которого нет в списке выбираемых файлов? В любом случае, это уже не актуально: после “урезания” функционала CronosPro проблема с задержкой копирования файлов в Банк Данных была решена. В любом случае, буду “добивать” эту формулу для получения нужного результата.
-
Zuluss
- Сообщения: 51
- Зарегистрирован: Чт авг 22, 2024 1:35 pm
Re: Перенос информации из одной Базы в другю
А номера полей все поменяли? ЛЦ1, ЛЦ510, ФТ1. Тут нужны ваши номера. Формула работает хорошо, вне зависимости от типа файла.
-
cocos
- Сообщения: 25
- Зарегистрирован: Чт июл 10, 2025 1:44 pm
Re: Перенос информации из одной Базы в другю
Менял, конечно, ведь без этого сама формула не сохранится и не запустится: проверял кнопкой "Проверка".
-
Zuluss
- Сообщения: 51
- Зарегистрирован: Чт авг 22, 2024 1:35 pm
Re: Перенос информации из одной Базы в другю
Если поле с упоминаемым номером есть в базе, но оно не имеет отношения к необходимой операции(не является полем Файл и связным полем), то кнопка Проверить роли не сыграет, а результата может не быть.