05.09.2007, 18:05 | #1 |
Участник
|
Объявляю переменные recKey (тип Record, таблица Key) и lvTableNo (тип Integer).
далее скрипт: lvTableNo := 1; // таблица реально существует с данным ID recKey.SETFILTER(recKey.TableNo,'%1',lvTableNo); recKey.FIND('-'); // эта строка выдает ошибку Ошибка: "Нет Key в пределах фильтра. Фильтры: TableNo: 1". 1. Прокомментируйте, пожалуйста, ошибку. 2. Каким образом отфильтровать тыблицу Key в скрипте, чтоб вытащить ключи произвольной таблицы? |
|
05.09.2007, 19:09 | #2 |
Участник
|
А что это за таблица под номером 1? У меня все больше с трех начинается....
|
|
06.09.2007, 10:28 | #3 |
Участник
|
Цитата:
PS фильтр по имени таблицы работает "на ура", правда, почему-то относительно долго, ведь записей в таблице Key всего несколько тысяч, причем для такого количества записей наличие индексов роли не играет. |
|
06.09.2007, 13:02 | #4 |
Участник
|
А вы не путаете таблицы с формами?
форма номер 1 = Company Information таблица номер 79 = Company Information |
|
06.09.2007, 13:07 | #5 |
Участник
|
Пользуйтесь RecordRef
RecordRef.KEYINDEX(1); - первичный ключ |
|
06.09.2007, 13:10 | #6 |
Участник
|
Пример перечисления всех полей ключевых (FieldRef):
KeyRef := RecordRef.KEYINDEX(1); FOR i := 1 TO KeyRef.FIELDCOUNT DO BEGIN FieldRef := KeyRef.FIELDINDEX(i); END; Да... забыл сказать CU Change Log Management в свое время помог разобраться во разных Ref-ах Может и Вам сгодится |
|
07.09.2007, 10:29 | #7 |
Участник
|
|
|
07.09.2007, 10:32 | #8 |
Участник
|
Цитата:
Сообщение от randrews
Пример перечисления всех полей ключевых (FieldRef):
KeyRef := RecordRef.KEYINDEX(1); FOR i := 1 TO KeyRef.FIELDCOUNT DO BEGIN FieldRef := KeyRef.FIELDINDEX(i); END; Да... забыл сказать CU Change Log Management в свое время помог разобраться во разных Ref-ах Может и Вам сгодится |
|