2013-05-31 2 views
0

Я пытаюсь обойти ограничение, которое, по-видимому, имеет Filemaker 12. В списке значений, который ссылается на подключенную к ODBC базу данных SQL Server, он не отображает каждую часть данных. Если есть, например, 2 человека с тем же именем, оно отображает только первого человека с этой фамилией в списке. Это подтверждается следующим в документации Filemaker (который я нашел после того, как много рытья)Filemaker - Могу ли я использовать портал как раскрывающийся список значений?

Если список значений определяются для отображения информации из двух полей, элементы не будут дублироваться на поле, на котором список значений сортируется. Например, если в списке значений отображается информация из поля «Компания» и «Имя», и если значения сортируются по полю «Компания», в списке значений будет отображаться только один человек из каждой компании.

Порталы, с другой стороны, найдут все связанные данные, я просто не понимаю, как сделать что-то с данными, как только я получу его на портале. Поэтому я, по сути, хочу использовать портал как свой раскрывающийся список значений, а затем использовать его, поскольку у меня будет список значений (который затем должен действовать как ключ для выполнения остальных поисков на странице для заполнения счет-фактура

Основная проблема здесь (за исключением этого безумного выбора, который, по-видимому, делает Filemaker), заключается в том, что внешний файл, из которого я извлекаю данные, является файлом SQL Server, установленным ODBC, поэтому я не могу сделать что-то простое, вычисленное поле, которое дало бы мне фамилию & «» &, что сделало бы почти каждого человека уникальным. Filemaker не позволит мне сделать это, потому что говорит, что я не могу сделать это с полем, которое не индексируется. будем благодарны!

ответ

1

Предполагая, что мы начинаем остроумие ч Таблица MyTable и мы пытаемся получить идентификатор из People таблицы для выбранного человека, который мы называем ID, так что мы можем положить его в MyTable::PersonID

Начните с создания новой таблицы Происшествие вашего People таблицы и назовите его PeopleWhoCanBeSelected. Если вы хотите, чтобы каждый человек в таблице People мог подключиться к MyTable с помощью отношения X. Если вы хотите показать только подмножество людей, вы можете построить разные отношения.

Теперь на макете, отображающей записи от MyTable, вы создадите портал, содержащий записи из таблицы PeopleWhoCanBeSelected.

На портале есть кнопка. Когда эта кнопка нажата, используйте шаг сценария Set Field:

Set Field MyTable::PersonID to: 
    PeopleWhoCanBeSelected::ID 

Это должно быть сделано. Вы можете сделать кнопку невидимым наложением по всей записи портала, если хотите, чтобы пользователь нажимал на «имя» вместо «кнопка рядом с именем».

Теперь, если вы хотите вывести дополнительные данные в запись MyTable, вам нужно создать второе столкновение с таблицей, которое называется People с отношением MyTable::PersonID = People::ID. Затем вы можете получить информацию о специально выбранном человеке через эти отношения.

+1

О чем можно подумать - вы могли бы использовать локальный глобальный фильтр в качестве фильтра для портала. С некоторым запуском вы можете создать эффект фильтрации, а не огромный портал, что может улучшить вашу производительность. – Dycey

Смежные вопросы