Запрет усечения текстового поля в портале, фильтрация содержимого портала для отображения в другом макете - PullRequest
1 голос
/ 06 мая 2011

Я уже использую Filemaker Pro 10, у меня есть два вопроса:

  1. У меня есть текстовое поле на портале, и всякий раз, когда я вношу в него значения типа "B12C45",это работает хорошо, но когда строка длиннее, чем "BC12F42, B45z87", она не показывает целые строки и пропускает буквы из нее.Что я могу сделать?

  2. Мой второй вопрос: у меня есть портал в макете, в этом портале у каждой строки есть идентификатор, иногда идентификатор повторяется в других строках, но значениедругого поля под названием Положение меняется.Теперь я хочу иметь те строки этого портала, которые имеют тот же идентификатор в другом макете.Я попытался использовать для этого сценарии, но сценарии в этом случае работают не очень хорошо, и они вводят весь портал в новом макете, а не те части, которые мне нужны.Как я могу написать скрипт, который делает это?

Буду очень признателен за любую помощь.

1 Ответ

2 голосов
/ 06 мая 2011

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

Настройки размера поля включают в себя:

  1. Удлинение поля
  2. Использование аспекта автоматического изменения размера поля для увеличения размера окна

Настройки размера текста включают в себя:

  1. Уменьшение размера шрифта для этого поля.
  2. Установка стиля шрифта для этого поля сжатым.

С программной точки зрения три вещи выделяются для меня как возможности.Третий вариант мне больше всего подходит для большинства моих решений:

  1. Установите для всплывающей подсказки для поля значение «Сам» (без кавычек).Пользователь может просмотреть все содержимое поля, наведя указатель мыши на поле.
  2. В «Определить базу данных» установите вычисляемое значение поля: «TextStyleAdd (self; Condense)» (без кавычек) иубедитесь, что «Не заменять существующее значение поля» отключено
  3. Используйте условное форматирование, чтобы добавить стиль Condense, или используйте меньший шрифт, когда количество символов в поле становится длинным.

Шаги для использования условного форматирования следующие:

  1. В режиме макета выберите поле и выберите «Условное форматирование ...» во всплывающем меню
  2. Добавить новое условие
  3. Изменить условие на «Формула есть»
  4. В текстовом поле ввести «Длина (Self)> 8» (без кавычек)
  5. Нажмитекнопка «Больше форматирования ...»
  6. Выберите «Конденсат» в качестве стиля из текста

Вы можете добавить несколько условий, поэтому «Конденс» может быть только для длины(Self)> 8 и другоеусловие для длины (Self)> 16, где вы устанавливаете и «конденсат», и уменьшаете размер шрифта.



Что касается вашего второго вопроса, я не могу получить представление о том, что вы пытаетесь сделать, из вопроса, который вы задали.В сценарии можно выполнить следующие действия: Перейти к связанной записи [отношение портала] Сортировать записи [по идентификатору]

, а затем использовать сводное поле (количество идентификаторов), чтобы определить, сколько из каждого идентификаторау вас есть.

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

...