Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Polyakov.doc
Скачиваний:
20
Добавлен:
02.12.2018
Размер:
5.13 Mб
Скачать
    1. Команды для работы с профильными документами

@Command( [EditProfile];

"имя_профильного_документа";

"уникальный_ключ" )

Область применения: в R 6 всегда выполняется последней в формуле. Нельзя применять в формулах диалогового окна. Для создания профильного документа нужен доступ к базе данных не ниже автора.

Создает новый или открывает существующий профильный документ на редактирование.

Параметр "имя_профильного_документа" задает имя профильного документа. Третий параметр не обязателен, если он опущен, то ищется или создается профильный документ общий для данной базы данных, иначе ищется профильный документ, связанный с указанным ключом.

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

В формуле сначала выбирается имя пользователя из адресной книги, затем создается для него профильный документ с именем "User". Затем документ сохраняется и закрывается.

Ch := @PickList( [Name]:[Single] );

@Command( [EditProfile]; "User"; Ch );

@Command( [FileSave] );

@Command( [FileCloseWindow] );

@Command( [EditProfileDocument];

"имя_профильного_документа";

"уникальный_ключ" )

Область применения: нельзя применять в формулах диалогового окна. Для создания профильного документа нужен доступ к базе данных не ниже автора.

Создает новый или открывает существующий профильный документ на редактирование. Аналогична @Command( [EditProfile] ) за тем лишь исключением, что выполняется немедленно в формуле, а не после всех остальных команд.

    1. Команды обновления отображаемой информации

@Command( [ReloadWindow] )

Область применения: в R 6 всегда выполняется последней в формуле. Работает в формулах акций форм и кнопок. В акциях видов для клиента Notes команда работает только в случае, если вид входит в набор фреймов. Может использоваться в Web-приложениях.

"Перезагружает" или обновляет содержимое текущего окна LN. Для набора фреймов обновляет содержимое всех входящих в него фреймов.

@Command( [RefreshWindow] )

Область применения: работает в формулах акций форм и кнопок. В акциях видов для клиента Notes команда работает только в случае, если вид входит в набор фреймов. Может использоваться в Web-приложениях.

"Перезагружает" или обновляет содержимое текущего окна LN. Для набора фреймов обновляет содержимое всех входящих в него фреймов. Аналогична @Command( [ReloadWindow] ) за тем лишь исключением, что выполняется немедленно в формуле, а не после всех остальных команд.

@Command( [RefreshFrame]; "фрейм" )

Область применения: работает в формулах акций форм и видов и гиперобъектах. Может использоваться в Web-приложениях.

"Перезагружает" или обновляет содержимое указанного "фрейма". Если перед командой [RefreshFrame] следует функция @SetTargetFrame, то значение параметра "фрейм" игнорируется, и осуществляется обновление фрейма, заданного функцией @SetTargetFrame. В рамках клиента Notes, если параметр "фрейм" опущен и функция @SetTargetFrame в формуле отсутствует, то [RefreshFrame] не выполняет никаких действий. Если команда выполняется во вложенном наборе фреймов с одноименными фреймами, на один из которых указывает параметр "фрейм", то обновление осуществляется только для одноименного фрейма самого верхнего уровня.

В Web-приложениях команда обновляет только текущий фрейм, при этом игнорируется параметр "фрейм". Функция @SetTargetFrame не оказывает влияния на команду [RefreshFrame] в Web-приложениях.

Пример. Команда, примененная в кнопке страницы, обновляет фрейм с именем «Right» для набора фреймов, отображаемых в клиенте Notes.

@Command([RefreshFrame]; "Right")

@Command( [ViewRefreshFields] )

Область применения: документ должен быть открыт в режиме редактирования, или вид/папка должны быть открыты в текущем окне. Можно использовать в Web-приложениях.

Осуществляет пересчет всех формул полей для текущего документа, или обновляет содержимое вида/папки.

С версии 5 с помощью этой команды можно также программно воздействовать на апплеты видов.

Пример. Команда при использовании в акции вида/папки обновляет содержимое экрана.

@Command( [ViewRefreshFields] )

@Command( [RefreshHideFormulas] )

Область применения: вид/папка должны быть открыты, или документ должен находиться в режиме чтения/редактирования.

Пересчитывает только формулы видимости объектов в документе или виде. Формулы вычисляемых полей, проверки введенных данных и т.д. при этом не пересчитываются.

На уровне вида команда не оказывает влияние на формулы скрытия столбцов, только на формулы скрытия акций вида.

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

ch := @Prompt( [OkCancelCombo]; "Выбор типа статьи";

"Выберите тип статьи."; "Текст"; "Текст" : "Видео" :

"Графика" : "Подводка");

@SetField( "Type"; ch );

@Command( [RefreshHideFormulas] )

@Command( [RefreshParentNote] )

Область применения: работает только в формулах диалогового окна.

Передает изменения из одноименных полей диалогового окна (имеется ввиду @DialogBox или его аналог на LotusScript) в основной документ.

Пример. Формула, отрабатывающая по событию QueryClose диалогового окна, всегда передает изменения в одноименных полях в основной документ в независимости от того, какую кнопку нажал пользователь Ok или Cancel.

@Command( [RefreshParentNote] )

@Command( [ToolsRefreshAllDocs] )

Область применения: в текущем окне должен быть открыт вид/папка.

Перевычисляет все формулы во всех документах текущего вида/папки и сохраняет изменения.

Следует обратить внимание на область применения команды, исходя из определения, она напрямую не работает в формулах, входящих в форму (в частности, в акциях формы).

Пример. Формула, используемая в акции формы, сначала сохраняет текущий документ. Затем открывает вид "View1" и обновляет все документы в нем.

@Command( [FileSave] );

@Command( [OpenView]; "View1" );

@Command( [ToolsRefreshAllDocs] );

@Command( [ToolsRefreshSelectedDocs] )

Область применения: в текущем окне должен быть открыт вид/папка, хотя бы один документ должен быть выделен или на документе должен стоять световой маркер.

Перевычисляет все формулы в текущем или выделенных документах текущего вида/папки и сохраняет изменения.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]