перенумерация поля идентификатора - PullRequest
0 голосов
/ 20 мая 2011

Очень плохо знаком с Filemaker. Использование Filemaker 11 pro.

Мне было интересно, можно ли перенумеровать столбец поля идентификатора после выполнения вставки новой записи между записями? Может быть, с помощью сценария триггера?

спасибо

1 Ответ

1 голос
/ 20 мая 2011

Я согласен с Джесси в том, что перенумерация уникального идентификатора / индекса записи не является хорошей идеей, и может помочь дополнительная информация или пример того, что вы пытаетесь сделать.

Если вы просто хотите отобразить номер записи, вы можете создать несохраненное поле вычисления с вычислением «Get (RecordNumber)». Это должно всегда отображать, какая запись из найденного набора отображается. Определение FileMaker доступно здесь: http://www.filemaker.com/help/html/func_ref2.32.55.html

Если, с другой стороны, вы пытаетесь создать уникальный порядок сортировки для отображаемых записей, лучше всего это сделать, создав новое числовое поле SortIndex. (Необходимо убедиться, что отображаемый макет всегда сортируется по полю SortIndex, что можно сделать с помощью триггеров сценария макета и, возможно, переопределить команды меню «Сортировка» с помощью пользовательских меню.)

Один из методов, который следует рассмотреть, - это переопределение команды «Новая запись» с помощью пользовательских меню. Когда выбрана новая запись, вы можете направить ее в скрипт, который выполняет что-то вроде этого:

  1. Получить текущее значение SortIndex
  2. Получите значение SortIndex для следующей записи (создавая самообъединение, которое показывает записи, на которых SortIndex> SortIndex таблицы, в которой находится ваше представление)
  3. Поместите среднее значение этих двух значений в переменную $
  4. Создать новую запись и установить для SortIndex значение $ variable
...