Если у группы явно установлена ширина или высота, то при расчёте размеров дочерних элементов предпринимается попытка уместить их в заданное ограничение, если только вышестоящая группа или размеры целевого устройства не наложили более жесткое ограничение.
Если в результате расчета ширина дочерних элементов оказалась меньше заданной ширины группы, то группа расширяется до заданной величины.
Если в результате расчета ширина дочерних элементов оказалась больше заданной ширины группы, то ширина группы игнорируется. Если расчёт выполняется в конфигураторе и включён режим Показать ошибки размещения, то в окно сообщений выдаётся соответствующая ошибка.
Если у группы есть отображаемый заголовок, то он рассчитывается по тем же правилам что и дочерние элементы ‑ если у группы задана ширина, то предпринимается попытка уместить в нее заголовок путем переноса строк. Если ширина заголовка все равно оказалась больше ширины группы, то ширина группы будет не меньше ширины заголовка (больше, если ширина дочерних элементов оказалась больше).
Единственный в мире Музей Смайликов |
|
Подборка по базе: Матем примеры 1 класс ПРЕДЕЛАХ 10.pdf, При обучении нумерации в пределах 1000 учащиеся знакомят.docx, вычитание в пределах 20.ppt, Практическая работа № 3Проектирование учебного занятия на основа, Тест. Виды подчинения. 9 класс.docx, Карточки для отработки навыков сложения и вычитания чисел в пред, Разработка открытого урока математики для семинара директоров 2 , КР Математика сложение и вычитание в пределах 10.docx, виды подчинения3.docx, Регулятором напряжения поддерживается напряжение в сети в устано 1 … 37 38 39 40 41 42 43 44 … 54 |
Полуавтоматическая | Нет |
Верны ответы 1 и 2 | Нет | |
Верны ответы 1, 2 и 3 | Нет | |
В управляемой форме нет привязок | Да | |
10.84 | Выполнение команды «Проверить» приводит | |
к выполнению синтаксического контроля кода модуля формы | Нет | |
к открытию разрабатываемой формы в отдельном окне (без возможности заполнения реквизитов, табличных частей формы) |
Да |
|
к открытию разрабатываемой формы в отдельном окне (с возможностью заполнения реквизитов, табличных частей формы) |
Нет |
|
Варианты 1 и 2 | Нет | |
Варианты 1 и 3 | Нет | |
10.85 | Выполнение команды «Показать ошибки размещения» позволяет: | |
отобразить любые элементы формы, с не заполненным свойством «Путь к данным» | Нет | |
отобразить элементы формы, связанные с одним и тем же элементом данных (дубли) | Нет | |
отобразить ошибки задания свойств элементов формы, которые будут приводить к проблемам при их размещении на форме (например ширины) |
Да |
|
Варианты 1 и 2 | Нет | |
Варианты 1 и 2 и 3 | Нет | |
10.86 |
Область предварительного просмотра внешнего вида формы (в нижней части рисунка)
позволяет просматривать результат: |
|
в разных масштабах | Нет | |
в разных вариантах управляемого интерфейса (Такси/Версия 8.2) | Нет | |
для разных клиентов (персональный компьютер/ мобильный клиент) | Нет | |
Варианты 1 и 2 | Нет | |
Варианты 1 и 2 и 3 | Да | |
10.87 | Свойство элемента формы «Пользовательская видимость» позволяет | |
исключить реквизит из данных формы (реквизит не передается с сервера) для конкретного пользователя системы. Изменить эту настройку пользователь не может. |
Нет |
|
исключить реквизит из данных формы (реквизит не передается с сервера) для роли пользователя. Изменить эту настройку пользователь не может. |
Нет |
|
определить видимость элемента формы по умолчанию. При этом пользователь может самостоятельно изменить это свойство в редакторе настройки формы |
Да |
|
делает связанный с реквизитом элемент формы доступным только для просмотра | Нет | |
10.88 |
Кнопки управляющие режимом просмотра в области предварительного просмотра редактора
формы позволяют выбрать режимы: |
|
Персональный компьютер (Такси), отображение Обычное, масштаб 110% | Нет | |
Персональный компьютер (Интерфейс 8.2), отображение Обычное, разрешение монитора из списка | Нет | |
Мобильное устройство (мобильный клиент), модель телефона из списка, масштаб 110% | Нет | |
Вариант 1 или 2 | Нет | |
Вариант 1 или 3 | Да | |
Возможен любой из указанных вариантов | Нет | |
10.89 | Свойство «Использовать всегда» | |
не дает пользователю убирать видимость элементов формы, связанных с данным реквизитом | Нет | |
позволяет пользователю управлять видимостью связанных элементов формы, но данный реквизит всегда будет доступен на стороне клиента в случае наличия связанного с ним элемента формы |
Нет |
|
вне зависимости, от того связан ли реквизит формы с элементом формы, определяет его доступность на стороне клиента |
Да |
|
10.90 | Управлять значением свойства реквизита «Использовать всегда» можно для типов: | |
число, строка, дата, булево | Нет | |
ссылочных типов | Нет | |
хранилище значения | Нет | |
Варианты 1 и 2 | Да | |
Варианты 1 и 2 и 3 | Нет | |
10.91 | В редакторе формы управлять расположением элемента формы (относительно других) можно | |
в дереве элементов формы, используя команды «Переместить вверх», «Переместить вниз» | Нет | |
в списке реквизитов формы, используя команды «Переместить вверх», «Переместить вниз» | Нет | |
перетаскиванием мышью в окне предварительного просмотра | Нет | |
Вариант 1 или 2 | Нет | |
Вариант 1 или 3 | Да | |
Вариант 1 или 2 или 3 | Нет | |
10.92 |
При создании реквизита формы типа «ДинамическийСписок» способ формирования запроса к
данным определяется разработчиком: |
|
заданием основной таблицы | Нет | |
ручным формированием запроса | Нет | |
определяется автоматически исходя из принадлежности формы определенному объекту конфигурации |
Нет |
|
Верны варианты 1 или 2 | Да | |
10.93 | Ключ динамического списка определяется: | |
автоматически в случае указания основной таблицы | Нет | |
с использованием специализированных свойств динамического списка, в случае если основная |
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN»>
<html>
<head>
<meta http-equiv=»Content-Type» content=»text/html; charset=Windows-1251«>
<title>Глава 27. Инструменты разработки</title>
<LINK REL=»stylesheet» href=»style.css?_=1496848987«>
<SCRIPT src=»script.js?_=1496848987» TYPE=»text/javascript«></script> <!—[if !IE]>—><SCRIPT src=»zeroclipboard.js?_=1496848987» TYPE=»text/javascript«></script><!—<![endif]—>
<meta name=»robots» content=»noarchive«>
<meta name=»googlebot» content=»noarchive«>
<link href=»/db/content/v8310doc/src/руководство разработчика/глава 27. инструменты разработки.htm» rel=»canonical«>
<link href=»/static/its.content.css?_=1490872753» type=»text/css» rel=»stylesheet«>
<script type=»text/javascript» src=»/static/its.content.js?_=1489758009«></script>
<!—[if lt IE 9]><script type=»text/javascript» src=»/static/html5shiv.js?_=1484636606″></script><![endif]—>
</head>
<body class=»v8310doc«>
<a name=»_ref425413183«></a><a name=»_ref301191309«></a><a name=»_ref237783554«></a><a id=»TI000000929» class=»bookmark«><h1>Глава 27. Инструменты разработки</h1></a>
<a name=»_ref222321022«></a><a name=»_ref141014934«></a><a name=»_ref141003681«></a><a name=»_ref214865442«></a><a id=»TI000000930» class=»bookmark» name=»issogl1_27.1_редактор_формы«><h2>27.1. Редактор формы</h2></a>
<a name=»_ref347413325«></a><a name=»_ref347413324«></a><a name=»_ref423610858«></a><a id=»TI000000931» class=»bookmark» name=»issogl2_27.1.1_описание_редактора«><h3>27.1.1. Описание редактора</h3></a>
<p class=»MsoNormal«>Редактор
формы позволяет выполнять все действия, которые возникают при создании и
изменении формы. Редактор формы представляет собой группу из нескольких
связанных между собой редакторов:</p>
<p class=»MsoListBulletCxSpFirst«>●
реквизитов – закладка <span class=»Interface«>Реквизиты</span>;</p>
<p class=»MsoListBulletCxSpMiddle«>●
команд – закладка <span class=»Interface«>Команды</span>;</p>
<p class=»MsoListBulletCxSpMiddle«>●
элементов – закладка <span class=»Interface«>Элементы</span>;</p>
<p class=»MsoListBulletCxSpMiddle«>●
параметров – закладка <span class=»Interface«>Параметры</span>;</p>
<p class=»MsoListBulletCxSpMiddle«>●
модуля – закладка <span class=»Interface«>Модуль</span>;</p>
<p class=»MsoListBulletCxSpLast«>●
командного интерфейса – закладка <span class=»Interface«>Командный интерфейс</span>.</p>
<p class=»Regularbeforepicture«>В
нижней части окна расположена форма в режиме предварительного просмотра.</p>
<p class=»Picture«><IMG src=»_img/img00482.gif?_=1496848987» WIDTH=»766» ALT HEIGHT=»501«></p>
<p class=»MsoCaption«>Рис.
474. Редактор формы</p>
<p class=»MsoNormalCxSpFirst«>В
редакторах доступно множественное выделение. В этом случае в палитре свойств
будут отражены только те свойства, которые присутствуют у всех выделенных
объектов. Изменения, которые сделаны в палитре свойств, будут применены для
всех выделенных объектов.</p>
<p class=»MsoNormalCxSpMiddle«>Добавление
элементов формы обычно осуществляется перетаскиванием реквизита формы на панель
элементов. При этом имя элемента формы становится равным имени реквизита, а в
качестве данных элемента формы установлен путь к реквизиту. В дальнейшем имя
элемента можно изменить. Система автоматически определяет как элемент формы, с
помощью которого будет отображаться реквизит, так и вид этого элемента, если
такое возможно. Аналогичным образом выполняется добавление на форму команд (как
команд формы, так и глобальных команд). Если реквизит формы или команда размещена
на форме, то справа от названия у нее выводится специальный маркер серого
цвета.</p>
<p class=»MsoNormalCxSpLast«>Если
элемент формы добавляется перетаскиванием из другой формы, то следует помнить о
том, что для таких элементов свойство <span class=»Interface«>Данные</span> не будет
перенесено. Для всех элементов, перенесенных таким образом, будет необходимо
заново установить корректные пути к данным.</p>
<p class=»Regularbeforepicture«>При
выборе элемента формы на закладке <span class=»Interface«>Элементы</span>
происходит автоматическое позиционирование на выбранный элемент в окне
предварительного просмотра. Если элемент выделяется в окне предварительного
просмотра, то происходит автоматическое выделение этого элемента в дереве
элементов формы на закладке <span class=»Interface«>Элементы</span>.</p>
<p class=»Picture«><IMG src=»_img/img00483.gif?_=1496848987» WIDTH=»766» ALT HEIGHT=»501«></p>
<p class=»MsoCaption«>Рис.
475. Связь редакторов</p>
<p class=»Regularbeforetable«>Выделять
элементы формы можно как в редакторе элементов, так и в окне предварительного
просмотра. При этом возможности, доступные в окне предварительного просмотра,
практически совпадают с таковыми в списке элементов. В частности, доступны
контекстные меню элементов, открытие окна свойств, перетаскивание элементов и т. д.
Если выделить элемент в окне предварительного просмотра, вокруг элемента
возникает рамка, которая в зависимости от элемента может быть нескольких цветов.</p>
<table class=»MsoNormalTable» border=»0» cellspacing=»0» cellpadding=»0«>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpFirst«><b>Цвет
рамки</b></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><b>Описание</b></p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Синяя</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Выделение обычного элемента</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Оранжевая</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Выделение автоматически созданных кнопок и
подменю командных панелей. Служит для индикации того, что для данного
элемента невозможно выполнить никаких настроек (свойства, положение)</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Серая</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Выделение родительского элемента, если
выбранный элемент невозможно выделить в окне предварительного просмотра.
Например, если в списке элементов выбрать контекстное меню поля ввода, то
поле ввода будет выделено в окне предварительного просмотра серым цветом</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»Regularbeforepicture«>Зеленая</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpFirst«>Используется при перетаскивании элементов
и отображает элемент, в который выполняется перетаскивание (например, таблицу
или группу формы), и индикатор того, где будет размещен перетаскиваемый
элемент</p>
</td>
</tr>
</table>
<p class=»Regularbeforepicture«>Щелчок
мышью по заголовку окна в окне предварительного просмотра эквивалентен выбору
элемента <span class=»Interface«>Форма</span> (на
закладке <span class=»Interface«>Элементы</span>).
Контекстное меню, которое возникает в этом случае, также эквивалентно
контекстному меню, соответствующему элементу <span class=»Interface«>Форма</span>.</p>
<p class=»Picture«><IMG src=»_img/img00484.gif?_=1496848987» WIDTH=»545» ALT HEIGHT=»315«></p>
<p class=»MsoCaption«>Рис.
476. Индикация перетаскивания</p>
<p class=»MsoNormalCxSpFirst«>Если
необходимо выделить родительский элемент (например, группу, в которую входит
поле) для какого-либо другого элемента, это можно сделать двумя
последовательными щелчками левой кнопкой мыши на подчиненном элементе. Такое
выделение сработает, если интервал между щелчками составляет от 1 до 2 секунд.
При меньшем времени система может воспринять щелчки как двойной щелчок, при
большем – как раздельные действия. Если в момент первого щелчка было
выделено несколько элементов, то выделение родительского элемента не будет
выполнено.</p>
<p class=»MsoNormalCxSpLast«>Для
быстрого перехода к связанным объектам существует команда <span class=»Interface«>Перейти</span>. Эта
команда расположена в контекстном меню объекта, в редакторах элементов,
фрагментов командного интерфейса, реквизитов, команд и окне предварительного
просмотра. С помощью этой команды можно, например, быстро перейти от элемента
формы (выделенного в списке элементов или окне предварительного просмотра) к
реквизиту формы, который отображается этим элементом. Если доступно несколько
объектов, к которым возможен переход, будет открыто окно с предложением выбрать
нужный объект.</p>
<p class=»Regularbeforepicture«>Также
в редакторе формы возможно быстрое создание (или переход) обработчиков событий
того или иного элемента формы с помощью подменю <span class=»Interface«>События</span> контекстного
меню элемента.</p>
<p class=»Picture«><IMG src=»_img/img00485.gif?_=1496848987» WIDTH=»694» ALT HEIGHT=»444«></p>
<p class=»MsoCaption«><a name=»_ref289263314«>Рис. </a>477. Меню «События»</p>
<p class=»MsoNormalCxSpFirst«>В
состав этого меню входят все события, которые доступны для данного элемента
формы в окне свойств этого элемента. Если в меню указано имя события в угловых
скобках, это значит, что обработчик события не определен (например, для события
<span class=»Term«>Очистка</span> элемента <span class=»Term«>Организация</span> на <a href=»#_ref289263314«>рис.477</a>). Для создания обработчика следует выбрать нужное
событие – произойдет переход в редактор модуля формы с созданием
необходимого обработчика.</p>
<p class=»MsoNormalCxSpMiddle«>Если
обработчик для события уже создан, то выбор соответствующего пункта в подменю <span class=»Interface«>События</span> вызовет
переход к существующему обработчику в редакторе формы (например, обработчик <span class=»Term«>ОрганизацияПриИзменении()</span> на <a href=»#_ref289263314«>рис.
477</a>).</p>
<p class=»MsoNormalCxSpLast«>Для
кнопки подменю <span class=»Interface«>События</span> не
формируется, а команда перехода к обработчику соответствующей команды расположена
непосредственно в контекстном меню элемента.</p>
<p class=»Regularbeforepicture«>Если
выполняется создание клиентского обработчика, то система предлагает на выбор
несколько вариантов его создания:</p>
<p class=»Picture«><IMG src=»_img/img00486.gif?_=1496848987» WIDTH=»368» ALT HEIGHT=»154«></p>
<p class=»MsoCaption«>Рис.
478. Создание клиентского обработчика</p>
<p class=»MsoNormalCxSpFirst«>Первый
вариант (<span class=»Interface«>Создать на клиенте</span>)
предполагает создание только клиентского обработчика событий. Вариант <span class=»Interface«>Создать на клиенте и
процедуру на сервере без контекста</span> предполагает создание клиентского
обработчика события, внеконтекстной серверной процедуры и вызов процедуры из
клиентского обработчика. Последний вариант отличается от предыдущего тем, что
серверная процедура создается контекстной. Если в каком либо клиентском
обработчике события не рекомендуется использовать контекстные серверные вызовы
(информация об этом доступа в Синтакс-помощнике), то использование последнего
варианта (с контекстной серверной процедурой) недоступно. Удаление обработчика
события не приводит к удалению серверной процедуры (если при создании
обработчика события она создавалась).</p>
<p class=»MsoNormalCxSpMiddle«>При
удалении реквизита (из списка реквизитов формы) на экран выводится вопрос <span class=»Interface«>Удалить связанные
элементы?</span> Если ответ отрицательный, то у связанных элементов формы
очищается свойство <span class=»Term«>Данные</span>. При положительном ответе выполняется
удаление элементов формы, которые связаны с удаляемым реквизитом. Если связь с
этим реквизитом для элемента не является основной (данные подвала, данные,
отображаемые в заголовке группы, и т. д.), то такой элемент не
удаляется, но очищается связь с удаляемым реквизитом. Вне зависимости от ответа
на вопрос об удалении будут удалены команды командного интерфейса формы,
связанные с удаляемым реквизитом.</p>
<p class=»MsoNormalCxSpLast«>Если
удалить команды формы, также предлагается удалить связанные элементы. При
отрицательном ответе элементы формы не удаляются, но очищается свойство
элемента <span class=»Interface«>Команда</span>. При
положительном ответе удаляются кнопки, связанные с удаляемой командой.</p>
<p class=»Regularbeforepicture«>При
разработке формы, которая должна отображаться и в интерфейсе <span class=»Interface«>Такси</span> и в
интерфейсе 8.2, требуется видеть, как форма отображается в обоих режимах
интерфейса. Это можно сделать непосредственно в редакторе формы.</p>
<p class=»Picture«><IMG src=»_img/img00487.gif?_=1496848987» WIDTH=»591» ALT HEIGHT=»501«></p>
<p class=»MsoCaption«><a name=»_ref352237003«>Рис. </a>479. Переключение
режима интерфейса</p>
<p class=»MsoNormalCxSpFirst«>На <a href=»#_ref352237003«>рис.479</a> приведен пример того, как меняется отображение при
смене режима интерфейса с интерфейса <span class=»Interface«>Такси</span> (верхняя
левая часть рисунка) на интерфейс версии 8.2 (нижняя правая часть рисунка). Однако следует помнить, что в режиме тестирования формы в
интерфейсе <span class=»Interface«>Такси</span>, некоторые элементы изображаются в интерфейсе 8.2.</p>
<p class=»MsoNormalCxSpLast«>Кнопка
<span class=»Interface«>Вариант интерфейса</span>
доступна только в том случае, когда свойство <span class=»Interface«>Режим совместимости
интерфейса</span> установлено в значение <span class=»Interface«>Такси. Разрешить
Версия 8.2</span> или <span class=»Interface«>Версия 8.2. Разрешить
Такси</span>. В остальных случаях кнопка не отображается в редакторе формы.</p>
<p class=»Regularbeforepicture«>В
особых случаях требуется разрабатывать формы, для которых можно выбирать
масштаб отображения (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 7. формы.htm?_=1496848987#_ref419713193«>здесь</a>). Если у самой формы свойство <span class=»Interface«>Вариант масштаба</span>
установлено в значение <span class=»Interface«>Авто</span>, то в
редакторе формы имеется возможность выбора, в каком масштабе будет отображаться
превью формы.</p>
<p class=»Picture«><IMG src=»_img/img00488.gif?_=1496848987» WIDTH=»613» ALT HEIGHT=»501«></p>
<p class=»MsoCaption«>Рис.
480. Переключение варианта масштаба</p>
<p class=»Regularbeforepicture«>Если
форма будет использоваться только в интерфейсе <span class=»Interface«>Такси</span>, и при
этом не будет использоваться компактный режим отображения, в редакторе формы
можно проверить, как форма будет отображаться с нестандартным масштабом.</p>
<p class=»Picture«><IMG src=»_img/img00489.gif?_=1496848987» WIDTH=»766» ALT HEIGHT=»501«></p>
<p class=»MsoCaption«>Рис.
481. Выбор масштаба формы</p>
<p class=»MsoNormal«>Изменение
масштаба приведет к соответствующему изменению формы в окне предварительного
просмотра. Для того чтобы изменить реальный масштаб формы – следует
использовать свойство формы <span class=»Interface«>Масштаб</span>.</p>
<p class=»Regularbeforepicture«>В
связи с тем, что формы системы «1С:Предприятие» могут отображаться на
устройствах с разным разрешением, в процессе разработки требуется проверять,
как будет выглядеть разрабатываемая форма на том или ином разрешении. Для этого
в редакторе реализована возможность быстрого выбора разрешения, для которого
система будет выполнять размещение элементов в панели превью формы.</p>
<p class=»Picture«><IMG src=»_img/img00490.gif?_=1496848987» WIDTH=»766» ALT HEIGHT=»501«></p>
<p class=»MsoCaption«>Рис.
482. Выбор разрешения превью</p>
<p class=»MsoNormal«>При
выборе разрешения форма будет перестраиваться так, как будто в панели превью
установлено выбранное разрешение. При этом физические размеры формы не будут
изменяться.</p>
<p class=»Regularbeforepicture«>Кроме
большого набора разрешений, мобильные устройства могут в процессе работы
изменять ориентацию своего экрана. Для проверки того, как будет выглядеть форма
при смене ориентации экрана, имеется возможность быстро эмулировать этой операции
в редакторе формы.</p>
<p class=»Picture«><IMG src=»_img/img00491.gif?_=1496848987» WIDTH=»800» ALT HEIGHT=»630«></p>
<p class=»MsoCaption«><a name=»_ref423610588«>Рис. </a>483. Выбор
ориентации экрана</p>
<p class=»MsoNormal«>Так,
на <a href=»#_ref423610588«>рис.483</a> приведен пример того, как форма будет отображаться в
разрешении 1024×768 в ландшафтной (верхняя часть рисунка) и портретной (нижняя
часть рисунка) ориентации.</p>
<p class=»Regularbeforepicture«>Если
в процессе разработки формы будут обнаружены различные ошибки задания свойств
элементов, которые будут приводить к проблемам при размещении элементов формы,
имеется возможность отобразить эти ошибки с помощью специальной кнопки.</p>
<p class=»Picture«><IMG src=»_img/img00492.gif?_=1496848987» WIDTH=»450» ALT HEIGHT=»298«></p>
<p class=»MsoCaption«>Рис.
484. Показать ошибки размещения</p>
<p class=»MsoNormalCxSpFirst«>Если
нужно открыть форму для проверки, следует нажать сочетание клавиш<span class=»Interface«> Ctrl + R</span>.
Форма будет открыта в отдельном окне.</p>
<p class=»MsoNormalCxSpLast«>При
переименовании или удалении реквизита, параметра или элемента формы, система
ищет случаи использования переименуемого (удаляемого) объекта в модуле формы и
во всей конфигурации (если это разрешено в настройках конфигуратора,
см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref389651957«>здесь</a>).</p>
<a name=»_ref200448720«></a><a name=»_ref200447246«></a><a name=»_ref374982339«></a><a id=»TI000000932» class=»bookmark» name=»issogl2_27.1.2_ролевая_настройка_формы«><h3>27.1.2. Ролевая настройка формы</h3></a>
<p class=»MsoNormalCxSpFirst«>В
редакторе формы имеется возможность выполнить ролевую настройку поведения
формы.</p>
<p class=»MsoNormalCxSpLast«>Данная
возможность предоставляется для следующих свойств:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Interface«>Просмотр</span> – свойство
реквизита формы. Отсутствие возможности просмотра исключает реквизит из данных
формы (реквизит не передается с сервера). Изменить эту настройку пользователь
не может.</p>
<p class=»MsoListBulletCxSpMiddle«>●
<span class=»Interface«>Редактирование</span> –
свойство реквизита формы. Отсутствие возможности редактирования делает
связанный с реквизитом элемент формы доступным только для просмотра. Вне
зависимости от состояния данного свойства редактирование будет недоступно, если
недоступен просмотр реквизита формы. Изменить эту настройку пользователь не
может.</p>
<p class=»MsoListBulletCxSpMiddle«>●
<span class=»Interface«>Пользовательская видимость</span> –
свойство элемента формы. Определяет видимость элемента формы по умолчанию. При
этом пользователь может самостоятельно изменить это свойство в редакторе
настройки формы.</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Interface«>Использование</span> –
свойство команды формы. Если у команды выключено использование, то в командном
интерфейсе отсутствуют все связанные с ней кнопки. Изменить эту настройку
пользователь не может.</p>
<p class=»Regularbeforepicture«>Редакторы
всех вышеперечисленных свойств выглядят одинаково и имеют одинаковый принцип
работы. Рассмотрим работу редактора на примере свойства <span class=»Interface«>Просмотр</span>.</p>
<p class=»Picture«><IMG src=»_img/img00493.gif?_=1496848987» WIDTH=»350» ALT HEIGHT=»212«></p>
<p class=»MsoCaption«>Рис.
485. Редактирование свойства «Просмотр» реквизита формы</p>
<p class=»MsoNormal«>Свойство
<span class=»Interface«>Просмотр</span> (в
верхней части окна редактора) определяет состояние просмотра для каждой роли, у
которой флажок находится в «третьем» состоянии (серый фон флажка). Затем
состояния просмотра для всех доступных ролей складываются «по ИЛИ», и
результат этого сложения будет определять итоговое свойство <span class=»Interface«>Просмотр</span> для редактируемого
объекта.</p>
<a name=»_ref236645687«></a><a name=»_ref219791919«></a><a id=»TI000000933» class=»bookmark» name=»issogl1_27.2_редактор_текстов«><h2>27.2. Редактор текстов</h2></a>
<p class=»MsoNormalCxSpFirst«>Текстовый редактор системы «1С:Предприятие»
предоставляет пользователю все основные функции, необходимые при редактировании
текстов. При работе с текстовым редактором доступны операции с блоками текста,
функции поиска и замены, цветовое выделение синтаксических элементов программных
модулей.</p>
<p class=»MsoNormalCxSpMiddle«>В системе «1С:Предприятие» текстовый
редактор используется в двух режимах: для редактирования текстовых документов
и как составная часть редактора форм для редактирования текстов
модулей.</p>
<p class=»MsoNormalCxSpMiddle«>В данной главе приводится описание
особенностей работы редактора текстов при редактировании текстов модулей.</p>
<p class=»MsoNormalCxSpLast«>Так как работа с любым текстовым редактором
в системе Microsoft Windows осуществляется
примерно одинаковым образом, в данном разделе будет дано описание специфических
возможностей текстового редактора системы «1С:Предприятие».</p>
<p class=»Note«><span class=»Note«>Примечание.</span> В текстовом редакторе
невозможно ввести символы, недопустимые с точки зрения спецификации XML версии
1.0 (<a href=»http://www.w3.org/TR/xml/» target=»_blank«>http://www.w3.org/TR/xml/</a>).
При попытке ввода такого символа он просто игнорируется, при вставке из буфера
обмена недопустимые символы пропускаются и во вставленный текст не попадают.</p>
<p class=»MsoNormal«>Таблицу сочетаний клавиш для редактора
текстов можно посмотреть в справке при использовании программы.</p>
<a name=»_ref219791988«></a><a name=»_ref470015459«></a><a id=»TI000000934» class=»bookmark» name=»issogl2_27.2.1_редактирование_модулей«><h3>27.2.1. Редактирование модулей</h3></a>
<p class=»MsoNormalCxSpFirst«>Редактирование модулей выполняется в
процессе создания формы объекта конфигурации, а также при разработке модулей (модуль
приложения, модуль внешнего соединения, общие модули, модули прикладных объектов).</p>
<p class=»MsoNormalCxSpMiddle«>При создании формы текстовый редактор
выступает как составная часть редактора форм и вызывается щелчком мыши на закладке
<span class=»Interface«>Модуль</span> в окне редактора форм, в остальных случаях
текстовый редактор вызывается в виде отдельного окна. Для открытия модуля управляемого
приложения, модуля внешнего соединения, модуля сеанса и модуля обычного приложения
нужно щелкнуть правой кнопкой мыши по имени конфигурации (самая верхняя строка
дерева конфигурации) и в контекстном меню выбрать соответствующий пункт меню.</p>
<p class=»MsoNormalCxSpMiddle«>Для редактирования модуля объекта выбрать
объект и в контекстном меню выбрать пункт <span class=»Interface«>Открыть модуль объекта</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Для редактирования модуля менеджера (если
такой модуль есть у объекта) следует выбрать объект и в контекстном меню выбрать
пункт <span class=»Interface«>Открыть модуль менеджера</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Чтобы отредактировать модуль команды, нужно
дважды щелкнуть мышью по команде или в контекстном меню команды выбрать пункт <span class=»Interface«>Открыть модуль команды</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Для редактирования общего модуля в окне <span class=»Interface«>Конфигурация,</span> в ветви <span class=»Interface«>Общие – Общие модули</span> выбрать нужный модуль и в
контекстном меню выбрать пункт <span class=»Interface«>Открыть модуль</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Процесс редактирования текста программного
модуля ничем не отличается от процесса редактирования текстовых документов –
можно использовать все возможности редактора текстов.</p>
<p class=»MsoNormalCxSpLast«>В этом разделе будут описаны специфические
режимы редактора текстов, которые доступны при редактировании модулей.</p>
<a id=»TI000000935» class=»bookmark» name=»issogl3_27.2.1.1_выделение_цветом_синтаксических_конструкций«><h4>27.2.1.1. Выделение цветом синтаксических конструкций</h4></a>
<p class=»MsoNormalCxSpFirst«>Для удобства редактирования текстов модулей
текстовый редактор имеет функцию выделения цветом элементов встроенного языка
системы «1С:Предприятие» – ключевых слов, констант (не объектов
конфигурации) различных типов, операторов, комментариев и других. Цвета,
которыми будут выделяться разные типы синтаксических конструкций, можно
установить в окне <span class=»Interface«>Параметры</span>, которое открывается выбором пункта <span class=»Interface«>Сервис – Параметры</span> (о настройке параметров
текстового редактора см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref217356703«>здесь</a>).</p>
<p class=»MsoNormalCxSpMiddle«>Названия встроенных функций цветом не
выделяются (цвет совпадает с цветом идентификаторов).</p>
<p class=»MsoNormalCxSpLast«>В общем случае когда текстовый редактор
вызывается для редактирования текста модуля, эта функция включается автоматически.
Однако в некоторых случаях текст модуля может быть расположен во внешнем
текстовом файле. Тогда при открытии такого файла конфигуратор не распознает модуль
и будет считать его обычным текстовым документом. В этом случае при редактировании
текста будет недоступно выделение цветом синтаксических конструкций и автоматическое
форматирование текста модуля. Для указания конфигуратору, что редактируется
модуль, а не текстовый документ, служит пункт <span class=»Interface«>Текст – Встроенный язык</span>, выполняющий функцию переключателя.</p>
<p class=»Regularbeforepicture«>Когда он включен (слева от слов <span class=»Interface«>Встроенный язык</span> в меню появляется отметка), текстовый
редактор считывает загруженный в него текст текстом модуля и выделяет цветом найденные
синтаксические конструкции.</p>
<p class=»Picture«><IMG src=»_img/img00494.gif?_=1496848987» WIDTH=»238» ALT HEIGHT=»123«></p>
<p class=»MsoCaption«>Рис. 486. Включено выделение
цветом</p>
<p class=»MsoNormalCxSpFirst«>Если этот режим включен при редактировании
обычного текстового документа, для вывода текста будет также использоваться
шрифт, установленный для текстов модулей в настройке параметров конфигуратора
(пункт <span class=»Interface«>Сервис – Параметры</span>, закладка <span class=»Interface«>Тексты</span>, реквизит <span class=»Interface«>Шрифт</span>).</p>
<p class=»MsoNormalCxSpMiddle«>Настройка параметров системы «1С:Предприятие»
позволяет отключить режим выделения цветом синтаксических конструкций. Тогда
выбор пункта <span class=»Interface«>Встроенный язык</span> не включит выделение цветом
синтаксических конструкций модуля, а будет использовать только установки шрифта
модуля и шага табуляции.</p>
<p class=»MsoNormalCxSpLast«>Если режим выделения цветом синтаксических
конструкций выключен, для вывода текста используются цвета операционной
системы.</p>
<a name=»_ref354052189«></a><a id=»TI000000936» class=»bookmark» name=»issogl3_27.2.1.2_группировка«><h4>27.2.1.2. Группировка</h4></a>
<p class=»MsoNormal«>В модулях или в текстовых документах,
просматриваемых в режиме <span class=»Interface«>Встроенный язык</span>, некоторые синтаксические конструкции
автоматически объединяются в группы. К таким конструкциям относятся <span class=»Term«>Если … Тогда … КонецЕсли</span>,
<span class=»Term«>Пока … Цикл … КонецЦикла</span>,
<span class=»Term«>Процедура … КонецПроцедуры</span>
и другие.</p>
<p class=»Regularbeforepicture«>Группы текста позволяют лучше воспринимать
различные части текста, а также переносить и копировать группу целиком. Отображение
группировок можно увидеть на <a href=»#_ref216231523«>рис.487</a>.</p>
<p class=»Picture«><IMG src=»_img/img00495.gif?_=1496848987» WIDTH=»452» ALT HEIGHT=»458«></p>
<p class=»MsoCaption«><a name=»_ref216231523«>Рис. </a>487. Группировки в текстовом редакторе</p>
<p class=»MsoNormalCxSpFirst«>Свернуть и развернуть группу можно с помощью
мыши. Для этого достаточно щелкнуть левой кнопкой мыши по маркеру группы.</p>
<p class=»MsoNormalCxSpMiddle«>Если при этом нажать клавишу <span class=»Interface«>Ctrl</span>, то сворачивание и разворачивание будет
производиться также для подчиненных групп (условий, циклов и проч.).</p>
<p class=»MsoNormalCxSpLast«>Для отображения свернутого текста необходимо
подвести курсор к маркеру, как показано на <a href=»#_ref216231523«>рис.
487</a>. Если текст группы достаточно большой, то выводится
только его начальная часть.</p>
<p class=»Regularbeforepicture«>В процессе разработки возникает
необходимость группировать фрагменты модуля. Например, нужно выделить логически
связанные процедуры и функции или выделить фрагменты алгоритма в рамках одной
процедуры или функции. Это можно сделать с помощью инструкций препроцессора <span class=»Term«>#Область …
#КонецОбласти</span> (<span class=»Term«>#Region …
#EndRegion</span>).</p>
<p class=»Picture«><IMG src=»_img/img00496.gif?_=1496848987» WIDTH=»662» ALT HEIGHT=»323«></p>
<p class=»MsoCaption«><a name=»_ref341458587«>Рис. </a>488. Группировка строк</p>
<p class=»MsoNormal«>Все строки, которые находятся внутри
области, ограниченные директивами препроцессора, в редакторе модуля можно
свернуть (аналогично другим конструкциям встроенного языка). Каждая область должна
обладать собственным именем, которое формируется по правилам встроенного языка.
В примере, показанном на <a href=»#_ref341458587«>рис.488</a>, именем области является идентификатор <span class=»Term«>ФайлКартинки</span>.
Области могут быть вложенными, но не могут пересекаться с другими синтаксическими
конструкциями языка. Далее приведены примеры использования областей, как
корректные, так и некорректные:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_res«>
// Верный пример использования области
#Область Верно
…
#Если Клиент Тогда
…
#КонецЕсли
…
#КонецОбласти
// Вложенные области
#Область АлгоритмРасчета
…
#Область Этап1
…
#КонецОбласти
…
#Область Этап2
…
#КонецОбласти
…
#КонецОбласти
// Неверный пример использования области
#Область Неверно
…
#Если Клиент Тогда
…
#КонецОбласти
…
#КонецЕсли
// Неверный пример использования области
#Область Неверно
Процедура ПолучитьДанные()
…
#КонецОбласти
…
КонецПроцедры
</pre>
<p class=»MsoNormal«>Область может описываться комментарием,
располагающимся перед началом области (<span class=»Term«>#Область</span>).
Этот комментарий также может группироваться.</p>
<p class=»Regularbeforetable«>С помощью команд, выполняемых с клавиатуры,
можно легко управлять состоянием групп.</p>
<table class=»MsoNormalTable» border=»0» cellspacing=»0» cellpadding=»0«>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpFirst«><b>Клавиши</b></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><b>Действия</b></p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Ctrl + Num-</span></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Сворачивает
группу (курсор может быть в любом месте группы)</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Ctrl + Num+</span></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Разворачивает
группу (курсор должен быть в первой строке группы)</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Ctrl + Shift + Num-</span></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Сворачивает
все группы</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Ctrl + Shift + Num+</span></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Разворачивает
все группы </p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Ctrl + Shift + R</span></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Обновить
группировки </p>
</td>
</tr>
</table>
<p class=»MsoNormalCxSpMiddle«>При написании текста модуля, во время
завершения написания синтаксической конструкции, автоматически создаются группы
для всех синтаксических конструкций любого уровня вложенности. Обновление
группировок выполняется с помощью пункта <span class=»Interface«>Текст – Группировки – Обновить группировки</span> или
автоматически при сохранении текста согласно настройке показа групп.</p>
<p class=»MsoNormalCxSpLast«>Первым считается уровень описания процедур, функций
и областей, вторым – синтаксических конструкций, вложенных только в тело
процедуры или функции, но не в тело других синтаксических конструкций. Режим
показа групп можно настроить. О настройке режима см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref217356754«>здесь</a>.</p>
<a name=»_ref389477376«></a><a id=»TI000001457» class=»bookmark» name=»issogl3_27.2.1.3_работа_с_закладками«><h4>27.2.1.3. Работа с закладками</h4></a>
<p class=»Regularbeforepicture«>В процессе работы с текстом модуля
разработчик может отметить какую-либо строку текста для того, чтобы потом
быстро перейти к отмеченному фрагменту. Такая отметка называется <span class=»Bold«>закладкой</span>.</p>
<p class=»Picture«><IMG src=»_img/img00497.gif?_=1496848987» WIDTH=»782» ALT HEIGHT=»283«></p>
<p class=»MsoCaption«>Рис. 489. Закладки в тексте</p>
<p class=»MsoNormalCxSpFirst«>Для установки следует воспользоваться
командой <span class=»Interface«>Текст – Установить/снять закладку</span>. Закладка
отмечается цветовой меткой в колонке, левее текста модуля.</p>
<p class=»MsoNormalCxSpLast«>Также имеется возможность перейти к следующей
(команда <span class=»Interface«>Текст – Следующая закладка</span>) или предыдущей закладке
(команда <span class=»Interface«>Текст – Предыдущая закладка</span>), а также удалить все
установленные закладки (<span class=»Interface«>Текст – Убрать все закладки</span>).</p>
<p class=»Regularbeforepicture«>Список всех установленных закладок можно
увидеть в специльном списке, который открывается с помощью команды <span class=»Interface«>Правка – Список закладок</span>.</p>
<p class=»Picture«><IMG src=»_img/img00498.gif?_=1496848987» WIDTH=»472» ALT HEIGHT=»278«></p>
<p class=»MsoCaption«>Рис. 490. Список закладок</p>
<p class=»MsoNormalCxSpFirst«>С помощью данного списка можно перейти сразу
к нужной закладке, удалить одну, конкретную, закладку или сразу все. Следует
помнить, что переход к закладке осуществляется только с помощью специальной
кнопки. Нажатие на кнопку <span class=»Interface«>ОК</span> не вызывает переход к отмеченной закладке.</p>
<p class=»MsoNormalCxSpLast«>Также следует отметить, что система
сохраняет список закладок между сеансами редактирования документов и работы
конфигуратора.</p>
<a id=»TI000000937» class=»bookmark» name=»issogl3_27.2.1.4_форматирование_модуля«><h4>27.2.1.4. Форматирование модуля</h4></a>
<p class=»MsoNormal«>Редактор текстов системы «1С:Предприятие»
включает ряд режимов, облегчающих разработку модулей.</p>
<a name=»_ref401225227«></a><a id=»TI000000938» class=»bookmark» name=»issogl4_27.2.1.4.1_форматирование_синтаксических_конструкций«><h5>27.2.1.4.1. Форматирование синтаксических конструкций</h5></a>
<p class=»MsoNormal«>Хорошим стилем написания модулей считается
использование синтаксического отступа – выделения лидирующими пробелами
(табуляцией) управляющих конструкций встроенного языка системы «1С:Предприятие»,
например, так, как это показано в приведенном ниже фрагменте модуля.</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»keyword«>Процедура</span> СледующийЭлемент<span class=»operator«>(</span>Справочник<span class=»operator«>,</span> Выборка<span class=»operator«>)</span>
<span class=»keyword«>Пока</span> <span class=»keyword«>Истина</span> <span class=»keyword«>Цикл</span>
<span class=»keyword«>Если</span> Выборка<span class=»operator«>.</span>Следующий<span class=»operator«>(</span><span class=»operator«>)</span> <span class=»operator«>=</span> <span class=»keyword«>Ложь</span> <span class=»keyword«>Тогда</span>
Выборка <span class=»operator«>=</span> Справочник<span class=»operator«>.</span><span class=»keyword«>Выбрать</span><span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>Продолжить</span><span class=»operator«>;</span>
<span class=»keyword«>Иначе</span>
<span class=»keyword«>Прервать</span><span class=»operator«>;</span>
<span class=»keyword«>КонецЕсли</span><span class=»operator«>;</span>
<span class=»keyword«>Если</span> Выборка<span class=»operator«>.</span>ЭтоГруппа <span class=»keyword«>Тогда</span>
<span class=»keyword«>Продолжить</span><span class=»operator«>;</span>
<span class=»keyword«>КонецЕсли</span><span class=»operator«>;</span>
<span class=»keyword«>Возврат</span><span class=»operator«>;</span>
<span class=»keyword«>КонецЦикла</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span></pre>
<p class=»MsoNormalCxSpFirst«>В данном фрагменте строки модуля,
расположенные внутри структурных операторов <span class=»Term«>Если … Тогда … КонецЕсли</span>
и <span class=»Term«>Пока … Цикл … КонецЦикла</span>,
смещены вправо, чтобы подчеркнуть их «вложенность». Текст модуля, отформатированный
с использованием синтаксического отступа, удобнее в восприятии и проще в
отладке.</p>
<p class=»MsoNormalCxSpMiddle«>Текстовый редактор системы «1С:Предприятие»
предоставляет функции автоматического форматирования управляющих конструкций
встроенного языка. Для настройки автоматического форматирования в режиме установки
параметров системы (команда <span class=»Interface«>Сервис – Параметры</span> главного меню конфигуратора, закладка
<span class=»Interface«>Модули</span>) можно выбрать один из двух видов отступа.</p>
<p class=»MsoNormalCxSpMiddle«>Синтаксический отступ выполняет
автоматическое форматирование текста модуля, смещая вправо текст, расположенный
внутри управляющих конструкций типа <span class=»Term«>Если … Тогда … КонецЕсли</span>
и <span class=»Term«>Пока … Цикл … КонецЦикла</span>
и подобных. Смещение выполняется за счет добавления в начало строк необходимого
количества знаков табуляции.</p>
<p class=»MsoNormalCxSpMiddle«>«Обыкновенный» отступ автоматически выравнивает
текст строки по левой границе предыдущей строки.</p>
<p class=»MsoNormalCxSpMiddle«>Если автоотступ отключен, никаких
дополнительных символов в текст добавляться не будет.</p>
<p class=»MsoNormalCxSpMiddle«>Кроме автоматического форматирования текста
модуля в процессе ввода можно также отформатировать уже введенный текст. Для
этого необходимо выделить блок текста, который требуется отформатировать, и
выбрать пункт <span class=»Interface«>Текст – Блок – Форматировать</span>. При этом текстовый
редактор проанализирует текст модуля и выполнит его форматирование, при котором
содержимое каждой синтаксической конструкции будет сдвинуто вправо на величину
табуляции независимо от первоначального расположения строк (лидирующих
пробелов). В пустые строки устанавливаются знаки табуляции в соответствии с
синтаксической конструкцией.</p>
<p class=»MsoNormalCxSpMiddle«>Блок текста также можно целиком сдвигать
вправо или влево с шагом табуляции. Для этого необходимо выделить блок текста и
выбрать команду <span class=»Interface«>Текст – Блок – Сдвинуть вправо</span> (<span class=»Interface«>Текст – Блок – Сдвинуть влево</span>).</p>
<p class=»MsoNormalCxSpLast«>Текстовый редактор системы «1С:Предприятие»
осуществляет автоматическое удаление пробелов на концах строк. Это выполняется
при записи модуля.</p>
<a id=»TI000000939» class=»bookmark» name=»issogl4_27.2.1.4.2_вставка_удаление_признака_комментария«><h5>27.2.1.4.2. Вставка/удаление признака комментария</h5></a>
<p class=»MsoNormalCxSpFirst«>При отладке модулей зачастую бывает
необходимо на время «отключить» некоторые строки модуля, чтобы они не исполнялись
при работе системы. Обычно это выполняется путем превращения таких строк в
комментарии – добавлением перед ними признака комментария «<span class=»Interface«>//</span>». Позднее, чтобы опять «включить» закомментированные
строки в работу, признак комментария удаляется.</p>
<p class=»MsoNormalCxSpMiddle«>Для выключения (и последующего включения)
больших фрагментов модуля удобно использовать режим автоматической установки
признаков комментария у всех строк выделенного блока или текущей строки (ее
выделять не обязательно).</p>
<p class=»MsoNormalCxSpMiddle«>Для этого следует выделить блок текста или
установить указатель на нужную строку и выбрать пункт <span class=»Interface«>Текст – Блок – Добавить комментарий</span> (<span class=»Interface«>Текст – Блок – Удалить комментарий</span>).</p>
<p class=»MsoNormalCxSpLast«>При удалении комментария, если перед строкой
установлено несколько признаков комментария, удаляется только один.</p>
<a id=»TI000000940» class=»bookmark» name=»issogl4_27.2.1.4.3_вставка_удаление_переноса_строки«><h5>27.2.1.4.3. Вставка/удаление переноса строки</h5></a>
<p class=»MsoNormalCxSpFirst«>При написании значения строковых констант
для переноса строки используется символ «<span class=»Interface«>|</span>».</p>
<p class=»MsoNormalCxSpMiddle«>Текстовый редактор позволяет легко добавлять
или удалять этот символ в предварительно выделенные строки.</p>
<p class=»MsoNormalCxSpMiddle«>Для вставки/удаления символа переноса у всех
строк выделенного блока или текущей строки (ее выделять не обязательно) нужно
указать область и выбрать пункт <span class=»Interface«>Текст – Блок – Добавить перенос строки</span> для
вставки и <span class=»Interface«>Текст – Блок – Удалить перенос строки</span> для
удаления.</p>
<p class=»MsoNormalCxSpLast«>Символ переноса вставляется в первую
значимую (не пробел и не знак табуляции) позицию каждой строки.</p>
<a name=»_ref373336579«></a><a id=»TI000000941» class=»bookmark» name=»issogl3_27.2.1.5_переход_по_процедурам_и_функциям_модуля«><h4>27.2.1.5. Переход по процедурам и функциям модуля</h4></a>
<p class=»MsoNormal«>При значительном количестве имеющихся в
модуле описаний процедур и функций удобно использовать режим поиска процедур,
который предоставляет редактор текстов системы «1С:Предприятие».</p>
<p class=»Regularbeforepicture«>Если воспользоваться командой <span class=»Interface«>Текст – Процедуры и функции</span>, то на экран будет
выдано окно, содержащее список всех процедур и функций редактируемого модуля.</p>
<p class=»Picture«><IMG src=»_img/img00499.gif?_=1496848987» WIDTH=»391» ALT HEIGHT=»291«></p>
<p class=»MsoCaption«>Рис. 491. Список процедур и
функций</p>
<p class=»MsoNormalCxSpFirst«>Имена процедур и функций в списке выдаются в
порядке их расположения в модуле. Если установлен флажок <span class=»Interface«>Сортировка</span>, список будет отсортирован по алфавиту.</p>
<p class=»MsoNormalCxSpMiddle«>Имена процедур и функций, уже расположенных
в форме, имеют пиктограмму слева от наименования.</p>
<p class=»MsoNormalCxSpMiddle«>Для перехода к нужной процедуре или функции
необходимо выделить ее имя в списке и нажать кнопку <span class=»Interface«>Перейти</span>.</p>
<p class=»MsoNormalCxSpLast«>В списке процедур и функций в угловых
скобках показываются наименования событий, процедура-обработчик которых еще не
создана. Созданные процедуры и функции имеют перед наименованием пиктограмму (<span class=»Interface«>P()</span> и <span class=»Interface«>F(х)</span> соответственно). Состав событий, которые могут быть
обработаны, определяются типом объекта и видом формы, а также составом
элементов управления, расположенных в форме. При выборе такой строки в модуль
добавляется текст предопределенной процедуры, а в соответствующее событие категории
<span class=»Interface«>События</span> – ссылка на эту процедуру.</p>
<p class=»Note«><span class=»Note«>ВНИМАНИЕ!</span> Создание
процедур-обработчиков событий, определенных системой для данного модуля, необходимо
выполнять в палитре свойств для формы в категории свойств <span class=»Interface«>События</span>, или с помощью окна <span class=»Interface«>Процедуры и функции</span>, или из поля списка <span class=»Interface«>Процедуры и функции</span>. При простом копировании
процедур-обработчиков событий из других модулей обработчики событий для формы
не будут инициированы системой, и скопированные процедуры не будут вызываться
для обработки событий.</p>
<p class=»MsoNormal«>При перемещении указателя в строку модуля
наименование текущей процедуры или функции показывается в поле выбора процедуры
панели инструментов <span class=»Interface«>Модуль</span> (команда <span class=»Interface«>Процедуры и функции</span>). С помощью этого списка можно также
перейти к нужной процедуре или функции.</p>
<p class=»Regularbeforepicture«>Для перехода к процедуре, функции и
переменным достаточно указать мышью их наименование и нажать клавишу <span class=»Interface«>F12</span>. Переход возможен только для процедур, функций и
переменных, расположенных в данном модуле, или к экспортируемым процедурам,
функциям и переменным модуля приложения, общих модулей и модулей объектов. Для
того чтобы вернуться к точке, из которой был осуществлен переход к определению,
необходимо нажать сочетание клавиш <span class=»Interface«>Ctrl+ "-"</span> (рядом с клавишей "<span class=»Interface«>=</span>").</p>
<p class=»Picture«><IMG src=»_img/img00500.gif?_=1496848987» WIDTH=»760» ALT HEIGHT=»376«></p>
<p class=»MsoCaption«>Рис. 492. Перейти к определению</p>
<p class=»MsoNormalCxSpFirst«>Если записанное выражение состоит из частей,
определенных в разных местах конфигурации, перед переходом на экран будет
выведен список таких объектов для выбора перехода. Переход может осуществляться
к определению переменной, определению объекта метаданных, тип которого имеет
текущее выражение, или определению процедуры или функции, используемой в выражении
(например, в модуле объекта, тип которого имеет выражение).</p>
<p class=»MsoNormalCxSpLast«>Например, для выражения <span class=»Term«>Спр.НайтиПоКоду()</span>,
где <span class=»Term«>Спр</span>
определен как справочник <span class=»Term«>Валюты</span>,
при нажатии клавиши <span class=»Interface«>F12</span> будет выведен список перехода к определению
переменной <span class=»Term«>Спр</span>
и определению объекта метаданных <span class=»Interface«>Справочники – Валюты</span> в дереве объектов
конфигурации.</p>
<p class=»Regularbeforepicture«>Существует возможность выполнить поиск мест
использования переменной, процедуры или функции. Поиск будет выполняться по
всей конфигурации. Для выполнения такого поиска следует поместить курсор «внутрь»
того имени, использование которого нужно найти, и вызвать команду контекстного
меню редактора текстов <span class=»Interface«>Найти использование</span> (или нажать сочетание клавиш <span class=»Interface«>Alt+F12</span>).</p>
<p class=»Picture«><IMG src=»_img/img00501.gif?_=1496848987» WIDTH=»800» ALT HEIGHT=»290«></p>
<p class=»MsoCaption«>Рис. 493. Найти использование</p>
<p class=»MsoNormalCxSpFirst«>После выполнения поиска открывается окно с
результатами поиска. Из этого окна можно перейти в соответствующий модуль с
помощью двойного щелчка мышью по требуемой строке.</p>
<p class=»MsoNormalCxSpLast«>Первый символ в результатах поиска описывает
достоверность определения каждого найденного использования. Символ «<span class=»Interface«>i</span>» означает, что использование определено полностью и
однозначно, а символ "<span class=»Interface«>!</span>" означает, что использование переменной, процедуры
или функции определено не четко.<a name=»_ref349150912«></a></p>
<a name=»_ref371695051«></a><a id=»TI000000942» class=»bookmark» name=»issogl3_27.2.1.6_контекстная_подсказка_при_вводе_текстов_модулей«><h4>27.2.1.6. Контекстная подсказка при вводе текстов модулей</h4></a>
<p class=»MsoNormalCxSpFirst«>Текстовый
редактор системы «1С:Предприятие» предоставляет средство контекстного ввода
выражений с использованием системных объектов, их свойств, методов, процедур и
функций, наименований объектов, определенных в конфигурации, а также переменных,
процедур и функций, определенных в общих модулях, модулях прикладных объектов и
модулях форм. В список включаются предопределенные элементы справочников, планов
счетов, планов видов характеристик и планов видов расчетов.</p>
<p class=»MsoNormalCxSpLast«>В
список контекстной подсказки могут быть включены шаблоны текстов и ключевые
слова.</p>
<p class=»Note«><span class=»Note«>Примечание.</span> Контекстная подсказка текста не поддерживается
системой для текстовых документов с установленным свойством <span class=»Interface«>Встроенный язык</span>.</p>
<p class=»MsoNormalCxSpFirst«>Ввод
осуществляется из списка, который выводится в виде контекстного меню в месте
текущего расположения курсора (с учетом близости границ экрана).</p>
<p class=»MsoNormalCxSpMiddle«>Список
вызывается нажатием комбинации клавиш <span class=»Interface«>Ctrl + <клавиша
Пробел></span> на любой стадии набора выражения или автоматически после
ввода символа «<span class=»Interface«>.</span>» после выражения,
представляющего собой объект, имеющий свойства и/или методы (при разрешенном вызове
контекстной подсказки – см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref217356805«>здесь</a>).</p>
<p class=»MsoNormalCxSpMiddle«>Состав
списка зависит от контекста выполнения программного модуля (см. раздел «Общее
описание языка» справки по встроенному языку) и предварительно введенного текста.</p>
<p class=»MsoNormalCxSpMiddle«>На
начальном этапе, когда текст еще не введен или введены только начальные символы
выражения, состав списка определяется контекстом выполнения.</p>
<p class=»MsoNormalCxSpMiddle«>Список
представлен в виде строк текста, отсортированных по алфавиту.</p>
<p class=»MsoNormalCxSpMiddle«>Если
при открытии списка был введен фрагмент текста, то список позиционируется на
первой строке, наименование которой максимально включает набранный или
выделенный текст (от начала наименования). Если набранный текст не содержится в
строках списка, то список позиционируется на строке, в которой максимально
представлен набранный текст.</p>
<p class=»MsoNormalCxSpMiddle«>При
открытом списке можно продолжить набор текста. В этом случае список будет
последовательно позиционироваться на строках, совпадающих с набираемым текстом.</p>
<p class=»MsoNormalCxSpLast«>Список
можно просмотреть стандартным способом. При нажатии клавиши <span class=»Interface«>Enter</span>
содержимое выбранной строки переносится в модуль, заменяя выделенный или набранный
текст.</p>
<p class=»Note«><span class=»Note«>Примечание.</span> При переносе текста в модуль не вставляются
параметры методов и используется контекст клиентского приложения.</p>
<p class=»Regularbeforetable«>В
левой части строк имеются пиктограммы, показывающие вид объекта и тип места его
расположения. </p>
<table class=»MsoNormalTable» border=»0» cellspacing=»0» cellpadding=»0«>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpFirst«><b>Пиктограмма</b></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><b>Объект</b></p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpLast«>черта (черная)</p>
</td>
<td valign=»top«>
<p class=»MsoListBulletCxSpFirst«>●
Свойства глобального контекста,</p>
<p class=»MsoListBulletCxSpMiddle«>●
Системные наборы значений,</p>
<p class=»MsoListBulletCxSpLast«>●
Перечисления</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>черта (зеленая)</p>
<p class=»MsoNormalCxSpLast«> </p>
</td>
<td valign=»top«>
<p class=»MsoListBulletCxSpFirst«>●
Свойства объектов универсальных коллекций
значений,</p>
<p class=»MsoListBulletCxSpMiddle«>●
Свойства интерфейсных объектов,</p>
<p class=»MsoListBulletCxSpMiddle«>●
Реквизиты прикладного объекта,</p>
<p class=»MsoListBulletCxSpLast«>●
Предопределенные элементы</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>черта (синяя)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Экспортируемые переменные модулей</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>черта (красная)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Локальные переменные модуля</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Р() (черная)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Процедуры глобального контекста</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Р() (зеленая)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Процедуры интерфейсных и прикладных
объектов</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Р() (синяя)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Экспортируемые процедуры других модулей</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Р() (красная)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Локальные процедуры модуля</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>F() (черная)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Функции глобального контекста</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>F() (зеленая)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Функции интерфейсных объектов и прикладных
объектов</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>F() (синяя)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Экспортируемые функции других модулей</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>F() (красная)</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Локальные функции модуля</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Цветные<br>
строки</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Ключевые слова (<span class=»Term«>Если</span>, <span class=»Term«>Цикл</span>, <span class=»Term«>Попытка</span> и др.)</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Картинка<br>
шаблонов</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Шаблон текста</p>
</td>
</tr>
</table>
<p class=»MsoNormalCxSpMiddle«>Шаблон
текста включается в список только в том случае, если в нем определена строка
автозамены.</p>
<p class=»MsoNormalCxSpMiddle«>Если
в результате набора или после выбора из списка текст будет представлять
выражение, имеющее свойства или методы, то после ввода символа «<span class=»Interface«>.</span>» на экран
автоматически будет выведен список, содержащий возможный набор свойств и
методов, предоставляемых данным выражением.</p>
<p class=»MsoNormalCxSpMiddle«>Например,
при вводе текста «<span class=»Interface«>Справочники.</span>»
выводится список, содержащий наименования всех справочников, описанных в данной
конфигурации. После выбора конкретного справочника и ввода символа «<span class=»Interface«>.</span>» на экран снова
будет выведен список, но, в отличие от предыдущего, в нем будут содержаться
наименования процедур и функций работы со справочником, а также предопределенные
элементы справочника. При выборе метода, возвращающего значение некоторого
типа, также имеющего свойства и методы, контекстный ввод может быть продолжен
(нужно в конце наименования ввести открывающую и закрывающую скобки). Список
контекстной подсказки содержит только возможный набор, определяемый типом
введенного выражения.</p>
<p class=»MsoNormalCxSpLast«>Для
переменных модулей также можно использовать механизм контекстной подсказки. При использовании объявления переменных следует помнить о
следующей особенности: для того, чтобы явно объявленные переменные попадали в
контекстную подсказку, каждая переменная доллжна быть оформлена «своим»
оператором <span class=»Term«>Перем</span>
(см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref395796162«>здесь</a>). В противном случае контекстная подсказка будет
отображать только первую переменную из каждого оператора <span class=»Term«>Перем</span>.
В следующем примере будут отображаться все объявленные переменные:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_res«>
Перем ИмяМакета;
Перем СкрыватьСкидку;
Перем СальдоВзаиморасчетов;
</pre>
<p class=»MsoNormal«>В следующем примере контекстная подсказка
будет отображать только одну переменную: <span class=»Term«>ИмяМакета</span>:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_res«>Перем ИмяМакета, СкрыватьСкидку, СальдоВзаиморасчетов;</pre>
<p class=»MsoNormalCxSpFirst«>Контекстная
подсказка может использоваться при вводе оператора <span class=»Term«>Новый</span>, а также для переменных, созданных с помощью
оператора <span class=»Term«>Новый</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Контекстная
подсказка может использоваться при вводе различных ключевых слов (например, <span class=»Term«>Если</span>, <span class=»Term«>Для</span>, <span class=»Term«>Цикл</span> и др.). Ключевые слова входят в список,
вызываемый стандартным образом нажатием комбинации клавиш <span class=»Interface«>Ctrl + <клавиша
Пробел></span> на любой стадии набора слова.</p>
<p class=»MsoNormalCxSpMiddle«>Показ
в списке ключевых слов можно настроить (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref217356805«>здесь</a>).</p>
<p class=»MsoNormalCxSpLast«>Если
для какой-либо переменной или метода список состоит только из одной строчки, то
нажатие комбинации клавиш <span class=»Interface«>Ctrl + <клавиша
Пробел></span> приводит к непосредственной вставке этой строки.</p>
<p class=»Regularbeforepicture«>Контекстная
подсказка также позволяет отображать перечень параметров какого-либо метода и
его тип. Параметры отображаются как для объектов глобального контекста и
объектов встроенного языка, так и для методов прикладного решения, описание
которых соответствует определенным требованиям. Для
операторов встроенного языка контекстная подсказка по параметрам не
отображается. Отображение параметров начинается после ввода символов "<span class=»Interface«>(</span>" или
"<span class=»Interface«>,</span>" (можно
настроить, подробнее см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref217356805«>здесь</a>) или после нажатия комбинации клавиш <span class=»Interface«>Ctrl + Shift + <клавиша
Пробел></span>, если она нажата после символа "<span class=»Interface«>(</span>" вызова
процедуры или функции.</p>
<p class=»Picture«><IMG src=»_img/img00502.gif?_=1496848987» WIDTH=»735» ALT HEIGHT=»222«></p>
<p class=»MsoCaption«>Рис.
494. Контекстная подсказка параметров</p>
<p class=»Regularbeforepicture«>Если
у метода есть несколько вариантов синтаксиса, то будет отображен первый по
порядку вариант. Однако перед описанием синтаксиса будут присутствовать стрелки
вверх и вниз, с помощью которых можно переключаться между различными вариантами.
Переключаться можно также с помощью клавиш <span class=»Interface«>Ctrl + <Стрелка
вверх></span> и <span class=»Interface«>Ctrl + <Стрелка
вниз></span>.</p>
<p class=»Picture«><IMG src=»_img/img00503.gif?_=1496848987» WIDTH=»503» ALT HEIGHT=»168«></p>
<p class=»MsoCaption«>Рис.
495. Несколько вариантов синтаксиса в контекстной подсказке
параметров</p>
<p class=»MsoNormalCxSpFirst«>Под
описанием параметра отображается тип значения, которое можно передавать в этот
параметр. Если значение может быть нескольких типов, эти типы будут перечислены
через запятую. Имя типа является гиперссылкой, нажатие на которую приведет к
открытию синтакс-помощника (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref223167849«>здесь</a>) с информацией о типе. Контекстная подсказка
параметров закрывается после ввода символа "<span class=»Interface«>)</span>" или
нажатия клавиши <span class=»Interface«>Esc</span> при
открытом окне контекстной подсказки параметров.</p>
<p class=»MsoNormalCxSpLast«>Для
того чтобы контекстная подсказка показывала описание параметров и их типы для
методов прикладного решения, перед началом метода должен располагаться
комментарий, выполненный по определенным правилам. В общем случае, описание процедуры
или функции состоит из следующих секций:</p>
<p class=»MsoListBulletCxSpFirst«>●
секция <span class=»Interface«>Описание</span> –
содержит краткое описание назначения и/или принципов работы процедуры или функции,
может быть единственной секцией для функций без параметров;</p>
<p class=»MsoListBulletCxSpMiddle«>●
секция <span class=»Interface«>Параметры</span> –
описывает параметры процедуры или функции. Если параметров нет – секция
пропускается;</p>
<p class=»MsoListBulletCxSpMiddle«>●
секция <span class=»Interface«>Возвращаемое значение</span> –
описывает тип и содержание возвращаемого значения функции. Для процедур эта
секция отсутствует;</p>
<p class=»MsoListBulletCxSpLast«>●
секция <span class=»Interface«>Пример</span> – содержит
пример использования процедуры или функции.</p>
<p class=»MsoNormal«>Общий
формат комментария следующий:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_res«>
<Комментарий> =
[<СекцияЗаголовка>]
[<СекцияПараметров>]
[<СекцияВозвращаемогоЗначения>]
[<СекцияПримера>]
<НоваяСтрока> = Начало строки модуля
<Имя> = Идентификатор встроенного языка
<Тип> = <Имя> | <Имя>"."<Имя>
<СписокТипов> = <Тип>{","<Тип>}
<СтрокаТекста> = Произвольный текст без перевода на другую строку
<Текст> = <СтрокаТекста> {<НоваяСтрока> <СтрокаТекста>}
<СекцияЗаголовка> = [<Текст>]
<СекцияПараметров> = <НоваяСтрока> ("Параметры:" | "Parameters:") {<ОписаниеПараметра> {<ОписаниеТипа>} }
<ОписаниеПараметра> = <НоваяСтрока> <Имя> ["-" <СписокТипов>] "-" [<Текст>]
<ОписаниеТипа> = <НоваяСтрока> "-" <СписокТипов>] "-" [<Текст>]
<СекцияВозвращаемогоЗначения> = <НоваяСтрока> ("Возвращаемое значение:" | "Returns:") <ОписаниеЗначения>
<ОписаниеЗначения> = <НоваяСтрока> [<СписокТипов> "-"] [<Текст>]
<СекцияПримера> = <НоваяСтрока> ("Пример:" | "Sample:") <НоваяСтрока> <Текст>
</pre>
<p class=»Regularbeforepicture«>В результате, комментарий перед началом
процедуры или функции, оформленный в соответствии с описанным форматом, приведет
к тому, что контекстная подсказка параметров методов будет адекватно показывать
подсказку для метода прикладного решения.</p>
<p class=»Picture«><IMG src=»_img/img00504.gif?_=1496848987» WIDTH=»800» ALT HEIGHT=»235«></p>
<p class=»MsoCaption«>Рис. 496. Контекстная подсказка
параметров методов прикладного решения</p>
<p class=»MsoNormal«>Таким
образом, механизм контекстной подсказки текстового редактора системы «1С:Предприятие»
предоставляет способ быстрого и правильного набора текстов модулей.</p>
<a name=»_ref371683520«></a><a id=»TI000001308» class=»bookmark» name=»issogl3_27.2.1.7_средства_рефакторинга«><h4>27.2.1.7. Средства рефакторинга</h4></a>
<a id=»TI000001832» class=»bookmark» name=»issogl4_27.2.1.7.1_общая_информация«><h5>27.2.1.7.1. Общая информация</h5></a>
<p class=»MsoNormalCxSpFirst«><span class=»Bold«>Рефакторинг</span> – процесс
переработки кода на встроенном языке с целью добиться улучшения читаемости кода
и общей внутренней структуры при полном и точном сохранении изначального смысла
и поведения. Конфигуратор предлагает несколько встроенных инструментов, которые
могут помочь при проведении рефакторинга прикладного решения. Доступ к этим
инструментам выполняется с помощью подменю <span class=»Interface«>Рефакторинг</span> контекстного меню редактора текста
встроенного языка или с помощью одноименного подменю меню <span class=»Interface«>Текст</span> главного меню конфигуратора.</p>
<p class=»MsoNormalCxSpLast«>Далее средства рефакторинга будут
рассмотрены более подробно. В этом рассмотрении будут использоваться следующие
термины:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Bold«>Блок</span> – множество
строк между ключевыми словами <span class=»Term«>Тогда</span>…<span class=»Term«>КонецЕсли</span>,
<span class=»Term«>Тогда</span>…<span class=»Term«>Иначе</span>,
<span class=»Term«>Тогда</span>…<span class=»Term«>ИначеЕсли</span>,
<span class=»Term«>Цикл</span>…<span class=»Term«>КонецЦикла</span>,
<span class=»Term«>Попытка</span>…<span class=»Term«>Исключение</span>,
<span class=»Term«>Исключение</span>…<span class=»Term«>КонецПопытки</span>,
<span class=»Term«>Процедура</span>…<span class=»Term«>КонецПроцедуры</span>,
<span class=»Term«>Функция</span>…<span class=»Term«>КонецФункции</span>;</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Bold«>Терминальный вызов</span> –
вызов, являющийся последней выполняемой инструкцией метода встроенного языка:</p>
<p class=»MsoListBullet2CxSpFirst«>●
Располагается перед ключевым словом <span class=»Term«>КонецПроцедуры</span>,
<span class=»Term«>КонецФункции</span>
или <span class=»Term«>Возврат</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
Является последним в рекурсивно-последнем блоке
инструкций метода.</p>
<p class=»MsoListBullet«>●
<span class=»Bold«>Асинхронный метод</span> –
метод, который может использоваться в цепочках вызовов с использованием
обработчиков оповещений.</p>
<a name=»_ref373334311«></a><a id=»TI000001309» class=»bookmark» name=»issogl4_27.2.1.7.2_выделить_фрагмент«><h5>27.2.1.7.2. Выделить фрагмент</h5></a>
<p class=»MsoNormalCxSpFirst«>Данная команда преобразует
выделенный, синтаксически целостный, фрагмент кода в отдельную процедуру или
функцию. Тип выделяемого фрагмента зависит от итоговых областей видимости
переменных родительского метода и структуры фрагмента.</p>
<p class=»MsoNormalCxSpMiddle«>В том случае, когда выделенный фрагмент
может выступать источником в операторе присваивания (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref371692195«>здесь</a>), фрагмент будет выделен как функция. Так же в
функцию выделяется фрагмент, в котором инициализируется единственная
переменная, которая используется в оставшейся части родительского метода. В
остальных случаях фрагмент выделяется в процедуру.</p>
<p class=»MsoNormalCxSpMiddle«>В случае использования переменных выделяемого
фрагмента в оставшейся части родительского метода, эти переменные передаются
выделяемому методу в виде параметров, с их предварительной инициализацией или
объявлением (при наличии такой необходимости).</p>
<p class=»MsoNormalCxSpMiddle«>Если
родительский метод (<span class=»Bold«>из</span> которого выделяется фрагмент)
предваряется какой-либо директивой компиляции (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref371693648«>здесь</a>), то выделяемый метод также будет предваряться точно
такой же директивой компиляции.</p>
<p class=»MsoNormalCxSpLast«>Код
нового метода размешается сразу после кода родительского метода (из которого
выделяется фрагмент) и соответствующим образом форматируется
(см. <a href=»#_ref401225227«>здесь</a>).</p>
<a name=»_ref420333675«></a><a id=»TI000001310» class=»bookmark» name=»issogl4_27.2.1.7.3_переименовать«><h5>27.2.1.7.3. Переименовать</h5></a>
<p class=»MsoNormalCxSpFirst«>Данная
команда предназначена для изменения имени переменной или метода. Если
обращение к экспортной переименуемой переменной или методу нельзя определить
однозначно, то переименование не выполняется и выводится список использования переменной
или метода.</p>
<p class=»MsoNormalCxSpMiddle«>Для экспортных переменных и методов модуля
формы производится анализ уникальности идентификатора в рамках всей конфигурации
и отсутствия синонимов среди методов и свойств объектов платформы. В случае
выполнения этого условия пользователю предлагается возможность глобальной
замены идентификатора во всех местах его возможного использования.</p>
<p class=»MsoNormalCxSpMiddle«>Переименование параметра метода не приводит
к изменению имени этого параметра в комментариях, включая и описание метода
(созданное любым образом).</p>
<p class=»MsoNormalCxSpLast«>В случае переименования методов выполняется дополнительная
проверка передачи их имени в качестве строкового литерала:</p>
<p class=»MsoListBullet«>●
в конструкторы объектов:</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Term«>Действие</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Term«>ОписаниеОповещения</span>.</p>
<p class=»MsoListBullet«>●
методы глобального контекста:</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Term«>УстановитьДействие()</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Term«>ПодключитьОбработчикИзмененияДанных()</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Term«>ОтключитьОбработчикОжидания()</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Term«>ПодключитьОбработчикОжидания()</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Term«>ПодключитьОбработчикОповещения()</span>.</p>
<p class=»MsoNormal«>Переименование метода-обработчика в модуле
формы приводит к автоматически замене ссылки на переименуемый обработчик в
соответствующих свойствах элементов формы и командах. Когда выполняется
переименование метода-обработчика из палитры свойств элемента формы или команды –
автоматически переименовываются все вызовы данного обработчика из программного
кода (если таковые встречаются).</p>
<a id=»TI000001311» class=»bookmark» name=»issogl4_27.2.1.7.4_создать_описание_метода«><h5>27.2.1.7.4. Создать описание метода</h5></a>
<p class=»MsoNormal«>Команда создает перед объявлением метода
комментарий, который будет использоваться для контекстной подсказки при вводе
текста модулей (см. <a href=»#_ref371695051«>здесь</a>).</p>
<a id=»TI000001339» class=»bookmark» name=»issogl4_27.2.1.7.5_создать_обработку_оповещения«><h5>27.2.1.7.5. Создать обработку оповещения</h5></a>
<p class=»MsoNormal«>Данная команда предназначена для упрощения
применения асинхронных методов встроенного языка (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref405477267«>здесь</a>). Команда становится доступной после того, как
введено имя метода и открывающая круглая скобка (курсор должен располагаться на
имени метода). Дальнейшее поведение команды эквивалентно поведению команды
рефакторинга <span class=»Interface«>Преобразовать вызов</span>, за исключением переименования
метода, к которому применена команда рефакторинга. Если метод уже содержит
передачу объекта типа <span class=»Term«>ОписаниеОповещения</span>,
то перед продолжением работы пользователю предлагается подтвердить выполнение
команды.</p>
<a name=»_ref400540074«></a><a id=»TI000001320» class=»bookmark» name=»issogl4_27.2.1.7.6_работа_с_нерекомендуемыми_синхронными_вызовами«><h5>27.2.1.7.6. Работа с нерекомендуемыми синхронными вызовами</h5></a>
<a id=»TI000001833» class=»bookmark» name=»issogl5_общая_информация«><h6>Общая информация</h6></a>
<p class=»MsoNormal«>Данный раздел описывает команды
рефакторинга, которые помогают при переработке кода прикладного решения для
использования асинхронных вызовов взамен синхронных вызовов (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref400551070«>здесь</a>).</p>
<a name=»_ref373246646«></a><a id=»TI000001312» class=»bookmark» name=»issogl5_преобразовать_вызов«><h6>Преобразовать вызов</h6></a>
<p class=»MsoNormalCxSpFirst«>Команда
заменяет тривиальные и простые случаи использования синхронных методов на
их асинхронные аналоги (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref400551070«>здесь</a>).</p>
<p class=»MsoNormalCxSpLast«><span class=»Bold«>Тривиальным</span>
считается случай, преобразование которого затрагивает только один метод и не
требует операций, отличных от выделения фрагмента. При наличии следующих
признаков, использование модального вызова считается тривиальным:</p>
<p class=»MsoListNumberCxSpFirst«>1.
Вызов расположен в процедуре, не вызываемой из
других процедур и функций, за исключением рекурсивно-терминальных вызовов. При
анализе на терминальность допустима неопределенность принадлежности вызывающих
методов. Если данный признак не наблюдается, то случай может быть простым или
требовать преобразование в асинхронную процедуру (см. <a href=»#_ref373333924«>здесь</a>).</p>
<p class=»MsoListNumberCxSpMiddle«>2.
Вызов расположен вне блоков цикла, за
исключением случая инструкций <span class=»Term«>Прервать</span>
или <span class=»Term«>Возврат</span>,
следующих на том же уровне вложенности.</p>
<p class=»MsoListNumberCxSpMiddle«>3.
Вызов расположен вне блоков перехвата исключения.</p>
<p class=»MsoListNumberCxSpMiddle«>4.
Уровень вложенности модального вызова не превышает
2, за исключением рекурсивно-последних инструкций блока. Уровень вложенности
модального вызова можно уменьшить с помощью команды выделения фрагмента (см. <a href=»#_ref373334311«>здесь</a>). Если выделяемый фрагмент содержит оператор <span class=»Term«>Возврат</span>,
то для выделения такого фрагмента следует использовать команду выделения
фрагмента в асинхронную процедуру (см. <a href=»#_ref373334775«>здесь</a>).</p>
<p class=»MsoListNumberCxSpLast«>5.
Параметры процедуры не изменяются после вызова
модального диалога – ни в самой процедуре, ни в одном из вложенных вызовов.</p>
<p class=»MsoNormalCxSpFirst«><span class=»Bold«>Простым</span> считается
случай, не удовлетворяющий только первому условию тривиальности и, требующий
дополнительно только преобразование процедуры или функции, содержащей синхронный
вызов в асинхронный вид. При обнаружении такого синхронного вызова, и если
такое преобразование возможно, система автоматически предлагает выполнить
преобразование в асинхронную процедуру (см. <a href=»#_ref373334775«>здесь</a>).</p>
<p class=»MsoNormalCxSpLast«>Результатом преобразования являются:</p>
<p class=»MsoListBulletCxSpFirst«>●
Исходная процедура с заменой синхронного вызова
на асинхронный вызов;</p>
<p class=»MsoListBulletCxSpMiddle«>●
Процедура обработки оповещения. Если синхронный
вызов являлся последней инструкцией родительского блока – решение о
создании пустой процедуры принимает пользователь</p>
<p class=»MsoListBulletCxSpLast«>●
Фрагмент-окончание – общий для исходной
процедуры и процедуры обработки оповещения код, в случае, когда вызов синхронного
метода не входит в единственную последовательность выполнения кода.</p>
<p class=»MsoNormal«>Если случай не соответствует одному или
нескольким требованиям, пользователю предоставляется возможность выполнить частичное
преобразование: максимальный синтаксически-корректный фрагмент кода будет
выделен в процедуру обработки оповещения, и после вызова асинхронного метода
будет вызвано исключение. В код модуля будет так же добавлен комментарий с описанием
причин несоответствия.</p>
<a name=»_ref373333924«></a><a id=»TI000001313» class=»bookmark» name=»issogl5_преобразовать_в_асинхронную_процедуру«><h6>Преобразовать в асинхронную процедуру</h6></a>
<p class=»MsoNormalCxSpFirst«>Команда используется для преобразования метода к виду, который допускает
использование метода в асинхронных вызовах. Преобразование затрагивает все уже
существующие последовательности вызовов с участием выбранного метода,
однако методы, которые вызываются из преобразуемого метода, не подвергаются
преобразованию. Данную команду следует применять в тех случаях, когда
необходимо преобразовать модальный вызовы (один или несколько) внутри функции
или процедуры, вызываемой из других методов. После выполнения данной команды
будет необходимо преобразовать модальный вызов в его блокирующий аналог с
помощью команды преобразования модального вызова (см. <a href=»#_ref373246646«>здесь</a>).</p>
<p class=»MsoNormalCxSpMiddle«>Преобразование
методов, изменяющих свои ссылочные параметры, не
поддерживается в целях предотвращения труднодиагностируемых логических ошибок.
Также не поддерживается преобразование
последовательностей вызовов, содержащих непосредственный вызов процедур
обработки событий форм и объектов метаданных в связи со строго фиксированным
списком их формальных параметров. Если преобразование затрагивает несколько
модулей – от пользователя требуется дополнительное подтверждение.</p>
<p class=»MsoNormalCxSpLast«>Рассмотрим пример преобразования вызова в
асинхронный вид.</p>
<p class=»Note«><span class=»Note«>Примечание.</span> Данный пример служит
исключительно для демонстрации процесса преобразования и не является примером
выполнения каких-либо действий.</p>
<p class=»MsoNormal«>Допустим, в модуле формы имеется следующая
цепочка вызовов:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Перем</span> ПроцедураВыполнена<span class=»operator«>;</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Перем</span> ФункцияВыполнена<span class=»operator«>;</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> КомандаФормы<span class=»operator«>(</span>Команда<span class=»operator«>)</span>
ПроцедураВыполнена <span class=»operator«>=</span> <span class=»keyword«>Ложь</span><span class=»operator«>;</span>
ФункцияВыполнена <span class=»operator«>=</span> <span class=»keyword«>Ложь</span><span class=»operator«>;</span>
ВыполнитьПроцедуру<span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ВыполнитьПроцедуру<span class=»operator«>(</span><span class=»operator«>)</span>
Результат <span class=»operator«>=</span> ВыполнитьФункцию<span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
ПроцедураВыполнена <span class=»operator«>=</span> <span class=»keyword«>Истина</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Функция</span> ВыполнитьФункцию<span class=»operator«>(</span><span class=»operator«>)</span>
ПоказатьДиалог<span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
ФункцияВыполнена <span class=»operator«>=</span> <span class=»keyword«>Истина</span><span class=»operator«>;</span>
<span class=»keyword«>Возврат</span> <span class=»keyword«>Истина</span><span class=»operator«>;</span>
<span class=»keyword«>КонецФункции</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ПоказатьДиалог<span class=»operator«>(</span><span class=»operator«>)</span>
Предупреждение<span class=»operator«>(</span><span class=»string«>"Предупреждение!"</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span> </pre>
<p class=»MsoNormalCxSpFirst«>Выполнять преобразование следует для метода <span class=»Term«>ПоказатьДиалог()</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Цепочка вызовов начинается при вызове из
обработчика команды формы (процедура <span class=»Term«>КомандаФормы()</span>)
процедуры <span class=»Term«>Процедура1()</span>.
Действия, выполняемые в методах <span class=»Term«>ВыполнитьПроцедуру()</span>
и <span class=»Term«>ВыполнитьФункцию()</span>
в данном примере являются демонстрацией наличия некоторого программного кода
после вызова другой процедуры.</p>
<p class=»MsoNormalCxSpMiddle«>Цепочка вызовов выглядит следующим образом: <span class=»Term«>КомандаФормы()</span>
-> <span class=»Term«>ВыполнитьПроцедуру()</span>
-> <span class=»Term«>ВыполнитьФункцию()</span>
-> <span class=»Term«>ПоказатьДиалог()</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Т.к. в самом «низу» стека вызовов вызывается
модальный диалог, то всю цепочку вызовов методов необходимо преобразовать к
асинхронному виду. Метод <span class=»Term«>Предупреждение()</span>
может быть заменен на асинхронный аналог, для других процедур этот аналог будет
создаваться системой.</p>
<p class=»MsoNormalCxSpLast«>Выполним преобразование метода <span class=»Term«>ПоказатьДиалог()</span>
и отказаться от предложения создания пустых обработчиков оповещения. В
результате получится следующий программный код:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Перем</span> ПроцедураВыполнена<span class=»operator«>;</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Перем</span> ФункцияВыполнена<span class=»operator«>;</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> КомандаФормы<span class=»operator«>(</span>Команда<span class=»operator«>)</span>
ПроцедураВыполнена <span class=»operator«>=</span> <span class=»keyword«>Ложь</span><span class=»operator«>;</span>
ФункцияВыполнена <span class=»operator«>=</span> <span class=»keyword«>Ложь</span><span class=»operator«>;</span>
ВыполнитьПроцедуру<span class=»operator«>(</span><span class=»keyword«>Неопределено</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ВыполнитьПроцедуру<span class=»operator«>(</span><span class=»keyword«>Знач</span> Оповещение<span class=»operator«>)</span>
Результат <span class=»operator«>=</span> <span class=»keyword«>Неопределено</span><span class=»operator«>;</span>
ВыполнитьФункцию<span class=»operator«>(</span><span class=»keyword«>Новый</span> ОписаниеОповещения<span class=»operator«>(</span><span class=»string«>"ВыполнитьПроцедуруЗавершение"</span><span class=»operator«>,</span> ЭтотОбъект<span class=»operator«>,</span> <span class=»keyword«>Новый</span> Структура<span class=»operator«>(</span><span class=»string«>"Оповещение"</span><span class=»operator«>,</span> Оповещение<span class=»operator«>)</span><span class=»operator«>)</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ВыполнитьПроцедуруЗавершение<span class=»operator«>(</span>Результат1<span class=»operator«>,</span> ДополнительныеПараметры<span class=»operator«>)</span> <span class=»keyword«>Экспорт</span>
Оповещение <span class=»operator«>=</span> ДополнительныеПараметры<span class=»operator«>.</span>Оповещение<span class=»operator«>;</span>
Результат <span class=»operator«>=</span> Результат1<span class=»operator«>;</span>
ПроцедураВыполнена <span class=»operator«>=</span> <span class=»keyword«>Истина</span><span class=»operator«>;</span>
ВыполнитьОбработкуОповещения<span class=»operator«>(</span>Оповещение<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ВыполнитьФункцию<span class=»operator«>(</span><span class=»keyword«>Знач</span> Оповещение<span class=»operator«>)</span>
ПоказатьДиалог<span class=»operator«>(</span><span class=»keyword«>Новый</span> ОписаниеОповещения<span class=»operator«>(</span><span class=»string«>"ВыполнитьФункциюЗавершение"</span><span class=»operator«>,</span> ЭтотОбъект<span class=»operator«>,</span> <span class=»keyword«>Новый</span> Структура<span class=»operator«>(</span><span class=»string«>"Оповещение"</span><span class=»operator«>,</span> Оповещение<span class=»operator«>)</span><span class=»operator«>)</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ВыполнитьФункциюЗавершение<span class=»operator«>(</span>Результат<span class=»operator«>,</span> ДополнительныеПараметры<span class=»operator«>)</span> <span class=»keyword«>Экспорт</span>
Оповещение <span class=»operator«>=</span> ДополнительныеПараметры<span class=»operator«>.</span>Оповещение<span class=»operator«>;</span>
ФункцияВыполнена <span class=»operator«>=</span> <span class=»keyword«>Истина</span><span class=»operator«>;</span>
ВыполнитьОбработкуОповещения<span class=»operator«>(</span>Оповещение<span class=»operator«>,</span> <span class=»keyword«>Истина</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>Возврат</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ПоказатьДиалог<span class=»operator«>(</span><span class=»keyword«>Знач</span> Оповещение<span class=»operator«>)</span>
Предупреждение<span class=»operator«>(</span><span class=»string«>"Предупреждение!"</span><span class=»operator«>)</span><span class=»operator«>;</span>
ВыполнитьОбработкуОповещения<span class=»operator«>(</span>Оповещение<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span> </pre>
<p class=»MsoNormal«>Во время преобразования не был изменен вызов
модального вызова <span class=»Term«>Предупреждение()</span>
в методе <span class=»Term«>ПоказатьДиалог()</span>, т. к.
замена модального вызова не является задачей описываемой команды. Также стоит
отметить, что все преобразуемые методы теперь получают в качестве входного
параметра описание оповещения. Теперь цепочка вызовов выглядит следующим
образом: <span class=»Term«>КомандаФормы()</span>
-> <span class=»Term«>ВыполнитьПроцедуру()</span>
-> <span class=»Term«>ВыполнитьФункцию()</span>
-> <span class=»Term«>ПоказатьДиалог()</span>
-> <span class=»Term«>ВыполнитьФункциюЗавершение()</span>
-> <span class=»Term«>ВыполнитьПроцедуруЗавершение()</span>.
Вызов методов с суффиксом <span class=»Term«>Завершение</span>
выполняется с помощью передачи оповещений.</p>
<a name=»_ref373334775«></a><a id=»TI000001314» class=»bookmark» name=»issogl5_выделить_в_асинхронную_процедуру«><h6>Выделить в асинхронную процедуру</h6></a>
<p class=»MsoNormal«>Данная
команда преобразует выделенный, синтаксически целостный, фрагмент кода в
отдельную процедуру или функцию, одновременно преобразуя выделяемый метод к
асинхронному виду.</p>
<a id=»TI000001317» class=»bookmark» name=»issogl5_найти_вызовы_модуля«><h6>Найти вызовы модуля</h6></a>
<p class=»MsoNormal«>Команда выводит список использования нерекомендуемых
синхронных методов в текущем модуле.</p>
<a id=»TI000001315» class=»bookmark» name=»issogl5_преобразовать_вызовы_модуля«><h6>Преобразовать вызовы модуля</h6></a>
<p class=»MsoNormal«>Команда выполняет преобразование всех
тривиальных (см. <a href=»#_ref373246646«>здесь</a>) случаев использования нерекомендуемых синхронных
вызовов в их асинхронные версии (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 7. формы.htm?_=1496848987#_ref373246737«>здесь</a>). Преобразование выполняется в рамках текущего
модуля.</p>
<a name=»_ref448859736«></a><a id=»TI000001319» class=»bookmark» name=»issogl5__анализ_нерекомендуемых_синхронных_вызовов_конфигурации«><h6> Анализ нерекомендуемых синхронных вызовов конфигурации</h6></a>
<p class=»MsoNormalCxSpFirst«>С помощью данной команды (<span class=»Interface«>Главное меню – Конфигурация – Рефакторинг – Анализ
нерекомендуемых синхронных вызовов конфигурации</span>) во всей конфигурации
выполняется поиск нерекомендуемых синхронных вызовов и анализ возможности их преобразования.
Если в каком-то случае преобразование будет невозможно – система укажет
причину этой невозможности.</p>
<p class=»MsoNormalCxSpLast«>Во
время выполнения анализа нерекомендуемых синхронных вызовов, учитываются
следующие особенности прикладного решения:</p>
<p class=»MsoListBulletCxSpFirst«>●
Выполняется анализ всех модулей, которые могут
исполняться на стороне клиентского приложения.</p>
<p class=»MsoListBulletCxSpLast«>●
Не выполняется анализ модулей, которые не могут
исполняться на стороне клиентского приложения:</p>
<p class=»MsoListBullet2CxSpFirst«>●
модули Web-сервисов;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
модули HTTP-сервисов;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
общие модули, которые могут исполняться только
на стороне сервера;</p>
<p class=»MsoListBullet2CxSpLast«>●
общие модули, которые могут исполняться только
во внешнем соединении.</p>
<p class=»MsoListBullet«>●
Выполняется анализ процедур и функций, которые
предваряются следующими директивами компиляции (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref371693648«>здесь</a>):</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Term«>&НаКлиенте</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Term«>&НаКлиентеНаСервере</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Term«>&НаКлиентеНаСервереБезКонтекста</span>.</p>
<p class=»MsoListBullet«>●
Выполняется анализ фрагментов текста процедур и
функций, которые обрамлены инструкциями препроцессора (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref448859501«>здесь</a>):</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Term«>Клиент</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Term«>ТонкийКлиент</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Term«>ВебКлиент</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Term«>ТолстыйКлиентУправляемоеПриложение</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Term«>ТолстыйКлиентОбычноеПриложение</span>.</p>
<p class=»MsoNormalCxSpFirst«>Флажок <span class=»Interface«>Отображать методы объектов неопределенного типа</span>
указывает системе, что следует включать в результат поиска методы, которые
являются синхронными, но однозначно нельзя определить объект, у которого они
вызываются.</p>
<p class=»MsoNormalCxSpLast«>Если в диалоге настройки поиска выбран флажок
<span class=»Interface«>Производить преобразование найденных вызовов</span>, то
выполняется преобразование только тривиальных (см. <a href=»#_ref373246646«>здесь</a>) случаев использования синхронных вызовов с выводом
результатов операции.</p>
<a id=»TI000000943» class=»bookmark» name=»issogl3_27.2.1.8_синтаксический_контроль_модуля«><h4>27.2.1.8. Синтаксический контроль модуля</h4></a>
<p class=»MsoNormalCxSpFirst«>Редактируемый модуль может быть проверен на
правильность использования синтаксических конструкций встроенного языка.</p>
<p class=»MsoNormalCxSpMiddle«>Для выполнения синтаксического контроля
модуля необходимо воспользоваться пунктом <span class=»Interface«>Текст – Проверка модуля</span>.</p>
<p class=»MsoNormalCxSpLast«>Синтаксический контроль выполняется в
следующей последовательности:</p>
<p class=»MsoListBulletCxSpFirst«>●
общие модули,</p>
<p class=»MsoListBulletCxSpMiddle«>●
модуль управляемого приложения,</p>
<p class=»MsoListBulletCxSpMiddle«>●
модуль объекта,</p>
<p class=»MsoListBulletCxSpLast«>●
модуль формы.</p>
<p class=»MsoNormalCxSpFirst«>При этом контроль модулей выполняется, если
модуль еще не проходил контроля или был модифицирован.</p>
<p class=»MsoNormalCxSpMiddle«>При контроле модуля проверяются только те
модули, которые в списке расположены до данного модуля. Например, при проверке
модуля приложения проверяются только общие модули. Модуль внешнего соединения
проверяется только при его редактировании.</p>
<p class=»MsoNormalCxSpMiddle«>При наличии ошибок их список будет выдан в
окне сообщений с указанием полного адреса месторасположения и описания ошибки.
При подведении указателя мыши к строке, содержащей сообщение об ошибке, он
принимает вид увеличительного стекла. Для перехода к строке модуля, вызвавшей
ошибку, следует дважды щелкнуть мышью по этому сообщению. Если модуль, содержащий
ошибку, закрыт, он будет открыт автоматически.</p>
<p class=»MsoNormalCxSpMiddle«>Если ошибки не обнаружены, в окно сообщений
будет выдано сообщение об отсутствии ошибок в модуле.</p>
<p class=»MsoNormalCxSpMiddle«>В режиме настройки параметров конфигуратора
(пункт главного меню <span class=»Interface«>Сервис – Параметры</span>, закладка <span class=»Interface«>Модули</span>, закладка <span class=»Interface«>Проверка</span>, реквизит <span class=»Interface«>Проверять автоматически</span>) можно включить режим автоматической
проверки модуля. В этом случае, если модуль был изменен, при закрытии окна
модуля или при сохранении конфигурации в целом будет выполняться синтаксический
контроль модуля.</p>
<p class=»MsoNormalCxSpMiddle«>Режим автоматической проверки удобно
использовать, когда производится отладка какого-либо элемента конфигурации.</p>
<p class=»MsoNormalCxSpMiddle«>Для полного синтаксического контроля всех
модулей конфигурации за один проход следует выбрать пункт <span class=»Interface«>Конфигурация – Синтаксический контроль модулей</span>.</p>
<p class=»MsoNormalCxSpMiddle«>В процессе исправления ошибок в модулях
можно получить подсказку по встроенному языку, вызвав синтакс-помощник и найдя
в нем описание нужного элемента встроенного языка (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref223167849«>здесь</a>).</p>
<p class=»MsoNormalCxSpLast«>Подсказку по конкретному элементу языка
(оператору, процедуре, функции, свойству, методу) можно получить, если
поместить курсор в модуле на этот элемент языка и нажать клавиши <span class=»Interface«>Ctrl + F1</span>. В синтакс-помощнике будет выдано
описание выбранного элемента встроенного языка.</p>
<a name=»_ref216238506«></a><a id=»TI000000944» class=»bookmark» name=»issogl3_27.2.1.9_ограничение_доступа_к_модулям_конфигурации«><h4>27.2.1.9. Ограничение доступа к модулям конфигурации</h4></a>
<p class=»MsoNormalCxSpFirst«>Для некоторых модулей можно установить
пароль доступа. Основное назначение пароля – защита авторских прав разработчиков
конфигураций.</p>
<p class=»MsoNormalCxSpLast«>При установке пароля существуют следующие ограничения:</p>
<p class=»MsoListBulletCxSpFirst«>●
не защищается модуль управляемого приложения;</p>
<p class=»MsoListBulletCxSpMiddle«>●
не защищаются модули форм;</p>
<p class=»MsoListBulletCxSpMiddle«>●
не защищаются модули команд;</p>
<p class=»MsoListBulletCxSpMiddle«>●
не защищаются модули, включающие директивы
препроцессора;</p>
<p class=»MsoListBulletCxSpLast«>●
не защищаются клиентские общие модули,
работающие в управляемом режиме (тонкий клиент, веб-клиент и управляемый режим
толстого клиента).</p>
<a name=»_ref216063996«></a><a id=»TI000000945» class=»bookmark» name=»issogl4_27.2.1.9.1_установка_пароля_доступа«><h5>27.2.1.9.1. Установка пароля доступа</h5></a>
<p class=»MsoNormalCxSpFirst«>Для установки пароля нужно открыть требуемый
модуль и выбрать команду <span class=»Interface«>Текст – Установить пароль</span>. Пункт доступен, если
модуль открыт для записи.</p>
<p class=»MsoNormalCxSpLast«>Если модуль содержит директивы препроцессору,
то программа выводит предупреждение: <span class=»Interface«>Защищенный модуль не должен содержать директив препроцессора.
Продолжить?</span> Если нажать кнопку <span class=»Interface«>Нет</span>, то попытка установки пароля не производится. Если
нажать кнопку <span class=»Interface«>Да</span>, то установка пароля становится возможной, и подразумевается,
что в дальнейшем директивы будут удалены. Если директивы не удалить, то в
режиме 1С:Предприятие методы такого общего модуля будут недоступны (ошибка <span class=»Interface«>Метод объекта не обнаружен <Имя метода></span>).</p>
<p class=»Regularbeforepicture«>На экран выводится диалог ввода пароля.</p>
<p class=»Picture«><IMG src=»_img/img00505.gif?_=1496848987» WIDTH=»277» ALT HEIGHT=»110«></p>
<p class=»MsoCaption«>Рис. 497. Установка пароля на
модуль</p>
<p class=»MsoNormal«>Нужно ввести пароль и повторить его. Для
установки пароля нажать кнопку <span class=»Interface«>ОК</span>, для отказа от установки – кнопку <span class=»Interface«>Отмена</span>.</p>
<a id=»TI000000946» class=»bookmark» name=»issogl4_27.2.1.9.2_открытие_защищенного_модуля«><h5>27.2.1.9.2. Открытие защищенного модуля</h5></a>
<p class=»Regularbeforepicture«>Если на модуль установлен пароль доступа, то
при попытке открыть модуль выводится диалог ввода пароля.</p>
<p class=»Picture«><IMG src=»_img/img00506.gif?_=1496848987» WIDTH=»346» ALT HEIGHT=»139«></p>
<p class=»MsoCaption«>Рис. 498. Открытие модуля с
установленным паролем</p>
<p class=»MsoNormal«>Если пароль указан верно, то модуль
открывается. Если введен неправильный пароль, то выводится предупреждение <span class=»Interface«>Некорректный пароль</span> и модуль не открывается.</p>
<a id=»TI000000947» class=»bookmark» name=»issogl4_27.2.1.9.3_смена_пароля«><h5>27.2.1.9.3. Смена пароля</h5></a>
<p class=»MsoNormalCxSpFirst«>Для смены пароля нужно открыть модуль и выбрать
команду <span class=»Interface«>Текст – Установить пароль</span>. На экран выводится
диалог ввода пароля. Следует ввести прежний пароль. Если пароль введен
правильно, то на экран выводится диалог ввода нового пароля (см. <a href=»#_ref216063996«>здесь</a>).</p>
<p class=»MsoNormalCxSpLast«>Для снятия пароля нужно очистить поля для
ввода пароля и, не вводя значения пароля, нажать кнопку <span class=»Interface«>ОК</span>.</p>
<a name=»_ref219791978«></a><a name=»_ref216075442«></a><a id=»TI000000948» class=»bookmark» name=»issogl2_27.2.2_редактирование_текстовых_макетов«><h3>27.2.2. Редактирование текстовых макетов</h3></a>
<p class=»MsoNormalCxSpFirst«>Если в конструкторе макетов в качестве типа
макета выбран <span class=»Interface«>Текстовый документ</span>, то открывается текстовый редактор в
режиме ввода текстового макета.</p>
<p class=»MsoNormalCxSpLast«>Режим редактирования текстового макета также
доступен для текстовых документов с установленным расширением <span class=»Interface«>Текстовый макет</span>.</p>
<a id=»TI000000949» class=»bookmark» name=»issogl3_27.2.2.1_формат_текстового_макета«><h4>27.2.2.1. Формат текстового макета</h4></a>
<p class=»MsoNormal«>Весь текст макета делится на области.
Области должны следовать друг за другом и не могут пересекаться или включаться
друг в друга. В тексте макета области выделяются следующим образом:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>#Область ХХХХХ</span>
<span class=»preprocessor«>#КонецОбласти</span></pre>
<p class=»MsoNormalCxSpFirst«>Где <span class=»Term«>ХХХХХ</span> –
имя области.</p>
<p class=»MsoNormalCxSpMiddle«>Конец области указывать не обязательно.
Объявление начала области означает окончание предыдущей области.</p>
<p class=»MsoNormalCxSpLast«>Для хранения вариантов области на нескольких
языках после имени области может следовать код языка, для которого написана
область.</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>#Область Заголовок1 RU</span>
<span class=»preprocessor«>#КонецОбласти</span>
<span class=»preprocessor«>#Область Заголовок1 EN</span>
<span class=»preprocessor«>#КонецОбласти</span></pre>
<p class=»MsoNormalCxSpFirst«>Если для какого-либо варианта области код
языка не указан, то этот вариант области будет возвращаться, когда в метод <span class=»Term«>ПолучитьОбласть()</span>
передан код языка, не указанный ни в одном из вариантов описаний областей.</p>
<p class=»MsoNormalCxSpLast«>Каждая область состоит из служебной и
текстовой частей.</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>#Область ХХХХХ</span>
<span class=»operator«>[</span>служебная часть<span class=»operator«>]</span>
<span class=»operator«>[</span>текстовая часть<span class=»operator«>]</span>
<span class=»preprocessor«>#КонецОбласти</span></pre>
<a id=»TI000000950» class=»bookmark» name=»issogl3_27.2.2.2_служебная_часть_области«><h4>27.2.2.2. Служебная часть области</h4></a>
<p class=»MsoNormalCxSpFirst«>Служебная часть области не имеет явных
границ. В нее входят все строки от начала области, которые начинаются специальным
символом «<span class=»Term«>#</span>».
В служебной части описываются поля текстового макета, используемые внутри
области. Если нет надобности в служебной части, она может отсутствовать.</p>
<p class=»MsoNormalCxSpLast«>Управляющие конструкции текстового макета
выделяются цветом.</p>
<a id=»TI000000951» class=»bookmark» name=»issogl4_27.2.2.2.1_структура_служебной_части_области«><h5>27.2.2.2.1. Структура служебной части области</h5></a>
<p class=»MsoNormalCxSpFirst«>Служебная часть области состоит из описаний
некоторых общих параметров области и описаний форматов полей, входящих в
область. Все описания, сделанные в служебной части области, действуют только в
пределах области. Если в некоторой области описан формат поля и оно же
встречается в другой области без описания формата, для него в другой области
будет использоваться формат по умолчанию.</p>
<p class=»MsoNormalCxSpLast«>В начале служебной части области может
следовать ключевое слово общей области <span class=»Term«>#ЗаменаСимвола
A B</span>. С его помощью будет производиться замена символов внутри
строк области;</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Term«>A</span> – символ, который будет заменен;</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Term«>B</span> – символ, которым будет заменен символ <span class=»Term«>A</span>.</p>
<p class=»MsoNormalCxSpFirst«>Символы должны быть заключены в одинарные
кавычки.</p>
<p class=»MsoNormalCxSpMiddle«>Например, если написать <span class=»Term«>#ЗаменаСимвола
"@" "#"</span>, то внутри строк символы «<span class=»Term«>@</span>»,
не входящие в названия полей, будут заменены на «<span class=»Term«>#</span>».</p>
<p class=»MsoNormalCxSpLast«>Имеет смысл использовать данное ключевое
слово в тех случаях, когда в оформление строк макета должен входить символ #
(его непосредственное использование указывало бы на служебный характер текста).</p>
<a id=»TI000000952» class=»bookmark» name=»issogl4_27.2.2.2.2_описания_полей«><h5>27.2.2.2.2. Описания полей</h5></a>
<p class=»MsoNormalCxSpFirst«>После описания замены следует описание
форматов полей, используемых в области.</p>
<p class=»MsoNormalCxSpMiddle«>Поле создается с помощью ключевого слова <span class=»Term«>#Поле ПППП</span>,
где <span class=»Term«>ПППП</span> –
имя поля, формат которого будет описываться.</p>
<p class=»MsoNormalCxSpMiddle«>Далее на следующих строках размещаются
ключевые слова для описания поля. Описание поля действует до начала описания
следующего поля.</p>
<p class=»MsoNormalCxSpLast«><span class=»Term«>#Выравнивание {Лево | Право | Центр | ПоШирине}</span> –
указывает выравнивание поля в пределах отведенных для него знакомест.</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>#Поле ВидРаботы</span>
<span class=»preprocessor«>#Выравнивание ПоШирине</span></pre>
<p class=»MsoNormal«><span class=»Term«>#Формат <Форматная строка></span> – указывает
форматную строку для вывода поля.</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>#Поле Дата1</span>
<span class=»preprocessor«>#Формат "ДФ=dd.MM.yy"</span>
<span class=»preprocessor«>#Поле Вр1</span>
<span class=»preprocessor«>#Формат "ЧЦ=4; ЧДЦ=0; ЧРД=."</span></pre>
<p class=»MsoNormal«><span class=»Term«>#Забивать <Параметр></span> – указывает
необходимость забивки области, отведенной для поля, символами «<span class=»Term«>#</span>».
Если <span class=»Term«><Параметр>
= Истина</span> и содержимое поля не помещается в отведенное место,
будет выполняться забивка.</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>#Поле ИтогОтчета</span>
<span class=»preprocessor«>#Формат "ЧЦ=18; ЧДЦ=2; ЧРД=."</span>
<span class=»preprocessor«>#Забивать Истина</span></pre>
<a id=»TI000000953» class=»bookmark» name=»issogl3_27.2.2.3_текстовая_часть_области«><h4>27.2.2.3. Текстовая часть области</h4></a>
<p class=»MsoNormalCxSpFirst«>Текстовая часть области состоит собственно
из строк текстового макета. Она начинается после последней строки, принадлежащей
служебной части области, и продолжается до конца области. Внутри строк
текстового макета можно указать имя поля: <span class=»Term«>[ПППП]</span>.</p>
<p class=»MsoNormalCxSpLast«>Количество знакомест, отводимых под поле,
соответствует количеству знакомест, указанных скобками (включая скобки). Если
размер поля составляет один символ, допускается использование одной скобки.
Например:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span>
!<span class=»operator«>[</span>Имя <span class=»operator«>]</span>! <span class=»operator«>[</span>Код <span class=»operator«>]</span>! <span class=»operator«>[</span>Наименование <span class=»operator«>]</span> !
<span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span></pre>
<p class=»MsoNormalCxSpFirst«>Если имя поля прижато к левой скобке,
считается, что поле имеет левое выравнивание, а если к правой скобке, то правое
выравнивание. Если пробелы есть слева и справа от имени поля, оно будет
центрироваться в пределах отведенных под него знакомест.</p>
<p class=»MsoNormalCxSpLast«>Если имя поля больше, чем количество
знакомест, отводимых под поле, имя поля указывается с помощью ключевого слова <span class=»Term«>Поля</span>.</p>
<p class=»Lang-subheader«>Пример:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>#Поле Номер</span>
<span class=»preprocessor«> #Формат "ЧЦ=3; ЧДЦ=0"</span>
<span class=»preprocessor«>#Поле Код</span>
<span class=»preprocessor«> #Формат "ЧЦ=5; ЧДЦ=0"</span>
<span class=»preprocessor«>#Поле Пометка</span>
<span class=»preprocessor«> #Формат "ЧЦ=1"</span>
<span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span>
!<span class=»operator«>[</span> <span class=»operator«>]</span>! <span class=»operator«>[</span> Код<span class=»operator«>]</span>!<span class=»operator«>[</span> Наименование <span class=»operator«>]</span>! <span class=»operator«>[</span>! #Поля Номер Пометка
<span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span></pre>
<p class=»MsoNormal«>Параметры в ключевом слове <span class=»Term«>Поля</span>
указываются только для тех полей, имена которых не указаны в теле макета в скобках.</p>
<a id=»TI000000954» class=»bookmark» name=»issogl4_27.2.2.3.1_автоматический_перенос«><h5>27.2.2.3.1. Автоматический перенос</h5></a>
<p class=»MsoNormal«>Если текст не умещается в отведенный размер
поля, может возникнуть необходимость использовать автоматический перенос текста
на новую строку. Для этого предлагается использовать указание расположения поля
в макете в фигурных и угловых скобках:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Term«>{ПППП}</span> – область поля ограничена фигурными
скобками. Они показывают, что автоперенос текста, хранящегося в поле <span class=»Term«>ПППП</span>,
возможен на эту строку, и указывают область для не поместившегося ранее в поле <span class=»Term«>ПППП</span>
текста. При этом, даже если в строке нет необходимости выводить ни одно из
полей, строка все равно будет выведена.</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Term«><ПППП></span> – область поля ограничена
угловыми скобками. Они показывают, что автоперенос текста, хранящегося в поле <span class=»Term«>ПППП</span>,
возможен, и указывают область для не поместившегося на предшествующей строке в
поле <span class=»Term«>ПППП</span>
текста. При этом, если все поля, имеющиеся в строке, указаны в угловых скобках,
но ни одно из них не потребовалось для вывода текста, строка не будет выведена.
Если при выводе текста из поля в строку, в которой поле размещено в угловых
скобках, текст все равно не уместится, такая строка будет размножена до тех
пор, пока не удастся вывести весь текст из поля.</p>
<p class=»Lang-subheader«>Пример:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span>
!<span class=»operator«>[</span> YY<span class=»operator«>]</span>! <span class=»operator«>[</span>XX <span class=»operator«>]</span>!<span class=»operator«>[</span> ZZ<span class=»operator«>]</span>!
! ! {XX }! !
! ! <span class=»operator«><</span>XX <span class=»operator«>></span>! !
<span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span></pre>
<p class=»MsoNormal«>В этом примере указывается, что поле <span class=»Term«>XX</span>
размещается на первой строке. На второй строке размещается та часть поля <span class=»Term«>XX</span>,
которая не поместилась на первой строке. На третьей строке размещается часть
поля <span class=»Term«>ХХ</span>,
которая не поместилась ни на первой, ни на второй строке. При этом если в поле <span class=»Term«>ХХ</span>
для третьей строки текста не осталось, она совсем не выводится, а если
осталось, то третья строка будет выводиться до тех пор, пока не закончится
текст из поля <span class=»Term«>XX</span>.</p>
<a id=»TI000000955» class=»bookmark» name=»issogl3_27.2.2.4_описание_ключевых_слов_текстового_макета«><h4>27.2.2.4. Описание ключевых слов текстового макета</h4></a>
<p class=»Lang«>Область (Area)</p>
<p class=»Lang-subheader«>Описание:</p>
<p class=»MsoNormal«>Указывается начало области макета, а если
предшествующая область не закончена, то конец предшествующей.</p>
<p class=»Lang-subheader«>Синтаксис:</p>
<p class=»MsoNormal«><span class=»Term«>#Область <Имя области> <Код языка></span></p>
<p class=»Lang-subheader«>Параметры:</p>
<p class=»Lang-parameter«><Имя области> Обязательный</p>
<p class=»MsoNormal«>Указывается имя области, по которому
производится ее получение методом <span class=»Term«>ПолучитьОбласть()</span>
текстового документа.</p>
<p class=»Lang-parameter«><Код языка> Необязательный</p>
<p class=»MsoNormal«>Указывается код языка области. Если
предполагается использование конфигурации на нескольких языках, то в текстовом
макете можно указать несколько областей с одинаковыми именами, но тогда каждая
область должна содержать код языка. Если код языка не указан, то такая область
выбирается в том случае, когда область запрашивается с кодом языка,
отсутствующим в описании областей.</p>
<p class=»Lang«>КонецОбласти (EndOfArea)</p>
<p class=»Lang-subheader«>Описание:</p>
<p class=»MsoNormal«>Указывается явный конец области макета.</p>
<p class=»Lang-subheader«>Синтаксис:</p>
<p class=»MsoNormal«><span class=»Term«>#КонецОбласти</span></p>
<p class=»Lang«>ЗаменаСимвола (ReplaceChar)</p>
<p class=»Lang-subheader«>Описание:</p>
<p class=»MsoNormal«>С помощью данного ключевого слова будет
производиться замена символов внутри строк области.</p>
<p class=»Lang-subheader«>Синтаксис:</p>
<p class=»MsoNormal«><span class=»Term«>#ЗаменаСимвола <Заменяемый символ> <Символ
замены></span></p>
<p class=»Lang-subheader«>Параметры:</p>
<p class=»Lang-parameter«><Заменяемый символ> Обязательный</p>
<p class=»MsoNormal«>В одинарных кавычках указывается символ,
который будет заменен.</p>
<p class=»Lang-parameter«><Символ замены> Обязательный</p>
<p class=»MsoNormal«>Указывается символ, на который будет заменен
<span class=»Term«><Заменяемый
символ></span>.</p>
<p class=»Lang«>Поле (Field)</p>
<p class=»Lang-subheader«>Описание:</p>
<p class=»MsoNormal«>Указывается поле, для которого необходимо
указать ключевые слова форматирования.</p>
<p class=»Lang-subheader«>Синтаксис:</p>
<p class=»MsoNormal«><span class=»Term«>#Поле <Имя поля></span></p>
<p class=»Lang-subheader«>Параметры:</p>
<p class=»Lang-parameter«><Имя поля> Обязательный</p>
<p class=»MsoNormal«>Имя поля.</p>
<p class=»Lang«>Выравнивание (Align)</p>
<p class=»Lang-subheader«>Описание:</p>
<p class=»MsoNormal«>Указывается выравнивание при выводе содержимого
поля.</p>
<p class=»Lang-subheader«>Синтаксис:</p>
<p class=»MsoNormal«><span class=»Term«>#Выравнивание <Параметр выравнивания></span></p>
<p class=»Lang-subheader«>Параметры:</p>
<p class=»Lang-parameter«><Параметр выравнивания> Обязательный</p>
<p class=»MsoNormal«>Значение выравнивания поля. Может принимать
следующие значения:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Term«>Лево</span> (<span class=»Term«>Left</span>),</p>
<p class=»MsoListBulletCxSpMiddle«>●
<span class=»Term«>Право</span> (<span class=»Term«>Right</span>),</p>
<p class=»MsoListBulletCxSpMiddle«>●
<span class=»Term«>Центр</span> (<span class=»Term«>Center</span>),</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Term«>ПоШирине</span> (<span class=»Term«>Justify</span>).</p>
<p class=»Lang«>Формат (Format)</p>
<p class=»Lang-subheader«>Описание:</p>
<p class=»MsoNormal«>Указывается формат вывода поля.</p>
<p class=»Lang-subheader«>Синтаксис:</p>
<p class=»MsoNormal«><span class=»Term«>#Формат <Форматная строка></span></p>
<p class=»Lang-subheader«>Параметры:</p>
<p class=»Lang-parameter«><Форматная строка> Обязательный</p>
<p class=»MsoNormal«>Определяет формат представления значения поля.</p>
<p class=»Lang-subheader«>Пример:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»string«>"ДФ=dd.MM.yy"</span></pre>
<p class=»Lang«>Забивать (Block)</p>
<p class=»Lang-subheader«>Описание:</p>
<p class=»MsoNormal«>Если значение параметра <span class=»Term«>Истина</span>,
то устанавливается забивка, при которой в поле, значение которого не помещается
в отведенное место, выводится символ «<span class=»Term«>#</span>»
во всем отведенном месте.</p>
<p class=»Lang-subheader«>Синтаксис:</p>
<p class=»MsoNormal«><span class=»Term«>#Забивать <Параметр></span></p>
<p class=»Lang-subheader«>Параметры:</p>
<p class=»Lang-parameter«><Параметр> Необязательный</p>
<p class=»MsoNormal«>Определяет необходимость забивки поля. Может
принимать значения:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Term«>Истина</span> (<span class=»Term«>True</span>),</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Term«>Ложь</span> (<span class=»Term«>False</span>).</p>
<p class=»Lang«>Поля (Fields)</p>
<p class=»Lang-subheader«>Описание:</p>
<p class=»MsoNormal«>Указывается список полей, имена которых
нельзя указать в месте их расположения.</p>
<p class=»Lang-subheader«>Синтаксис:</p>
<p class=»MsoNormal«><span class=»Term«>#Поля <Имя поля 1> <Имя поля 2> … <Имя поля
N></span></p>
<p class=»Lang-subheader«>Параметры:</p>
<p class=»Lang-parameter«><Имя поля> Обязательный</p>
<p class=»MsoNormal«>Имя поля. Обязательно указывать все имена
полей, которые не указаны в тексте области макета.</p>
<a id=»TI000000956» class=»bookmark» name=»issogl3_27.2.2.5_пример_печати_расходной_накладной«><h4>27.2.2.5. Пример печати расходной накладной</h4></a>
<p class=»MsoNormal«>Предполагается, что объект конфигурации <span class=»Term«>Документ</span>
с именем <span class=»Interface«>Расходная накладная</span> имеет в списке макетов текстового
типа макет с именем <span class=»Term«>ПечатьТекст</span>:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>#Область Шапка RU</span>
Расходная накладная N <span class=»operator«>[</span>НомерДокумента <span class=»operator«>]</span>
От: <span class=»operator«>[</span>От <span class=»operator«>]</span>
Кому: <span class=»operator«>[</span>Кому <span class=»operator«>]</span>
<span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span>
| N| Наименование | Цена |Штук| Сумма |
<span class=»preprocessor«>#Область Строка RU</span>
<span class=»preprocessor«> #Поле Цена</span>
<span class=»preprocessor«> #Формат "ЧЦ=10; ЧДЦ=2; ЧРД=."</span>
<span class=»preprocessor«> #Поле Штук</span>
<span class=»preprocessor«> #Выравнивание Право</span>
<span class=»preprocessor«> #Формат "ЧЦ=4; ЧДЦ=0; ЧРД=."</span>
<span class=»preprocessor«> #Поле Сумма</span>
<span class=»preprocessor«> #Формат "ЧЦ=12; ЧДЦ=2; ЧРД=."</span>
|<span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>+</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>+</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>+</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>+</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span><span class=»operator«>—</span>|
<span class=»preprocessor«>|<span class="operator">[</span><span class="operator">]</span>|<span class="operator">[</span>Наименование <span class="operator">]</span>|<span class="operator">[</span> Цена<span class="operator">]</span>|<span class="operator">[</span> <span class="operator">]</span>|<span class="operator">[</span> Сумма<span class="operator">]</span>|#Поля Номер Штук</span>
| |<span class=»operator«><</span>Наименование <span class=»operator«>></span>| | | |
<span class=»preprocessor«>#Область Подвал RU</span>
<span class=»preprocessor«> #Поле ИтогоШтук</span>
<span class=»preprocessor«> #Выравнивание Право</span>
<span class=»preprocessor«> #Формат "ЧЦ=4; ЧДЦ=0; ЧРД=."</span>
<span class=»preprocessor«> #Поле ИтогоСумма</span>
<span class=»preprocessor«> #Выравнивание Право</span>
<span class=»preprocessor«> #Формат "ЧЦ=12; ЧДЦ=2; ЧРД=."</span>
<span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span><span class=»operator«>=</span>
Итого <span class=»operator«>[</span> <span class=»operator«>]</span> <span class=»operator«>[</span>ИтогоСумма<span class=»operator«>]</span> #Поля ИтогоШтук
Директор: <span class=»operator«>[</span>Директор <span class=»operator«>]</span></pre>
<p class=»MsoNormal«>Макет содержит следующие области:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Term«>Шапка</span> – для вывода заголовка отчета;</p>
<p class=»MsoListBulletCxSpMiddle«>●
<span class=»Term«>Строка</span> – для вывода табличной части;</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Term«>Подвал</span> – для вывода итоговых данных.</p>
<p class=»MsoNormal«>В форме документа размещена кнопка <span class=»Term«>Печать</span>.
Ее нажатие вызывает событие <span class=»Term«>Нажатие()</span>,
процедура-обработчик которого размещена в модуле формы.</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»keyword«>Процедура</span> ПечатьВТекст<span class=»operator«>(</span>Кнопка<span class=»operator«>)</span>
ТекДок <span class=»operator«>=</span> <span class=»keyword«>Новый</span> ТекстовыйДокумент<span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
ПечатьТекст<span class=»operator«>(</span>ТекДок<span class=»operator«>)</span><span class=»operator«>;</span>
ТекДок<span class=»operator«>.</span>Показать<span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span></pre>
<p class=»MsoNormal«>В процедуре создается текстовый документ <span class=»Term«>ТекДок</span>
и вызывается процедура <span class=»Term«>ПечатьТекст(ТекДок)</span>,
которая заполняет текстовый документ на основе данных расходной накладной.
Процедура расположена в модуле документа. После заполнения документа он
выводится на экран.</p>
<p class=»Lang-subheader«>Текст процедуры <span class=»Term«>ПечатьТекст()</span>:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»keyword«>Процедура</span> ПечатьТекст<span class=»operator«>(</span>ТекДок<span class=»operator«>)</span> <span class=»keyword«>Экспорт</span>
<span class=»comment«>// Получение макета</span>
Макет <span class=»operator«>=</span> ПолучитьМакет<span class=»operator«>(</span><span class=»string«>"ПечатьТекст"</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»comment«>// Установим код языка</span>
Макет<span class=»operator«>.</span>КодЯзыкаМакета <span class=»operator«>=</span> <span class=»string«>"RU"</span><span class=»operator«>;</span>
<span class=»comment«>// Заголовок</span>
Область <span class=»operator«>=</span> Макет<span class=»operator«>.</span>ПолучитьОбласть<span class=»operator«>(</span><span class=»string«>"Шапка"</span><span class=»operator«>)</span><span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>НомерДокумента <span class=»operator«>=</span> Номер<span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>От <span class=»operator«>=</span> Формат<span class=»operator«>(</span>Дата<span class=»operator«>,</span><span class=»string«>"ДФ=dd.MM.yyyy"</span><span class=»operator«>)</span><span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Кому <span class=»operator«>=</span> Контрагент<span class=»operator«>;</span>
ТекДок<span class=»operator«>.</span>Вывести<span class=»operator«>(</span>Область<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»comment«>// Обработка табличной части "Состав"</span>
СтрИтого <span class=»operator«>=</span> <span class=»keyword«>Новый</span> Структура<span class=»operator«>(</span><span class=»string«>"ИтогоШтук, ИтогоСумма"</span><span class=»operator«>,</span><span class=»number«>0</span><span class=»operator«>,</span><span class=»number«>0</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>Для</span> <span class=»keyword«>Каждого</span> СтрСостава <span class=»keyword«>Из</span> Состав <span class=»keyword«>Цикл</span>
Область <span class=»operator«>=</span> Макет<span class=»operator«>.</span>ПолучитьОбласть<span class=»operator«>(</span><span class=»string«>"Строка"</span><span class=»operator«>)</span><span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Номер <span class=»operator«>=</span> СтрСостава<span class=»operator«>.</span>НомерСтроки<span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Наименование <span class=»operator«>=</span> СтрСостава<span class=»operator«>.</span>Номенклатура<span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Штук <span class=»operator«>=</span> СтрСостава<span class=»operator«>.</span>Количество<span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Цена <span class=»operator«>=</span> СтрСостава<span class=»operator«>.</span>Цена<span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Сумма <span class=»operator«>=</span> СтрСостава<span class=»operator«>.</span>Сумма<span class=»operator«>;</span>
ТекДок<span class=»operator«>.</span>Вывести<span class=»operator«>(</span>Область<span class=»operator«>)</span><span class=»operator«>;</span>
СтрИтого<span class=»operator«>.</span>ИтогоШтук <span class=»operator«>=</span> СтрИтого<span class=»operator«>.</span>ИтогоШтук <span class=»operator«>+</span> СтрСостава<span class=»operator«>.</span>Количество<span class=»operator«>;</span>
СтрИтого<span class=»operator«>.</span>ИтогоСумма <span class=»operator«>=</span> СтрИтого<span class=»operator«>.</span>ИтогоСумма <span class=»operator«>+</span> СтрСостава<span class=»operator«>.</span>Сумма<span class=»operator«>;</span>
<span class=»keyword«>КонецЦикла</span><span class=»operator«>;</span>
<span class=»comment«>// Подвал</span>
Область <span class=»operator«>=</span> Макет<span class=»operator«>.</span>ПолучитьОбласть<span class=»operator«>(</span><span class=»string«>"Подвал"</span><span class=»operator«>)</span><span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Заполнить<span class=»operator«>(</span>СтрИтого<span class=»operator«>)</span><span class=»operator«>;</span>
РС <span class=»operator«>=</span> РегистрыСведений<span class=»operator«>.</span>ОтветственныеСотрудники<span class=»operator«>;</span>
Область<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Директор <span class=»operator«>=</span> РС<span class=»operator«>.</span>ПолучитьПоследнее<span class=»operator«>(</span>Дата<span class=»operator«>)</span><span class=»operator«>.</span>Директор<span class=»operator«>;</span>
ТекДок<span class=»operator«>.</span>Вывести<span class=»operator«>(</span>Область<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span></pre>
<a id=»TI000000957» class=»bookmark» name=»issogl2_27.2.3_редактирование_текстов_шаблонов«><h3>27.2.3. Редактирование текстов шаблонов</h3></a>
<p class=»MsoNormal«>Помимо возможностей текстового редактора
модулей, редактор текстов шаблонов позволяет создавать и редактировать имеющиеся
шаблоны (подробнее о шаблонах см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref61615516«>здесь</a>).</p>
<a id=»TI000000958» class=»bookmark» name=»issogl2_27.2.4_редактор_текста_запросов«><h3>27.2.4. Редактор текста запросов</h3></a>
<p class=»MsoNormalCxSpFirst«>В данном режиме текстовый редактор помимо
основных возможностей обладает рядом дополнительных.</p>
<p class=»MsoNormalCxSpMiddle«>Синтаксические конструкции языка запросов
выделяются цветом. Описание языковых конструкций см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 8. работа с запросами.htm?_=1496848987#_ref216234624«>здесь</a> или раздел «Работа с запросами» справки по
встроенному языку.</p>
<p class=»MsoNormalCxSpMiddle«>В список доступных команд текстового
редактора добавляются команды установки и снятия комментария.</p>
<p class=»MsoNormalCxSpMiddle«>В режиме 1С:Предприятие пользователям,
обладающим административными правами, предоставляется возможность вызова
конструктора запросов.</p>
<p class=»MsoNormalCxSpLast«>Помимо текста запроса выполняется
редактирование текстов запросов для текстового документа, у которого
установлено расширение <span class=»Interface«>Язык запросов</span>; для поля текстового документа с
установленным расширением <span class=»Interface«>Язык запросов</span>.</p>
<a name=»_ref374982623«></a><a id=»TI000000959» class=»bookmark» name=»issogl1_27.3_редактор_командного_интерфейса_конфигурации«><h2>27.3. Редактор командного интерфейса конфигурации</h2></a>
<p class=»Regularbeforepicture«>Редактор командного интерфейса конфигурации
позволяет настроить начальный порядок разделов в панели разделов (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 3. интерфейс приложения.htm?_=1496848987#_ref220738931«>здесь</a>) и начальную видимость разделов в разрезе ролей.</p>
<p class=»Picture«><IMG src=»_img/img00507.gif?_=1496848987» WIDTH=»508» ALT HEIGHT=»262«></p>
<p class=»MsoCaption«><a name=»_ref220739176«>Рис. </a>499. Редактор «Командный интерфейс конфигурации»</p>
<p class=»MsoNormalCxSpFirst«>В колонке <span class=»Interface«>Команда</span> имеется возможность задавать порядок
расположения разделов.</p>
<p class=»MsoNormalCxSpLast«>В колонках <span class=»Interface«>Видимость</span> и <span class=»Interface«>Видимость по ролям</span> задается видимость команд открытия
подсистем по умолчанию.</p>
<a name=»_ref220744784«></a><a id=»TI000000960» class=»bookmark» name=»issogl2_27.3.1_общие_правила_установки_видимости«><h3>27.3.1. Общие правила установки видимости</h3></a>
<p class=»MsoNormalCxSpFirst«>В табличном поле размещается общая колонка
управления видимостью (колонка <span class=»Interface«>Видимость</span>) и столько колонок, сколько ролей определено в
конфигурации.</p>
<p class=»MsoNormalCxSpMiddle«>Изначально порядок отображения команд и
настройки их видимости устанавливаются системой. Однако при этом можно вручную настраивать
видимость для всех команд или отбирать команды по ролям, которым они доступны.</p>
<p class=»MsoNormalCxSpLast«>Установка видимости объекта в командном
интерфейсе может осуществляться несколькими способами:</p>
<p class=»MsoListBulletCxSpFirst«>●
Редактирование колонки <span class=»Interface«>Видимость</span>. В этом случае видимость команды задается
сразу для всех ролей. Видимость команды для конкретной роли будет определяться
по состоянию колонки <span class=»Interface«>Видимость</span> в том случае, если для конкретной роли выбрано
особое состояние флажка видимости (см. видимость подсистемы <span class=»Interface«>Продажи</span> на <a href=»#_ref220739176«>рис.499</a>).</p>
<p class=»MsoListBulletCxSpLast«>●
Указание конкретного значения (установленное или
сброшенное) видимости для конкретной роли означает, что команда будет по
умолчанию видна (или не видна – в зависимости от состояния флажка) для
данной роли. Общее состояние (колонка <span class=»Interface«>Видимость</span>) в этом случае игнорируется. Так, на <a href=»#_ref220739176«>рис.499</a> для роли <span class=»Interface«>Администратор</span> видимость раздела <span class=»Interface«>Товарные запасы</span> отключена (несмотря на то, что общая
видимость этого раздела включена), а для роли <span class=»Interface«>Менеджер по продажам</span> по умолчанию видима команда
перехода к подсистеме <span class=»Interface«>Предприятие</span> (несмотря на то, что по умолчанию видимость
этого раздела отключена).</p>
<p class=»MsoNormalCxSpFirst«>Возможно множественное изменение видимости
сразу для нескольких команд в списке.</p>
<p class=»MsoNormalCxSpLast«>Для того чтобы в списке <span class=»Interface«>Команда</span> показать только видимые команды, следует нажать
кнопку <span class=»Interface«>Скрыть невидимые по умолчанию</span>.</p>
<a name=»_ref220744816«></a><a id=»TI000000961» class=»bookmark» name=»issogl2_27.3.2_отбор_по_ролям«><h3>27.3.2. Отбор по ролям</h3></a>
<p class=»MsoNormal«>В поле <span class=»Interface«>Отбор по ролям</span> можно задать несколько ролей, которые
будут определять текущее отображение списка команд. В список будут включаться
только команды, доступные этим ролям. Для отключения отбора нужно выбрать <span class=»Interface«>Не установлен</span>. Список выбора позволяет быстро включать
один из нескольких последних установленных отборов.</p>
<a name=»_ref217103609«></a><a name=»_ref370382069«></a><a name=»_ref370382068«></a><a id=»TI000000962» class=»bookmark» name=»issogl1_27.4_настройка_рабочей_области_начальной_страницы«><h2>27.4. Настройка рабочей области начальной страницы</h2></a>
<a name=»_ref370731128«></a><a id=»TI000001304» class=»bookmark» name=»issogl2_27.4.1_с_помощью_редактора_рабочей_области_начальной_страницы«><h3>27.4.1. С помощью редактора рабочей области начальной страницы</h3></a>
<p class=»Regularbeforepicture«>Данный
редактор позволяет настроить общую схему расположения форм на начальной
странице, а также состав форм, которые могут быть отображены на начальной
странице.</p>
<p class=»Picture«><IMG src=»_img/img00508.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»323«></p>
<p class=»MsoCaption«>Рис.
500. Редактор «Рабочая область начальной страницы»</p>
<p class=»MsoNormal«>Общую
схему расположения форм на начальной странице можно задать с помощью поля <span class=»Interface«>Шаблон начальной
страницы</span>:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Interface«>Одна колонка</span> –
формы будут отображаться в одну колонку.</p>
<p class=»MsoListBulletCxSpMiddle«>●
<span class=»Interface«>Две колонки одинаковой
ширины</span> – для форм будут доступны две колонки одинаковой ширины.</p>
<p class=»MsoListBulletCxSpLast«>●
Две колонки разной ширины
(2:1) – будут отображаться две колонки, причем левая колонка
будет в два раза шире правой.</p>
<p class=»MsoNormalCxSpFirst«>После
выбора необходимых форм можно указать порядок их расположения на начальной
странице, а также высоту каждой формы (колонка <span class=»Interface«>Высота</span>).</p>
<p class=»MsoNormalCxSpMiddle«>Редактор
видимости работает аналогично другим ролевым редакторам свойств (см. <a href=»#_ref200447246«>здесь</a>).</p>
<p class=»MsoNormalCxSpMiddle«>При
разработке интерфейса начальной страницы следует обращать особое внимание на
то, чтобы этот интерфейс содержал наиболее важные формы. На начальной странице
нужно размещать те формы, с которыми наиболее часто выполняется работа
пользователя с тем или иным составом ролей.</p>
<p class=»MsoNormalCxSpLast«>Следует
помнить, что формы, на которые у пользователя нет прав, не будут отображены на начальной
странице вне зависимости от состояния колонки <span class=»Interface«>Видимость</span>.</p>
<a name=»_ref217280689«></a><a name=»_ref370382071«></a><a name=»_ref370382070«></a><a id=»TI000001305» class=»bookmark» name=»issogl2_27.4.2_программная«><h3>27.4.2. Программная</h3></a>
<p class=»MsoNormalCxSpFirst«>Настройку
состава и положения форм на начальной странице (рабочем столе) можно выполнить
также из встроенного языка. Для выполнения настройки следует воспользоваться
методами <span class=»Term«>ПолучитьСоставФорм()</span> и <span class=»Term«>УстановитьСоставФорм()</span> объекта <span class=»Term«>НастройкиНачальнойСтраницы</span>. Таким образом,
имеется возможность получить текущее состояние начальной страницы (рабочего
стола) клиентского приложения, модифицировать этот состав необходимым образом и
установить обратно.</p>
<p class=»MsoNormalCxSpLast«>Настройки
состава и расположения форм начальной страницы (рабочего стола) хранятся в
стандартном хранилище системных настроек. Ключ настроек – <span class=»Interface«>Общее/НастройкиНачальнойСтраницы</span>
(см. <A href=»/db/content/v8310doc/src/руководство разработчика/приложение 4. перечень автоматически сохраняемых настроек.htm?_=1496848987#_ref363646570«>здесь</a>). Чтобы изменить настройки необходимо в начале
прочитать их из хранилища:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«>НастройкиНачальнойСтраницы <span class=»operator«>=</span> ХранилищеСистемныхНастроек<span class=»operator«>.</span>Загрузить<span class=»operator«>(</span><span class=»string«>"Общее/НастройкиНачальнойСтраницы"</span><span class=»operator«>)</span><span class=»operator«>;</span></pre>
<p class=»MsoNormal«>Затем
настройки начальной страницы (рабочего стола) можно модифицировать и поместить
обратно в хранилище:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«>ХранилищеСистемныхНастроек<span class=»operator«>.</span>Сохранить<span class=»operator«>(</span><span class=»string«>"Общее/НастройкиНачальнойСтраницы"</span><span class=»operator«>,</span> <span class=»string«>""</span><span class=»operator«>,</span> НастройкиНачальнойСтраницы<span class=»operator«>)</span><span class=»operator«>;</span></pre>
<p class=»MsoNormalCxSpFirst«>После сохранения нового состава форм,
необходимо выполнить перестроение интерфейса клиентского приложения с помощью
вызова метода <span class=»Term«>ОбновитьИнтерфейс()</span>.</p>
<p class=»MsoNormalCxSpLast«>Среди разнообразных вариантов
применения механизма, можно выделить несколько основных сценариев
использования:</p>
<p class=»MsoListBulletCxSpFirst«>●
Необходимо предложить пользователю добавить
новую форму на начальную страницу (рабочий стол). Это можно сделать с помощью
программного кода, который вызывается из обработчика события <span class=»Term«>ПриНачалеРаботыСистемы</span>. После изменения
настроек начальной страницы (рабочего стола) необходимо обновить интерфейс,
чтобы изменения стали доступны.</p>
<p class=»MsoListBulletCxSpMiddle«>●
Для каких-либо пользователей необходимо
поддерживать фиксированный набор форм, который определяется не на этапе
конфигурирования, а некоторыми данными информационной базы. В этом случае
настройку начальной страницы (рабочего стола) рекомендуется выполнять в
обработчике события <span class=»Term«>УстановкаПараметровСеанса</span> модуля сеанса. В
этом случае не требуется вызывать метод <span class=»Term«>ОбновитьИнтерфейс()</span>, т. к.
считывание настроек начальной страницы (рабочего стола) выполняется после
выполнения данного обработчика.</p>
<p class=»MsoListBulletCxSpLast«>●
Необходимо однократно изменить состав форм начальной
страницы (рабочего стола) для всех пользователей информационной базы. В этом
случае рекомендуется написать программный модуль, который переберет настройки
начальной страницы (рабочего стола) для всех пользователей и внесет в них
необходимые изменения. Следует помнить, что изменение интерфейса, выполненные
таким образом, будут доступны пользователю только при следующем вход в систему.</p>
<p class=»MsoNormal«>Рассмотрим пример, в рамках которого
необходимо при каждом начале работы системы принудительно размещать на начальной
странице две формы: форму списка справочника <span class=»Term«>Товары</span>
и стандартную форму полнотекстового поиска (<span class=»Term«>ФормаПоиска</span>).
Для реализации примера необходим общий модуль с установленными признаками <span class=»Interface«>Сервер</span>
и <span class=»Interface«>Вызов сервера</span>.
Пусть общий модуль имеет имя <span class=»Term«>РаботаСИнтерфейсом</span>.
В общем модуле необходимо поместить следующую процедуру:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»keyword«>Процедура</span> ПростаяНачальнаяСтраница<span class=»operator«>(</span><span class=»operator«>)</span> <span class=»keyword«>Экспорт</span>
НачальнаяСтраница <span class=»operator«>=</span> <span class=»keyword«>Новый</span> НастройкиНачальнойСтраницы<span class=»operator«>;</span>
СоставФорм <span class=»operator«>=</span> <span class=»keyword«>Новый</span> СоставФормНачальнойСтраницы<span class=»operator«>;</span>
СоставФорм<span class=»operator«>.</span>ЛеваяКолонка<span class=»operator«>.</span>Добавить<span class=»operator«>(</span><span class=»string«>"Справочник.Товары.ФормаСписка"</span><span class=»operator«>)</span><span class=»operator«>;</span>
СоставФорм<span class=»operator«>.</span>ПраваяКолонка<span class=»operator«>.</span>Добавить<span class=»operator«>(</span><span class=»string«>"ФормаПоиска"</span><span class=»operator«>)</span><span class=»operator«>;</span>
НачальнаяСтраница<span class=»operator«>.</span>УстановитьСоставФорм<span class=»operator«>(</span>СоставФорм<span class=»operator«>)</span><span class=»operator«>;</span>
ХранилищеСистемныхНастроек<span class=»operator«>.</span>Сохранить<span class=»operator«>(</span><span class=»string«>"Общее/НастройкиНачальнойСтраницы"</span><span class=»operator«>,</span> <span class=»string«>""</span><span class=»operator«>,</span> НачальнаяСтраница<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span> </pre>
<p class=»MsoNormal«>В модуле управляемого приложения
необходимо разместить обработчик события <span class=»Term«>ПриНачалеРаботыСистемы</span>:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»keyword«>Процедура</span> ПриНачалеРаботыСистемы<span class=»operator«>(</span><span class=»operator«>)</span>
РаботаСИнтерфейсом<span class=»operator«>.</span>ПростаяНачальнаяСтраница<span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
ОбновитьИнтерфейс<span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span></pre>
<p class=»MsoNormalCxSpFirst«>В
результате, вне зависимости от того, какие настройки начальной страницы
(рабочего стола) настройки осуществил пользователь в предыдущем сеансе работы,
каждый новый сеанс будет начинаться с фиксированных настроек начальной страницы
(рабочего стола).</p>
<p class=»MsoNormalCxSpLast«>При
формировании настроек начальной страницы (рабочего стола) можно указывать как
полные имена форм объектов конфигурации (например, <span class=»Term«>Справочник.Товары.Форма.ИмяФормы</span>), так и
стандартные имена форм (например, <span class=»Term«>Справочник.Товары.ФормаСписка</span>). Также нужно
помнить, что программная настройка начальной страницы (рабочего стола) не изменить
шаблон начальной области (рабочего стола). При программной настройке будет
использовать тот шаблон начальной страницы (рабочего стола), который выбран при
настройке начальной страницы (рабочего стола) при помощи соответствующего
редактора (см. <a href=»#_ref370731128«>здесь</a>).</p>
<a id=»TI000000963» class=»bookmark» name=»issogl1_27.5_редактор_командного_интерфейса_основного_раздела«><h2>27.5. Редактор командного интерфейса основного раздела</h2></a>
<p class=»Regularbeforepicture«>Редактор
позволяет настроить состав команд каждой командной панели, порядок отображения
и видимость элементов командного интерфейса по ролям.</p>
<p class=»Picture«><IMG src=»_img/img00509.gif?_=1496848987» WIDTH=»718» ALT HEIGHT=»484«></p>
<p class=»MsoCaption«>Рис.
501. Редактор «Командный интерфейс основного раздела»</p>
<p class=»MsoNormal«>В
редакторе располагаются два табличных поля. В одном (справа) выполняется
собственно редактирование командного интерфейса, а другое (слева) содержит
иерархический список доступных команд конфигурации, которые могут быть
добавлены в интерфейс основного раздела. Команды, которые попадают в список <span class=»Interface«>Доступные команды</span>,
отвечают следующим условиям:</p>
<p class=»MsoListBulletCxSpFirst«>●
команда не имеет параметра;</p>
<p class=»MsoListBulletCxSpLast«>●
группа, которая указана для команды, относится к
панели навигации или панели действий.</p>
<p class=»MsoNormalCxSpFirst«>В
табличном поле редактора интерфейса, в колонке <span class=»Interface«>Команда</span>, выводится
структура команд, сгруппированных по группам панели действий (<span class=»Interface«>Важное</span>, <span class=»Interface«>Обычное</span>, <span class=»Interface«>См. также</span>), панели
навигации (<span class=»Interface«>Создать</span>, <span class=»Interface«>Отчеты</span>, <span class=»Interface«>Сервис</span>) и
группы команд, определенных в ветке дерева метаданных <span class=»Interface«>Общие – Группы
команд</span>. В табличном поле размещена колонка <span class=»Interface«>Общая видимость
команды</span>. Также система размещает колонки настройки видимости команд
для каждой определенной в конфигурации роли.</p>
<p class=»MsoNormalCxSpMiddle«>Для
выбора команды следует раскрыть нужную ветвь таблицы доступных команд и выбрать
команду. Чтобы перенести команду в командный интерфейс, следует указать
команду и нажать кнопку <span class=»Interface«>Добавить команду в
основной раздел</span> (или нажать клавишу <span class=»Interface«>Enter</span>, или
дважды щелкнуть мышью строку с командой). Выбранная команда переносится в
панель и группу, определенную для команды при настройке текущего объекта
метаданных (свойство <span class=»Interface«>Группа</span>),
команда которого переносится. Если кнопка <span class=»Interface«>Добавить команду в основной
раздел</span> недоступна, то выбранную команду перенести в основной раздел
нельзя. Например, если для перечисления не установлено свойство <span class=»Interface«>Использовать
стандартные команды</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Изначально
порядок отображения команд в командном интерфейсе рабочего стола и настройки их
видимости устанавливаются системой. При этом можно настраивать видимость как
для всех команд или отобрать команды по ролям, которым они доступны.</p>
<p class=»MsoNormalCxSpMiddle«>Можно
использовать кнопку <span class=»Interface«>Переместить команду</span>
для перемещения команд между группами. Также команды можно перемещать,
перетаскивая их на нужное место мышью в пределах групп одной панели. Для
установки порядка команд в группе нужно использовать кнопки перемещения вверх и
вниз.</p>
<p class=»MsoNormalCxSpLast«>Нажатие
кнопки <span class=»Interface«>Установить свойства по
умолчанию</span> заменяет настройки видимости команды и вхождение в группу на
настройки, установленные системой по умолчанию.</p>
<p class=»Regularbeforepicture«>Если
в конфигурации нет ни одной подсистемы, то редактор имеет другой вид:</p>
<p class=»Picture«><IMG src=»_img/img00510.gif?_=1496848987» WIDTH=»639» ALT HEIGHT=»393«></p>
<p class=»MsoCaption«>Рис.
502. Нет подсистем</p>
<p class=»MsoNormalCxSpFirst«>В
этом случае на рабочем столе доступны все команды системы, и необходимо только
расставить доступность команд по умолчанию.</p>
<p class=»MsoNormalCxSpLast«>Общие
правила управления видимостью см. <a href=»#_ref220744784«>здесь</a>. Описание отбора по ролям см. <a href=»#_ref220744816«>здесь</a>.</p>
<a id=»TI000000964» class=»bookmark» name=»issogl1_27.6_редактор_командного_интерфейса«><h2>27.6. Редактор командного интерфейса</h2></a>
<p class=»MsoNormal«>Редактор командного интерфейса позволяет
настроить состав команд каждой командной панели, порядок отображения и видимость
элементов командного интерфейса по ролям.</p>
<p class=»Regularbeforepicture«>В табличном поле в первой (слева) колонке
выводится полный список команд, сгруппированный по группам (как системные <span class=»Interface«>Важное</span>, <span class=»Interface«>Обычное</span>, <span class=»Interface«>См. также</span>, <span class=»Interface«>Отчеты</span>, <span class=»Interface«>Сервис</span> и др., так и группы, определенные в ветке дерева
метаданных <span class=»Interface«>Группы команд</span>) панелей действий и
навигации. Затем в табличном поле следует колонка для управления
общей видимостью команд.</p>
<p class=»Picture«><IMG src=»_img/img00511.gif?_=1496848987» WIDTH=»682» ALT HEIGHT=»449«></p>
<p class=»MsoCaption«>Рис. 503. Редактор «Командный
интерфейс»</p>
<p class=»MsoNormalCxSpFirst«>Система устанавливает порядок команд
автоматически. При необходимости ручной настройки порядка отображения команд в
группах следует использовать кнопки перемещения или перетаскивать команды. При
этом рядом с группой будет отображаться строка <span class=»Interface«>Ручной порядок команд</span>. Чтобы отменить изменения порядка,
нужно у группы в контекстном меню выбрать пункт контекстного меню <span class=»Interface«>Восстановить автоматический порядок команд</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Можно использовать кнопку <span class=»Interface«>Переместить команду</span> для перемещения команд
между группами.
Также команды можно перемещать, перетаскивая их на нужное место мышью в
пределах групп одной панели. Для установки порядка команд в группе нужно
использовать кнопки перемещения вверх и вниз.</p>
<p class=»MsoNormalCxSpMiddle«>Нажатие кнопки <span class=»Interface«>Установить свойства по умолчанию</span> заменяет настройки
видимости команды и вхождение в группу на настройки, установленные системой по
умолчанию.</p>
<p class=»MsoNormalCxSpLast«>Общие правила управления видимостью см. <a href=»#_ref220744784«>здесь</a>. Описание отбора по ролям см. <a href=»#_ref220744816«>здесь</a>.</p>
<a name=»_ref217219607«></a><a id=»TI000000965» class=»bookmark» name=»issogl1_27.7_редактор_все_подсистемы«><h2>27.7. Редактор «Все подсистемы»</h2></a>
<p class=»MsoNormal«>Редактор <span class=»Interface«>Все подсистемы</span> предназначен для удобного решения
следующих задач:</p>
<p class=»MsoListBulletCxSpFirst«>●
редактирование командного интерфейса любой
подсистемы,</p>
<p class=»MsoListBulletCxSpMiddle«>●
задание состава и свойств любой подсистемы,</p>
<p class=»MsoListBulletCxSpMiddle«>●
настройка порядка следования подсистем,</p>
<p class=»MsoListBulletCxSpLast«>●
редактирование состава подсистем.</p>
<p class=»Note«><span class=»Note«>Примечание.</span> Редактор командного
интерфейса подсистемы можно также открыть из свойства подсистемы <span class=»Interface«>Командный интерфейс</span> по ссылке <span class=»Interface«>Открыть</span>.</p>
<p class=»Regularbeforepicture«>В списке <span class=»Interface«>Подсистемы</span> устанавливается порядок подсистем в дереве
конфигурации. Этот порядок не влияет на порядок следования подсистем в панели
разделов.</p>
<p class=»Picture«><IMG src=»_img/img00512.gif?_=1496848987» WIDTH=»708» ALT HEIGHT=»404«></p>
<p class=»MsoCaption«>Рис. 504. Редактор «Все
подсистемы»</p>
<p class=»MsoNormalCxSpFirst«>Для того чтобы установить порядок подсистем
на панели разделов, следует в списке <span class=»Interface«>Подсистемы</span> перейти на нужный элемент и выполнить
необходимое редактирование (порядок и перемещение подсистемы).</p>
<p class=»MsoNormalCxSpMiddle«>Для редактирования свойств подсистемы нужно
использовать палитру свойств или редактор подсистемы (выбрать подсистемы и нажать
кнопку <span class=»Interface«>Изменить текущий элемент</span>).</p>
<p class=»MsoNormalCxSpMiddle«>Чтобы переместить подсистемы (вместе с
подчиненными подсистемами), нужно выбрать подсистему и нажать кнопку <span class=»Interface«>Переместить подсистему</span>. В открывшемся окне выбора
объекта указать подсистему, в которую будет перенесена текущая подсистема.
Запрещается перенос в подсистемы, входящие в текущую подсистему.</p>
<p class=»MsoNormalCxSpLast«>Общие правила управления видимостью см. <a href=»#_ref220744784«>здесь</a>. Описание отбора по ролям см. <a href=»#_ref220744816«>здесь</a>.</p>
<a id=»TI000000966» class=»bookmark» name=»issogl2_27.7.1_настройка_состава_подсистемы«><h3>27.7.1. Настройка состава подсистемы</h3></a>
<p class=»MsoNormalCxSpFirst«>Под списком подсистем находится
иерархический список <span class=»Interface«>Состав</span>, в котором формируется состав метаданных,
относящийся к текущей подсистеме списка подсистем. Следует учитывать, что в
показываемый состав не включаются метаданные, относящиеся к подчиненным
подсистемам, если в этих подсистемах эти метаданные не определены.</p>
<p class=»MsoNormalCxSpMiddle«>Для изменения состава следует нажать кнопку <span class=»Interface«>Редактировать состав подсистемы</span>. Открывается окно выбора
объекта, которое содержит дерево метаданных. Объекты, у которых установлены
флажки, включены в состав подсистемы.</p>
<p class=»MsoNormalCxSpLast«>В окне выбора нужно указать те объекты,
которые должны быть включены в состав подсистемы. Нажатие кнопки <span class=»Interface«>OK</span> закрывает окно выбора и формирует состав подсистемы.</p>
<a id=»TI000000967» class=»bookmark» name=»issogl2_27.7.2_настройка_командного_интерфейса_подсистемы«><h3>27.7.2. Настройка командного интерфейса подсистемы</h3></a>
<p class=»MsoNormalCxSpFirst«>Настройка командного интерфейса подсистемы
осуществляется в табличном поле, расположенном справа от списка подсистем и
состава команд подсистемы.</p>
<p class=»MsoNormalCxSpLast«>Общие правила управления видимостью см. <a href=»#_ref220744784«>здесь</a>. Описание отбора по ролям см. <a href=»#_ref220744816«>здесь</a>.</p>
<a id=»TI000000968» class=»bookmark» name=»issogl1_27.8_конструктор_запросов«><h2>27.8. Конструктор запросов</h2></a>
<p class=»MsoNormalCxSpFirst«>Конструктор запросов позволяет сформировать
текст запроса в модуле и отредактировать имеющийся запрос.</p>
<p class=»MsoNormalCxSpLast«>Для вызова конструктора запросов нужно
открыть модуль, выбрать процедуру, в которую необходимо поместить запрос, установить
указатель в той части процедуры, в которой располагается или должно
располагаться тело запроса, выбрать пункт <span class=»Interface«>Текст – Конструктор запросов</span>.</p>
<p class=»Regularbeforepicture«>Если запроса нет, то на экран выводится
вопрос: <span class=»Interface«>Не
найден текст запроса. Создать новый?</span> При выборе <span class=»Interface«>Да</span> на экран выводится окно <span class=»Interface«>Конструктор запросов</span>. Если запрос редактируется, то на
экран выводится окно <span class=»Interface«>Конструктор запросов</span>, содержащее данные текущего запроса.</p>
<p class=»Picture«><IMG src=»_img/img00513.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»564«></p>
<p class=»MsoCaption«><a name=»_ref221519723«>Рис. </a>505. Конструктор запроса в конструкторе выходной формы</p>
<p class=»MsoNormalCxSpFirst«>С помощью кнопки <span class=»Interface«>Упорядочить список</span>, расположенной над списком <span class=»Interface«>База данных</span>, можно упорядочить список объектов. Повторное
нажатие кнопки отменяет упорядочивание.</p>
<p class=»MsoNormalCxSpMiddle«>С помощью кнопки <span class=»Interface«>Отображать таблицы изменений</span> можно отобразить таблицы
изменений объектов конфигурации в списке объектов в виде отдельных веток <span class=»Interface«><ИмяОбъекта>.Изменения</span>. Повторное нажатие кнопки
скроет такие ветки в списке.</p>
<p class=»MsoNormalCxSpLast«>Для того чтобы создать вложенный запрос, нужно
нажать кнопку <span class=»Interface«>Создать
вложенный запрос</span> (см. <a href=»#_ref221519723«>рис.505</a>). В открывшемся конструкторе запроса сформировать
требуемый запрос и нажать кнопку <span class=»Interface«>ОК</span>. Вложенный запрос отобразится в списке <span class=»Interface«>Таблицы</span>.</p>
<p class=»Regularbeforepicture«>Для использования созданной временной таблицы
следует нажать кнопку <span class=»Interface«>Создать описание временной таблицы</span> (см. <a href=»#_ref221519723«>рис.505</a>). В отобразившейся форме ввести имя таблицы, имена
нужных полей и, при необходимости, указать тип значения полей.</p>
<p class=»Picture«><IMG src=»_img/img00514.gif?_=1496848987» WIDTH=»364» ALT HEIGHT=»351«></p>
<p class=»MsoCaption«>Рис. 506. Описание временной
таблицы</p>
<p class=»MsoNormalCxSpFirst«>С помощью кнопок <span class=»Interface«>Далее ></span> конструктора запроса нужно последовательно
пройти по закладкам и выбрать необходимые исходные данные, указать группировки
и условия, установить нужный порядок и описать итоговые данные. В результате
работы конструктора создадутся форма и макет, которые будут располагаться в
соответствующих ветвях. По кнопке <span class=»Interface«>Запрос</span> в любой момент можно открыть окно с текстом
сформированного на основании указанных данных запроса.</p>
<p class=»MsoNormalCxSpMiddle«>Для корректировки данных следует использовать
кнопку <span class=»Interface«>< Назад</span>.</p>
<p class=»MsoNormalCxSpLast«>На закладке <span class=»Interface«>Таблицы и поля</span> выбрать нужные объекты и перенести их в
разделы <span class=»Interface«>Таблицы</span>
и <span class=»Interface«>Поля</span>.</p>
<p class=»Regularbeforepicture«>Для указания дополнительных условий можно воспользоваться
режимом формирования произвольных выражений в запросе. Для этого в списке <span class=»Interface«>Поля</span> контекстного меню нужно выбрать пункт <span class=»Interface«>Добавить</span>. На экран выводится окно произвольного
выражения.</p>
<p class=»Picture«><IMG src=»_img/img00515.gif?_=1496848987» WIDTH=»473» ALT HEIGHT=»369«></p>
<p class=»MsoCaption«>Рис. 507. Конструктор
произвольного выражения</p>
<p class=»MsoNormal«>В нижнем поле формируется текст выражения.
Выражение можно набирать с помощью клавиатуры. Для удобства ввода наименований
реквизитов можно перетаскивать мышью нужные поля из списка полей и выбирать
нужные функции языка запросов из списка, также перетаскивая их мышью в поле
ввода выражения.</p>
<p class=»Regularbeforepicture«>Если указано несколько таблиц, то в форму
конструктора запроса добавляется закладка <span class=»Interface«>Связи</span>.</p>
<p class=»Picture«><IMG src=»_img/img00516.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«>Рис. 508. Определение условий
связи между таблицами</p>
<p class=»MsoNormal«>На закладке <span class=»Interface«>Связи</span> формируются условия, которые накладываются на
связи между полями таблиц. Для ввода нового условия нужно нажать кнопку <span class=»Interface«>Добавить</span> и в колонке <span class=»Interface«>Таблица1</span> выбрать одну из таблиц; в колонке <span class=»Interface«>Таблица2</span> выбрать таблицу, поля которой связаны с полями
первой. Ниже списка условий расположены элементы управления, с помощью которых
формируется условие связи таблиц.</p>
<p class=»Regularbeforepicture«>На закладке <span class=»Interface«>Группировка</span>, если требуется, нужно выбрать реквизиты, по
которым будет выполнена группировка.</p>
<p class=»Picture«><IMG src=»_img/img00517.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«>Рис. 509. Группировка результата
запроса</p>
<p class=»Regularbeforepicture«>На закладке <span class=»Interface«>Условия</span>, если требуется, следует указать условия, по
которым будет выполняться отбор исходных данных.</p>
<p class=»Picture«><IMG src=»_img/img00518.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«>Рис. 510. Условия запроса</p>
<p class=»MsoNormal«>По каждому выбранному полю необходимо выбрать
вид условия (для произвольного условия в колонке <span class=»Interface«>Произвольное</span> установить флажок). Если флажок не
установлен, то следует выбрать вид условия и указать наименование параметра.
Если флажок <span class=»Interface«>Произвольное</span>
установлен, то можно воспользоваться окном формирования произвольных выражений
(см. выше).</p>
<p class=»Regularbeforepicture«>На закладке <span class=»Interface«>Дополнительно</span> указываются дополнительные условия.</p>
<p class=»Picture«><IMG src=»_img/img00519.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«>Рис. 511. Дополнительные
параметры запроса</p>
<p class=»Regularbeforepicture«>Если на закладке <span class=»Interface«>Дополнительно</span> выбрано создание временной таблицы, то на
появившейся закладке <span class=»Interface«>Индекс</span> можно будет выбрать поля, по которым будет
построен индекс.</p>
<p class=»Picture«><IMG src=»_img/img00520.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«>Рис. 512. Индекс временной
таблицы</p>
<p class=»Regularbeforepicture«>На закладке <span class=»Interface«>Объединения/Псевдонимы</span>, если требуется, нужно ввести
псевдонимы полей.</p>
<p class=»Picture«><IMG src=»_img/img00521.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«>Рис. 513. Объединения/псевдонимы
запроса</p>
<p class=»MsoNormalCxSpFirst«>В таблице показано соответствие выбранных
полей и исходных данных. Имена полей и соответствие можно изменить. Для изменения
имени нужно выбрать поле и нажать клавишу <span class=»Interface«>Enter</span>, ввести новое имя поля. Для изменения соответствия
в колонке <span class=»Interface«>Запрос</span>
выбрать нужную строку и нажать клавишу <span class=»Interface«>Enter</span>. В выпадающем списке выбрать нужное значение.</p>
<p class=»MsoNormalCxSpMiddle«>Если требуется выбрать только уникальные
значения, то следует установить флажок в колонке <span class=»Interface«>Без дубл</span>.</p>
<p class=»MsoNormalCxSpLast«>Псевдонимы полей, которые изменены
пользователем, или были загружены из текста запроса, или при генерации
псевдонима конструктор определил, что данный псевдоним обязателен, выделяются
жирным шрифтом.</p>
<p class=»Regularbeforepicture«>На закладке <span class=»Interface«>Порядок</span>, если требуется, нужно указать порядок вывода
полученных данных.</p>
<p class=»Picture«><IMG src=»_img/img00522.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«><a name=»_ref215036265«>Рис. </a>514. Настройка упорядочивания результата запроса</p>
<p class=»MsoNormal«>Как показано на <a href=»#_ref215036265«>рис.514</a>, выбран порядок вывода данных, отсортированных по
дате, а в пределах одной даты выполняется сортировка по <span class=»Interface«>Поставщику</span>.</p>
<p class=»Regularbeforepicture«>На закладке <span class=»Interface«>Итоги</span>, если требуется, следует указать, по каким полям
нужно выводить промежуточные итоговые данные, а также указать необходимость
формирования общих итогов.</p>
<p class=»Picture«><IMG src=»_img/img00523.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«>Рис. 515. Установка итогов для
результата запроса</p>
<p class=»MsoNormalCxSpFirst«>При нажатии кнопки <span class=»Interface«>>></span>, расположенной рядом с групповыми полями, в
поля для группировки будут помещены все ссылочные поля. При нажатии кнопки <span class=»Interface«>>></span>, расположенной рядом с суммируемыми полями, в
список суммируемых полей будут помещены все поля, имеющие числовой тип.</p>
<p class=»MsoNormalCxSpLast«>На закладке <span class=»Interface«>Построитель</span> выполняется настройка построителя отчетов.
Выбираются таблицы и поля, указываются условия и порядок представления, а также
описываются итоговые данные.</p>
<p class=»MsoListBulletCxSpFirst«>●
На закладке <span class=»Interface«>Таблицы</span> редактируются параметры построителя отчета для
виртуальных таблиц, а также отмечаются необязательные таблицы. Для
редактирования параметров виртуальных таблиц необходимо выделить таблицу, для
которой требуется настроить параметры, вызвать команду <span class=»Interface«>Параметры виртуальной таблицы</span>, после чего в появившемся
диалоге ввести необходимые параметры таблицы для построителя отчета. Для того
чтобы отметить таблицу как необязательную, необходимо снять флажок <span class=»Interface«>Обязательная</span> напротив имени таблицы, которую нужно
пометить. Кроме того, для необязательных таблиц можно указать номер группы.
Необязательные таблицы, находящиеся рядом в списке соединений и имеющие одинаковые
номера групп, будут объединены в одну необязательную группу. Необязательные
таблицы с различными номерами групп будут разнесены по различным группам
необязательных таблиц.</p>
<p class=»MsoListBulletCxSpMiddle«>●
На закладке <span class=»Interface«>Поля</span> выбираются поля, которые построитель отчета будет
использовать в качестве доступных полей для вывода в отчет.</p>
<p class=»MsoListBulletCxSpMiddle«>●
На закладке <span class=»Interface«>Условия</span> выбираются поля, которые построитель отчета
будет использовать в качестве доступных полей для отбора.</p>
<p class=»MsoListBulletCxSpMiddle«>●
На закладке <span class=»Interface«>Порядок</span> выбираются поля, которые построитель отчета
будет использовать в качестве доступных полей для упорядочивания результата.</p>
<p class=»MsoListBulletCxSpLast«>●
На закладке <span class=»Interface«>Итоги</span> выбираются поля, которые построитель отчета будет
использовать в качестве доступных полей для группировки отчета.</p>
<p class=»Regularbeforepicture«>На закладке <span class=»Interface«>Пакет запросов</span> при работе с пакетными запросами
создается последовательность запросов пакета. Каждый запрос редактируется и
настраивается в этом же окне, а на всех предыдущих закладках можно
переключаться между настраиваемыми запросами.</p>
<p class=»Picture«><IMG src=»_img/img00524.gif?_=1496848987» WIDTH=»631» ALT HEIGHT=»367«></p>
<p class=»MsoCaption«>Рис. 516. Пакет запросов</p>
<p class=»MsoNormalCxSpFirst«>По нажатию кнопки <span class=»Interface«>ОК</span> в программном модуле формируется текст запроса. Если
происходит попытка открыть конструктором некорректный текст запроса, то при
вызове конструктора запросов происходит автоматическая установка курсора в
строку запроса, в которой обнаружена ошибка, и выдается диагностическое
сообщение.</p>
<p class=»MsoNormalCxSpLast«>В зависимости от того, откуда вызывается
конструктор запроса (система компоновки данных, запрос с обработкой результата
и т. д.), в форме конструктора могут добавляться новые закладки,
описание которых можно увидеть в описании того механизма, откуда вызывается
конструктор запроса.</p>
<a name=»_ref150073309«></a><a name=»_ref141014984«></a><a name=»_ref141002886«></a><a id=»TI000000969» class=»bookmark» name=»issogl1_27.9_конструктор_запроса_с_обработкой_результата«><h2>27.9. Конструктор запроса с обработкой результата</h2></a>
<p class=»MsoNormal«>Конструктор предназначен для генерации
программного кода обработки результатов запроса. Данный конструктор помогает
создавать следующие варианты обработки результатов запроса:</p>
<p class=»MsoListBulletCxSpFirst«>●
простой обход результатов запроса,</p>
<p class=»MsoListBulletCxSpMiddle«>●
вывод результатов запроса в табличный документ,</p>
<p class=»MsoListBulletCxSpLast«>●
вывод результатов запроса в диаграмму.</p>
<p class=»MsoNormalCxSpFirst«>Для вызова конструктора предназначен пункт <span class=»Interface«>Конструктор запроса с обработкой результата</span> контекстного
меню редактора модулей.</p>
<p class=»MsoNormalCxSpLast«>При вызове конструктор ищет в текущей строке
код, который мог быть создан конструктором. Если такой код найден, то конструктор
загружает найденный код (включая имена макетов и т. д.).</p>
<p class=»Regularbeforepicture«>Окно конструктора запроса будет отличаться от
описанного выше редактора запросов (см. <a href=»#_ref222321022«>здесь</a>).</p>
<p class=»Picture«><IMG src=»_img/img00525.gif?_=1496848987» WIDTH=»716» ALT HEIGHT=»419«></p>
<p class=»MsoCaption«>Рис. 517. Конструктор запроса с
обработкой результата</p>
<p class=»MsoNormal«>В конструкторе, открытом в таком режиме:</p>
<p class=»MsoListBullet«>●
На закладке <span class=»Interface«>Обработка результата</span> происходит выбор типа обработки
результата запроса:</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Interface«>Обход результата</span>,</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Вывод в табличный документ</span>,</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Interface«>Вывод в диаграмму</span>.</p>
<p class=»MsoListBullet«>●
При выборе режима <span class=»Interface«>Вывод в табличный документ</span> и <span class=»Interface«>Вывод в диаграмму</span> отображаются параметры вывода в данные
объекты.</p>
<p class=»MsoNormalCxSpFirst«>После нажатия кнопки <span class=»Interface«>ОК</span> генерируется программный код, который будет вставлен
в текущую позицию модуля. Если конструктор вызывался над уже сгенерированным
кодом, старый код заменяется.</p>
<p class=»MsoNormalCxSpLast«>Если вывод осуществлялся в табличный
документ, то в объекте метаданных, в модуле объекта или модуле формы которого
он вызывался, создается макет для вывода в табличный документ. Он же
модифицируется при повторном вызове конструктора. Данный макет удаляется, если
ранее конструктор использовался для создания табличного документа, а теперь
вызывается для генерации другого способа обработки результатов запроса. Если
конструктор вызывается в общем модуле, то создается общий макет.</p>
<p class=»Note«><span class=»Note«>Примечание.</span> Если у конфигурации
установлен режим редактирования конфигурации для режимов запуска в управляемом
приложении, то в меню объектов метаданных недоступна команда вызова
конструктора выходных форм.</p>
<a name=»_ref141014676«></a><a name=»_ref141003552«></a><a id=»TI000000970» class=»bookmark» name=»issogl1_27.10.конструктор_движений_регистров«><h2>27.10.Конструктор движений регистров</h2></a>
<p class=»MsoNormalCxSpFirst«>Конструктор движений регистров применяется
для документов.</p>
<p class=»MsoNormalCxSpLast«>Для запуска конструктора движений регистров в
окне редактирования документа, на закладке <span class=»Interface«>Движения</span> нужно указать состав регистров, движения
которых осуществляет данный документ, и нажать кнопку <span class=»Interface«>Конструктор движений</span>. Если для выбранного документа определен
состав движений хотя бы по одному регистру, то указанный пункт контекстного
меню будет доступен.</p>
<p class=»Regularbeforepicture«>При запуске конструктор запрашивает выбор
регистра, по которому будет произведено формирование процедуры <span class=»Term«>ОбработкаПроведения()</span>,
и открывает окно конструктора.</p>
<p class=»Picture«><IMG src=»_img/img00526.gif?_=1496848987» WIDTH=»492» ALT HEIGHT=»410«></p>
<p class=»MsoCaption«>Рис. 518. Конструктор движений
регистров</p>
<p class=»MsoNormalCxSpFirst«>Первоначально список содержит только
указанный регистр. Список можно изменить, добавляя регистры из списка регистров,
отмеченных на закладке <span class=»Interface«>Движения</span> окна редактирования документа.</p>
<p class=»MsoNormalCxSpMiddle«>Для каждого регистра в зависимости от его
типа необходимо указать предварительные настройки: для регистров накопления
остатков указать тип движения; для регистров бухгалтерии, не поддерживающих
корреспонденцию, – вид корреспонденции и счет; для регистров,
поддерживающих корреспонденцию, – счет дебета и счет кредита.</p>
<p class=»MsoNormalCxSpMiddle«>Если у документа есть табличные части и их
данные должны влиять на состояние регистров, то включение табличной части производится
в списке выбора <span class=»Interface«>Табличная часть</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Затем для каждого регистра производится
заполнение формул атрибутов по данным реквизитов документа.</p>
<p class=»MsoNormalCxSpMiddle«>В список формул нужно поместить формулы,
определяющие, как вычислять движения регистра по выбранным реквизитам документа.</p>
<p class=»MsoNormalCxSpMiddle«>Эти формулы можно создавать «вручную»
следующим образом. Формула вводится в колонке <span class=»Interface«>Формула</span> для каждого атрибута регистра, выделенного в
списке. Можно вручную набрать ее в этом поле (а также вручную редактировать в
нем созданную ранее формулу). Правильность написания формул конструктор не
проверяет.</p>
<p class=»MsoNormalCxSpMiddle«>Можно также двойным щелчком в списке
реквизитов документа помещать данные соответствующего реквизита в формулу. Конструктор
не проверяет соответствие типов выбранных реквизитов.</p>
<p class=»MsoNormalCxSpMiddle«>Если есть хотя бы один тип, принадлежащий как
реквизиту, так и измерению/ресурсу регистра и при этом их наименования совпадают,
то для таких подчиненных объектов можно применить режим <span class=»Interface«>Автозаполнение</span>. Наименование реквизитов при нажатии
кнопки <span class=»Interface«>Заполнить
выражения</span> заносится в колонку <span class=»Interface«>Выражение</span> и может быть отредактировано.</p>
<p class=»MsoNormalCxSpLast«>В результате работы конструктора в модуле
объекта создается процедура <span class=»Term«>ОбработкаПроведения()</span>.
В начало процедуры конструктор помещает предупреждение: <span class=»Interface«>Данный фрагмент построен конструктором. При повторном
использовании конструктора внесенные вручную изменения будут потеряны!</span></p>
<a name=»_ref141014572«></a><a name=»_ref141002742«></a><a name=»_ref425413158«></a><a id=»TI000000971» class=»bookmark» name=»issogl1_27.11.конструктор_печати«><h2>27.11.Конструктор печати</h2></a>
<p class=»MsoNormalCxSpFirst«>Конструктор печати предназначен для создания
макета с заданными именованными областями и процедуры печати для объекта
конфигурации.</p>
<p class=»MsoNormalCxSpLast«>Конструктор печати работает с объектами конфигурации:</p>
<p class=»MsoListBulletCxSpFirst«>●
Справочники,</p>
<p class=»MsoListBulletCxSpMiddle«>●
Документы,</p>
<p class=»MsoListBulletCxSpMiddle«>●
Журналы документов,</p>
<p class=»MsoListBulletCxSpMiddle«>●
Планы видов характеристик,</p>
<p class=»MsoListBulletCxSpMiddle«>●
Планы счетов,</p>
<p class=»MsoListBulletCxSpMiddle«>●
Планы расчетов,</p>
<p class=»MsoListBulletCxSpLast«>●
Планы обмена.</p>
<p class=»MsoNormalCxSpFirst«>Основные приемы работы с конструктором печати
будут рассмотрены ниже на примере работы со справочником. Для других видов
объектов конфигурации работа с конструктором может несколько отличаться.</p>
<p class=»MsoNormalCxSpLast«>Для запуска конструктора печати в окне <span class=»Interface«>Конфигурация</span> нужно указать требуемый объект. В
контекстном меню выбрать пункт <span class=»Interface«>Конструкторы – Конструктор печати</span>.</p>
<p class=»Regularbeforepicture«>В связи с тем, что результатом работы
конструктора печати является процедура печати, располагаемая в модуле менеджера
объекта, конструктор сначала проверяет доступность данного модуля. Если модуль
объекта имеет ограничение доступа, на экран выводится запрос пароля. После
ввода пароля на экран выводится окно конструктора.</p>
<p class=»Picture«><IMG src=»_img/img00527.gif?_=1496848987» WIDTH=»578» ALT HEIGHT=»436«></p>
<p class=»MsoCaption«>Рис. 519. Выбор варианта работы</p>
<p class=»MsoNormalCxSpFirst«>Вначале конструктор предлагает выбрать, для
какого варианта запуска будет формироваться модуль печати.</p>
<p class=»MsoNormalCxSpLast«>Затем конструктор предлагает создать новую
команду печати или изменить существующую команду. В случае создания новой
команды предлагается указать ее имя. По умолчанию для команды предлагается имя <span class=»Interface«>Печать</span>. Указанное имя будет использоваться в качестве:</p>
<p class=»MsoListBulletCxSpFirst«>●
имени команды объекта;</p>
<p class=»MsoListBulletCxSpMiddle«>●
имени серверного метода модуля команды;</p>
<p class=»MsoListBulletCxSpLast«>●
имени метода менеджера объекта, который
непосредственно реализует процедуру печати.</p>
<p class=»Picture«><IMG src=»_img/img00528.gif?_=1496848987» WIDTH=»578» ALT HEIGHT=»436«></p>
<p class=»MsoCaption«>Рис. 520. Создание команды печати</p>
<p class=»MsoNormal«>Если выбрано изменение существующей команды,
то в модуле команды объекта будут замещены тексты обработчика <span class=»Term«>ОбработкаКоманды()</span>,
серверного метода с именем команды (в данном случае – <span class=»Term«>Печать()</span>),
метода модуля менеджера объекта с именем команды и макета.</p>
<p class=»Regularbeforepicture«>После нажатия кнопки <span class=»Interface«>Далее ></span> конструктор переходит к выбору
реквизитов шапки. С помощью кнопок переноса нужно сформировать список
реквизитов.</p>
<p class=»Picture«><IMG src=»_img/img00529.gif?_=1496848987» WIDTH=»578» ALT HEIGHT=»436«></p>
<p class=»MsoCaption«>Рис. 521. Выбор реквизитов шапки</p>
<p class=»MsoNormalCxSpFirst«>Если объект конфигурации имеет табличные
части, то после нажатия кнопки <span class=»Interface«>Далее ></span> конструктор переходит к выбору реквизитов
очередной табличной части. Список печати формируется аналогично списку
реквизитов шапки.</p>
<p class=»MsoNormalCxSpLast«>Если объект конфигурации имеет табличные
части, то после нажатия кнопки <span class=»Interface«>Далее ></span> конструктор переходит к выбору реквизитов
подвала.</p>
<p class=»Regularbeforepicture«>Затем следует указать, к какой группе будет
отнесена созданная команда, и указать некоторые параметры сформированного табличного
документа.</p>
<p class=»Picture«><IMG src=»_img/img00530.gif?_=1496848987» WIDTH=»578» ALT HEIGHT=»436«></p>
<p class=»MsoCaption«>Рис. 522. Настройка конструктора
печати</p>
<p class=»MsoNormalCxSpFirst«>Нажатие кнопки <span class=»Interface«>ОК</span> завершает работу конструктора печати.</p>
<p class=»MsoNormalCxSpLast«>В результате работы конструктора:</p>
<p class=»MsoListBulletCxSpFirst«>●
У выбранного объекта создается макет <span class=»Interface«>Макет</span> с печатной формой (имя формы соответствует имени
созданной команды).</p>
<p class=»MsoListBulletCxSpMiddle«>●
У выбранного объекта создается команда, которая
подготавливает табличный документ и вызывает серверную процедуру (с именем
команды), заполняющую переданный табличный документ.</p>
<p class=»MsoListBulletCxSpLast«>●
В модуле менеджера выбранного объекта
генерируется процедура, параметры которой позволяют печатать сразу несколько
объектов (список). Созданная команда получает права, аналогичные праву <span class=»Interface«>Просмотр</span> объекта, для которого вызывается конструктор.</p>
<a name=»_ref141014854«></a><a name=»_ref141014711«></a><a name=»_ref141014641«></a><a name=»_ref141003107«></a><a id=»TI000000972» class=»bookmark» name=»issogl1_27.12.конструктор_ввода_на_основании«><h2>27.12.Конструктор ввода на основании</h2></a>
<p class=»MsoNormalCxSpFirst«>Конструктор ввода на основании облегчает
задачу разработки процедуры, с помощью которой будет формироваться новый объект.</p>
<p class=»MsoNormalCxSpLast«>Конструктор ввода на основании применяется:</p>
<p class=»MsoListBulletCxSpFirst«>●
для справочников,</p>
<p class=»MsoListBulletCxSpMiddle«>●
документов,</p>
<p class=»MsoListBulletCxSpMiddle«>●
планов видов характеристик,</p>
<p class=»MsoListBulletCxSpMiddle«>●
планов счетов,</p>
<p class=»MsoListBulletCxSpMiddle«>●
планов видов расчета,</p>
<p class=»MsoListBulletCxSpMiddle«>●
планов обмена,</p>
<p class=»MsoListBulletCxSpMiddle«>●
бизнес-процессов,</p>
<p class=»MsoListBulletCxSpLast«>●
задач.</p>
<p class=»MsoNormal«>Для запуска конструктора в окне <span class=»Interface«>Конфигурация</span> нужно указать требуемый объект. В
контекстном меню выбрать пункт <span class=»Interface«>Конструкторы – Конструктор ввода на основании</span>. Если
для выбранного объекта конфигурации определен режим ввода на основании, то
указанный пункт контекстного меню будет доступен.</p>
<p class=»Regularbeforepicture«>При запуске открывается окно <span class=»Interface«>Конструктор ввода на основании</span>.</p>
<p class=»Picture«><IMG src=»_img/img00531.gif?_=1496848987» WIDTH=»598» ALT HEIGHT=»488«></p>
<p class=»MsoCaption«>Рис. 523. Конструктор ввода на
основании</p>
<p class=»MsoNormalCxSpFirst«>В верхней части содержится список
объектов-оснований; список реквизитов объекта-основания, выбранного в первом
списке.</p>
<p class=»MsoNormalCxSpMiddle«>В нижней части расположен список реквизитов
результирующего объекта. В список реквизитов объекта нужно поместить выражения,
определяющие, как заполнять реквизиты документа по выбранным реквизитам
объекта-основания.</p>
<p class=»MsoNormalCxSpMiddle«>Эти формулы можно создавать «вручную»
следующим образом. Выражение определяется в поле ввода <span class=»Interface«>Формула</span> заполнения реквизита для реквизита объекта,
выделенного в списке. Можно вручную набрать ее в этом поле (а также вручную
редактировать в нем созданную ранее формулу). Правильность написания формул
конструктор не проверяет.</p>
<p class=»MsoNormalCxSpMiddle«>Можно также двойным щелчком в списке
реквизитов объекта-основания помещать данные соответствующего реквизита в поле <span class=»Interface«>Формула</span> заполнения реквизита, причем сразу в правильной
записи. Конструктор не проверяет соответствие типов выбранных реквизитов.</p>
<p class=»MsoNormalCxSpMiddle«>Возможна и комбинация двух описанных
способов: данные из списка реквизитов объектов-оснований при помещении в поле
ввода замещают не всю имеющуюся там информацию, а только выделенные символы.</p>
<p class=»MsoNormalCxSpMiddle«>По кнопке <span class=»Interface«>Автозаполнение после запроса</span> и подтверждения программа
сама создаст формулы для заполнения по реквизитам объекта-основания. Ранее
заполненные формулы при автоматическом заполнении не изменяются. Подбор среди
реквизитов объекта-основания соответствий реквизитам документа осуществляется с
учетом имен реквизитов, их идентификаторов и типов.</p>
<p class=»MsoNormalCxSpMiddle«>По кнопке <span class=»Interface«>Очистить формулы</span> после запроса и подтверждения очищаются
все формулы, созданные как автоматически, так и вручную.</p>
<p class=»MsoNormalCxSpMiddle«>Формулы, созданные для объекта-основания,
выбранного в списке объектов-оснований, запоминаются при переходе к другому
объекту-основанию этого списка. Поэтому можно, не прекращая работы
конструктора, создать процедуры ввода на основании для нескольких
документов-оснований. Можно также возвращаться к редактированию процедуры для
какого-либо объекта-основания, снова выбирая его в списке.</p>
<p class=»MsoNormalCxSpMiddle«>Для прекращения работы конструктора служат
кнопки <span class=»Interface«>ОК</span>
и <span class=»Interface«>Отмена</span>
(соответственно с сохранением и без сохранения сделанных изменений).</p>
<p class=»MsoNormalCxSpMiddle«>В результате работы конструктора в модуле
объекта создается процедура <span class=»Term«>ОбработкаЗаполнения()</span>.
В начало процедуры конструктор помещает предупреждение: <span class=»Interface«>Данный фрагмент построен конструктором. При повторном
использовании конструктора внесенные вручную изменения будут потеряны!</span></p>
<p class=»MsoNormalCxSpLast«>При повторном использовании конструктора все
формулы, сформированные ранее для какого-либо документа-основания, будут
появляться в списке реквизитов документа при выделении соответствующего
документа-основания в списке документов-оснований. Конструктор предъявит для
просмотра и редактирования формулы, сформированные при предыдущем его запуске,
как с помощью кнопки <span class=»Interface«>Заполнить</span> формулы автоматически, так и вручную. Более
того, он учтет и формулы, вручную внесенные в модуль документа, если они
помещены в формируемую им процедуру. Правильность этих формул конструктор не
проверяет. Например, если для какого-то реквизита документа указано заполнение
двумя различными реквизитами документа-основания, конструктор для показа
выберет один из них (по алфавиту). Именно он останется в модуле после
обновления результатов работы конструктора. Вторая строка, соответствующая тому
же реквизиту, будет удалена.</p>
<a name=»_ref219792197«></a><a name=»_ref219791782«></a><a name=»_ref216266793«></a><a name=»_ref441854797«></a><a id=»TI000000973» class=»bookmark» name=»issogl1_27.13.конструктор_форм_объектов_конфигурации«><h2>27.13.Конструктор форм объектов конфигурации</h2></a>
<p class=»MsoNormal«>Для каждого объекта конфигурации, в составе
которого могут находиться подчиненные объекты типа <span class=»Interface«>Форма</span>, при добавлении новой формы запускается <span class=»Interface«>Конструктор формы</span>. Это специальный мастер, с помощью
которого производится выбор типа формы и размещаются реквизиты объекта конфигурации.
Несмотря на существенные различия типов объектов, для которых производится
создание формы, конструкторы имеют много общего. Поэтому рассмотрим работу конструктора
форм на примере конструктора формы документа.</p>
<p class=»Regularbeforepicture«>При создании новой формы объекта на экран
выводится конструктор формы.</p>
<p class=»Picture«><IMG src=»_img/img00532.gif?_=1496848987» WIDTH=»449» ALT HEIGHT=»420«></p>
<p class=»MsoCaption«>Рис. 524. Конструктор формы</p>
<p class=»MsoNormal«>Группа элементов управления <span class=»Interface«>Выберите тип формы</span> предназначена для выбора типа формы
(состав определяется видом выбранного объекта конфигурации, для которого создается
форма). Для объекта конфигурации <span class=»Term«>Документ</span>
это следующие формы:</p>
<p class=»MsoListBulletCxSpFirst«>●
форма документа;</p>
<p class=»MsoListBulletCxSpMiddle«>●
форма списка документа;</p>
<p class=»MsoListBulletCxSpMiddle«>●
форма выбора документа;</p>
<p class=»MsoListBulletCxSpLast«>●
произвольная форма (пустая форма).</p>
<p class=»MsoNormalCxSpFirst«>Число форм по каждому типу форм неограниченно.
Если у объекта несколько форм одного типа, то одну из них можно выбрать в
качестве основной. Если при вызове формы объекта не указано явно, какую именно
форму следует вызвать, на экран будет выводиться основная форма. Для указания основной
формы при создании нужно установить флажок <span class=»Interface«>Назначить форму основной</span>. В дальнейшем выбор основной
формы можно изменить в окне редактирования объекта (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 2. работа с конфигурацией.htm?_=1496848987#_ref216514138«>здесь</a>), на закладке <span class=»Interface«>Формы</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Выбор типа <span class=»Interface«>Произвольная форма</span> не приводит к созданию основного
реквизита. В этом случае форма имеет типовое поведение. Выбор иного типа формы
влечет создание основного реквизита и определяет отличительное от типового поведение
формы. Данные отличия описываются объектами, называемыми расширение формы (см. описание
соответствующих объектов справки по встроенному языку).</p>
<p class=»MsoNormalCxSpMiddle«>Выбор типа формы определяет тип основного
реквизита и, следовательно, поведение всей формы, а также возможный состав команд
панели инструментов.</p>
<p class=»MsoNormalCxSpMiddle«>Нужно указать имя формы, синоним и
комментарий.</p>
<p class=»MsoNormalCxSpMiddle«>Состав команд командных панелей определяется
источником действий и типом основного реквизита формы.</p>
<p class=»MsoNormalCxSpLast«>Если нажать кнопку <span class=»Interface«>Готово</span>, то конструктор самостоятельно разместит элементы
управления в форме и откроет форму для редактирования.</p>
<p class=»Regularbeforepicture«>Если необходимо изменить состав реквизитов
формы, следует нажать кнопку <span class=»Interface«>Далее ></span>. Состав реквизитов определяется основным
реквизитом формы.</p>
<p class=»Picture«><IMG src=»_img/img00533.gif?_=1496848987» WIDTH=»449» ALT HEIGHT=»422«></p>
<p class=»MsoCaption«>Рис. 525. Выбор реквизитов формы</p>
<p class=»MsoNormal«>На этом шаге конструктора формы следует
выбрать реквизиты, которые необходимо разместить в форме. Выбор осуществляется
в колонке <span class=»Interface«>Реквизиты</span>
установкой пометки слева от наименования элемента.</p>
<p class=»Note«><span class=»Note«>ВНИМАНИЕ!</span> Конструктор формы не
включает в список те реквизиты, чей тип не имеет визуального представления (например,
<span class=»Term«>ХранилищеЗначения</span>).</p>
<a name=»_ref217280928«></a><a id=»TI000000974» class=»bookmark» name=»issogl2_27.13.1_особенности_конструктора_форм_констант«><h3>27.13.1. Особенности конструктора форм констант</h3></a>
<p class=»Regularbeforepicture«>Каждая константа может иметь собственную
форму редактирования. Для создания такой формы необходимо выполнить команду <span class=»Interface«>Создать форму констант</span> контекстного меню нужной
константы.</p>
<p class=»Picture«><IMG src=»_img/img00534.gif?_=1496848987» WIDTH=»324» ALT HEIGHT=»349«></p>
<p class=»MsoCaption«>Рис. 526. Создание формы
редактирования констант</p>
<p class=»Regularbeforepicture«>После выполнения данной команды будет открыт
конструктор общей формы, где в качестве данных будут перечислены все константы
системы и текущая константа будет единственным выбранным реквизитом (по
умолчанию).</p>
<p class=»Picture«><IMG src=»_img/img00535.gif?_=1496848987» WIDTH=»702» ALT HEIGHT=»420«></p>
<p class=»MsoCaption«>Рис. 527. Выбор редактируемых
констант</p>
<p class=»MsoNormalCxSpFirst«>Такая же форма будет автоматически создана
системой, если у константы не будет заполнено свойство <span class=»Interface«>Основная форма</span>, но будет установлено свойство <span class=»Interface«>Использовать стандартные команды</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Если необходимо создать форму редактирования
нескольких констант, то следует создать общую форму типа <span class=»Interface«>Форма констант</span>, а затем на странице выбора реквизитов
указать константы, которые необходимо редактировать.</p>
<p class=»MsoNormalCxSpMiddle«>Формы констант будут входить в командный
интерфейс тех подсистем, куда входит сама константа (если у константы установлено
свойство <span class=»Interface«>Использовать
стандартные команды</span>) и общая форма редактирования константы (если у
общей формы установлено свойство <span class=»Interface«>Использовать стандартные команды</span>).</p>
<p class=»MsoNormalCxSpLast«>Если для константы, у которой установлено
свойство <span class=»Interface«>Использовать
стандартные команды</span>, создается форма редактирования, то конструктор
общей формы сбрасывает свойство <span class=»Interface«>Использовать стандартные команды</span> для формы. Таким
образом, формы редактирования константы будут попадать в командные интерфейсы
только тех подсистем, куда входит сама константа.</p>
<a name=»_ref141015030«></a><a name=»_ref141003509«></a><a id=»TI000000975» class=»bookmark» name=»issogl1_27.14.конструктор_макета«><h2>27.14.Конструктор макета</h2></a>
<p class=»MsoNormal«>Конструктор макета используется для создания
макетов объектов конфигурации и общих макетов.</p>
<p class=»Regularbeforepicture«>Окно конструктора выводится на экран при
выполнении пункта <span class=»Interface«>Действия – Добавить</span>, если выбрана ветвь подчиненного
объекта <span class=»Interface«>Макеты</span>
или <span class=»Interface«>Общие макеты</span>.</p>
<p class=»Picture«><IMG src=»_img/img00536.gif?_=1496848987» WIDTH=»449» ALT HEIGHT=»437«></p>
<p class=»MsoCaption«>Рис. 528. Конструктор макета</p>
<p class=»MsoNormalCxSpFirst«>Нужно указать имя, синоним и комментарий и выбрать
тип макета.</p>
<p class=»MsoNormalCxSpMiddle«>Тип <span class=»Interface«>Табличный документ</span> предполагает использование
стандартной технологии создания и использования макетов табличных документов
системы «1С:Предприятие».</p>
<p class=»MsoNormalCxSpMiddle«>Тип макета <span class=»Interface«>Текстовый документ</span> предполагает использование специально
подготовленных в качестве макетов текстовых документов. Для текстового
документа свойство <span class=»Interface«>Расширение</span> имеет значение <span class=»Interface«>Текстовый макет</span>.</p>
<p class=»MsoNormalCxSpLast«>Выбор типа <span class=»Interface«>Двоичные данные</span> подразумевает, что разработчик
конфигурации знает, как работать с объектом данного типа.</p>
<p class=»Regularbeforepicture«>Тип макета <span class=»Interface«>Active document</span> позволяет использовать технологию <span class=»Interface«>OLE Active document</span>. Если нажать кнопку <span class=»Interface«>Готово</span>, то конструктор производит поиск доступных типов <span class=»Interface«>Active document</span> и предлагает выбрать один из найденных.</p>
<p class=»Picture«><IMG src=»_img/img00537.gif?_=1496848987» WIDTH=»506» ALT HEIGHT=»277«></p>
<p class=»MsoCaption«>Рис. 529. Вставка Active document</p>
<p class=»MsoNormalCxSpFirst«>Можно выбрать готовый <span class=»Interface«>Active document</span>, служащий основой для создания макета
(загрузить из файла прототип макета). Если выбран файл, чей тип не попадает в
список поддерживаемых <span class=»Interface«>Active document</span>, то конструктор выводит предупреждение.</p>
<p class=»MsoNormalCxSpMiddle«>Указанный документ будет храниться в
конфигурации. Работа с макетом должна быть организована с использованием
свойств и методов, предоставляемых выбранной технологической платформой.</p>
<p class=»MsoNormalCxSpLast«>Если выбран тип <span class=»Interface«>HTML-документ</span>, то открывается редактор HTML-макета. В
данном режиме поддерживаются все возможности HTML-редактора. В дополнение к
этому редактор HTML-макета позволяет использовать картинки библиотеки картинок,
из файла, из файла-коллекции или из «внутренних» картинок. Внутренние картинки –
это уже выбранные из файла картинки, они хранятся «внутри» макета.</p>
<p class=»Regularbeforepicture«>Чтобы поместить картинку в макет, нужно
выбрать пункт <span class=»Interface«>Элементы –
Картинка…</span></p>
<p class=»Picture«><IMG src=»_img/img00538.gif?_=1496848987» WIDTH=»352» ALT HEIGHT=»193«></p>
<p class=»MsoCaption«>Рис. 530. Вставка картинки</p>
<p class=»Regularbeforepicture«>Для выбора картинки нажать кнопку выбора. В открывшемся
окне выбрать нужную картинку.</p>
<p class=»Picture«><IMG src=»_img/img00539.gif?_=1496848987» WIDTH=»469» ALT HEIGHT=»353«></p>
<p class=»MsoCaption«>Рис. 531. Выбор картинки</p>
<p class=»MsoNormalCxSpFirst«>Выбор типа <span class=»Interface«>Географическая схема</span> позволяет использовать
подготовленные редактором географических схем документы для создания макета.</p>
<p class=»MsoNormalCxSpMiddle«>Выбор типа <span class=»Interface«>Графическая схема</span> позволяет использовать графические
схемы, подготовленные в редакторе графических схем, или загрузить схему из
файла и использовать ее в качестве макета.</p>
<p class=»MsoNormalCxSpMiddle«>Выбор типа <span class=»Interface«>Схема компоновки данных</span> открывает конструктор схемы
компоновки данных (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 10. система компоновки данных.htm?_=1496848987#_ref166301286«>здесь</a>).</p>
<p class=»MsoNormalCxSpLast«>Выбор типа <span class=»Interface«>Макет оформления компоновки данных</span> открывает окно
конструктора макета оформления (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 10. система компоновки данных.htm?_=1496848987#_ref166301515«>здесь</a>).<br>
Выбор типа <span class=»Interface«>Внешняя
компонента</span> позволяет загрузить внешнюю компоненту в zip-архиве. В архив должны
входить собственно файлы внешних компонент и специальный манифест. Внешняя
компонента, загруженная таким образом, может использоваться как в обычном
прикладном решении, так и в мобильном приложении (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 25. разработка решений для мобильной платформы.htm?_=1496848987#_ref335129928«>здесь</a>).</p>
<a name=»_ref216235847«></a><a name=»_ref216164271«></a><a name=»_ref452127037«></a><a name=»_ref452127036«></a><a id=»TI000000976» class=»bookmark» name=»issogl1_27.15.конструктор_форматной_строки«><h2>27.15.Конструктор форматной строки</h2></a>
<p class=»MsoNormalCxSpFirst«>Для написания выражений, использующих
представление числа, даты и логического выражения, можно использовать конструктор
форматной строки.</p>
<p class=»MsoNormalCxSpMiddle«>Чтобы вызвать конструктор, нужно установить
курсор в требуемое место текста модуля и выбрать пункт <span class=»Interface«>Текст – Конструктор форматной строки</span>. Для новой
строки редактор выводит сообщение: <span class=»Interface«>Форматная строка не найдена. Создать новую форматную строку?</span>
После нажатия кнопки <span class=»Interface«>Да</span> на экран выводится окно конструктора.</p>
<p class=»MsoNormalCxSpMiddle«>Также конструктор можно вызвать из свойств <span class=»Interface«>Формат</span> и <span class=»Interface«>Формат редактирования</span> элемента формы. Для этого нужно
нажать кнопку выбора соответствующего свойства.</p>
<p class=»MsoNormalCxSpMiddle«>Закладки окна соответствуют типу данных,
форматная строка которых формируется в окне.</p>
<p class=»MsoNormalCxSpLast«>Элементы управления, с помощью которых
выбирается формат представления, размещены на трех закладках по типам данных:</p>
<p class=»MsoListBulletCxSpFirst«>●
число,</p>
<p class=»MsoListBulletCxSpMiddle«>●
дата,</p>
<p class=»MsoListBulletCxSpLast«>●
логические значения.</p>
<p class=»MsoNormal«>Поле <span class=»Interface«>Язык (Страна)</span> (параметр <span class=»Term«>Л</span>)
определяет представление информации в соответствии с национальными
представлениями. Значения, заданные на следующих закладках, являются более приоритетными
по отношению к указанию страны.</p>
<p class=»Regularbeforepicture«>Для числа нужно выбрать закладку <span class=»Interface«>Число</span>.</p>
<p class=»Picture«><IMG src=»_img/img00540.gif?_=1496848987» WIDTH=»467» ALT HEIGHT=»397«></p>
<p class=»MsoCaption«>Рис. 532. Конструктор форматной
строки для числа</p>
<p class=»MsoNormalCxSpFirst«>В поле <span class=»Interface«>Длина</span> (параметр <span class=»Term«>ЧЦ</span>) указывается общее число десятичных знаков
(целой и дробной частей). В поле <span class=»Interface«>Точность</span> (параметр <span class=»Term«>ЧДЦ</span>) указывается число десятичных знаков дробной
части.</p>
<p class=»MsoNormalCxSpMiddle«>В поле <span class=»Interface«>Сдвиг</span> (параметр <span class=»Term«>ЧС</span>) указывается сдвиг разрядов. Если значение
поля положительное, то производится деление числа на 10 в соответствующей
степени, если отрицательное – умножение.</p>
<p class=»MsoNormalCxSpMiddle«>В поле <span class=»Interface«>Разделитель дробной части</span> (параметр <span class=»Term«>ЧРД</span>) задается символ разделителя.</p>
<p class=»MsoNormalCxSpMiddle«>В поле <span class=»Interface«>Разделитель групп</span> (параметр <span class=»Term«>ЧРГ</span>) задается символ разделителя групп. Если в
качестве разделителя использовать пустую строку, то разделителем будет символ
неразрывного пробела.</p>
<p class=»MsoNormalCxSpMiddle«>В поле <span class=»Interface«>Группировка</span> (параметр <span class=»Term«>ЧГ</span>) выбирается вариант группировки цифр в
целой части числа.</p>
<p class=»MsoNormalCxSpMiddle«>В поле <span class=»Interface«>Представление нуля</span> (параметр <span class=»Term«>ЧН</span>) выбирается вариант представления нулевого
значения. Параметр можно использовать в форматной строке, для поля ввода он не
используется.</p>
<p class=»MsoNormalCxSpMiddle«>В поле <span class=»Interface«>Представление отрицательных чисел</span> (параметр <span class=»Term«>ЧО</span>) выбирается вариант представления
отрицательных чисел.</p>
<p class=»MsoNormalCxSpLast«>Если флажок <span class=»Interface«>Выводить лидирующие нули</span> (параметр <span class=»Term«>ЧВН</span>) установлен, то лидирующие нули выводятся.</p>
<p class=»Note«><span class=»Note«>Совет.</span> В нижней части окна
конструктора расположена область, в которую выводится результат действия форматной
строки (группа <span class=»Interface«>Пример</span>) и сама форматная строка.</p>
<p class=»Regularbeforepicture«>Для настройки даты нужно выбрать закладку <span class=»Interface«>Дата</span>.</p>
<p class=»Picture«><IMG src=»_img/img00541.gif?_=1496848987» WIDTH=»467» ALT HEIGHT=»397«></p>
<p class=»MsoCaption«>Рис. 533. Конструктор форматной
строки для даты</p>
<p class=»MsoNormalCxSpFirst«>В поле <span class=»Interface«>Формат даты</span> (параметр <span class=»Term«>ДФ</span>) выбирается вариант представления даты. Рекомендуется
использовать этот формат в том случае, когда требуется получить в точности тот
или иной формат представления даты, вне зависимости от параметров локализации.
Например, для форматной строки <span class=»Term«>ДФ=гггг-ММ-дд</span>,
представление даты всегда будет выглядеть как <span class=»Interface«>2015-12-01</span>.</p>
<p class=»MsoNormalCxSpLast«>В поле <span class=»Interface«>Локальный формат даты</span> (параметр <span class=»Term«>ДЛФ</span>) выбирается локальный вариант
представления даты. Для поля ввода не допускается выбор значения параметра <span class=»Term«>ДД</span>. Этот вариант представления рекомендуется
выбирать в тех случаях, когда при формировании представления даты следует
учитывать текущие параметры локализации. Параметры локализации могут
указываться как непосредственно в форматной строке, так и получаться из
региональных настроек информационной базы.</p>
<p class=»Lang-subheader«>Пример:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_res«>
Формат(‘20151201’, "Л=ru;ДЛФ=Д") = 01.12.2015
Формат(‘20151201’, "Л=en_US;ДЛФ=Д") = 12/1/2015
Формат(‘20151201’, "Л=ru;ДЛФ=ДB") = 01.12.2015 0:00:00
Формат(‘20151201’, "Л=en_US;ДЛФ=ДВ") = 12/1/2015 12:00:00 AM
</pre>
<p class=»MsoNormal«>В поле <span class=»Interface«>Представление пустой даты</span> (параметр <span class=»Term«>ДП</span>) выбирается вариант представления пустой
даты. Параметр можно использовать в форматной строке, для поля ввода он не используется.</p>
<p class=»Note«><span class=»Note«>Совет.</span> В нижней части окна
конструктора расположена область, в которую выводится результат действия форматной
строки (группа <span class=»Interface«>Пример</span>) и сама форматная строка.</p>
<p class=»Regularbeforepicture«>Для данных типа <span class=»Term«>Булево</span>
нужно выбрать закладку <span class=»Interface«>Логическое значение</span>.</p>
<p class=»Picture«><IMG src=»_img/img00542.gif?_=1496848987» WIDTH=»467» ALT HEIGHT=»397«></p>
<p class=»MsoCaption«>Рис. 534. Конструктор форматной
строки для логического значения</p>
<p class=»MsoNormalCxSpFirst«>Если какое-то значение не выбрано, то оно
выбирается из настроек, устанавливаемых по умолчанию.</p>
<p class=»MsoNormalCxSpMiddle«>Подробнее о параметрах форматной строки написано
в описании параметра <span class=»Term«>ФорматнаяСтрока</span>
метода <span class=»Term«>Формат()</span>
в описании встроенного языка.</p>
<p class=»MsoNormalCxSpLast«>В результате использования конструктора
форматной строки в текст (или поле ввода) будет вставлена сформированная строка
(при нажатии кнопки <span class=»Interface«>ОК</span>).</p>
<p class=»Note«>Совет. В
редакторе текстов можно установить курсор внутри форматной строки и выбрать
пункт меню <span class=»Interface«>Текст – Конструктор
форматной строки</span> для изменения существующей форматной строки.</p>
<a id=»TI000000977» class=»bookmark» name=»issogl1_27.16.конструктор_строк_на_разных_языках«><h2>27.16.Конструктор строк на разных языках</h2></a>
<p class=»MsoNormalCxSpFirst«>Конструктор позволяет отредактировать строки
на всех языках конфигурации и дополнительно тех, чьи коды содержатся в редактируемом
наборе, однако конфигурация не содержит языков с таким кодом.</p>
<p class=»MsoNormalCxSpLast«>Результатом работы конструктора будет строка
вида:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_res«><код_языка1> = <Строка_1>; <код_языка2> = <Строка_2>;…</pre>
<p class=»MsoNormal«>Конструктор удобно использовать при создании
параметра <span class=»Term«>ИсходнаяСтрока</span>
функции глобального контекста <span class=»Term«>НСтр()</span>.</p>
<p class=»Regularbeforepicture«>Для вызова конструктора следует установить
курсор в нужное место модуля и выбрать пункт <span class=»Interface«>Текст – Конструктор строк на разных языках</span>. Редактор
анализирует текст модуля в области курсора и, когда найдена конструкция,
открывает окно конструктора. Если конструкция не найдена, то конструктор сообщает
об этом.</p>
<p class=»Picture«><IMG src=»_img/img00543.gif?_=1496848987» WIDTH=»386» ALT HEIGHT=»190«></p>
<p class=»MsoCaption«>Рис. 535. Конструктор строк на
разных языках</p>
<p class=»MsoNormalCxSpFirst«>В окне конструктора будет столько полей для
ввода текста, сколько языков определено для конфигурации.</p>
<p class=»MsoNormalCxSpLast«>Нужно ввести тексты и нажать кнопку <span class=»Interface«>ОК</span>. Результатом работы конструктора будет строка:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_res«>ru = ‘Доброе утро!’; en = ‘Good Morning!’</pre>
<a name=»_ref219791844«></a><a name=»_ref216072559«></a><a id=»TI000000978» class=»bookmark» name=»issogl1_27.17.редактор_табличных_документов«><h2>27.17.Редактор табличных документов</h2></a>
<p class=»MsoNormalCxSpFirst«>Для создания различных печатных форм, а также
форм, предназначенных для представления и ввода информации с использованием
табличных документов, в системе «1С:Предприятие» используется специализированный
редактор табличных документов.</p>
<p class=»MsoNormalCxSpLast«>Таблицу сочетаний клавиш для редактора
табличных документов можно найти в справке при использовании программы.</p>
<a id=»TI000000979» class=»bookmark» name=»issogl2_27.17.1_что_такое_табличный_документ_в_системе_1с_предприятие«><h3>27.17.1. Что такое табличный документ в системе «1С:Предприятие»</h3></a>
<p class=»MsoNormalCxSpFirst«>Хотя в программе реализована возможность
использования табличного документа для непосредственного ввода, обработки и
отображения данных различных типов, как в «обычных» электронных таблицах
(использование табличных документов, размещенных в форме), табличные документы
в системе «1С:Предприятие» используются в основном для представления уже обработанной
информации, в частности, описания печатной формы отчета. Обработка информации и
помещение ее в нужные места табличного документа для большинства объектов конфигурации
выполняются программными модулями на языке системы «1С:Предприятие».</p>
<p class=»MsoNormalCxSpMiddle«>В системе программ «1С:Предприятие» табличный
редактор применяется для работы с отдельными табличными документами и макетами
печатных форм.</p>
<p class=»MsoNormalCxSpMiddle«>Сформированный табличный документ можно
сохранить в файл на диске в различных форматах. Если документ сохранен в
формате MXL, то в дальнейшем этот документ можно просмотреть с помощью
программы работы с файлами, скачать которую можно по этому адресу: <a href=»http://v8.1c.ru/metod/fileworkshop.htm» target=»_blank«>http://v8.1c.ru/metod/fileworkshop.htm</a>.</p>
<p class=»MsoNormalCxSpMiddle«>Макет хранится внутри конфигурации. Макеты
бывают общими (располагаются в ветви <span class=»Interface«>Общие – Макеты</span>; например, макеты стандартных
платежных документов, печатающихся из различных документов), а также могут
относиться к определенному объекту конфигурации (например, карточка основного
средства). Объект конфигурации может иметь несколько различных макетов печатных
форм.</p>
<p class=»MsoNormalCxSpMiddle«>В форме также можно расположить табличный документ.
Для этого необходимо использовать элемент управления <span class=»Interface«>Поле табличного документа</span>. В этом режиме в табличный документ
можно вставить другие элементы управления.</p>
<p class=»MsoNormalCxSpMiddle«>Макеты и табличные документы с точки зрения
приемов работы практически полностью совпадают.</p>
<p class=»MsoNormalCxSpLast«>Табличные документы (отдельные файлы и
макеты) можно сравнивать и объединять.</p>
<a id=»TI000000980» class=»bookmark» name=»issogl2_27.17.2_макет«><h3>27.17.2. Макет</h3></a>
<p class=»MsoNormal«>Создание макета производится конструктором
макетов (см. <a href=»#_ref141015030«>здесь</a>) и конструктором запроса с обработкой результата (см. <a href=»#_ref141002886«>здесь</a>).</p>
<a id=»TI000000981» class=»bookmark» name=»issogl3_27.17.2.1_общие_принципы_проектирования_макета«><h4>27.17.2.1. Общие принципы проектирования макета</h4></a>
<p class=»MsoNormalCxSpFirst«>Проектирование макета заключается в
«рисовании» составных частей, кирпичиков – именованных областей, из которых
затем будет «собрана» готовая выходная форма – отчет. Так как практически
все деловые документы имеют «прямоугольную» структуру, удобнее всего создавать
макеты таких документов в редакторе, способном манипулировать прямоугольными
элементами.</p>
<p class=»MsoNormalCxSpMiddle«>Именно таким редактором и является табличный
редактор, входящий в систему «1С:Предприятие». В процессе создания макета можно
вводить в ячейки табличного документа разнообразный текст; задавать параметры
форматирования (ячейке в целом); изменять высоту строк и ширину колонок;
включать в макет рисованные элементы – линии и прямоугольники, а также
другие графические объекты: картинки, OLE-объекты и диаграммы, различные
элементы управления; определять оформление как всего табличного документа, так
и отдельных ячеек или групп ячеек.</p>
<p class=»MsoNormalCxSpMiddle«>При создании макета отчета руководствуются
следующим.</p>
<p class=»MsoNormalCxSpMiddle«>Практически каждый отчет состоит из так
называемой шапки (заголовка) отчета, в которой указывается наименование отчета,
исходные параметры построения. Для формирования таких данных создают
именованную область, которую чаще всего называют <span class=»Interface«>Шапка</span>. Если в отчете присутствует табличная часть, то в
шапку обычно включают наименования колонок.</p>
<p class=»MsoNormalCxSpMiddle«>Для вывода строк создают именованные области
(в показанном на <a href=»#_ref212448386«>рис.536</a> примере это <span class=»Term«>Строка</span>),
отвечающие за вывод различной информации в табличную часть. Число строк
табличной части обычно невозможно узнать при подготовке макета, но структурно
информация в табличной части повторяется, поэтому при построении отчета используют
одни и те же области, описывающие отдельную строку. Ячейкам, предназначенным
для вывода конкретной информации, ставят в соответствие параметры (в
приведенном примере это <span class=»Interface«>Счет</span>, <span class=»Interface«>Наименование</span>, <span class=»Interface«>Цена</span>, <span class=»Interface«>Сумма</span> и др.). При выводе очередной строки этим
параметрам присваивают содержимое каждой выводимой строки, а затем уже включают
сформированную область в состав отчета. Так происходит до тех пор, пока не будет
выведена вся информация табличной части.</p>
<p class=»MsoNormalCxSpLast«>Обычно отчет завершается выводом итоговых
данных и реквизитами ответственных лиц. Эти данные обычно размещают в области,
именуемой <span class=»Interface«>Подвал</span>.</p>
<p class=»Regularbeforepicture«>В окончательном виде макет представляет собой
совокупность прямоугольных областей, каждая из которых служит для выдачи
какой-то части готового отчета: область для выдачи заголовочной части
(наименования, даты и т. п.); область для выдачи шапки табличной
части и так далее.</p>
<p class=»Picture«><IMG src=»_img/img00544.gif?_=1496848987» WIDTH=»800» ALT HEIGHT=»504«></p>
<p class=»MsoCaption«><a name=»_ref212448386«>Рис. </a>536. Пример макета</p>
<p class=»MsoNormal«>Сам процесс построения отчета происходит
следующим образом:</p>
<p class=»MsoListBulletCxSpFirst«>●
Вначале отчет строится как пустой табличный документ.
Необходимо иметь в виду, что макет не связан напрямую с готовым отчетом. Скорее
макет представляет собой некий конструктор, набор областей, из которых в
процессе работы программного модуля складывается готовый отчет.</p>
<p class=»MsoListBulletCxSpLast«>●
В процессе обработки алгоритма отчета из макета
в нужном порядке извлекаются поименованные области, транслируются (вместо
параметров подставляются их значения) и копируются в табличный документ
готового отчета. Средства языка формирования отчетов позволяют наращивать отчет
как вниз, так и вправо.</p>
<a id=»TI000000982» class=»bookmark» name=»issogl3_27.17.2.2_свойства_ячеек_макета«><h4>27.17.2.2. Свойства ячеек макета</h4></a>
<a id=»TI000000983» class=»bookmark» name=»issogl4_категория_свойств_макет«><h5>Категория свойств «Макет»</h5></a>
<p class=»MsoNormalCxSpFirst«>Категория свойств <span class=»Interface«>Макет</span> показывается, если в свойствах табличного
документа установлено свойство <span class=»Interface«>Макет</span>.</p>
<p class=»MsoNormalCxSpLast«><span class=»Interface«>Заполнение</span> –
пункты свойства <span class=»Interface«>Заполнение</span> устанавливают, какого рода информация введена
в ячейку. Свойство показывается, если в категории <span class=»Interface«>Значения</span> не установлено свойство <span class=»Interface«>Содержит значение</span>. Пункты не изменяют внешний вид
ячейки, а используются только в процессе обработки шаблона, при формировании
готового табличного документа.</p>
<p class=»Regularbeforetable«>Пункты этого списка имеют следующий смысл:</p>
<table class=»MsoNormalTable» border=»0» cellspacing=»0» cellpadding=»0«>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpFirst«><b>Формат данных</b></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><b>Пояснение</b></p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Текст</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Информация
в ячейке является текстом и при формировании табличного документа будет
перенесена из макета в готовый табличный документ без изменений</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Параметр</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Информация
в ячейке представляет собой параметр, имя которого указывается в свойстве <span class=»Term«>Параметр</span></p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Шаблон</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Информация
в ячейке представляет собой текст с включенными в него именами параметров,
заключенных в квадратные скобки. При формировании табличного документа
переменные будут вычислены и включены в текст. Место, отводимое в тексте для
вывода значений параметров, определяется длиной этих значений.</p>
<p class=»MsoNormalCxSpMiddle«>Пример
шаблона: <span class=»Interface«>Директор: [Директор]</span></p>
</td>
</tr>
</table>
<p class=»MsoNormalCxSpMiddle«>Информация в ячейке готового табличного
документа преобразуется в тип <span class=»Term«>Строка</span>.</p>
<p class=»MsoNormalCxSpLast«><span class=»Interface«>Параметр</span> – имя
параметра для вывода содержимого ячейки. Свойство показывается, если в
категории <span class=»Interface«>Значения</span>
установлено свойство <span class=»Interface«>Содержит значение</span> или когда в свойстве <span class=»Interface«>Заполнение</span> категории <span class=»Interface«>Макет</span> выбрано значение <span class=»Interface«>Параметр</span>.</p>
<p class=»Regularbeforepicture«><span class=»Interface«>Параметр расшифровки</span> –
указывается имя параметра, по которому программа производит обработку расшифровки
значения, находящегося в ячейке. Имеет смысл использовать, когда результирующий
табличный документ размещен в форме (элемент управления <span class=»Interface«>Поле табличного документа</span>).</p>
<p class=»Picture«><IMG src=»_img/img00545.gif?_=1496848987» WIDTH=»343» ALT HEIGHT=»421«></p>
<p class=»MsoCaption«><a name=»_ref216235574«>Рис. </a>537. Виды курсоров в табличном документе</p>
<p class=»MsoNormal«>Когда готовый табличный документ открыт в
режиме <span class=»Interface«>Только
просмотр</span>, при помещении указателя мыши над ячейкой, содержащей
заполненное свойство <span class=»Interface«>Параметр расшифровки</span>, указатель мыши может принимать
форму как на <a href=»#_ref216235574«>рис.537</a> (курсор вида <span class=»Interface«>Гиперссылка</span> будет появляться тогда, когда для
ячейки-ссылки установлено свойство <span class=»Interface«>Гиперссылка</span>). Это значит, что возможна детализация
(расшифровка) данных табличного документа. Теперь, если дважды щелкнуть левой
кнопкой мыши на этой ячейке (или сделать ее активной и нажать клавишу <span class=»Interface«>Enter</span>, а для гиперссылки просто щелкнуть мышью), значение
поля будет выдано на экран:</p>
<p class=»MsoListBulletCxSpFirst«>●
Значения типа <span class=»Term«>Строка</span>,
<span class=»Term«>Число</span>, <span class=»Term«>Дата</span>
и <span class=»Term«>Перечисление</span> будут выданы для просмотра.</p>
<p class=»MsoListBulletCxSpMiddle«>●
Если значение имеет тип <span class=»Term«>Документ</span>,
соответствующий документ будет открыт для просмотра и редактирования.</p>
<p class=»MsoListBulletCxSpLast«>●
Если значение является элементом справочника,
этот элемент будет открыт для просмотра и редактирования в диалоге. Если при
настройке свойств справочника было задано редактирование в списке, будет открыта
форма списка справочника, а указатель в табличном поле будет установлен на
нужный элемент справочника.</p>
<p class=»MsoNormalCxSpFirst«>Эта обработка расшифровки называется
стандартной и не требует никаких дополнительных настроек.</p>
<p class=»MsoNormalCxSpMiddle«>Если требуется, чтобы обработка расшифровки
производилась особенным образом, то необходимо в свойствах поля табличного
документа, в категории <span class=»Interface«>События</span> для события <span class=»Interface«>Обработка расшифровки</span> указать имя процедуры, осуществляющей
обработку события, возникающего при выборе ячейки с расшифровкой. В модуле
формы в теле этой процедуры нужно средствами встроенного языка описать обработку
расшифровки.</p>
<p class=»MsoNormalCxSpMiddle«>Приведем пример. Для отчета создана форма и
макет <span class=»Interface«>МакетПечати</span>.
Макет содержит именованные области <span class=»Interface«>Заголовок</span>, <span class=»Interface«>Шапка</span>, <span class=»Interface«>ТоварыШапка</span> и <span class=»Interface«>Товары</span>. Область <span class=»Interface«>Товары</span> содержит ячейку, в параметрах расшифровки которой
указано имя параметра расшифровки <span class=»Interface«>Расшифровка</span>. В форме размещен элемент формы типа <span class=»Interface«>Таблица</span>, связанный с реквизитом формы <span class=»Term«>ТабДок</span>
типа <span class=»Term«>ТабличныйДокумент</span>. В категории свойств <span class=»Interface«>События</span> этого элемента для свойства <span class=»Interface«>Обработка расшифровки</span> указывается на процедуру обработки
выбора ячейки <span class=»Term«>РезультатОбработкиРасшифровки()</span>,
расположенной в модуле отчета.</p>
<p class=»MsoNormalCxSpLast«>Формирование табличного документа
производится по следующей примерной схеме:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«>ТабДок<span class=»operator«>.</span>ОтображатьСетку <span class=»operator«>=</span> <span class=»keyword«>Ложь</span><span class=»operator«>;</span>
ТабДок<span class=»operator«>.</span>ОтображатьЗаголовки <span class=»operator«>=</span> <span class=»keyword«>Ложь</span><span class=»operator«>;</span>
ТабДок<span class=»operator«>.</span>Защита <span class=»operator«>=</span> <span class=»keyword«>Истина</span><span class=»operator«>;</span>
ТабДок<span class=»operator«>.</span>ТолькоПросмотр <span class=»operator«>=</span> <span class=»keyword«>Истина</span><span class=»operator«>;</span>
Макет <span class=»operator«>=</span> Документы<span class=»operator«>.</span>РасходТовара<span class=»operator«>.</span>ПолучитьМакет<span class=»operator«>(</span><span class=»string«>"МакетПечати"</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»comment«>// Заголовок</span>
Область <span class=»operator«>=</span> Макет<span class=»operator«>.</span>ПолучитьОбласть<span class=»operator«>(</span><span class=»string«>"Заголовок"</span><span class=»operator«>)</span><span class=»operator«>;</span>
ТабДок<span class=»operator«>.</span>Вывести<span class=»operator«>(</span>Область<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»comment«>// Шапка</span>
Шапка <span class=»operator«>=</span> Макет<span class=»operator«>.</span>ПолучитьОбласть<span class=»operator«>(</span><span class=»string«>"Шапка"</span><span class=»operator«>)</span><span class=»operator«>;</span>
Шапка<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Заполнить<span class=»operator«>(</span>ЭтотОбъект<span class=»operator«>)</span><span class=»operator«>;</span>
ТабДок<span class=»operator«>.</span>Вывести<span class=»operator«>(</span>Шапка<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»comment«>// Товары</span>
Область <span class=»operator«>=</span> Макет<span class=»operator«>.</span>ПолучитьОбласть<span class=»operator«>(</span><span class=»string«>"ТоварыШапка"</span><span class=»operator«>)</span><span class=»operator«>;</span>
ТабДок<span class=»operator«>.</span>Вывести<span class=»operator«>(</span>Область<span class=»operator«>)</span><span class=»operator«>;</span>
ОбластьТовары <span class=»operator«>=</span> Макет<span class=»operator«>.</span>ПолучитьОбласть<span class=»operator«>(</span><span class=»string«>"Товары"</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>Для</span> <span class=»keyword«>Каждого</span> ТекСтрокаТовары <span class=»keyword«>Из</span> Товары <span class=»keyword«>Цикл</span>
ОбластьТовары<span class=»operator«>.</span>Параметры<span class=»operator«>.</span>Заполнить<span class=»operator«>(</span>ТекСтрокаТовары<span class=»operator«>)</span><span class=»operator«>;</span>
ТабДок<span class=»operator«>.</span>Вывести<span class=»operator«>(</span>ОбластьТовары<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецЦикла</span><span class=»operator«>;</span></pre>
<p class=»MsoNormal«>Пример реализации процедуры обработки выбора
расшифровки:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»keyword«>Процедура</span> РезультатОбработкаРасшифровки<span class=»operator«>(</span>Эл<span class=»operator«>,</span> Расшифровка<span class=»operator«>,</span> СтандартнаяОбработка<span class=»operator«>)</span>
СтандартнаяОбработка <span class=»operator«>=</span> <span class=»keyword«>Ложь</span><span class=»operator«>;</span>
ТипРасшифровки <span class=»operator«>=</span> ТипЗнч<span class=»operator«>(</span>Расшифровка<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>Если</span> ТипРасшифровки <span class=»operator«>=</span> Тип<span class=»operator«>(</span><span class=»string«>"СправочникСсылка.Номенклатура"</span><span class=»operator«>)</span> <span class=»keyword«>Тогда</span>
ИмяФормыОтчета <span class=»operator«>=</span> <span class=»string«>"ФормаОтчета1"</span><span class=»operator«>;</span>
<span class=»keyword«>Иначе</span>
ИмяФормыОтчета <span class=»operator«>=</span> <span class=»string«>"ФормаОтчета2"</span><span class=»operator«>;</span>
<span class=»keyword«>КонецЕсли</span><span class=»operator«>;</span>
ФормаОтчета <span class=»operator«>=</span> ОбработкаОбъект<span class=»operator«>.</span>ПолучитьФорму<span class=»operator«>(</span>ИмяФормыОтчета<span class=»operator«>)</span><span class=»operator«>;</span>
ФормаОтчета<span class=»operator«>.</span>ВыполнитьОтчет<span class=»operator«>(</span>Расшифровка<span class=»operator«>,</span> ПериодС<span class=»operator«>,</span> ПериодПо<span class=»operator«>)</span><span class=»operator«>;</span>
ФормаОтчета<span class=»operator«>.</span>Открыть<span class=»operator«>(</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span></pre>
<p class=»MsoNormalCxSpFirst«><span class=»Term«>ФормаОтчета1</span> и <span class=»Term«>ФормаОтчета2</span> –
имена форм, разработанных специально для детализированных отчетов (обычно такие
формы содержат поле табличного документа, в которое выводится результат).</p>
<p class=»MsoNormalCxSpLast«><span class=»Interface«>Использование
расшифровки</span> – определяется область использования расшифровки. При
выборе ячейки расшифровка возможна только для указанной ячейки; при выборе
строки расшифровка действует в каждой ячейке текущей строки. Если выбрано <span class=»Interface«>Не использовать</span> и указана расшифровка, расшифровка не
действует: указатель мыши не изменяет форму (возможные виды курсоров (см. <a href=»#_ref216235574«>рис.537</a>) и выбор в ячейке не отрабатывается.</p>
<a id=»TI000000984» class=»bookmark» name=»issogl4_категория_свойств_значения«><h5>Категория свойств «Значения»</h5></a>
<p class=»MsoNormalCxSpFirst«><span class=»Interface«>Содержит значение</span> –
если установлено, то ячейка содержит значение. Установка свойства влияет на
состав свойств других категорий.</p>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Тип значения</span> –
тип значения ячейки. Для табличного документа перечень содержит типы <span class=»Term«>Число</span>,
<span class=»Term«>Строка</span>, <span class=»Term«>Дата</span>
и <span class=»Term«>Булево</span>. Для элемента управления формы <span class=»Interface«>Поле табличного документа</span> помимо примитивных типов
перечень дополнительно содержит типы, определенные для текущей конфигурации, –
документы, справочники, перечисления и т. д. Кроме того, можно
установить тип данных <span class=»Term«>Произвольный</span>.
В таком случае он может быть определен уже во время заполнения формы с помощью
средств встроенного языка.</p>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Элемент управления</span> –
выбирается элемент управления для редактирования содержимого ячейки. Список возможных
значений зависит от выбранного типа содержимого. Например, при выборе в типе
данных значения <span class=»Term«>Число</span>
в качестве редактора можно выбрать <span class=»Interface«>Поле ввода</span> или <span class=»Interface«>Флажок</span>. Для выбранного типа редактора в список объектов
(<span class=»Interface«>Ячейки</span>, <span class=»Interface«>Табличный документ</span>) будет добавлена строка, содержащая
тип редактора <span class=»Interface«>Поле
ввода</span> или <span class=»Interface«>Флажок</span>. Состав свойств палитры свойств данного объекта
определяется типом выбранного элемента управления.</p>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Формат</span> – задается
форматная строка, которая будет использоваться при выводе значения. Если не
производить настройку формата изображения, то формат будет выбран из региональных
настроек информационной базы.</p>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Формат редактирования</span> –
задается форматная строка, которая будет использоваться для отображения
значения при его редактировании. Если не производить настройку формата изображения,
то формат будет выбран из региональных настроек информационной базы.</p>
<p class=»MsoNormalCxSpLast«>Формат можно ввести вручную или с помощью конструктора
форматной строки (см. <a href=»#_ref216235847«>здесь</a>).</p>
<p class=»Note«><span class=»Note«>Примечание.</span> При редактировании
табличного документа в тонком клиенте недоступны следующие свойства ячейки: <span class=»Interface«>Содержит значение</span>, <span class=»Interface«>Тип значения</span>, <span class=»Interface«>Элемент управления</span>, <span class=»Interface«>Формат редактирования</span>.</p>
<a id=»TI000000985» class=»bookmark» name=»issogl2_27.17.3_табличный_документ_в_режиме_ввода_данных«><h3>27.17.3. Табличный документ в режиме ввода данных</h3></a>
<p class=»MsoNormalCxSpFirst«>Другой способ построения отчета заключается в
том, что пользователь вводит данные в предназначенные для этого ячейки табличного
документа, размещенного в элементе формы.</p>
<p class=»MsoNormalCxSpMiddle«>В процессе ввода эти данные обрабатываются
процедурами, написанными на встроенном языке, располагаемыми в модуле формы.
Результаты расчетов могут использоваться при вычислении других ячеек табличного
документа.</p>
<p class=»MsoNormalCxSpMiddle«>После ввода данных можно распечатать отчет и
сохранить его для последующей работы.</p>
<p class=»MsoNormalCxSpLast«>Общая схема работы с табличным документом в
режиме ввода данных выглядит следующим образом:</p>
<p class=»MsoListBulletCxSpFirst«>●
формируется макет типа <span class=»Interface«>Табличный документ</span>, подготовленный особым образом, в
который будет выполняться ввод данных;</p>
<p class=»MsoListBulletCxSpMiddle«>●
формируется форма, в которой будет расположено
поле вида <span class=»Interface«>Табличный
документ</span>, и в нем будет организован ввод данных;</p>
<p class=»MsoListBulletCxSpLast«>●
формируются обработчики элемента формы вида <span class=»Interface«>Табличный документ</span>, которые будут обрабатывать данные,
введенные пользователем (при необходимости).</p>
<p class=»Regularbeforepicture«>Рассмотрим перечисленные этапы подробнее на
примере формирования бланка доставки товара из документа <span class=»Term«>ДоставкаТоваров</span>.
Желаемый бланк приведен на <a href=»#_ref229918383«>рис.
538</a>. В этом бланке поля, выделенные подчеркиванием,
должны вводиться пользователем. Причем поле <span class=»Interface«>Дата доставки</span> будет автоматически рассчитываться как
поле <span class=»Interface«>Дата оформления,</span>
увеличенное на <span class=»Interface«>Срок доставки</span>. <span class=»Interface«>Дата оформления</span> является датой документа.</p>
<p class=»Picture«><IMG src=»_img/img00546.gif?_=1496848987» WIDTH=»549» ALT HEIGHT=»197«></p>
<p class=»MsoCaption«><a name=»_ref229918383«>Рис. </a>538. Бланк доставки</p>
<a id=»TI000000986» class=»bookmark» name=»issogl3_27.17.3.1_подготовка_табличного_документа«><h4>27.17.3.1. Подготовка табличного документа</h4></a>
<p class=»Regularbeforepicture«>Для того чтобы реализовать табличное поле в
режиме ввода данных, необходимо создать макет типа <span class=»Interface«>Табличный документ</span> (с именем <span class=»Term«>БланкДоставки</span>).
Затем нужно открыть сформированный макет и установить свойство <span class=»Interface«>Макет</span> в значение <span class=»Term«>Ложь</span>.</p>
<p class=»Picture«><IMG src=»_img/img00547.gif?_=1496848987» WIDTH=»320» ALT HEIGHT=»350«></p>
<p class=»MsoCaption«>Рис. 539. Свойства табличного
документа</p>
<p class=»MsoNormalCxSpFirst«>Далее нужно сформировать необходимую
структуру документа, который будет формироваться.</p>
<p class=»MsoNormalCxSpLast«>Сформируем необходимые поля:</p>
<p class=»MsoListBullet«>●
<span class=»Interface«>Адрес доставки</span>. Нужно
объединить несколько ячеек и затем определить следующие свойства:</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Interface«>Имя</span> – <span class=»Term«>АдресДоставки</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Защита</span> – <span class=»Term«>Ложь</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Содержит значение</span> –
<span class=»Term«>Истина</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Тип значения</span> –
<span class=»Term«>Строка</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Interface«>Элемент управления</span> –
<span class=»Interface«>Поле ввода</span>.</p>
<p class=»MsoListBullet«>●
<span class=»Interface«>Срок доставки</span>. Для
ячейки определить следующие свойства:</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Interface«>Имя</span> – <span class=»Term«>СрокДоставки</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Защита</span> – <span class=»Term«>Ложь</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Содержит значение</span> –
<span class=»Term«>Истина</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Тип значения</span> –
<span class=»Term«>Число</span>, длина <span class=»Term«>3</span>,
точность – <span class=»Term«>0</span>,
неотрицательное;</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Interface«>Элемент управления</span> –
<span class=»Interface«>Поле ввода</span>.</p>
<p class=»MsoListBullet«>●
<span class=»Interface«>Дата доставки</span>. Для
ячейки определить следующие свойства:</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Interface«>Имя</span> – <span class=»Term«>ДатаДоставки</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Защита</span> – <span class=»Term«>Ложь</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Содержит значение</span> –
<span class=»Term«>Истина</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Тип значения</span> –
<span class=»Term«>Дата</span>, состав даты – <span class=»Interface«>Дата</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Interface«>Элемент управления</span> –
<span class=»Interface«>Поле ввода</span>.</p>
<p class=»MsoListBullet«>●
<span class=»Interface«>Дата оформления</span>. Для
ячейки определить следующие свойства:</p>
<p class=»MsoListBullet2CxSpFirst«>●
<span class=»Interface«>Имя</span> – <span class=»Term«>ДатаОформления</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Защита</span> – <span class=»Term«>Истина</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Содержит значение</span> –
<span class=»Term«>Истина</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Тип значения</span> –
<span class=»Term«>Дата</span>, состав даты – <span class=»Interface«>Дата</span>;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
<span class=»Interface«>Элемент управления</span> –
<span class=»Interface«>Поле ввода</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
<span class=»Interface«>Формат</span> – <span class=»Interface«>ДЛФ=DD</span>.</p>
<p class=»Regularbeforepicture«>В результате должен получиться табличный
документ, представленный на <a href=»#_ref229919603«>рис.
540</a>.</p>
<p class=»Picture«><IMG src=»_img/img00548.gif?_=1496848987» WIDTH=»588» ALT HEIGHT=»202«></p>
<p class=»MsoCaption«><a name=»_ref229919603«>Рис. </a>540. Готовый макет</p>
<p class=»MsoNormal«>Макет представлен с включенным режимом <span class=»Interface«>Отображать именованные ячейки</span> (можно включить с помощью
команды меню <span class=»Interface«>Таблица –
Имена – Отображать именованные ячейки</span>).</p>
<p class=»Note«><span class=»Note«>Примечание.</span> Свойства, которые
могут быть заданы для поля ввода в макете, не сохраняются и не используются
системой при формировании полей ввода в табличном документе в режиме ввода
данных.</p>
<a id=»TI000000987» class=»bookmark» name=»issogl3_27.17.3.2_подготовка_формы_к_вводу_данных«><h4>27.17.3.2. Подготовка формы к вводу данных</h4></a>
<p class=»MsoNormalCxSpFirst«>После того как подготовлен макет табличного
документа, следует сформировать форму, в которой будет выполняться ввод данных,
и реализовать ее вызов из документа.</p>
<p class=»MsoNormalCxSpLast«>В документе нужно создать команду формы <span class=»Term«>ОформитьДоставку</span>
со следующим программным текстом:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ОформитьДоставку<span class=»operator«>(</span>Команда<span class=»operator«>)</span>
ПараметрыДоставки <span class=»operator«>=</span> <span class=»keyword«>Новый</span> Структура<span class=»operator«>(</span><span class=»string«>"ДатаДокумента"</span><span class=»operator«>,</span> Объект<span class=»operator«>.</span>Дата<span class=»operator«>)</span><span class=»operator«>;</span>
ОткрытьФормуМодально<span class=»operator«>(</span><span class=»string«>"Документ.ДоставкаТоваров.Форма.ОформлениеДоставки"</span><span class=»operator«>,</span> ПараметрыДоставки<span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span></pre>
<p class=»MsoNormalCxSpFirst«>Команду следует разместить на форме.</p>
<p class=»MsoNormalCxSpMiddle«>Теперь необходимо создать форму, в которой
будет происходить ввод данных.</p>
<p class=»MsoNormalCxSpLast«>Для этого следует в документе <span class=»Term«>ДоставкаТоваров</span>
создать произвольную форму <span class=»Term«>ОформлениеДоставки</span>.
В ней нужно создать следующие элементы:</p>
<p class=»MsoListBulletCxSpFirst«>●
параметр формы <span class=»Term«>ДатаДокумента</span>
типа <span class=»Term«>Дата</span>;</p>
<p class=»MsoListBulletCxSpMiddle«>●
реквизит формы <span class=»Term«>ДатаДокумента</span>
типа <span class=»Term«>Дата</span>;</p>
<p class=»MsoListBulletCxSpMiddle«>●
реквизит формы <span class=»Term«>ТабличныйДокумент</span>
типа <span class=»Term«>ТабличныйДокумент</span>;</p>
<p class=»MsoListBulletCxSpLast«>●
элемент формы <span class=»Term«>ТабличныйДокумент</span>,
связанный с реквизитом формы <span class=»Term«>ТабличныйДокумент</span>.</p>
<p class=»Picture«><IMG src=»_img/img00549.gif?_=1496848987» WIDTH=»531» ALT HEIGHT=»376«></p>
<p class=»MsoCaption«>Рис. 541. Форма «ОформлениеДоставки»</p>
<p class=»MsoNormal«>Затем необходимо реализовать в форме
следующие обработчики:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>&НаСервере</span>
<span class=»keyword«>Процедура</span> ПриСозданииНаСервере<span class=»operator«>(</span>Отказ<span class=»operator«>,</span> СтандартнаяОбработка<span class=»operator«>)</span>
<span class=»comment«>// Запомним дату формирования документа</span>
ДатаДокумента <span class=»operator«>=</span> Параметры<span class=»operator«>.</span>ДатаДокумента<span class=»operator«>;</span>
<span class=»comment«>// Установим подготовленный макет</span>
ТабличныйДокумент <span class=»operator«>=</span> Документы<span class=»operator«>.</span>ДоставкаТоваров<span class=»operator«>.</span>ПолучитьМакет<span class=»operator«>(</span><span class=»string«>"БланкДоставки"</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»comment«>// Установим дату создания документа в поле табличного документа</span>
ТабличныйДокумент<span class=»operator«>.</span>Область<span class=»operator«>(</span><span class=»string«>"ДатаОформления"</span><span class=»operator«>)</span><span class=»operator«>.</span>Значение <span class=»operator«>=</span> ДатаДокумента<span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span>
<span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ПриОткрытии<span class=»operator«>(</span>Отказ<span class=»operator«>)</span>
<span class=»comment«>// Активизируем область табличного документа</span>
Элементы<span class=»operator«>.</span>ТабличныйДокумент<span class=»operator«>.</span>ТекущаяОбласть <span class=»operator«>=</span> ТабличныйДокумент<span class=»operator«>.</span>Область<span class=»operator«>(</span><span class=»string«>"АдресДоставки"</span><span class=»operator«>)</span><span class=»operator«>;</span>
<span class=»keyword«>КонецПроцедуры</span></pre>
<p class=»Regularbeforepicture«>В результате получается следующая форма,
заполненная данными:</p>
<p class=»Picture«><IMG src=»_img/img00550.gif?_=1496848987» WIDTH=»530» ALT HEIGHT=»464«></p>
<p class=»MsoCaption«>Рис. 542. Бланк доставки</p>
<a id=»TI000000988» class=»bookmark» name=»issogl3_27.17.3.3_реализация_реакции_на_изменение_ячеек_табличного_документа«><h4>27.17.3.3. Реализация реакции на изменение ячеек табличного документа</h4></a>
<p class=»MsoNormalCxSpFirst«>В получившейся форме отсутствует
автоматический пересчет полей <span class=»Interface«>Срок доставки</span> и <span class=»Interface«>Дата доставки</span> при их изменении.</p>
<p class=»MsoNormalCxSpMiddle«>Для того чтобы такой пересчет стал возможным,
следует реализовать обработку соответствующего события для реквизита формы,
связанного с табличным документом.</p>
<p class=»MsoNormalCxSpLast«>Нужно добавить обработчик <span class=»Term«>ПриИзмененииСодержимогоОбласти</span>
для элемента формы <span class=»Term«>ТабличныйДокумент</span>.
В обработчике должен располагаться следующий программный текст:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_dev«><span class=»preprocessor«>&НаКлиенте</span>
<span class=»keyword«>Процедура</span> ТабличныйДокументПриИзмененииСодержимогоОбласти<span class=»operator«>(</span>Элемент<span class=»operator«>,</span> Область<span class=»operator«>)</span>
СекундВСутках <span class=»operator«>=</span> <span class=»number«>24</span> <span class=»operator«>*</span> <span class=»number«>60</span> <span class=»operator«>*</span> <span class=»number«>60</span><span class=»operator«>;</span>
<span class=»keyword«>Если</span> Область<span class=»operator«>.</span>Имя <span class=»operator«>=</span> <span class=»string«>"ДатаДоставки"</span> <span class=»keyword«>Тогда</span>
ТабличныйДокумент<span class=»operator«>.</span>Область<span class=»operator«>(</span><span class=»string«>"СрокДоставки"</span><span class=»operator«>)</span><span class=»operator«>.</span>Значение <span class=»operator«>=</span> <span class=»operator«>(</span>ТабличныйДокумент<span class=»operator«>.</span>Область<span class=»operator«>(</span><span class=»string«>"ДатаДоставки"</span><span class=»operator«>)</span><span class=»operator«>.</span>Значение – НачалоДня<span class=»operator«>(</span>ДатаДокумента<span class=»operator«>)</span><span class=»operator«>)</span> <span class=»operator«>/</span> СекундВСутках<span class=»operator«>;</span>
<span class=»keyword«>ИначеЕсли</span> Область<span class=»operator«>.</span>Имя <span class=»operator«>=</span> <span class=»string«>"СрокДоставки"</span> <span class=»keyword«>Тогда</span>
ТабличныйДокумент<span class=»operator«>.</span>Область<span class=»operator«>(</span><span class=»string«>"ДатаДоставки"</span><span class=»operator«>)</span><span class=»operator«>.</span>Значение <span class=»operator«>=</span> НачалоДня<span class=»operator«>(</span>ДатаДокумента<span class=»operator«>)</span> <span class=»operator«>+</span> ТабличныйДокумент<span class=»operator«>.</span>Область<span class=»operator«>(</span><span class=»string«>"СрокДоставки"</span><span class=»operator«>)</span><span class=»operator«>.</span>Значение <span class=»operator«>*</span> СекундВСутках<span class=»operator«>;</span>
<span class=»keyword«>КонецЕсли</span>
<span class=»keyword«>КонецПроцедуры</span></pre>
<p class=»MsoNormal«>Теперь табличный документ обрел желаемую
интерактивность.</p>
<a name=»_ref214456149«></a><a name=»_ref214261058«></a><a name=»_ref214261055«></a><a id=»TI000000989» class=»bookmark» name=»issogl1_27.18.редактор_карты_маршрута«><h2>27.18.Редактор карты маршрута</h2></a>
<p class=»MsoNormalCxSpFirst«><span class=»Bold«>Карта маршрута</span> –
это схематическое изображение последовательности выполнения действий,
предусмотренных бизнес-процессом. Она является частным случаем графической
схемы.</p>
<p class=»MsoNormalCxSpMiddle«>Основное отличие карты маршрута от
графической схемы – особая обработка специальных элементов схемы (точка
старта, завершения, действия, условия и т. д.).</p>
<p class=»MsoNormalCxSpMiddle«>Карта маршрута является одновременно и
инструкцией системе по выполнению последовательности действий бизнес-процесса,
и иллюстрацией для пользователя структуры этих действий, а также средством
отображения текущего состояния бизнес-процесса (описание метода <span class=»Term«>ПолучитьКартуМаршрута()</span>
справки по встроенному языку).</p>
<p class=»MsoNormalCxSpLast«>Карта маршрута представляет собой
прямоугольную область экрана, которая в самом общем случае содержит различные
элементы карты маршрута, например, точку старта, точку завершения, декорации,
соединительные линии и т. д.</p>
<a id=»TI000000990» class=»bookmark» name=»issogl2_27.18.1_редактирование_карты_маршрута«><h3>27.18.1. Редактирование карты маршрута</h3></a>
<p class=»MsoNormalCxSpFirst«>Для редактирования карты маршрута в окне
редактирования бизнес-процесса, на закладке <span class=»Interface«>Прочее</span> нужно нажать кнопку <span class=»Interface«>Карта маршрута</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Процесс редактирования карты маршрута
заключается в размещении на карте маршрута элементов карты различных типов, редактировании
их свойств и соединении их друг с другом соединительными линиями.</p>
<p class=»MsoNormalCxSpMiddle«>Для редактирования карты маршрута
используется мышь или клавиатура (некоторые операции выполняются только с помощью
мыши – например, соединение элементов карты маршрута с помощью
соединительных линий). При появлении редактируемой карты маршрута на экране
становятся доступными кнопки панели инструментов <span class=»Interface«>Вставка элементов карты маршрута</span> и пункт меню верхнего
уровня <span class=»Interface«>Карта
маршрута</span>.</p>
<p class=»MsoNormalCxSpLast«>Установка свойств карты маршрута производится
с помощью палитры свойств (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 2. работа с конфигурацией.htm?_=1496848987#_ref216235939«>здесь</a>).</p>
<a id=»TI000000991» class=»bookmark» name=»issogl2_27.18.2_элементы_карты_маршрута«><h3>27.18.2. Элементы карты маршрута</h3></a>
<a id=»TI000000992» class=»bookmark» name=»issogl3_27.18.2.1_рекомендации_по_оформлению«><h4>27.18.2.1. Рекомендации по оформлению</h4></a>
<p class=»MsoNormalCxSpFirst«>Наилучшим подходом для рисования карт
маршрута является вертикальная ориентация карты. Карта маршрута предполагает
вертикальное расположение (сверху вниз). Например, при добавлении элемента
карты маршрута (далее в данном разделе «элемента») <span class=»Interface«>Точка действия</span> он сразу создается с исходящей
соединительной линией, направленной вниз.</p>
<p class=»MsoNormalCxSpMiddle«>При создании надписей желательно использовать
одинаковые шрифты. Использование другого шрифта является дополнительным средством
привлечения внимания (например, заголовок декорации, выделяющей группу элементов).</p>
<p class=»MsoNormalCxSpMiddle«>Редактор карты маршрута позволяет размещать в
карте маршрута различные элементы, задавать их размеры и выравнивать границы и т. д.</p>
<p class=»MsoNormalCxSpMiddle«>Чтобы облегчить размещение элементов, редактор
карты маршрута предоставляет различные сервисные средства. Это использование
разметочной сетки, а также выполнение различных действий над группой элементов
(выравнивание, распределение в карте маршрута, установка размеров и т. д.).</p>
<p class=»MsoNormalCxSpLast«>В качестве дополнительных возможностей можно
использовать индивидуальное оформление элементов. С помощью свойств категории <span class=»Interface«>Оформление</span> производится настройка цвета текста и фона
поля, шрифта текста, выбирается вид и цвет рамки, использование картинки,
подсказки и другие приемы оформления. Состав свойств зависит от типа элемента.</p>
<a id=»TI000000993» class=»bookmark» name=»issogl3_27.18.2.2_порядок_элементов«><h4>27.18.2.2. Порядок элементов</h4></a>
<p class=»MsoNormal«>В отличие от обычной графической схемы, в
карте маршрута даже после изменения порядка определенные типы элементов все
равно сохраняют порядок, характерный для данного типа. А именно:</p>
<p class=»MsoListBulletCxSpFirst«>●
Декорации всегда находятся на заднем плане
(внизу) (т. е. менять порядок декораций можно только относительно друг друга –
относительно других элементов они всегда будут ниже).</p>
<p class=»MsoListBulletCxSpMiddle«>●
Следом за декорациями (выше их) идут соединительные
линии.</p>
<p class=»MsoListBulletCxSpLast«>●
На самом верху – все остальные элементы
(визуализирующие точки бизнес-процесса). Таким образом, элементы, составляющие
логику карты маршрута, всегда лежат выше декораций и декоративных соединительных
линий по порядку отрисовки.</p>
<a id=»TI000000994» class=»bookmark» name=»issogl3_27.18.2.3_работа_с_соединительными_линиями«><h4>27.18.2.3. Работа с соединительными линиями</h4></a>
<p class=»MsoNormalCxSpFirst«>Смысл карты маршрута состоит в описании
последовательности действий бизнес-процесса – она задается именно связью
элементов с помощью элемента <span class=»Interface«>Соединительная линия</span>. Соединительные линии нельзя
вставлять просто так – они всегда присоединены к каким-либо точкам
бизнес-процесса и не могут существовать сами по себе. Соединительные линии
нельзя удалить, если это не предусмотрено точкой бизнес-процесса (например,
точка разделения и точка выбора варианта).</p>
<p class=»MsoNormalCxSpMiddle«>Связывать друг с другом можно все элементы,
визуализирующие точки бизнес-процесса, т. е. все элементы, кроме
элементов <span class=»Interface«>Декорация</span>,
<span class=»Interface«>Соединительная линия</span>
и <span class=»Interface«>Декоративная линия</span>.
По умолчанию большинство элементов, визуализирующие точки бизнес-процесса, вставляются
в карту маршрута с одной исходящей линией, которую нельзя ни отсоединить, ни
удалить. Ее можно только передвинуть на другой порт (<span class=»Bold«>порт</span> –
область элемента, куда может быть присоединена линия – обычно это середина
стороны прямоугольника, занимаемого элементом; на схеме незанятый порт обозначается
синим крестиком).</p>
<p class=»MsoNormalCxSpMiddle«>Для работы с элементом карты маршрута <span class=»Interface«>Соединительная линия</span> нужно выбрать ее нажатием мыши на
любом сегменте (отрезке) соединительной линии либо перейти к ней с помощью
клавиши <span class=»Interface«>Tab</span>
(<span class=»Interface«>Shift + Tab</span>).</p>
<p class=»MsoNormalCxSpMiddle«>Если конец линии не присоединен ни к какому
элементу, то прямоугольник на конце линии имеет красный цвет, а стрелка имеет
контур, т. е. не закрашена внутри. Для присоединения нужно мышью
захватить конец соединительной линии (серый или красный прямоугольник) и,
потащив в область порта какого-либо элемента, там отпустить. После этого
соединительная линия автоматически перестроится. Можно также переприсоединить соединительную
линию (присоединив ее конец к другому элементу). При этом действует следующее
ограничение: нельзя напрямую зациклить один элемент на втором (<span class=»Interface«>точка1</span> " <span class=»Interface«>точка2</span> и <span class=»Interface«>точка2</span> " <span class=»Interface«>точка1</span>), если ни один из этих элементов не является элементом
карты маршрута <span class=»Interface«>Точка условия</span> или <span class=»Interface«>Точка выбора варианта</span>.</p>
<p class=»MsoNormalCxSpMiddle«>При вставке элемента в карту маршрута
автоматически происходит попытка присоединить незанятые порты этого элемента к
близлежащим неприсоединенным линиям. При перемещении или изменении размера
элемента автоматически происходит попытка присоединить незанятые порты этого
элемента к близлежащим свободным (неприсоединенным) линиям, а также исходящие
из этого элемента линии, чей конец не присоединен к незанятым портам других
элементов, находящимся в непосредственной близости.</p>
<p class=»MsoNormalCxSpLast«>Элемент <span class=»Interface«>Декоративная линия</span> предназначен для соединения декораций
и точек карты маршрута. В карте маршрута может быть размещено произвольное
число декоративных линий.</p>
<a id=»TI000000995» class=»bookmark» name=»issogl3_27.18.2.4_проверка_корректности_карты_маршрута«><h4>27.18.2.4. Проверка корректности карты маршрута</h4></a>
<p class=»MsoNormal«>При выборе пункта <span class=»Interface«>Карта маршрута – Проверить</span>, а также автоматически
при сохранении карты маршрута происходит проверка корректности карты маршрута.
При этом проверяются следующие некорректные ситуации:</p>
<p class=»MsoListBulletCxSpFirst«>●
зацикливание;</p>
<p class=»MsoListBulletCxSpMiddle«>●
наличие неприсоединенных линий;</p>
<p class=»MsoListBulletCxSpMiddle«>●
наличие точек маршрута, не являющихся точкой
старта и при этом не имеющих ни одной входящей линии;</p>
<p class=»MsoListBulletCxSpMiddle«>●
карта маршрута, не имеющая ни одной точки
старта;</p>
<p class=»MsoListBulletCxSpMiddle«>●
наличие точек маршрута, не имеющих пути в точку
завершения;</p>
<p class=»MsoListBulletCxSpMiddle«>●
карта маршрута, в которой не все линии, вошедшие
в точку слияния, вышли из соответствующей ему точки разделения;</p>
<p class=»MsoListBulletCxSpMiddle«>●
карта маршрута, в которой распараллеленные ветки
(исходящие из точки разделения) входят в одни и те же точки маршрута (до точки
слияния);</p>
<p class=»MsoListBulletCxSpMiddle«>●
карта маршрута с циклами, которые не содержат ни
одной точки вида <span class=»Interface«>Точка действия</span>, <span class=»Interface«>Точка вложенного бизнес-процесса</span> или <span class=»Interface«>Точка обработки</span> (цикл – замкнутая уникальная
последовательность точек маршрута);</p>
<p class=»MsoListBulletCxSpLast«>●
карта маршрута, в которой какая-либо точка маршрута
вида <span class=»Interface«>Точка условия</span>
или <span class=»Interface«>Точка выбора варианта</span>
не имеет обработчика события (соответственно <span class=»Term«>ПроверкаУсловия()</span>
либо <span class=»Term«>ВыборВарианта()</span>).</p>
<a id=»TI000000996» class=»bookmark» name=»issogl2_27.18.3_элементы_карты_маршрута«><h3>27.18.3. Элементы карты маршрута</h3></a>
<p class=»MsoNormalCxSpFirst«>В разделе описываются все типы элементов карты
маршрута в алфавитном порядке представления элементов.</p>
<p class=»MsoNormalCxSpLast«>Поведение элементов настраивается в палитре
свойств путем установки и выбора значений. Некоторые свойства элементов присущи
всем или большинству типов элементов. Индивидуальные свойства приводятся в
справке по встроенному языку для каждого вида элементов.</p>
<a id=»TI000000997» class=»bookmark» name=»issogl3_27.18.3.1_общие_свойства_элементов_карты_маршрута«><h4>27.18.3.1. Общие свойства элементов карты маршрута</h4></a>
<p class=»MsoNormalCxSpFirst«>Существует ряд свойств, которые присущи всем
или большинству типов элементов. Обычно такие свойства имеют одинаковое
назначение и редактируются одинаковым образом. Ниже будут описаны такие
свойства, а в разделах, посвященных отдельным типам элементов, будет изложен порядок
редактирования уникальных свойств элементов.</p>
<p class=»MsoNormalCxSpMiddle«>Приводятся только свойства, отличающие
элементы карты от соответствующих элементов графической схемы.</p>
<p class=»MsoNormalCxSpMiddle«>Для удобства описания свойства будут
сгруппированы по категориям палитры свойств.</p>
<p class=»MsoNormalCxSpLast«>Некоторые свойства, описываемые ниже, для
некоторых элементов могут отсутствовать.</p>
<a id=»TI000000998» class=»bookmark» name=»issogl4_27.18.3.1.1_категория_свойств_основные«><h5>27.18.3.1.1. Категория свойств «Основные»</h5></a>
<p class=»MsoNormal«><span class=»Interface«>Наименование задачи</span> –
наименование задачи, которая будет формироваться в точках вида <span class=»Interface«>Точка действия</span> или <span class=»Interface«>Точка вложенного бизнес-процесса</span>.</p>
<a id=»TI000000999» class=»bookmark» name=»issogl4_27.18.3.1.2_категория_свойств_события«><h5>27.18.3.1.2. Категория свойств «События»</h5></a>
<p class=»MsoNormal«>Свойства этой категории определяют поведение
точек бизнес-процесса, представленных элементами, при определенных действиях,
например, при интерактивной активации, при создании задач, при проверке условия
(для элементов вида <span class=»Interface«>Точка условия</span>) и т. д.</p>
<p class=»Regularbeforepicture«>При работе с элементами большинство действий
может инициировать запуск связанных с этими действиями процедур. В теле каждой
процедуры средствами встроенного языка описывается обработка события.</p>
<p class=»Picture«><IMG src=»_img/img00551.gif?_=1496848987» WIDTH=»433» ALT HEIGHT=»165«></p>
<p class=»MsoCaption«><a name=»_ref227566424«>Рис. </a>543. Создание обработчика события</p>
<p class=»MsoNormalCxSpFirst«>Инициализация создания процедуры, отвечающей
за отработку события, производится нажатием специальной кнопки палитры свойств,
расположенной справа от реквизита с наименованием события в категории свойств <span class=»Interface«>События</span> (см. <a href=»#_ref227566424«>рис.
543</a>).</p>
<p class=»MsoNormalCxSpMiddle«>Процедуры создаются в модуле бизнес-процесса,
свойством которого является редактируемая карта маршрута.</p>
<p class=»MsoNormalCxSpMiddle«>В режиме работы с бизнес-процессом при
наступлении события управление выполнением программы передается процедуре, связанной
с этим событием.</p>
<p class=»MsoNormalCxSpLast«>Список событий карты маршрута или элементов,
а также условия их наступления приведены в справке по встроенному языку, в
описании соответствующего объекта.</p>
<a id=»TI000001000» class=»bookmark» name=»issogl3_27.18.3.2_соединительная_линия«><h4>27.18.3.2. Соединительная линия</h4></a>
<p class=»MsoNormalCxSpFirst«>Элемент карты маршрута <span class=»Interface«>Соединительная линия</span> предназначен для соединения в карте
маршрута элементов, визуализирующих точки бизнес-процесса (например, элемент <span class=»Interface«>Точка старта</span>, элемент <span class=»Interface«>Точка действия</span>, элемент <span class=»Interface«>Точка условия</span> и т. д.). Элемент <span class=»Interface«>Соединительная линия</span> автоматически перестраивается при
изменении положения элементов. Возможности вмешиваться в алгоритм построения
нет.</p>
<p class=»MsoNormalCxSpMiddle«>Элемент <span class=»Interface«>Соединительная линия</span> вставляется автоматически при
вставке других элементов карты маршрута и не может существовать сам по себе.
Вставка дополнительных соединительных линий предусмотрена только в элементах
карты маршрута вида <span class=»Interface«>Точка разделения</span> и <span class=»Interface«>Точка выбора варианта</span>.</p>
<p class=»MsoNormalCxSpLast«>При построении линии система руководствуется
правилом выбора кратчайшего пути, состоящего из вертикальных и горизонтальных
отрезков линий и не пересекающего другие точки карты.</p>
<a id=»TI000001001» class=»bookmark» name=»issogl3_27.18.3.3_точка_действия«><h4>27.18.3.3. Точка действия</h4></a>
<p class=»MsoNormal«>Элемент карты маршрута вида <span class=»Interface«>Точка действия</span> отображает основную точку
бизнес-процесса, по которой выдаются и выполняются задачи.</p>
<a id=»TI000001002» class=»bookmark» name=»issogl4_27.18.3.3.1_категория_свойств_адресация«><h5>27.18.3.3.1. Категория свойств «Адресация»</h5></a>
<p class=»MsoNormalCxSpFirst«><span class=»Interface«>Пояснение</span> –
строка, дополнительно характеризующая адресацию точки действия. Применяется,
когда атрибуты адресации проставляются из встроенного языка, а не задаются
заранее на этапе проектирования карты маршрута.</p>
<p class=»MsoNormalCxSpMiddle«><span class=»Interface«>Групповая</span> –
если установлено в значение <span class=»Term«>Истина</span>,
то задачи на данной точке бизнес-процесса будут выданы каждому члену группы
(отдела). В противном случае выдается одна задача на всю группу, например,
«Отдел продаж», выполняет ее один человек (первый взявший ее).</p>
<p class=»MsoNormalCxSpLast«><span class=»Interface«>Реквизиты адресации</span> –
этих свойств столько, сколько реквизитов адресации у задачи, указанной в
свойстве <span class=»Interface«>Задача</span>
данного бизнес-процесса. В палитре свойств можно выбрать значение из
предопределенных данных, тип которых задан в реквизите адресации задачи
(например, из справочника <span class=»Interface«>Отделы</span> или <span class=»Interface«>Исполнители</span>).</p>
<a id=»TI000001003» class=»bookmark» name=»issogl3_27.18.3.4_точка_разделения«><h4>27.18.3.4. Точка разделения</h4></a>
<p class=»MsoNormalCxSpFirst«>Элемент карты маршрута <span class=»Interface«>Точка разделения</span> отображает точку бизнес-процесса, в
которой поток исполнения разделяется на несколько параллельных веток, идущих одновременно.
По умолчанию размещается в карте маршрута с тремя исходящими соединительными
линиями.</p>
<p class=»MsoNormalCxSpLast«>Для добавления выходящей линии в контекстном
меню нужно выбрать пункт <span class=»Interface«>Добавить линию</span>. Для удаления – выделить линию, выбрать
пункт <span class=»Interface«>Удалить</span>. При
этом нельзя удалить единственную оставшуюся исходящую линию.</p>
<a id=»TI000001004» class=»bookmark» name=»issogl3_27.18.3.5_точка_условия«><h4>27.18.3.5. Точка условия</h4></a>
<p class=»MsoNormalCxSpFirst«>Элемент карты маршрута <span class=»Interface«>Точка условия</span> отображает точку бизнес-процесса, из
которой есть два выхода, отражающие результат выполнения логического условия.</p>
<p class=»MsoNormalCxSpLast«>По умолчанию элемент <span class=»Interface«>Точка условия</span> вставляется в карту маршрута с двумя
исходящими слева и справа соединительными линиями. Справа располагается ветка,
по которой идет процесс при возврате значения <span class=»Term«>Истина</span>
в обработчике <span class=»Term«>ПроверкаУсловия()</span>.
Ветки условия можно поменять местами. Для этого нужно выбрать линию, исходящую
из элемента <span class=»Interface«>Точка
условия</span> и, захватив мышью прямоугольник у начала линии, перенести его на
противоположную сторону элемента <span class=»Interface«>Точка условия</span>.</p>
<a id=»TI000001005» class=»bookmark» name=»issogl3_27.18.3.6_точка_завершения«><h4>27.18.3.6. Точка завершения</h4></a>
<p class=»MsoNormal«>Элемент карты маршрута <span class=»Interface«>Точка завершения</span> отображает точку бизнес-процесса, в
которой завершается бизнес-процесс. В карте маршрута может быть несколько элементов
этого вида.</p>
<a id=»TI000001006» class=»bookmark» name=»issogl3_27.18.3.7_точка_старта«><h4>27.18.3.7. Точка старта</h4></a>
<p class=»MsoNormal«>Элемент <span class=»Interface«>Точка старта</span> отображает точку бизнес-процесса, с которой
начинается выполнение бизнес-процесса. Для бизнес-процесса, имеющего несколько
точек вида <span class=»Interface«>Точка
старта</span>, при запуске должна быть указана нужная точка старта. В элемент <span class=»Interface«>Точка старта</span> не могут входить соединительные линии.</p>
<a id=»TI000001007» class=»bookmark» name=»issogl3_27.18.3.8_точка_слияния«><h4>27.18.3.8. Точка слияния</h4></a>
<p class=»MsoNormal«>Элемент карты маршрута <span class=»Interface«>Точка слияния</span> отображает точку бизнес-процесса, в
которую сходятся параллельные пути исполнения, начавшиеся в точке разделения.
Пока исполнение задач по всем параллельным путям не придет в точку слияния,
переход к следующей за слиянием точке не будет выполнен. Одной точке слияния
всегда соответствует одна точка разделения (но не наоборот, т. к.
могут быть точки разделения без точек слияния). Не требуется явно указывать, какому
элементу <span class=»Interface«>Точка
разделения</span> соответствует элемент <span class=»Interface«>Точка слияния</span>. Это будет определено автоматически.</p>
<a id=»TI000001008» class=»bookmark» name=»issogl3_27.18.3.9_точка_вложенного_бизнес-процесса«><h4>27.18.3.9. Точка вложенного бизнес-процесса</h4></a>
<p class=»MsoNormal«>Элемент карты маршрута <span class=»Interface«>Точка вложенного бизнес-процесса</span> отображает точку
бизнес-процесса, в которой запускается на исполнение вложенный бизнес-процесс.
Исполнение основного (родительского) процесса возобновляется только после
завершения вложенного процесса.</p>
<a id=»TI000001009» class=»bookmark» name=»issogl4_27.18.3.9.1_категория_свойств_данные«><h5>27.18.3.9.1. Категория свойств «Данные»</h5></a>
<p class=»MsoNormal«><span class=»Interface«>Бизнес-процесс</span> –
ссылка на вложенный бизнес-процесс.</p>
<a id=»TI000001010» class=»bookmark» name=»issogl3_27.18.3.10_точка_обработки«><h4>27.18.3.10. Точка обработки</h4></a>
<p class=»MsoNormal«>Элемент карты маршрута <span class=»Interface«>Точка обработки</span> отображает точку бизнес-процесса,
выполняемую в автоматическом режиме и не имеющую адресата.</p>
<a id=»TI000001011» class=»bookmark» name=»issogl3_27.18.3.11_точка_выбора_варианта«><h4>27.18.3.11. Точка выбора варианта</h4></a>
<p class=»MsoNormal«>Элемент карты маршрута <span class=»Interface«>Точка выбора варианта</span> отображает точку бизнес-процесса,
имеющую несколько выходов (вариантов), из которых, в зависимости от значения
возвращаемого параметра <span class=»Interface«>Вариант</span> обработчика <span class=»Term«>ОбработкаВыбораВарианта()</span>,
выбирается только один.</p>
<a id=»TI000001012» class=»bookmark» name=»issogl2_27.18.4_модуль«><h3>27.18.4. Модуль</h3></a>
<p class=»MsoNormal«>Карта маршрута не имеет собственного
модуля. Обработчики событий помещаются в модуль объекта бизнес-процесса.</p>
<a name=»_ref221519000«></a><a id=»TI000001013» class=»bookmark» name=»issogl1_27.19.редактор_картинок«><h2>27.19.Редактор картинок</h2></a>
<a id=»TI000001836» class=»bookmark» name=»issogl2_27.19.1_общая_информация«><h3>27.19.1. Общая информация</h3></a>
<p class=»MsoNormalCxSpFirst«>Конфигуратор предоставляет средство редактирования
картинок и коллекций картинок.</p>
<p class=»MsoNormalCxSpMiddle«>Картинки хранятся в конфигурации в ветви <span class=»Interface«>Общие – Общие картинки</span> или в файлах на диске.</p>
<p class=»MsoNormalCxSpMiddle«>Для создания новой картинки в конфигурации в
ветви <span class=»Interface«>Общие – Общие
картинки</span> нужно выполнить команду <span class=»Interface«>Действия – Добавить</span>, а далее открыть созданную
пустую картинку для редактирования.</p>
<p class=»MsoNormalCxSpMiddle«>Для редактирования картинки в конфигурации в
ветви <span class=»Interface«>Общие – Общие
картинки</span> следует выбрать картинку и выполнить команду меню <span class=»Interface«>Действия – Изменить</span>, далее в открывшемся диалоге нажать
кнопку <span class=»Interface«>Редактировать</span>.
Если картинка хранится в формате, отличном от формата <span class=»Interface«>PNG</span>, то при открытии будет предложено конвертировать
картинку в формат <span class=»Interface«>PNG</span>. При отказе от конвертации редактировать картинку
невозможно.</p>
<p class=»MsoNormalCxSpMiddle«>Картинки формата <span class=»Interface«>WMF</span>, <span class=»Interface«>EMF</span> и <span class=»Interface«>SVG</span> редактировать невозможно.</p>
<p class=»MsoNormalCxSpMiddle«>Чтобы создать новую картинку, расположенную в
файле на диске, нужно выполнить команду <span class=»Interface«>Файл – Новый</span> и в окне выбора типа редактора выбрать
<span class=»Interface«>Картинка</span>. Далее
отредактировать пустую картинку и сохранить ее командой <span class=»Interface«>Файл – Сохранить</span> или <span class=»Interface«>Файл – Сохранить как…</span></p>
<p class=»MsoNormalCxSpMiddle«>Для редактирования картинки, расположенной в
файле на диске, следует выполнить команду меню <span class=»Interface«>Файл – Открыть</span> и в списке файлов выбрать нужный
файл.</p>
<p class=»MsoNormalCxSpMiddle«>Редактор работает в двух режимах:
редактирование картинки и редактирование коллекции картинок. Различие между картинкой
и коллекцией картинок носит условный характер. Под коллекцией картинок
понимается картинка, состоящая из картинок-элементов, имеющих одинаковый размер.
Любую картинку можно представить как коллекцию картинок. Коллекция картинок
позволяет хранить и редактировать картинки, чье использование однотипно, например,
пиктограммы, картинки кнопок, иконки и т. д. По умолчанию редактор открывается
в режиме редактирования картинок.</p>
<p class=»MsoNormalCxSpLast«>Приемы редактирования картинки не зависят от
выбора вида картинки (см. <a href=»#_ref236792735«>здесь</a>). Особенности работы с коллекцией картинок см. <a href=»#_ref236792752«>здесь</a>.</p>
<a name=»_ref236792735«></a><a name=»_ref216064573«></a><a id=»TI000001014» class=»bookmark» name=»issogl2_27.19.2_редактирование_картинки«><h3>27.19.2. Редактирование картинки</h3></a>
<p class=»Regularbeforepicture«>После выбора (или создания) картинки ее можно
редактировать с помощью редактора картинок.</p>
<p class=»Picture«><IMG src=»_img/img00552.gif?_=1496848987» WIDTH=»585» ALT HEIGHT=»599«></p>
<p class=»MsoCaption«>Рис. 544. Редактор картинок</p>
<p class=»MsoNormalCxSpFirst«>Окно редактора состоит из панели
инструментов, двух полей для редактирования картинки (левое представляет картинку
в натуральную величину и предназначено для просмотра результата редактирования,
а правое поле содержит увеличенное изображение картинки и предназначено для
редактирования) и палитры цветов для выбора цвета.</p>
<p class=»MsoNormalCxSpMiddle«>Редактировать картинку можно в любом поле.
Редактирование осуществляется мышью. Предварительно нужно выбрать инструмент
или фигуру для рисования (карандаш, кисть, аэрограф, линию, прямоугольник,
эллипс), в палитре цветов следует выбрать цвет для инструмента.</p>
<p class=»MsoNormalCxSpMiddle«>Текущее положение указателя мыши и размер
области, а также масштаб показываются в панели состояния.</p>
<p class=»MsoNormalCxSpMiddle«>Картинка представляет собой прямоугольную
область, состоящую из набора точек (пикселей), размер которой можно изменить с
помощью мыши, потянув маркер нижней или правой границы или правого нижнего
угла. Размеры картинки также можно изменить в окне <span class=»Interface«>Параметры картинки</span> (см. ниже).</p>
<p class=»MsoNormalCxSpLast«>Редактирование сводится к указанию
определенного цвета каждой точки картинки. Количество цветов определяется
разрешением картинки. Чем больше разрешение, тем больше цветов можно
использовать.</p>
<p class=»Note«><span class=»Note«>ВНИМАНИЕ!</span> Использование разрешения
24 бита на пиксель при больших размерах картинок приводит к увеличению размеров
конфигурации.</p>
<p class=»MsoNormalCxSpFirst«>Выбор цвета производится в палитре цветов
отдельно для каждой кнопки мыши. Выбранный цвет показывается двойной рамкой.</p>
<p class=»MsoNormalCxSpMiddle«>Состав цветов можно менять. Для этого нужно
дважды щелкнуть мышью цвет, который требуется изменить. В открывшемся окне
выбора цвета выбрать нужный из стилей или создать новый цвет.</p>
<p class=»MsoNormalCxSpLast«>Размер картинки можно менять. Для этого
достаточно с помощью указателя мыши потянуть маркер стороны или угла области
картинки.</p>
<p class=»Regularbeforepicture«>Сетка (пиксельная) предназначена для
облегчения редактирования картинки. Сетка показывается прерывистой линией. Для
настройки показа сетки нужно выбрать пункт <span class=»Interface«>Действия – Сетка</span>. На экран выводится диалог.</p>
<p class=»Picture«><IMG src=»_img/img00553.gif?_=1496848987» WIDTH=»264» ALT HEIGHT=»152«></p>
<p class=»MsoCaption«>Рис. 545. Установка параметров
сетки</p>
<p class=»MsoNormalCxSpFirst«>Если флажок <span class=»Interface«>По точкам</span> установлен, то показывается пиксельная сетка.</p>
<p class=»MsoNormalCxSpMiddle«>Если установлен флажок <span class=»Interface«>По изображениям</span>, то подразумевается, что картинка
представляет собой коллекцию картинок одинакового размера (о редактировании коллекции
(см. раздел ниже). В этом случае становятся доступными поля для указания
размеров элемента коллекции. Помимо пиксельной сетки в поле редактирования
картинки выводится сетка коллекции в виде тонких сплошных линий. При этом режим
редактирования не изменяется.</p>
<p class=»MsoNormalCxSpMiddle«>При установленном флажке <span class=»Interface«>По изображениям</span> изменение размера картинки кратно
размеру ячейки. Если флажок не установлен, то размер изменяется с точностью до
пикселя.</p>
<p class=»MsoNormalCxSpMiddle«>Для рисования используют различные инструменты
и набор фигур. Набор и порядок использования инструментов аналогичны
стандартному набору инструментов, используемых в программе <span class=»Interface«>Paint</span>, входящей в Microsoft Windows. Таблицу
сочетаний клавиш для редактора картинок (см. в справке при использовании
программы).</p>
<p class=»MsoNormalCxSpMiddle«>Но есть и некоторые отличия. По кнопке <span class=»Interface«>Масштаб</span> изображение поля редактирования может
масштабироваться в пределах от 1:1 до 20:1 с шестью ступенями выбора. Нажатие
кнопки приводит к выбору следующей ступени масштаба. Когда достигнут масштаб
20:1, очередное нажатие кнопки приводит к выбору масштаба 1:1. Нужный масштаб
можно выбрать сразу, нажав справа от кнопки масштаба кнопку выбора (с маленьким
треугольником вершиной вниз).</p>
<p class=»MsoNormalCxSpMiddle«>Если нажать кнопку <span class=»Interface«>Масштаб</span> и перевести указатель мыши на любую из областей
рисунка, то появляется рамка. Эта рамка обозначает область изображения, которая
будет показана при нажатии на клавиши мыши.</p>
<p class=»MsoNormalCxSpMiddle«>Изменить масштаб также можно, используя мышь
с колесом прокрутки с нажатой клавишей <span class=»Interface«>Ctrl</span>.</p>
<p class=»MsoNormalCxSpLast«>Кнопки рисования фигур (прямоугольник,
прямоугольник с закругленными краями, эллипс) также имеют кнопки выбора, нажав
которые можно выбрать вид фигуры (простой, обведенный закрашенный,
закрашенный).</p>
<p class=»Regularbeforepicture«>Кнопка <span class=»Interface«>Параметры картинки</span> вызывает на экран диалог:</p>
<p class=»Picture«><IMG src=»_img/img00554.gif?_=1496848987» WIDTH=»322» ALT HEIGHT=»102«></p>
<p class=»MsoCaption«>Рис. 546. Параметры картинки</p>
<p class=»MsoNormal«>В диалоге задается размер картинки и
разрешение (определяет максимальное число используемых цветов). Для картинок, у
которых разрешение установлено в 1, 4 или 8 бит на пиксель, невозможно использовать
альфа-канал. Разрешается использование только одного прозрачного цвета.
Использовать альфа-канал можно в случае, если разрешение больше 8 бит на
пиксель.</p>
<p class=»Note«><span class=»Note«>Примечание.</span> Не следует
использовать в конфигурациях альфа-канал у картинок, чей размер превышает 40 000
точек (например, картинка 200х200 точек). Для таких картинок не поддерживается
корректное отображение в веб-клиенте, который работает в веб-браузере Microsoft Internet Explorer 6.0. Это правило не
относится к картинкам-коллекциям, размер элементов которых меньше указанного
ограничения.</p>
<p class=»MsoNormalCxSpFirst«>Редактор картинок допускает использование
стандартных команд работы с буфером обмена. Для вставки рисунка нужно использовать
<span class=»Interface«>Ctrl + V</span>,
для копирования – <span class=»Interface«>Ctrl + С</span>, для копирования с удалением – <span class=»Interface«>Ctrl + X</span>. Если размер картинки превышает текущий
размер, то редактор предлагает изменить его.</p>
<p class=»MsoNormalCxSpLast«>В палитре инструментов есть многоцелевая
кнопка, которая меняет свое назначение в зависимости от выбранного инструмента
или фигуры. Она расположена во втором ряду справа, перед кнопкой <span class=»Interface«>Параметры картинки</span>. При выборе линии, кривой, прямоугольника
и эллипса данная кнопка показывает толщину используемой линии, с помощью
которой рисуется фигура, в пикселях. Нажатие кнопки приводит к последовательной
смене толщины (пять ступеней). При нажатии кнопки выбора открывается выпадающее
меню, в котором можно выбрать нужную толщину линии рисования фигуры. Для аэрографа
с помощью данной кнопки определяется размер пятна, для кисти – размер и
форма, для ластика – размер. При выборе режима выделения или ввода текста
кнопка предоставляет возможность задать режим прозрачности.</p>
<p class=»Regularbeforepicture«>Для ввода текста нужно нажать кнопку <span class=»Interface«>Текст</span>. На экран выводится диалог:</p>
<p class=»Picture«><IMG src=»_img/img00555.gif?_=1496848987» WIDTH=»276» ALT HEIGHT=»117«></p>
<p class=»MsoCaption«>Рис. 547. Диалог ввода текста</p>
<p class=»MsoNormalCxSpFirst«>В многострочном поле ввода вводится текст. По
кнопке <span class=»Interface«>Шрифт</span>
выбирается требуемый шрифт (начертание, размер и другие характеристики). Выбор
шрифта осуществляется из системных шрифтов или из стилей, определенных в конфигурации.</p>
<p class=»MsoNormalCxSpLast«>С помощью кнопки <span class=»Interface«>Замена цветов</span> просто осуществляется замена выбранного
указателем мыши цвета (указывается пиксель) на цвет, установленный для данной
кнопки мыши. Таким образом можно быстро перекрашивать рисунки, используя сразу
два цвета на каждую кнопку мыши.</p>
<a name=»_ref236792752«></a><a name=»_ref469412072«></a><a name=»_ref469412071«></a><a name=»_ref469410939«></a><a id=»TI000001015» class=»bookmark» name=»issogl2_27.19.3_коллекции_картинок«><h3>27.19.3. Коллекции картинок</h3></a>
<p class=»MsoNormalCxSpFirst«><span class=»Bold«>Коллекция картинок</span> –
это картинка, состоящая из отдельных элементов (картинок) одинакового размера.
Элементы образуют прямоугольную матрицу, каждая ячейка которой представляет
самостоятельную картинку.</p>
<p class=»MsoNormalCxSpMiddle«>Коллекция картинок предназначена для
упрощения выбора нужной картинки в элементы управления, заголовки колонок и т. д.
Использование коллекции гарантирует выбор картинок одинакового размера для
однотипного использования.</p>
<p class=»MsoNormalCxSpMiddle«>С помощью редактора картинок можно создавать
и редактировать коллекции картинок. Для перехода в режим редактирования
коллекции нужно выбрать пункт <span class=»Interface«>Режим коллекции</span>. При этом картинка, показанная в поле
просмотра, разбивается на ячейки. Для редактирования картинки-элемента следует дважды
щелкнуть ячейку мышью – картинка-элемент показывается в поле редактирования.
Приемы редактирования описаны в разделе выше.</p>
<p class=»MsoNormalCxSpLast«>В панели инструментов добавляются две кнопки –
<span class=»Interface«>Добавить колонку</span>
и <span class=»Interface«>Добавить строку</span>.
При нажатии той или иной кнопки в картинку добавляется новая колонка или
строка.</p>
<p class=»Regularbeforepicture«>Изменить размер элемента можно только в
диалоге <span class=»Interface«>Параметры
картинки</span> (маркеры изменения размера недоступны).</p>
<p class=»Picture«><IMG src=»_img/img00556.gif?_=1496848987» WIDTH=»351» ALT HEIGHT=»204«></p>
<p class=»MsoCaption«>Рис. 548. Параметры коллекции</p>
<p class=»MsoNormalCxSpFirst«>В группе элементов <span class=»Interface«>Параметры картинки</span> задаются размеры картинки в элементах
(ячейках). В группе элементов <span class=»Interface«>Параметры коллекции</span> задаются размеры ячейки в пикселях
(точках). Параметры коллекции задаются с помощью сооветствующих атрибутов файла
манифеста картинки с вариантами (подробнее см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 5. объекты конфигурации.htm?_=1496848987#_ref469411751«>здесь</a>).</p>
<p class=»MsoNormalCxSpLast«>Коллекцию картинок можно также редактировать
как обычную картинку. При этом рекомендуется предварительно настроить показ
сетки по изображениям (см. <a href=»#_ref216064573«>здесь</a>).</p>
<a name=»_ref216075447«></a><a id=»TI000001016» class=»bookmark» name=»issogl1_27.20.редактор_html-документа«><h2>27.20.Редактор HTML-документа</h2></a>
<a id=»TI000001837» class=»bookmark» name=»issogl2_27.20.1_общая_информация«><h3>27.20.1. Общая информация</h3></a>
<p class=»Regularbeforepicture«>Данный редактор предоставляет основные
возможности по редактированию HTML-документов. Также с помощью этого редактора
редактируется справочная информация для объектов конфигурации.</p>
<p class=»Picture«><IMG src=»_img/img00557.gif?_=1496848987» WIDTH=»387» ALT HEIGHT=»252«></p>
<p class=»MsoCaption«>Рис. 549. Редактор
HTML-документа</p>
<p class=»MsoNormal«>Редактор состоит из трех закладок:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Interface«>Редактирование</span> –
с помощью этой закладки имеется возможность редактировать документ в визуальном
режиме.</p>
<p class=»MsoListBulletCxSpMiddle«>●
<span class=»Interface«>Текст</span> – с
помощью этой закладки имеется возможность редактировать документ
непосредственно с помощью языка разметки HTML. При этом возможности редактора
совпадают с возможностями редактора текстов (см. <a href=»#_ref236645687«>здесь</a>).</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Interface«>Просмотр</span> – на
этой закладке можно посмотреть, как будет выглядеть созданный документ, однако
недоступно непосредственное изменение документа.</p>
<a id=»TI000001017» class=»bookmark» name=»issogl2_27.20.2_визуальное_редактирование«><h3>27.20.2. Визуальное редактирование</h3></a>
<a id=»TI000001018» class=»bookmark» name=»issogl3_27.20.2.1_форматирование_текста«><h4>27.20.2.1. Форматирование текста</h4></a>
<p class=»MsoNormalCxSpFirst«>Текст HTML-документа можно форматировать, т. е.
устанавливать его стиль (шрифт, размер, оформление, отступы, выравнивание и т. д.).</p>
<p class=»MsoNormalCxSpLast«>При копировании текста из других текстовых
редакторов, например, Microsoft Word,
сохраняется исходное форматирование текста.</p>
<a id=»TI000001019» class=»bookmark» name=»issogl3_27.20.2.2_вставка_и_работа_с_таблицей«><h4>27.20.2.2. Вставка и работа с таблицей</h4></a>
<p class=»MsoNormalCxSpFirst«>В HTML-документ можно вставлять таблицы. Для
вставки таблицы нужно выбрать пункт <span class=»Interface«>Таблица – Вставить таблицу</span>. В открывшемся диалоге указать
количество строк и колонок.</p>
<p class=»MsoNormalCxSpLast«>Если в дальнейшем в процессе редактирования
выяснится, что указанного количества строк или колонок не хватает, их можно
добавить.</p>
<p class=»Regularbeforetable«>Для работы с таблицей (вставка, удаление
строк, колонок и ячеек) предназначены команды, выполняемые при выборе пунктов
меню <span class=»Interface«>Таблица</span> главного меню конфигуратора.</p>
<table class=»MsoNormalTable» border=»0» cellspacing=»0» cellpadding=»0«>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpFirst«><b>Пункт меню «Таблица»</b></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><b>Действие</b></p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Вставить
строку</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Сверху
от текущей строки добавляется новая строка</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Удалить
строку</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Удаляется
текущая строка</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Вставить
колонку</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Справа
от текущей колонки добавляется новая колонка</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Удалить
колонку</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Удаляется
текущая колонка</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Вставить
ячейку</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>В
таблицу слева от текущей ячейки добавляется ячейка. При этом все ячейки
справа сдвигаются</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Удалить
ячейку</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Удаляет
текущую ячейку. Все ячейки справа сдвигаются влево</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Объединить
ячейки</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Объединяет
две ячейки: текущую и ячейку, расположенную справа от текущей. При этом
введенная информация в этих ячейках также объединяется. Если требуется
объединить больше чем две ячейки, нужно выполнить эту операцию несколько раз</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Разбить
ячейку</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Разделяет
текущую ячейку на две ячейки</p>
</td>
</tr>
</table>
<p class=»MsoNormalCxSpLast«>Таблицы могут быть вложенными. Для создания
вложенной таблицы необходимо создать новую таблицу в ячейке уже существующей
таблицы.</p>
<a name=»_ref449006777«></a><a id=»TI000001020» class=»bookmark» name=»issogl3_27.20.2.3_вставка_картинки«><h4>27.20.2.3. Вставка картинки</h4></a>
<p class=»MsoNormalCxSpFirst«>В HTML-документ можно вставлять картинки.</p>
<p class=»MsoNormalCxSpLast«>Для вставки картинки нужно выбрать пункт <span class=»Interface«>Элементы – Картинка</span>. В открывшемся диалоге указать
адрес картинки (путь и имя файла картинки) или выбрать файл в стандартном
диалоге выбора файла. В поле <span class=»Interface«>Текст</span> ввести поясняющий текст, который будет появляться
в режиме просмотра в виде всплывающей подсказки при помещении указателя мыши
над картинкой.</p>
<p class=»Regularbeforetable«>В группе реквизитов <span class=»Interface«>Расположение</span> необходимо указать, если требуется,
выравнивание картинки (как располагается картинка в документе).</p>
<table class=»MsoNormalTable» border=»0» cellspacing=»0» cellpadding=»0«>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpFirst«><b>Значение<br>
выравнивания</b></p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«><b>Действия</b></p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Не
задано </p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Картинка
располагается в тексте</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Лево</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Картинка
располагается в новой строке, прижата к левой границе документа</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Право</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Картинка
располагается в новой строке, прижата к правой границе документа</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Низ</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Картинка
располагается в тексте с выравниванием текста по нижней границе картинки</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Центр</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Картинка
располагается в тексте с выравниванием текста по центру картинки</p>
</td>
</tr>
<tr>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Верх</p>
</td>
<td valign=»top«>
<p class=»MsoNormalCxSpMiddle«>Картинка
располагается в тексте с выравниванием текста по верхней границе картинки</p>
</td>
</tr>
</table>
<p class=»MsoNormalCxSpMiddle«>Если требуется поместить картинку в рамку, в
реквизите диалога <span class=»Interface«>Рамка</span> нужно указать толщину рамки. Если толщина не
указана или равна 0, то рамка не рисуется. Для вставки картинки нажать кнопку <span class=»Interface«>ОК</span>. Указанные в диалоге реквизиты можно изменить в палитре
свойств картинки.</p>
<p class=»MsoNormalCxSpMiddle«>Вставленную картинку можно переместить. Для
этого следует указать картинку и перетащить ее мышью в нужное место документа.
При этом свойство картинки <span class=»Interface«>Положение</span> не меняется, т. е. если установлено
не <span class=»Interface«>Лево</span> и не <span class=»Interface«>Право</span>, то картинку можно расположить в тексте, в
противном случае картинка будет располагаться в новой строке.</p>
<p class=»MsoNormalCxSpMiddle«>При вставке картинки в формате <span class=»Interface«>SVG</span>, если в HTML-странице отсутствует элемент вида: <span class=»Term«><meta
http-equiv="X-UA-Compatible" content="IE=*"/></span>,
то на страницу добавится такой элемент с текстом <span class=»Term«>content="IE=Egde"</span>.
Этот элемент выключает режим совместимости Microsoft Internet Explorer (по
умолчанию, страница отрисовывается в режиме совместимости с Microsoft Internet Explorer версии 7). После
добавления такого элемента, веб-браузер перезагружает страницу без режима совместимости
(теряется текущая позиция курсора).</p>
<p class=»MsoNormalCxSpMiddle«>Если на компьютере установлен Microsoft Internet Explorer версии ниже 9, то в
редакторе HTML картинка в формате SVG отображаться не будет.</p>
<p class=»MsoNormalCxSpMiddle«>Картинку можно копировать. Копирование
осуществляется стандартным образом (с помощью буфера обмена или с помощью мыши
при нажатой клавише <span class=»Interface«>Ctrl</span>).</p>
<p class=»MsoNormalCxSpLast«>Картинку можно расположить в любой части
HTML-документа (текст, таблица и надпись).</p>
<a id=»TI000001021» class=»bookmark» name=»issogl3_27.20.2.4_надпись«><h4>27.20.2.4. Надпись</h4></a>
<p class=»MsoNormalCxSpFirst«><span class=»Interface«>Надпись</span> – специальный
объект HTML-документа. Он представляет собой область, в которую можно поместить
текст, таблицу, картинку или другую надпись. При просмотре надписи вложенные
объекты непрерывно прокручиваются справа налево.</p>
<p class=»MsoNormalCxSpMiddle«>Для вставки линии нужно выбрать пункт <span class=»Interface«>Элементы – Надпись</span>.</p>
<p class=»MsoNormalCxSpMiddle«>Размер надписи можно изменить. Для этого следует
выделить надпись и с помощью мыши переместить маркер надписи.</p>
<p class=»MsoNormalCxSpLast«>Надписи можно располагать в тексте и в
таблице.</p>
<a id=»TI000001022» class=»bookmark» name=»issogl3_27.20.2.5_гиперссылка«><h4>27.20.2.5. Гиперссылка</h4></a>
<p class=»MsoNormal«>Для создания гиперссылки в HTML-документе
можно создавать ссылки.</p>
<p class=»Regularbeforepicture«>Нужно выделить объект (текст или картинку), выбрать
пункт <span class=»Interface«>Элементы – Ссылка</span>. На экран выводится диалог
формирования ссылки.</p>
<p class=»Picture«><IMG src=»_img/img00558.gif?_=1496848987» WIDTH=»648» ALT HEIGHT=»476«></p>
<p class=»MsoCaption«>Рис. 550. Вставка гиперссылки</p>
<p class=»MsoNormal«>В реквизите <span class=»Interface«>Адрес</span> нужно указать:</p>
<p class=»MsoListBulletCxSpFirst«>●
Адрес гиперссылки.</p>
<p class=»MsoListBulletCxSpMiddle«>●
Ссылку на справочную информацию по объекту
конфигурации.</p>
<p class=»MsoListBulletCxSpMiddle«>●
Ссылку на системный раздел справки. Если режим
редактирования конфигурации установлен в значение <span class=»Interface«>Управляемое приложение</span>, то будут отображены только
разделы справки, относящиеся к управляемому приложению (а также колонка,
описывающая доступность раздела в веб-клиенте). Если режим редактирования
конфигурации установлен в значение <span class=»Interface«>Управляемое приложение и обычное приложение</span>, то будут
отображены все разделы справки с указанием доступности раздела в управляемом
приложении, веб-клиенте и обычном приложении.</p>
<p class=»MsoListBulletCxSpLast«>●
Имя закладки (предваренное символом «<span class=»Interface«>#</span>»).</p>
<p class=»MsoNormalCxSpFirst«>Для создания ссылки следует нажать кнопку <span class=»Interface«>ОК</span>.</p>
<p class=»MsoNormalCxSpLast«>Выделенный объект форматируется в соответствии
со стилем гиперссылки. Обычно это синий цвет текста с подчеркиванием. Картинка
помещается в рамку синего цвета.</p>
<a id=»TI000001023» class=»bookmark» name=»issogl3_27.20.2.6_закладки«><h4>27.20.2.6. Закладки</h4></a>
<p class=»MsoNormalCxSpFirst«>Для создания внутренней ссылки в
HTML-документе можно создавать закладки. Для этого следует выделить объект
(текст или картинку) и выбрать пункт <span class=»Interface«>Элементы – Закладка</span>. На экран выводится диалог ввода
имени закладки. Выделенный объект при этом не форматируется.</p>
<p class=»MsoNormalCxSpLast«>Закладки используются для организации
внутренней ссылки.</p>
<a id=»TI000001024» class=»bookmark» name=»issogl3_27.20.2.7_линия«><h4>27.20.2.7. Линия</h4></a>
<p class=»MsoNormal«>С помощью линий производится зрительное
разделение документа.</p>
<a name=»_ref353279027«></a><a name=»_ref353279026«></a><a id=»TI000001025» class=»bookmark» name=»issogl2_27.20.3_редактирование_в_html-формате«><h3>27.20.3. Редактирование в HTML-формате</h3></a>
<p class=»MsoNormalCxSpFirst«>Возможности редактора HTML-документов,
предоставляемые на закладке <span class=»Interface«>Редактирование</span>, ограниченны. На закладке <span class=»Interface«>Текст</span> разработчик может отредактировать документ в формате
HTML-кода.</p>
<p class=»MsoNormalCxSpLast«>Следует помнить, что
ручное изменение кодировки с помощью атрибута <span class=»Term«>charset</span> тега <span class=»Term«>META</span> не оказывают влияние на поведение
редактора. При сохранении HTML-документ будет записан в кодировке utf-8 с
неизменным тегом <span class=»Term«>charset</span>, а при чтении тег <span class=»Term«>charset</span> будет установлен в значение utf-8.</p>
<a id=»TI000001026» class=»bookmark» name=»issogl2_27.20.4_просмотр_результата«><h3>27.20.4. Просмотр результата</h3></a>
<p class=»MsoNormal«>Для просмотра результата редактирования
HTML-документа нужно перейти на закладку <span class=»Interface«>Просмотр</span> и проверить работу объектов документа.</p>
<a name=»_ref428285443«></a><a id=»TI000001027» class=»bookmark» name=»issogl1_27.21.локализация_конфигураций«><h2>27.21.Локализация конфигураций</h2></a>
<p class=»MsoNormalCxSpFirst«>Под локализацией конфигураций понимается
формирование строковых значений, появляющихся в программе в режиме
1С:Предприятие, на языках, указанных в ветви <span class=»Interface«>Общие – Языки</span> дерева объектов конфигурации. Это
может быть наименование пунктов в интерфейсе, наименованиях (синонимах)
объектов, справочной информации, текстах модулей и т. д.</p>
<p class=»MsoNormalCxSpMiddle«>Наиболее сложным при выполнении данной работы
является поиск мест, в которых необходимо ввести текст на требуемом языке.
Поэтому данным режимом удобно пользоваться даже тогда, когда определен только
один язык.</p>
<p class=»MsoNormalCxSpLast«>Для начала поиска нужно выбрать пункт <span class=»Interface«>Правка – Редактирование текстов интерфейса</span>.</p>
<p class=»Regularbeforepicture«>На экран выводится диалог:</p>
<p class=»Picture«><IMG src=»_img/img00559.gif?_=1496848987» WIDTH=»486» ALT HEIGHT=»445«></p>
<p class=»MsoCaption«>Рис. 551. Редактирование текстов
интерфейса</p>
<p class=»MsoNormalCxSpFirst«>На закладке <span class=»Interface«>Конфигурации</span> выбираются объекты конфигурации, в которых
требуется осуществить редактирование текстов интерфейса.</p>
<p class=»MsoNormalCxSpMiddle«>В список конфигураций будут включены все
открытые на текущий момент окна конфигураций (помимо основной это может быть
конфигурация базы данных, конфигурации, расположенные в файлах, конфигурации
хранилища и поставки).</p>
<p class=»MsoNormalCxSpLast«>В поле выбора можно выбрать строку <span class=»Interface«>Вся конфигурация</span>, и в этом случае будет сформирован
полный список объектов конфигурации, которые содержат интерфейсные свойства.
Поиск можно осуществлять только в определенных объектах, если в поле выбора
выбрать этот объект.</p>
<p class=»Regularbeforepicture«>На закладке <span class=»Interface«>Файлы</span> можно выбрать текстовые и табличные документы,
внешние обработки, размещенные в файлах.</p>
<p class=»Picture«><IMG src=»_img/img00560.gif?_=1496848987» WIDTH=»486» ALT HEIGHT=»236«></p>
<p class=»MsoCaption«>Рис. 552. Настройка поиска в
файлах</p>
<p class=»MsoNormalCxSpFirst«>На закладке <span class=»Interface«>Модули</span> нужно установить флажок <span class=»Interface«>Искать в функциях "НСтр" ("NStr") в модулях</span>,
если требуется определить места использования оператора <span class=»Term«>НСтр()</span>
в модулях. При использовании данного флажка следует помнить, что обработка
оператора <span class=»Term«>НСтр()</span> выполняется
без применения синтаксического анализа. Так, операторы <span class=»Term«>НСтр()</span>
в комментариях также будут обработаны, при этом если строки на разных языках
будут включать переносы строк, то признак комментария (<span class=»Interface«>//</span>) перед такими («добавленными») строками не будет
добавлен.</p>
<p class=»MsoNormalCxSpLast«>Для запоминания области поиска (список
объектов конфигураций, файлов и открытые документы) в реквизите <span class=»Interface«>Область поиска</span> следует указать наименование текущих
установок. При повторном открытии окна поиска в списке областей достаточно
выбрать нужную и выполнить поиск.</p>
<p class=»Regularbeforepicture«>После того как выбраны нужные объекты, следует
нажать кнопку <span class=»Interface«>Искать</span>.
На экран выводится окно:</p>
<p class=»Picture«><IMG src=»_img/img00561.gif?_=1496848987» WIDTH=»486» ALT HEIGHT=»262«></p>
<p class=»MsoCaption«><a name=»_ref237746507«>Рис. </a>553. Окно с результатами поиска</p>
<p class=»MsoNormalCxSpFirst«>Окно содержит табличное поле, в первой
колонке которого выводится расположение найденного текста. Другие колонки
обычно соответствуют указанным языкам. В табличном поле может быть больше
колонок, чем определено языков. Дополнительные колонки появляются в том случае,
когда в процессе конфигурирования создавались новые объекты <span class=»Interface«>Язык</span>, которые затем либо удалялись, либо у них менялся
код языка (при удалении или смене кода языка объектов данного типа конфигуратор
не сбрасывает текст интерфейсов, введенных для этих языков).</p>
<p class=»MsoNormalCxSpMiddle«>Содержимое табличного поля отсортировано по
одной из колонок. Для смены сортировки достаточно щелкнуть заголовок колонки.
При повторном щелчке заголовка производится смена направления сортировки.</p>
<p class=»MsoNormalCxSpMiddle«>Текст можно также изменить прямо в ячейке.
Для этого нужно выбрать ячейку и нажать клавишу <span class=»Interface«>Enter</span>. Поле ввода переводится в режим редактирования. Следует
ввести нужный текст и снова нажать клавишу <span class=»Interface«>Enter</span>. Измененный текст показывается красным цветом.</p>
<p class=»MsoNormalCxSpMiddle«>Для быстрого доступа к тексту интерфейса
определенного объекта достаточно в колонке <span class=»Interface«>Расположение</span> дважды щелкнуть мышью нужную строку. На
экран выводится форма, в которой данный текст используется. В палитре свойств
можно также произвести просмотр и замену найденного текста. Если текст
изменялся вне окна редактирования, то табличное поле можно обновить.</p>
<p class=»MsoNormalCxSpMiddle«>Над табличным полем расположены элементы
управления, предназначенные для выполнения различных действий и настройки окна.</p>
<p class=»MsoNormalCxSpMiddle«>В поле выбора <span class=»Interface«>Сворачивать</span> производится выбор режима сворачивания
текстов на разных языках. Если выбрано значение <span class=»Interface«>Нет</span>, то сворачивание не производится. Если выбрано <span class=»Interface«>Совпадающие на языке сортировки</span>, то все элементы,
имеющие одинаковый текст в колонке, по которой производится сортировка,
сворачиваются. При этом в первой колонке показывается значок группы (<span class=»Interface«>+</span>), щелкнув который можно развернуть группу. В первой
колонке будет показан текст <span class=»Interface«><Вхождений N></span> (где <span class=»Interface«>N</span> – число вхождений). Если в других колонках по
этой группе будут различные значения текста, то в ячейке этих колонок будет
надпись <span class=»Interface«><Различные
значения></span>.</p>
<p class=»MsoNormalCxSpMiddle«>Если выбрано <span class=»Interface«>Совпадающие на всех языках</span>, то все элементы, имеющие
одинаковый текст, сворачиваются.</p>
<p class=»MsoNormalCxSpMiddle«>Для свернутых строк можно производить
групповую замену текста. Для этого в ячейке нужного языка достаточно ввести его
так, как если бы это была одна строка. Введенный текст заменяет текст сразу во
всех строках, входящих в группу.</p>
<p class=»MsoNormalCxSpMiddle«>С помощью пункта <span class=»Interface«>Действия – Новый поиск</span> открывается окно настройки
для изменения разделов конфигурации, в которых будет произведен поиск.</p>
<p class=»MsoNormalCxSpMiddle«>С помощью пункта <span class=»Interface«>Действия – Копировать тексты</span> производится полное
копирование текстов одного языка в другой язык. Эта операция рекомендуется
тогда, когда используемые слова и фразы на различных языках в основном совпадают.</p>
<p class=»MsoNormalCxSpMiddle«>Пункт <span class=»Interface«>Действия – Очистить тексты</span> производит полную
очистку текстов указанного языка.</p>
<p class=»MsoNormalCxSpLast«>Пункт <span class=»Interface«>Действия – Заполнить тексты</span> производит оперативный
перевод синонимов, заголовков, подсказок и текстов интерфейсов с использованием
файла соответствия. Он представляет собой табличный документ, состоящий из
нескольких колонок (по числу используемых языков).</p>
<p class=»Regularbeforepicture«>В первой строке каждой колонки должен быть
написан код языка (например, <span class=»Interface«>ru</span> или <span class=»Interface«>lv</span>). В остальных строках следуют образцы соответствий.
Никаких требований к упорядочиванию (сортировке) строк не предъявляется. Строки
могут дублироваться.</p>
<p class=»Picture«><IMG src=»_img/img00562.gif?_=1496848987» WIDTH=»310» ALT HEIGHT=»292«></p>
<p class=»MsoCaption«>Рис. 554. Заполнение текстов</p>
<p class=»MsoNormalCxSpFirst«>После выбора файла соответствия нужно указать
основной язык (<span class=»Interface«>По языку</span>) и языки, для которых требуется выполнить перевод
текста (<span class=»Interface«>В
языки</span>). Установка флажка <span class=»Interface«>Заполнять только незаполненные</span> приводит к блокировке
перезаписи уже локализованных строк.</p>
<p class=»MsoNormalCxSpLast«>Выбор ключевого языка и языков для заполнения
осуществляется из числа языков, которые были обнаружены в процессе поиска интерфейсных
текстов. Требуется, чтобы все выбранные для заполнения языки были определены в
файле соответствий (в нем должны быть колонки с заголовками, соответствующими
кодам этих языков).</p>
<p class=»Note«><span class=»Note«>Примечание.</span> Если при открытии окна
<span class=»Interface«>Редактирование текстов
интерфейса</span> обнаружены строки только на одном языке, команда <span class=»Interface«>Заполнить тексты</span> будет недоступна.</p>
<p class=»MsoNormalCxSpFirst«>Нажатие кнопки <span class=»Interface«>ОК</span> производит заполнение текстов интерфейсов. При этом
выполняется заполнение текстов с проверкой соответствия не только по тому
языку, на основании которого выполняется загрузка, но и по всем языкам, которые
присутствуют в файле соответствия текстов.</p>
<p class=»MsoNormalCxSpMiddle«>Это позволяет, например, поставить в
соответствие одинаковым строкам на одном языке разные строки на другом. Для
этого можно в двуязычной конфигурации завести еще один вспомогательный язык для
комментирования текстов интерфейса и по-разному заполнять такой комментарий для
омонимов основного языка. Например, для слова «<span class=»Interface«>Счет</span>» на русском языке можно написать комментарии «<span class=»Interface«>бухгалтерский счет</span>» и «<span class=»Interface«>документ счет</span>». Это даст возможность при заполнении
текстов из файла соответствия текстов сопоставить с первым из этих слов
английское «<span class=»Interface«>Account</span>»,
а со вторым – «<span class=»Interface«>Invoice</span>».</p>
<p class=»MsoNormalCxSpLast«>Пункт <span class=»Interface«>Действия – Экспорт в табличный документ</span> производит
выгрузку содержимого табличного поля в табличный документ. Выполнение команды
осуществляет вывод только уникальных строк.</p>
<p class=»Regularbeforepicture«>С помощью пункта <span class=»Interface«>Действия – Настройка</span> осуществляется настройка
показа табличного поля и установка режима открытия редакторов при групповой
замене.</p>
<p class=»Picture«><IMG src=»_img/img00563.gif?_=1496848987» WIDTH=»358» ALT HEIGHT=»206«></p>
<p class=»MsoCaption«>Рис. 555. Настройка окна
редактирования текстов интерфейса</p>
<p class=»MsoNormal«>В группе <span class=»Interface«>Расположение колонок</span> производится выбор способа
расположения колонок:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Interface«>Горизонтально</span> –
это так, как показано на <a href=»#_ref237746507«>рис.553</a>.</p>
<p class=»MsoListBulletCxSpMiddle«>●
<span class=»Interface«>Комбинированно</span> –
располагает колонки одна под другой.</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Interface«>Комбинированно, с
выделением языка сортировки</span> – размещает колонки следующим образом:
справа от колонки <span class=»Interface«>Расположение</span> будет колонка с языком, по которому
производится сортировка, а правее будут располагаться одна под другой колонки с
другими языками. При щелчке мышью в области заголовка колонки выполняется сортировка
по этой колонке, и она располагается справа от колонки <span class=»Interface«>Расположение</span>. Колонка, по которой ранее выполнялась
сортировка, занимает место выбранной колонки. Если языков всего два, то колонки
просто меняются местами.</p>
<p class=»MsoNormalCxSpFirst«>Если флажок <span class=»Interface«>При сворачивании отображать в виде дерева</span> установлен, то
доступ к свернутым строкам возможен, а свернутые группы показываются в виде
дерева.</p>
<p class=»MsoNormalCxSpMiddle«>Рекомендуется не устанавливать флажок <span class=»Interface«>Открывать редакторы при групповой замене</span>, если число
вхождений достаточно большое.</p>
<p class=»MsoNormalCxSpLast«>Если флажок <span class=»Interface«>Изображать другим цветом отредактированные строки</span>
установлен, то измененный текст строк будет показан другим цветом.</p>
<a name=»_ref348628230«></a><a name=»_ref348628229«></a><a name=»_ref335326060«></a><a name=»_ref335321996«></a><a name=»_ref335321995«></a><a name=»_ref320886445«></a><a name=»_ref320886444«></a><a name=»_ref310422632«></a><a name=»_ref310422631«></a><a name=»_ref305582799«></a><a name=»_ref222639000«></a><a name=»_ref420332472«></a><a name=»_ref420332471«></a><a id=»TI000001028» class=»bookmark» name=»issogl1_27.22.выполнение_централизованной_проверки_конфигурации«><h2>27.22.Выполнение централизованной проверки конфигурации</h2></a>
<p class=»Regularbeforepicture«>Для выполнения проверки конфигурации нужно
выбрать пункт <span class=»Interface«>Конфигурация – Проверка конфигурации</span>. На экран
выводится окно:</p>
<p class=»Picture«><IMG src=»_img/img00564.gif?_=1496848987» WIDTH=»506» ALT HEIGHT=»627«></p>
<p class=»MsoCaption«>Рис. 556. Проверка конфигурации</p>
<p class=»MsoNormalCxSpFirst«>Рассмотрим подробнее, как выполняется
проверка конфигурации. Любой прикладной код в системе «1С:Предприятие» выполняется
в некотором окружении. Это окружение характеризуется некоторым набором
определенных инструкций препроцессора (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 4. встроенный язык.htm?_=1496848987#_ref231122750«>здесь</a>) и набором доступных объектов. Соответственно, при
выполнении проверки конфигуратор определяет инструкции препроцессора для
каждого отмеченного пункта и выполняет проверку. Следует отметить, что если проверяется
клиентское приложение в клиент-серверном варианте, то на стороне клиента
проверяется весь прикладной код, а на стороне сервера – только те общие
модули, которые доступны для вызова из клиентской части приложения. В том
случае, если в проверяемом приложении существует общий модуль, поставляемый без
исходных текстов, то при проверке конфигурации все вызовы методов этого общего
модуля будут отмечаться как возможно ошибочные.</p>
<p class=»MsoNormalCxSpLast«>Так как различных режимов работы получается
достаточно много, то проверки разделены на две группы:</p>
<p class=»MsoListBulletCxSpFirst«>●
Группа проверок, доступная для принудительной и
автоматической проверки при редактировании конфигурации. Эти режимы доступны
для выбора на закладке <span class=»Interface«>Модули – Проверка</span> диалога настройки параметров конфигуратора
(см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref289357633«>здесь</a>).</p>
<p class=»MsoListBulletCxSpLast«>●
Весь список проверок, который можно вызвать при
централизованной проверке конфигурации (описываемый режим).</p>
<p class=»MsoNormal«>Далее будет описано, какие инструкции
препроцессора будут определены при выборе каждого режима проверки, описаны особенности
режима (если они есть), а также описаны режимы проверки, не имеющие отношения к
определению окружения проверяемого исходного кода.</p>
<p class=»Lang-parameter«>Общие параметры</p>
<p class=»Lang-subheader«>Проверка логической целостности конфигурации</p>
<p class=»MsoNormal«>Стандартная проверка, обычно выполняемая
перед обновлением базы данных. При выполнении данной
проверки выполняется удаление некорректной информации, которая могла оказаться
в конфигурации после редактирования предыдущими версиями системы.</p>
<p class=»Lang-subheader«>Поиск некорректных ссылок</p>
<p class=»MsoNormal«>Поиск ссылок на удаленные объекты.
Выполняется по всей конфигурации, включая формы, макеты, интерфейсы и т. д.
Также выполняется поиск некорректных ссылок на предопределенные данные для
планов счетов (если для плана счетов задано свойство <span class=»Interface«>Виды субконто</span>) и планов видов расчетов.</p>
<p class=»Lang-parameter«>Синтаксический контроль модулей</p>
<p class=»Lang-subheader«>Тонкий клиент</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды тонкого клиента в режиме управляемого приложения, выполняемого в
файловом варианте.</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>Клиент</span>,
<span class=»Term«>ТонкийКлиент</span>.</p>
<p class=»Lang-subheader«>Веб-клиент</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды веб-клиента в режиме управляемого приложения, выполняемого в файловом
варианте.</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>Клиент</span>,
<span class=»Term«>ВебКлиент</span>.</p>
<p class=»Lang-subheader«>Сервер</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды сервера «1С:Предприятия».</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>Сервер</span>.</p>
<p class=»Lang-subheader«>Внешнее соединение</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды внешнего соединения, выполняемого в файловом варианте.</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>ВнешнееСоединение</span>,
<span class=»Term«>Сервер</span>.</p>
<p class=»Lang-subheader«>Внешнее соединение (вариант клиент-сервер)</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды внешнего соединения, выполняемого в варианте клиент-сервер.</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>ВнешнееСоединение</span>.</p>
<p class=»Lang-subheader«>Мобильный приложение – клиент</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции
модулей в режиме проверки среды клиентского приложения, выполняемого на
мобильной платформе.</p>
<p class=»MsoNormalCxSpLast«>Определены
инструкции препроцессора: <span class=»Term«>Клиент</span>, <span class=»Term«>НаКлиенте</span>, <span class=»Term«>МобильноеПриложениеКлиент</span>.</p>
<p class=»Lang-subheader«>Мобильное приложение – сервер</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды клиентского приложения, выполняемого на мобильной платформе.</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>Сервер</span>,
<span class=»Term«>НаСервере</span>, <span class=»Term«>МобильноеПриложениеСервер</span>.</p>
<p class=»Lang-subheader«>Толстый клиент (управляемое приложение)</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды управляемого клиента, выполняемого в файловом варианте.</p>
<p class=»MsoNormalCxSpMiddle«>Если
свойство конфигурации <span class=»Interface«>Использовать обычные формы в управляемом приложении</span> имеет значение <span class=»Term«>Ложь</span>, то модули обычных форм не проверяются при выборе этого теста.</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>Клиент</span>,
<span class=»Term«>ТолстыйКлиентУправляемоеПриложение</span>,
<span class=»Term«>Сервер</span>.</p>
<p class=»Lang-subheader«>Толстый клиент (управляемое приложение,
вариант клиент-сервер)</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды управляемого клиента, выполняемого в варианте клиент-сервер.</p>
<p class=»MsoNormalCxSpMiddle«>Если
свойство конфигурации <span class=»Interface«>Использовать обычные формы в управляемом приложении</span> имеет значение <span class=»Term«>Ложь</span>, то модули обычных форм не проверяются при выборе этого теста.</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>Клиент</span>,
<span class=»Term«>ТолстыйКлиентУправляемоеПриложение</span>.</p>
<p class=»Lang-subheader«>Поставка модулей без исходных текстов</p>
<p class=»MsoNormal«>Если в настройках поставки конфигурации для
некоторых модулей указана поставка без исходных текстов, проверяется возможность
генерации образов этих модулей.</p>
<p class=»Lang-parameter«>Логическая проверка модулей</p>
<p class=»Lang-subheader«>Поиск неиспользуемых процедур и функций</p>
<p class=»MsoNormalCxSpFirst«>Поиск локальных (не экспортируемых) процедур
и функций, на которые отсутствуют ссылки. В том числе осуществляется поиск
неиспользуемых обработчиков событий.</p>
<p class=»MsoNormalCxSpLast«>Процедура или функция модуля формы будет
считаться используемой, если ее имя встречается в виде <span class=»Interface«>"ИмяПроцедуры"</span> (включая кавычки), т. е.
является параметром какого-либо метода, например, назначение обработчика
какого-либо события.</p>
<p class=»Lang-subheader«>Проверка существования назначенных
обработчиков</p>
<p class=»MsoNormal«>Проверка существования обработчиков событий
интерфейсов, форм, элементов управления, элементов карт маршрута.</p>
<p class=»Lang-subheader«>Поиск пустых обработчиков</p>
<p class=»MsoNormal«>Поиск назначенных обработчиков событий, в
которых не выполняется никаких действий. Существование таких обработчиков может
привести к падению производительности системы.</p>
<p class=»Lang-subheader«>Расширенная проверка</p>
<p class=»MsoNormal«>Для ограниченного набора типов выполняется
проверка обращений к методам и свойствам объектов «через точку». Также выполняется
проверка корректности указания параметров, заданных строкой, для ограниченного
набора методов.</p>
<p class=»Lang-subheader«>Поиск использования модальности</p>
<p class=»MsoNormal«>Данный флажок становится доступным только в
том случае, если включена расширенная проверка конфигурации. В этом режиме
конфигуратор выполняет поиск в модулях методов, открывающих модальные
диалоговые окна. Свойство конфигурации <span class=»Interface«>Режим использования модальности</span> не влияет на работу
механизма проверки. При включении данного флажка ошибки будут выдаваться и в
том случае, если свойство <span class=»Interface«>Режим использование модальности</span> установлено в значение <span class=»Interface«>Использовать</span> или <span class=»Interface«>Использовать с предупреждением</span>.</p>
<p class=»Lang-subheader«>Поиск использования синхронных вызовов</p>
<p class=»MsoNormalCxSpFirst«>Данный флажок становится доступным только в
том случае, если включена расширенная проверка конфигурации. В этом режиме
конфигуратор выполняет поиск в модулях фрагментов кода на встроенном языке, в
которых используются синхронные вызовы. Свойство конфигурации <span class=»Interface«>Режим использования синхронных вызовов расширений платформы и
внешних компонент</span> не влияет на работу механизма проверки. При включении
данного флажка ошибки будут выдаваться и в том случае, если свойство <span class=»Interface«>Режим использование модальности</span> установлено в значение <span class=»Interface«>Использовать</span> или <span class=»Interface«>Использовать с предупреждением</span>.</p>
<p class=»MsoNormalCxSpLast«>Более
подробно особенности поиска синхронных вызовов см. <a href=»#_ref448859736«>здесь</a>.</p>
<p class=»Lang-parameter«>Проверка мобильного приложения</p>
<p class=»Lang-subheader«>Поиск неподдерживаемой функциональности</p>
<p class=»MsoNormal«>Проверка в этом режиме показывает:</p>
<p class=»MsoListBulletCxSpFirst«>●
Наличие в прикладном решении объектов
конфигурации, которые не реализованы для мобильной платформы;</p>
<p class=»MsoListBulletCxSpMiddle«>●
Наличие в прикладном решении планов обмена, у
которых установлено свойство <span class=»Interface«>Распределенная информационная база</span>;</p>
<p class=»MsoListBulletCxSpLast«>●
Использование объектов конфигурации, которые не поддерживаются
мобильной платформой:</p>
<p class=»MsoListBullet2CxSpFirst«>●
В свойствах <span class=»Interface«>Тип</span> реквизитов объектов конфигурации, констант,
параметров сеанса;</p>
<p class=»MsoListBullet2CxSpMiddle«>●
В свойстве <span class=»Interface«>Тип параметра команды</span> объекта <span class=»Term«>Команда</span>;</p>
<p class=»MsoListBullet2CxSpLast«>●
В свойстве <span class=»Interface«>Тип</span> реквизитов и колонок реквизита формы.</p>
<p class=»MsoListBulletCxSpFirst«>●
Наличие неуправляемых форм;</p>
<p class=»MsoListBulletCxSpMiddle«>●
Наличие в формах элементов, которые не поддерживаются
мобильной платформой. Эта проверка не делается для форм, у которых свойство <span class=»Interface«>Назначения использования</span> не предполагает использование
на мобильной платформе.</p>
<p class=»MsoListBulletCxSpLast«>●
Проверка, что начальная страница состоит не
более чем из одной формы.</p>
<p class=»MsoNormalCxSpFirst«> </p>
<p class=»MsoNormalCxSpMiddle«>Выбранную совокупность настроек можно
сохранить для дальнейшего использования. Для этого в поле <span class=»Interface«>Настройка проверки</span> нужно указать имя настройки. Для
использования прежней настройки достаточно выбрать имя настройки.</p>
<p class=»MsoNormalCxSpLast«>Все сообщения об ошибках выдаются в окно
сообщений. Для прерывания проверки конфигурации следует использовать комбинацию
клавиш <span class=»Interface«>Ctrl + Break</span>.</p>
<p class=»Note«><span class=»Note«>Примечание.</span> В начальной стадии
проверки прерывание может быть обработано с задержкой.</p>
<p class=»MsoNormalCxSpFirst«>При проверке конфигурации, подключенной к
хранилищу, во избежание ошибок, связанных с информацией о метаданных, рекомендуется
захватить корневой объект конфигурации.</p>
<p class=»MsoNormalCxSpLast«>Если параметр <span class=»Interface«>Редактирование конфигурации для режимов запуска</span> (см. <A href=»/db/content/v8310doc/src/руководство разработчика/глава 33. сервисные возможности.htm?_=1496848987#_ref222823825«>здесь</a>) имеет значение <span class=»Interface«>Управляемое приложение и обычное приложение</span>, то в диалоге
добавляются следующие параметры:</p>
<p class=»MsoListBulletCxSpFirst«>●
<span class=»Interface«>Толстый клиент (обычное
приложение)</span>;</p>
<p class=»MsoListBulletCxSpLast«>●
<span class=»Interface«>Толстый клиент (обычное
приложение, вариант клиент-сервер)</span>.</p>
<p class=»Regularbeforepicture«>При этом диалог приобретает следующий вид:</p>
<p class=»Picture«><IMG src=»_img/img00565.gif?_=1496848987» WIDTH=»506» ALT HEIGHT=»610«></p>
<p class=»MsoCaption«>Рис. 557. Проверка конфигурации</p>
<p class=»MsoNormal«>Далее приводится описание этих тестов.</p>
<p class=»Lang-subheader«>Толстый клиент (обычное приложение)</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды клиентского приложения, выполняемого в файловом варианте.</p>
<p class=»MsoNormalCxSpMiddle«>Если свойство конфигурации<span class=»Interface«> Использовать управляемые формы в обычном приложении</span> имеет значение <span class=»Term«>Ложь</span>, то модули управляемых форм и модули
команд не проверяются при выборе этого теста. Модуль формы, указанной в
свойстве <span class=»Interface«>Основная форма
констант</span>, проверяется при выборе этого теста независимо от значения
свойства <span class=»Interface«>Использовать
управляемые формы в обычном приложении</span>.</p>
<p class=»MsoNormalCxSpLast«>Определены инструкции препроцессора: <span class=»Term«>Клиент</span>,
<span class=»Term«>ТолстыйКлиентОбычноеПриложение</span>,
<span class=»Term«>Сервер</span>.</p>
<p class=»Lang-subheader«>Толстый клиент (обычное приложение, вариант
клиент-сервер)</p>
<p class=»MsoNormalCxSpFirst«>Проверка компиляции модулей в режиме
проверки среды клиентского приложения, выполняемого в варианте клиент-сервер.</p>
<p class=»MsoNormalCxSpMiddle«>Если свойство конфигурации<span class=»Interface«> Использовать управляемые формы в обычном приложении</span>
имеет значение <span class=»Term«>Ложь</span>,
то модули управляемых форм и модули команд не проверяются при выборе этого теста.
Модуль формы, указанной в свойстве <span class=»Interface«>Основная форма
констант</span>, проверяется при выборе этого теста независимо от значения
свойства <span class=»Interface«>Использовать
управляемые формы в обычном приложении</span>.</p>
<p class=»MsoNormalCxSpLast«>Определены
инструкции препроцессора: <span class=»Term«>Клиент</span>, <span class=»Term«>ТолстыйКлиентОбычноеПриложение</span>.</p>
<a id=»TI000001029» class=»bookmark» name=»issogl1_27.23.механизм_анализа_эргономики_работы_с_решениями_созданными_на_платформе_1с_предприятие«><h2>27.23.Механизм анализа эргономики работы с решениями, созданными на платформе «1С:Предприятие»</h2></a>
<p class=»MsoNormal«>Запуск клиентского приложения с ключом командной
строки<span class=»Interface«> /logui</span> создаст
на компьютере пользователя в папке файлов приложений <span class=»Interface«>%APPDATA%1C1Cv82<Уникальный идентификатор></span> файл
<span class=»Interface«>logui.txt</span>, в
котором будут регистрироваться все интерактивные действия пользователя (нажатия
клавиш, щелчки мыши). Например:</p>
<a class=»copy_source» href=»#_top» onClick=»return false«>Копировать в буфер обмена</a>
<pre class=»src_res«>
"19.06.2008 16:22:49","Event FormActivate","Name Документ.ПриходТовара.Форма.ФормаСписка","t=0"
"19.06.2008 16:22:49","Event FormActivate","Name Документ.ПриходТовара.Форма.ФормаСписка","t=0"
"19.06.2008 16:22:49","Event Lclick","Form РегистрНакопления.Взаиморасчеты.Форма.ТекущиеВзаиморасчеты", "Type TableBox","t=0","beg"
</pre>
<p class=»MsoNormalCxSpFirst«>Запись интерактивных действий выполняется для
толстого и тонкого клиентов и не выполняется для веб-клиента.</p>
<p class=»MsoNormalCxSpMiddle«>Подробнее о формате файла
<span class=»Interface«>logui.txt</span> см. <a href=»/db/v8310doc/bookmark/adm/TI000000410» target=»_top«>здесь</a>.</p>
<p class=»MsoNormalCxSpMiddle«> </p>
<br> <script type=»text/javascript«>listenCopy(‘zeroclipboard.swf’);</script>
</body>
</html>
120 из 128
(Ссылка на ТС
визуализировать какие-либо операции привязанные к дате и времени
визуализировать какие-либо повторяющиеся операции привязанные к дате и времени
интерактивно вносить данные о каких-либо операциях, привязанных к дате и времени
Варианты 1 и 2
Варианты 1 и 3
Верны все варианты
Предыдущий
Следующий
Texify — Image to Text (OCR) — Photo to Text, [11.01.2023 10:27]
10:22 50,9 КБ/С ИКОН
14 из 128
Избранный
Начальную страницу можно отобразить:
Правильно
Подсказка
В основном окне
40D
Во вспомогательном окне, удерживая клавишу «Shift»
Зависит от настроек конфигурации
Варианты 1 и 2
Предыдущий
Следующий)
128 из 128
Значения параметров формы доступны:
только в обработчике события «При открытии»
только в обработчике события «При создании на сервере»
в обработчике события «При создании на сервере» и ряде других серверных процедурах/функциях
40D
в обработчике события «При создании на сервере», и в ряде других серверных процедурах/функциях (но последнее возможно только для параметров отмеченных как ключевые)
Предыдущий
Следующий)
126 из 128
Параметры формы могут использоваться для:
Правильно
Подсказка
Ссылка на ИТС
описания набора данных, которые будут влиять на открытие формы
расширения состава данных формы
определения состава ключа уникальности формы
Варианты 1 и 2
Варианты 1 и 3
Верны все варианты
127 из 128
Параметры формы могут использоваться для:
описания дополнительных наборов данных, получаемых формой «извне»
определения состава ключа уникальности формы
определения типа формы (обычная/управляемая)
Предыдущий
Варианты 1 и 2
125 из 128
не более 4-х элементов
только один элемент
любое количество элементов, но в случае их большого числа отображаться будут не все, доступа к неотображаемым элементам нет
любое количество элементов, но в случае их большого числа отображаться будут не все, доступ к неотображаемым элементам по навигационной команде «Еще»
124 из 128
Расположение шкалы времени у объекта «Планировщик»
может быть
Верх или низ
Лево или право
Только слева
Варианты 1 или 2
123 из 128
Какое может быть количество измерений у объекта
«Планировщик»?
«Предопределенных» измерений нет, все добавляются. Максимальное количество 2, причем одно должно иметь тип «Дата»
«Предопределенных» измерений нет, все добавляются. Максимальное количество 3, причем одно должно иметь тип «Дата»
Всегда присутствует измерение, связанное со шкалой времени и максимум два дополнительных измерения
Всегда присутствует измерение, связанное со шкалой времени и любое количество дополнительных измерений
122 из 128
Для
визуализации данных по
операциям/событиям
привязанным к интервалам дат (имеющие дату начала и дату окончания) может использоваться
Диаграмма Ганта
Объект Планировщик
Варианты 1 и 2
Нет правильного ответа
120 из 128
Объект «Планировщик» позволяет:
визуализировать какие-либо операции привязанные к дате и времени
визуализировать какие-либо повторяющиеся операции привязанные к дате и времени
интерактивно вносить данные о каких-либо операциях, привязанных к дате и времени
Предыдущий
Варианты 1 и 2
Верны все варианты
119 из 128
Какие действия может выполнить пользователь работая с полем форматируемого документа?
Работать с маркированным и нумерованным
списком
Делать фрагмент текста полужирным, наклонным, подчеркнутым, зачеркнутым
Включать режим рецензирования
Предыдущий
Варианты 1 и 2
118 из 128
Какие действия может выполнить пользователь работая с полем форматируемого документа?
Правильно
Подсказка
Вставлять файлы *.mpeg
Увеличивать, уменьшать размер шрифта
Управлять межстрочным интервалом
Варианты 1 и 2
Варианты 2 и 3
117 из 128
Какие действия может выполнить пользователь работая с Полем форматируемого документа?
Правильно
(Подсказка
Вставлять картинки
Управлять выравниванием текста
Задавать фон текста
Предыдущий
Варианты 1 и 2
Варианты 2 и 3
Верны все варианты
116 из 128
Какие действия может выполнить пользователь работая с Полем форматируемого документа?
Правильно
Подсказка
Изменять шрифт и его параметры
Вставлять гиперссылки
Вставлять специальные символы (например: авторское право)
Предыдущий
Варианты 1 и 2
Варианты 2 и 3
Верны все варианты
115 из 128
Для того, чтобы У B форме форматирования документа необходимо:
Воспользоваться свойством «Отображение командной панели»
Добавить командную панель и указать в качестве источника команд форматированный документ
Ничего делать не нужно, команды появляются
автоматически
Варианты 1 или 3
114 из 128
Какой из реквизитов формы, представленной на рисунке, является основным?
Объект
Документ
Справочник
Объект и справочник
У данной формы нет основного реквизита
113 из 128
Добавить элемент управления в обычную форму можно:
Через пункт главного меню «Форма-Вставить элемент управления»
Выбрав необходимый пункт контекстного меню на панели формы
С помощью командной панели «Элементы управления»
Верны ответы 1 и 3
Верны все варианты
112 из 128
Какой из реквизитов формы, представленной на рисунке, является основным?
объект
Документ
Справочник
Следующий
110 из 128
Закладки на форме могут быть расположены:
Сверху или снизу
Слева (горизонтально) или справа (горизонтально)
Пролистывание (сенсорный экран)
Варианты 1 и 2
Варианты 1 и 3
Верны все варианты
109 из 128
Для того чтобы предоставить пользователю возможность интерактивного изменения хранимого документа помощью объекта «Форматированный документ», следует выполнить следующие шаги:
Создать реквизит формы типа «ФорматированныйДокумент» и установить для него свойство «Сохраняемые данные»
Реквизит формы типа «ФорматированныйДокумент» сделать основным реквизитом формы
Создать элемент формы типа «Поле ввода» вида «Поле форматированного документа»
Предыдущий
Варианты 1 и 2
Варианты 1 и 3
Варианты 1 и 2 и 3
108 из 128
Для предоставления пользователю
Возможности выполнять редактирование текстов C Оформлением необходимо использовать объект:
Текстовый документ
форматированный документ
Табличный документ
107 И3 128
Для отображения дополнительных данных в динамическом списке (например остатки взаиморасчетов B партнеров) необходимо использовать обработчик события:
Правильно
(Подсказка
(Ссылка на ИТС
При создании на сервере
При открытии
При получении данных на сервере
106 из 128
B динамическом списке управляемой формы выполняется:
по данным текущей колонки динамического списка
по данным всех полей, отображаемых в Динамическом списке
по данным всех полей динамического списка
Варианты 1 или 2 или 3 в зависимости от настройки
105 из 128
Изменить порядок обхода элементов обычной формы
Нельзя, если установлено свойство формы «Автопорядок обхода»
Можно, непосредственно в форме (после выполнения определенной команды)
Можно, в свойствах элемента управления формы
Верны ответы 2 и 3
Верны ответы 1, 2 и 3
104 из 128
Выполнение навигационной команды «Открыть» свойства динамического списка «Настройка
управлять отбором, порядок отображения данных
настраивать группировку, условное оформление
данных
настраивать группировку, условное оформление
данных
определять текст запроса
Варианты 1 и 2
Верны все варианты
103 из 128
Выполнение навигационной команды «Открыть» свойства динамического списка «Настройка списка» (представленной На рисунке) открывает форму в которой можно:
управлять отбором, порядок отображения данных
настраивать группировку, условное оформление
данных
определять текст запроса
Предыдущий
Варианты 1 и 2
102 из 128
Ключ динамического списка (в случае если в качестве основной таблицы указана одна из виртуальных таблицы регистров. накопления, бухгалтерии, расчета, кроме таблицы «Движения ССубконто») представляет собой:
внутренний идентификатор объекта
ссылку
ключ записи
число
Нет правильного ответа
Предыдущий
Следующий)
Texify — Image to Text (OCR) — Photo to Text, [11.01.2023 10:40]
10:18. 0,8 КБ/С 2004
101 M3128
Ключ динамического списка (в случае если в качестве основной таблицы указана одна из следующих таблиц: основная таблица регистра сведений, регистра накопления, регистра бухгалтерии, регистра расчета, виртуальная таблица регистра бухгалтерии «Движения С Субконто») представляет собой:
внутренний идентификатор объекта
ссылку
ключ записи
число
Нет правильного ответа
100 из 128
Ключ динамического списка (в случае если в качестве основной таблицы указана виртуальная таблица регистра сведений «СрезПервых» представляет собой:
внутренний идентификатор объекта
Предыдущий
ссылку
ключ записи
99 из 128
Ключ динамического списка (в случае если в качестве основной таблицы указана таблица критерия отбора или таблица задач по исполнителю) представляет собой:
внутренний идентификатор объекта.
ссылку
98 из 128
Избранный
Ключ динамического списка (в случае если в качестве основной таблицы указана одна из следующих таблиц: план обмена, справочник, список документов, журнал Документов, план видов характеристик, план счетов, план видов расчета, бизнес-процесс, задача, таблица точек бизнес-процесса) представляет собой:
число
Нет правильного ответа
ссылку
внутренний идентификатор объекта
Предыдущий
ключ записи
97 и3 128
Свойство динамического списка «Динамическое считывание данных» применимо для:
таблиц критериев отбора
таблиц задач по исполнителю
виртуальной таблицы «Движения ССубконто»
96 из 128
Свойство динамического списка «Динамическое считывание данных» применимо для:
Свойства: Реквизит
объектных таблиц системы
основных таблиц регистров
виртуальных таблиц регистров накопления
Верны варианты 1 и 2
Верны варианты 1 и 3
Верны все варианты
95 из 128
Избранный
При настройке ключа динамического списка в случае указания в свойстве «Вид ключа» значения «Авто» в качестве значения свойства «Поле ключа» может использоваться:
номер строки
ключ динамического списка (может включать несколько полей, но только ссылочных типов)
ключ динамического списка (может включать несколько полей, не обязательно только ссылочных типов)
Верны варианты 1 или 2
Верны варианты 1 или 3
Предыдущий
94 из 128
429
При настройке ключа динамического списка в случае указания в свойстве «Вид ключа» значения «Авто» в качестве значения свойства «Поле ключа» может использоваться:
номер строки
поле динамического списка
ключ динамического списка (может включать несколько полей, но только ссылочных типов)
Верны варианты 1 или 2
93 из 128
Избранный
Ключ динамического списка определяется:
автоматически в случае указания основной таблицы
с использованием специализированных свойств динамического списка, в случае если основная таблица не выбрана
с использованием специализированных свойств Динамического списка в любом случае (выбрана основная таблица или нет)
Верны варианты 1 или 2
92 из 128
«ДинамическийСписок» способ формирования запроса к данным определяется разработчиком:
заданием основной таблицы
ручным формированием запроса
определяется автоматически исходя из принадлежности формы определенному объекту конфигурации
Верны варианты 1 или 2
91 из 128
В редакторе формы управлять расположением элемента формы (относительно других) можно
в дереве элементов формы, используя команды «Переместить вверх», «Переместить вниз»
в списке реквизитов формы, используя команды «Переместить вверх», «Переместить вниз»
перетаскиванием мышью в окне предварительного просмотра
Вариант 1 или 2
Вариант 1 или 3
90 из 128
Управлять значением свойства реквизита «Использовать всегда» можно для типов:
число, строка, дата, булево
ссылочных типов
хранилище значения
Варианты 1 и 2
89 из 128
Свойство «Использовать всегда»
не дает пользователю убирать видимость элементов формы, связанных с данным реквизитом
позволяет пользователю управлять видимостью связанных элементов формы, но данный реквизит всегда будет доступен на стороне клиента в случае наличия связанного с ним элемента формы
вне зависимости, от того связан ли реквизит формы с элементом формы, определяет его доступность на стороне клиента
88 из 128
Кнопки управляющие режимом просмотра B области предварительного просмотра редактора формы позволяют выбрать режимы:
Персональный компьютер (Такси), отображение Обычное, масштаб 110%
Персональный компьютер (Интерфейс 8.2), отображение Обычное, разрешение монитора из
списка
Мобильное устройство (мобильный клиент), модель телефона из списка, масштаб 110%
Вариант 1 или 2
Вариант 1 или 3
Возможен любой из указанных вариантов
87 из 128
Свойство элемента формы «Пользовательская видимость» позволяет
Свойства: Поле
исключить реквизит из данных формы (реквизит не передается с сервера) для конкретного пользователя системы. Изменить эту настройку пользователь не может.
исключить реквизит из данных формы (реквизит не передается с сервера) для роли пользователя. Изменить эту настройку пользователь не может.
определить видимость элемента формы по умолчанию. При этом пользователь может самостоятельно изменить это свойство в редакторе настройки формы.
делает связанный с реквизитом элемент формы доступным только для просмотра
Область предварительного просмотра внешнего вида формы (в нижней части рисунка) позволяет просматривать результат:
в разных масштабах
в разных вариантах управляемого интерфейса (Такси/Версия 8.2)
для разных клиентов (персональный компьютер/ мобильный клиент)
Варианты 1 и 2
Варианты 1 и 2 и 3
85 из 128
Выполнение команды «Показать ошибки размещения» позволяет:
отобразить любые элементы формы, с не заполненным свойством «Путь к данным»
отобразить элементы формы, связанные с одним и тем же элементом данных (дубли)
отобразить ошибки задания свойств элементов формы, которые будут приводить к проблемам при Их размещении на форме (например ширины)
84 из 128
Выполнение команды «Проверить» приводит
к выполнению синтаксического контроля кода модуля формы
к открытию разрабатываемой формы в отдельном окне (без возможности заполнения реквизитов, табличных частей формы)
к открытию разрабатываемой формы в отдельном окне (с возможностью заполнения реквизитов, табличных частей формы)
83 из 128
В управляемой форме существуют следующие виды привязок:
Ручная
Автоматическая
Полуавтоматическая
Верны ответы 1 и 2
Верны ответы 1 и 2
Верны ответы 1, 2 и 3
в управляемой форме нет привязок
82 из 128
42
Что произойдет, если выполнить команду, показанную на рисунке?
Ничего не произойдет, так как для группы «Страница» это действие не может быть выполнено
Группа «Страница» «Товары» станет первой
81 из 128
Что произойдет, если выполнить команду, показанную на рисунке?
Откроется форма поиска по модулю формы с указанием строк, в которых используется обращение к данному элементу формы
Форма предварительного просмотра внешнего вида формы откроется в отдельном окне
Произойдет переход к реквизиту, свойству реквизита формы, с которым связан данный элемент формы
80 из 128
Избранный
Каким образом в основной управляемой форме объекта разместить список объектов другого типа (например в управляемой форме элемента справочника «Контрагенты» разместить список договоров?
Данное действие можно реализовать только за счет создания табличной части у справочника «Контрагенты», которая будет содержать ссылки на договора
Создать элемент формы «Таблица». Присвоить свойству этого поля «Тип значения» значение «СправочникСписок. Договора»
Создать реквизит формы с типом «Справочник Список. Договора», разместить в форме элемент формы «Таблица», связанный с данным реквизитом
Создать реквизит формы с типом «Динамический список», разместить в форме, элемент формы «Таблица», связанный с данным реквизитом
79 из 128
Для чего предназначены элементы формы?
Для хранения данных
Для обеспечения возможности интерактивного
изменения данных
Для обеспечения отображения данных
Предыдущий
Верны 1 и 3
Верны 2 и 3
78 из 128
Что произойдет, если выполнить команду, показанную на рисунке?
Откроется диалог по выбору варианта создания обработчика события
Произойдет переход к процедуре (обработчику события), если таковой определен. В случае его отсутствия процедура будет создана
Произойдет переход к процедуре (обработчику события), если таковой определен. В случае его отсутствия ничего не произойдет
Произойдет создание процедуры обработчика события
77 из 128
На рисунке представлена:
Сводная диаграмма
Дендрограмма
Диаграмма Ганта
76 из 128
Избранный
При обращении к обычной форме «извне» для чтения данных формы
необходимо обращаться к элементам управления, отображающим данные
необходимо обращаться к реквизитам формы и свойствам расширения формы
необходимо передавать данные через экспортные переменные общих модулей
Варианты 1 или 2 (в зависимости от типа элемента управления формы)
75 из 128
Свойство «Вид» элемента формы
нельзя изменить, если задана связь элемента формы с данными
можно менять всегда и любым способом
можно менять только программно
В принципе нельзя изменить
74 из 128
Избранный
На рисунке представлена:
Дендрограмма
Диаграмма Ганта
73 из 128)
Избранный
в модуле объекта справочника «Номенклатура» объявлена процедура со словом «Экспорт». Может ли она быть вызвана «напрямую» из модулей подчиненных форм?
Вызов возможен только из формы, где основным реквизитом указан «СправочникОбъект. Номенклатура»
Вызов возможен из модуля любой формы конфигурации
Вызов возможен только из подчиненной формы справочника «Номенклатура»
Вызов возможен только из модулей основных форм данного справочника
72 из 128
Различается ли набор свойств у элемента управления «Поле ввода», созданного в форме и расположенного в таблице этой формы?
Различается
Различается, если только это не поля одного типа значений
Не различается
71 и3128
Если в качестве типа значения реквизита, связанного с элементом формы «Поле «СправочникСсылка. Номенклатура», организовать быстрый выбор значения этого поля, набирая значение реквизита конкретной позиции номенклатуры непосредственно в самом поле ввода?
Правильно
Подсказка
Нет, нельзя
Можно. Для этого необходимо выбрать у соответствующего реквизита установить «Автовыбор незаполненного»
Можно. Для этого необходимо отметить у соответствующего реквизита свойство «Быстрый выбор»
Можно. Для этого необходимо в окне редактирования справочника «Номенклатура» на закладке «Поле ввода» в поле «Ввод по строке» указать соответствующий реквизит
70 из 128
Можно ли в один элемент формы «Поле ввода» вводить значения разных типов,
Можно, если он связан с реквизитом составного типа, и также отмечено свойство «Выбирать тип»
Нельзя
Можно, если он связан с реквизитом составного типа
69 из 128
Какую кнопку необходимо отобразить у элемента формы «Поле ввода», чтобы для выбора значения можно было использовать выпадающий список?
Кнопку выпадающего списка
Кнопку выбора
Кнопку регулирования
Нет правильного ответа
Предыдущий
Следующий)
68 из 128
439
При ситуации, отображенной на картинке, если обратиться к «Контрагент» в модуле формы документа, то
получим сообщение об ошибке из-за некорректной настройки формы
получим объект, представляющий собой элемент формы
получим значение реквизита документа
получим значение реквизита формы
67 из 128
Состав кнопок, расположенных справа у элемента формы «Поле ввода», определяется:
Значением свойства поля ввода «Тип значения»
Заданием значений соответствующих свойств в свойствах элемента формы
Типом формы
66 из 128
Избранный
ввода» выбрано
Если в качестве типа значения реквизита связанного с элементом формы «Поле «СправочникСсылка.Номенклатура», TO ли можно номенклатуры организовать быстрый выбор значения этого поля, набирая Наименование конкретной позиции непосредственно в самом поле ввода?
Можно. Для этого необходимо в окне редактирования справочника «Номенклатура» на закладке «Поле ввода» в поле «Ввод по строке» выбрать «Наименование»
Можно. Для этого необходимо выбрать свойство поля ввода «Автовыбор незаполненного»
Можно. Для этого необходимо выбрать свойство поля ввода «Быстрый выбор»
65 из 128
Тонкая прерывистая линия красного цвета в поле ввода (например, предназначенное для ввода контрагента) означает:
У данного поля определен один (или более) обработчик события
У данного поля создан обработчик события «ПроверкаЗаполнения»
Данное поле недоступно для заполнения
Данное поле обязательно к заполнению
64 из 128
Элемент формы «Поле ввода» предназначен для:
Ввода значений непосредственно в поле, например, с клавиатуры
выбора ссылок на объекты
Выбора значений из предварительно сформированного списка
Верны ответы 1 и 2 и 3
Верны ответы 1 и 2
63 из 128
Можно ли одновременно создать элемент управления «Поле ввода» (в обычной форме) вместе с поясняющей надписью, представляющей элемент управления «Надпись»?
Правильно
Можно, для этого необходимо создавать поле ввода, воспользовавшись одноименной кнопкой на панели инструментов «Элементы управления»
Можно, для этого необходимо создавать поле ввода через пункт главного меню «Форма-Вставить элемент управления.»
Нет, нельзя, так как это разные элементы управления
62 из 128
Избранный
Для размещения в управляемой форме табличной части объекта используется элемент формы
Табличный документ
Таблица
Поле
Группа список
Предыдущий
61 из 128
При определении реквизита управляемой формы, в качестве его типа можно указать:
Дерево значений
Таблицу значений
Null
Верны ответы 1 и 2
Верны ответы 2 и 3
Верны ответы 1 и 2 и 3
Предыдущий
Следующий
60 из 128
Элемент формы «Поле документа» предназначен для размещения в форме:
Данных в виде динамических списков
Табличного документа
Табличной части
Варианты 1 или 2
Предыдущий
59 из 128
Свойство «Вспомогательная» элемента » управления Командная панель» предназначено:
Для расположения кнопок с командами, относящимися к элементам управления формы, а не к самой форме
Для расположения кнопок с командами, дополняющими команды основной панели формы
Для исключения командной панели из порядка обхода элементов управления в форме
(58 из 128
В конфигурацию добавлен новый справочник «Договора», подчиненный справочнику «Контрагенты». Каким образом, в режиме Конфигуратора, необходимо модернизировать основную управляемую форму элемента справочника «Контрагенты», чтобы для конкретного контрагента имелась возможность просмотреть его договора? Каждая из форм имеет автоматически заполняемую командную панель.
В командную панель каждой из форм необходимо вставить кнопку с выбранной стандартной командой по переходу к подчиненному справочнику
Ничего делать не надо, в командную панель автоматически будет добавлена кнопка «Перейти», позволяющая открыть форму подчиненного справочника
Ничего делать не надо, команда всегда автоматически появляется в интерфейсе, но не в командной панели, а в панели навигации формы
Саму команду создавать не нужно, но можно управлять ее видимостью в панели навигации формы
57 из 128
Каким образом для элемента формы группа с видом «Командная панель» реализовать
автоматического заполнения?
В окне свойств достаточно установить флаг «Автозаполнение»
В окне свойств достаточно установить флаг «Изменяет данные»
В окне свойств установить флаг «Изменяет данные» и, обязательно, выбрать значение свойства «Источник команд»
В окне свойств установить флаг «Автозаполнение» и, обязательно, выбрать значение свойства «Источник команд»
Выбрав значение в свойстве «Источник команд»
56 из128
Для управления информацией, расположенной в форме, группа формы C видом «Командная
содержать:
Группу кнопок
Подменю
Дополнение элемента формы
Варианты 1 и 2
Варианты 1 и 3
Варианты 1 и 2 и 3
55 из 128
Сколько элементов формы «Командная панель» расположено на форме?
2
1
4
0
3
54 из 128
Можно ли при нажатии на элемент управляемой формы «Кнопка командной панели» осуществить вызов подменю?
Можно, если в качестве значения свойства «Режим меню» выбрать «Использовать» или «Использовать Дополнительно»
Нельзя, для реализации подобного функционала нужно использовать другой элемент формы
Можно, для этого в качестве обработчика события «Нажатие» необходимо выбрать стандартное действие «Меню»
53 из 128
В качестве обработчика события. «Нажатие» элемента управления обычной формы «Кнопка» может быть:
Выбрано стандартное действие
Выбрана процедура модуля формы, в которой расположена кнопка
Выбрана глобальная процедура, описанная в общем модуле
Верны ответы 1 и 2
Верны ответы 1, 2 и 3
52 из 128
Поясняющая информация на элементе формы «Кнопка командной панели» может быть представлена в виде:
Надписи
Картинки
Картинки и надписи
Либо надписи, либо картинки
Верны ответы 1 и 2 и 3
51 и3 128
Визуально объединять элементы управления, размещенные в обычной форме, можно с помощью:
элемента управления «Поле списка»
Элемента управления «Табличное поле»
Элемента управления «Рамка группы»
50 из 128
Элемент управления обычной формы «Разделитель» позволяет:
Визуально разделять элементы управления, размещенные в форме
Перераспределять внутреннее пространство формы, изменяя размеры расположенных в ней элементов управления, при изменении размеров самой формы
Перераспределять внутреннее пространство формы, изменяя размеры расположенных в ней элементов управления, привязанных к разделителю. Размеры самой формы при этом не меняются
Перераспределять внутреннее пространство формы, изменяя размеры расположенных в ней элементов управления, привязанных к разделителю, при изменении размеров самой формы
49 из 128
C помощью элемента управляемой формы «Поле текстового документа» можно отображать и редактировать:
Обычный текст
Текст, написанный на языке запросов (с подсветкой синтаксических конструкций)
Текст, написанный на встроенном языке (с подсветкой синтаксических конструкций)
HTML-документы (с подсветкой синтаксических конструкций)
48 из 128
Для выбора значений из списков можно использовать следующие элементы управляемой формы
Поле ввода
Поле выбора
Поле списка
Верны ответы 2 и 3
46 из 128
Список значений, используемый в элементе управляемой формы «Поле ввода», может быть сформирован:
Только в режиме 1С:Предприятие в специальном окне, которое можно открыть в разделе «Использование» палитры свойств элемента формы
Для поля ввода список значений не задается
Только в режиме конфигуратора в специальном окне, которое можно открыть в разделе «Использование» палитры свойств элемента формы
Программно и в режиме конфигуратора в специальном окне, которое можно открыть в разделе «Использование» палитры свойств элемента формы
Только программно
45 из 128
Избранный
HTML-документ в элементе формы «Поле HTML-документа» может быть сформирован:
Программно
Загружен из ресурса, указываемого через URL
Загружен из макета типа HTML-документ
Верны ответы 1 или 2 или 3
44 из 128
Редактировать HTML-документ, отображаемый в элементе управляемой формы «Поле HTML-документа», можно:
в режиме конфигуратора
в режиме 1С:Предприятие, средствами самого элемента формы
в режиме 1С:Предприятие, с использованием других элементов формы
Предыдущий
RanusuITLI 1 и 2
43 из 128
Элемент управления «Поле HTML-документа» управляемой формы предназначен:
Для просмотра HTML-документов
Для редактирования HTML-документов
Для просмотра или редактирования HTML-
документов
42 из 128
Сколько может быть создано форм, подчиненных (кпримеру) объекту конфигурации
«Номенклатура»?
Форма элемента, форма группы (для иерархических справочников) и произвольное количество форм списка
Три или пять в зависимости от настройки иерархии справочника
Произвольное количество
41 и3 128
Если для элемента управления «Поле надписи» в качестве источника данных указан реквизит справочника, TO выводимая надписью информация будет определяться:
свойством «Заголовок» элемента формы «Поле надписи»
значением реквизита, указанного в свойстве «Данные» элемента формы «Поле надписи»
свойством «Заголовок» элемента формы «Поле надписи», если значение реквизита справочника
неопределенно
Варианты 2 и 3
40 из 128
При размещении элементов в форме нельзя…
разместить два элемента формы, отображающие Данные одного и того же реквизита формы на одной странице
разместить два элемента формы, отображающие данные одного реквизита формы на любых страницах одной и той же панели
разместить два элемента формы, отображающие данные одного и того же реквизита формы
разместить один и тот же элемент на двух страницах
39 из 128
Свойство диаграммы «БазовоеЗначение» содержит:
Начальное значение координат.
Шаг измерительной шкалы диаграммы
Максимальное значение текущей серии
38 из 128
Элемент формы «Декорация» предназначен:
Правильно
Подсказка
Для расположения в форме поясняющей информации
Для расположения в форме гиперссылок
Для расположения в форме картинок с поясняющей информацией
Варианты 1 и 2
Варианты 1 и 2 и 3
37,и3 128
Как включить возможность интерактивной перенастройки порядка обхода элементов управления обычной формы?
Через меню «Форма» снять флажок «Автоматический порядок обхода»
Снять флажок «Автопорядок обхода» в свойствах каждой панели формы
Снять флажок «Автопорядок обхода» в свойствах формы
36 из 128
Значение типа «ЗначениеДиаграммы» позволяет получить:
Значение диаграммы в определенной точке и серии
Значение расшифровки в определенной точке и
серии
Текст подсказки
Варианты 1 и 2
Варианты 1 и 3
Варианты 1 и 2 и 3
35 из 128
Каким образом относительно друг Друга использоваться элементы формы с типами: «Группа- Обычная группа», «Группа-Страницы», «Группа-Страница»
«Группа-Страницы» входит в «Группа-Обычная группа»
«Группа-Страницы» входит в «Группа-Страница»
«Группа-Обычная группа» входит в «Группа-Страницы»
Варианты 1 и 2
34 из 128
При расположении в панели обычной формы элементов управления…
Их можно привязать к границам элементов управления, расположенных в любом месте формы и к границам формы
их можно привязать к границам элементов управления, расположенных в любом месте формы
Их можно привязать к границам элементов управления, расположенным в панели и к границам
панели
их можно привязать к границам панели
33 из 128
Для чего используются привязки в обычной форме,
Для обеспечения управления доступностью элементов управления в зависимости от видимости или доступности других элементов управления
Для обеспечения управления поведением границ элементов управления при изменении размеров формы
Верны все варианты
Для обеспечения управления доступностью элементов управления в зависимости от доступности других элементов управления
32 из 128
Избранный
44
При использовании свойства диаграммы «МаксимумСерий Количество»,если количество
Серий превышает максимальное значение:
Выводятся серии, выбираемы по алгоритму: по каждой серии ищется максимальное точечное значение, эти значения сортируются и из полученного списка выбирается для показа (МаксимумСерийКоличество — 1) серий. Остальные серии игнорируются
Выводятся серии, выбираемы по алгоритму: по каждой серии ищется максимальное точечное значение, эти значения сортируются и из полученного списка выбирается для показа (МаксимумСерий Количество -1) серий. Значения. остальных серий суммируются и выводятся в серии «Сводная»
Выводятся первые серии, количество которых задается этим свойством
31 и3 128
Для хранения значения элемента формы «Поле переключателя»
в управляемой форме можно использовать:
Реквизит формы, создаваемый конструктором при добавлении переключателя в форму
Существовавший ранее (предварительно созданный) реквизит формы
Варианты 1 и 2
30 из 128
В управляемом приложении отображать данные в виде диаграммы можно
в отчетах, использующих механизм компоновки
данных
в основной форме объекта
в любой форме
Предыдущий
Варианты 1 и 2
Варианты 1 и 3
29 из 128
Возможность системы создания «налету» форм по умолчанию в режиме «1С:Предприятие»
следует использовать только в тех случаях, когда обращения к данной форме редки, поскольку расходуется большее количество ресурсов системы
следует использовать во всех случаях, когда не требуется выполнение программных действий в форме, и нет особых требований по отношению внешнего вида формы объекта со стороны
пользователя
следует использовать только для объектов, обладающих простой структурой
следует использовать только в тех случаях, когда форму необходимо исключить из состава основных
28 из 128
С помощью элемента формы «Поле переключателя» можно:
Выбрать одно значение из нескольких заранее определенных вариантов
Выбрать несколько значений из заранее определенных вариантов
Выбрать одно или несколько значений из заранее определенных вариантов
27 из 128
Поведение элементов формы
всегда стандартно
определяется подчинением формы соответствующему прикладному объекту
определяется только расширением формы, расширением элементов управления или отображаемыми данными
стандартно, но имеет место специфичное поведение, определяемое расширениями формы, расширениями самих элементов и расширениями, связанными с отображаемыми данными
26 из 128
На рисунке представлена:
Диаграмма Ганта
Сводная диаграмма
Предыдущий
Дендрограммаv
Диаграмма
25 из 128
С помощью элемента формы «Поле индикатора» можно:
Отобразить текущее состояние реквизита формы любого типа
Отобразить текущее состояние реквизита формы только числового типа
Быстро и наглядно ввести значение любого типа
Быстро и наглядно ввести значение только числового типа.
24 из 128
Для добавления команды в виде кнопки на обычной форме можно:
разместить на форме элемент управления «Кнопка», назначить обработчик события «Нажатие» и определить алгоритм в модуле формы
добавить в форму элемент управления «Кнопка», назначить команду из списка команд формы и определить алгоритм команды в модуле формы
добавить команду формы в командный интерфейс формы и включить ее видимость
Предыдущий
Варианты 2 и 3
23 из 128
Для добавления команды в виде кнопки на управляемой форме можно:
разместить на форме элемент управления «Кнопка», назначить обработчик события «Нажатие» и определить алгоритм в модуле формы
добавить в форму элемент управления «Кнопка», назначить команду из списка команд формы и определить алгоритм команды в модуле формы
перетащить команду в дерево элементов
добавить команду формы в командный интерфейс формы и включить ее видимость
Предыдущий
Варианты 2 и 3
22 из 128
Чем отличается ключевой параметр формы от обычного?
Обычный параметр существует только при создании формы, ключевой — всегда
Обычный параметр существует только при открытии формы, ключевой — только при закрытии формы
Ключевой параметр существует только при создании формы, обычный- всегда
Ключевой параметр существует только при открытии формы, обычный только при закрытии формы
21 и3 128
При наличии одного ключевого параметра можно ли добавить еще один ключевой параметр формы?
Можно посредством назначения соответствующего значения свойства параметра формы
Можно посредством добавления еще одного значения к соответствующему свойству формы
Можно только программно, при обращении к объекту «Форма»
20 из 128
Параметры формы предназначены:
Правильно
Подсказка
для организации функциональной связи между формами
для управления функциональностью формы при открытии
для отображения информации на форме
Варианты 1 и 2
19 из 128
Панель навигации может существовать:
Только в основном окне на рабочем столе
В основном окне и вспомогательных окнах
В основном окне на рабочем столе и в разделах
18 из 128
Какие возможности по настройке порядка обхода элементов в управляемой форме существуют в системе 1С:Предприятие 8?
Порядок обхода единый для всех пользователей, но может изменяться программно и интерактивно самим пользователем
Порядок обхода зависит от ролей пользователя и функциональных опций и не может изменяться
Порядок обхода зависит от ролей пользователя и функциональных опций, и по своей сутиопределяется положением элементов в дереве элементов в форме (может меняться программно и интерактивно самим пользователем)
Порядок обхода единый для всех пользователей и не
может изменяться
17 из 128
Настройка списка управляемой формы B режиме исполнения позволяет:
Изменить видимость существующих в списке
колонок
Удалять колонки из списка
Добавлять колонки в списке
Изменить порядок, настроить группировки, управлять отбором и условным оформлением записей
16 из 128
Настройка формы в режиме исполнения позволяет:
Изменить видимость существующих на форме элементов управления
Изменять формат, ширину, высоту, текст заголовка и др. свойства элементов управления существующих на форме
Удалять с формы некоторые элементы управления
Добавлять на форму новые элементы управления
Варианты 1 и 2
Верны все варианты
15 из 128
Управляемые формы списков можно отобразить
В основном окне
Во вспомогательном окне
Зависит от настроек формы
Варианты 1 и 2
13 из 128
Разместить формы в начальной странице можно
По горизонтали не более двух, по вертикали в любом количестве
По горизонтали в любом количестве, по вертикали не более двух
По горизонтали не более двух, по вертикали не более двух
По горизонтали в любом количестве, по вертикали в любом количестве
12 из 128
Как определяется рабочая область начальной страницы?
Набирается из списка управляемых форм
Набирается из списка произвольных форм
Набирается из списка любых определенных в конфигураторе форм
Заполняется автоматически генерируемыми формами на основании стандартных команд
11 из 128
В качестве основной формы можно назначить?
Возможность зависит от настроек конфигуратора
Только обычную
Обычную и управляемую
Только управляемую форму
10 из 128
Для чего нужны основные формы прикладных объектов?
Только из основных форм есть возможность обращаться к контексту объекта напрямую.
Только у основных форм может быть назначен основной реквизит, определяющий состав формы.
Основные формы вызываются взамен автоматически генерируемых по умолчанию при соответствующем обращений к объекту.
Только у основных форм возможно использование расширения форм, определяющего специфику состава и поведения формы, отличного от типового
9 из 128
При наличии одного основного реквизита формы можно ли добавить еще один основной реквизит?
Можно посредством назначения соответствующего значения свойства реквизита формы
Можно только программно, при обращении к объекту «Форма»
Это невозможно
Можно посредством добавления еще одного значения к соответствующему свойству формы
8 из 128
Чтобы произвольной обычной форме назначить основной реквизит…
форму нужно сделать основной, основной реквизит при этом определяется автоматически
нужно в свойствах реквизита формы установить флажок «Основной реквизит»
нужно войти в меню «Правка», пункт «Основной реквизит» и выбрать нужное значение
нужно заполнить свойство «Данные» формы, выбрав нужный реквизит формы
Предыдущий
7 из 128
Чтобы произвольной управляемой форме назначить основной реквизит…
форму нужно сделать основной, основной реквизит при этом определяется автоматически
нужно в свойствах реквизита формы установить флажок «Основной реквизит»
нужно войти в меню «Правка», пункт «Основной реквизит» и выбрать нужное значение
нужно заполнить свойство «Данные» формы, выбрав нужный реквизит формы
6 из 128
Для чего нужны реквизиты формы?
Для описания состава данных, которые отображаются, редактируются или хранятся в форме
Для приема «внешних» данных передаваемых форме при открытии
Варианты 1 и 2
Предыдущий
Следующий
5 из 128
Для чего служит основной реквизит формы?
Определяет источник данных для формы в целом
Определяет стандартные возможности платформы для работы формы с данными типа, заданного у основного реквизита
Для обеспечения возможности программного обращения к реквизитам объекта из локального контекста формы
Обеспечивает визуализацию реквизитов объекта на диалоге формы
Варианты 1 и 2
4 из 128
Как реализован механизм автопреобразования обычных форм в управляемые и обратно
С помощью механизма ввода на основании
С помощью изменения свойства формы «Тип формы»
С помощью специального конструктора конвертация форм
Автопреобразование не поддерживается
3 из 128
Использование управляемых форм возможно…
в толстом клиенте в режиме обычного приложения
в толстом клиенте в режиме управляемого приложения
в тонком клиенте
Предыдущий
в веб-клиенте
Варианты 1 и 2
верны все варианты в зависимости от настроек
2 из 128
Использование обычных форм возможно:
в толстом клиенте
в тонком клиенте
в веб-клиенте
Варианты 1 и 2
1 из 128
Какие виды форм позволяет использовать Платформа 8.3?
Возможность использования обычных и управляемых форм зависит от настроек конфигурации и клиентского приложения
Обычные формы только в режиме совместимости с 8.1
Управляемые формы только в режиме управляемого приложения
Всегда возможно совместное использование обычных и управляемых форм
70 из 70
Шаблоны текста могут использоваться:
в Конфигураторе
в режиме 1С:Предприятие
Верны ответы 1 и 2
69 из 70
Шаблоны текста определены:
Правильно
Подсказка
могут задаваться свои шаблоны
на уровне платформы, но могут изменяться
на уровне платформы и не могут изменяться
Варианты 1 и 2
68 из 70
Шаблоны текста задаются для:
для определения шаблонов сообщений
быстрого ввода часто используемых текстовых конструкций
определения часто выводимой информации
определения часто используемых процедур и функций
67, и3 70
Конструктор макета оформления компоновки данных открывается:
из конструктора запросов
из конструктора макетов при указании типа макета «Макет оформления компоновки данных»
из конструктора схемы компоновки данных
из конструктора настроек компоновки данных
66 из 70
Конструктор макета оформления компоновки данных используется для:
для создания и изменения шаблонов вывода информации
определения настройки выводимой информации
создания и настройки фиксированных макетов в системе компоновки данных
65 из 70
Конструктор настроек компоновки данных доступен:
Только в режиме 1С:Предприятие
Доступен и в конфигураторе, и 1С:Предприятии
Только в конфигураторе
64 из 70
Конструктор настроек компоновки настроить вывод информации в виде:
Диаграммы
Списка
Таблицы
Верны все варианты
63 из 70
Конструктор настроек компоновки данных позволяет:
изменить текущие настройки
определить новые настройки для отчета
определить новые наборы данных
62 из 70
Запрос для системы компоновки данных необходимо определять:
полностью заранее, т.е. статический
только обязательные поля, т.е. динамический
только таблицы, т.е. определяемый
61 й3 70
Данные для источников в системе компоновки данных
могут браться из:
Правильно
Подсказка
памяти компьютера
внешних источников
базы данных
Варианты 1 и 2
Верны все варианты
60 из 70
В схеме компоновки данных источник определяется:
Количество источников ограничено
Количество источников не ограниченно
Один
59 из 70
Для определения схемы источника данных в системе компоновки данных используется:
Конструктор запроса
Конструктор настроек компоновки данных
Конструктор запроса с обработкой результата
Конструктор схемы компоновки данных
58 из 70
Для отображения в конструкторе списка оптимальных агрегатов необходимо:
произвести расчет оптимальных агрегатов в конфигураторе
включить отображение оптимальных агрегатов
произвести расчет оптимальных агрегатов в 1С:Предприятие и загрузить их в Конфигураторе
произвести расчет оптимальных агрегатов в 1С:Предприятие
57 и3 70
Если для регистра накопления недоступен конструктор агрегатов, необходимо выполнить следующие действия:
изменить настройку регистра накопления «Вид регистра»
открыть агрегаты и в настройку добавить необходимый регистр накопления
включить в конфигурации использование агрегатов
56 из 70
Конструктор агрегатов может быть вызван:
По кнопке «Агрегаты» в окне редактирования объекта конфигурации на закладке «Данные»
Через контекстное меню в дереве метаданных «открыть агрегаты»
Через контекстное меню в дереве метаданных «Конструкторы — конструктор агрегатов»
Варианты 1 и 2
55 из 70
Конструктор агрегатов предназначен для формирования агрегатов:
Документов
справочников
регистров накопления
регистров бухгалтерии
54 из 70
При определении ограничения доступа в конструкторе ограничений доступа к данным текст условия:
начинается с ключевого слова «Выбрать»
начинается только с конструкции «Выбрать Различные»
начинается только с конструкции «Выбрать Разрешенные»
ключевое слово «Выбрать» не определяется
53 из 70
При определении ограничения доступа в конструкторе ограничений доступа к данным:
правило ограничения определяется только на закладке «Связи»
Настройки, выполненные на обеих закладках конструктора, участвуют в определении условия на доступ к данным
правило ограничения определяется только на закладке «Условия»
52 из 70
При определении ограничения доступа в конструкторе ограничений доступа к данным:
текст запроса может быть сформирован только самим конструктором
текст запроса может быть сформирован как самим конструктором, так и вручную
текст запроса может быть введен только вручную
51 из 70
В конструкторе ограничений доступа к данным:
Можно использовать только поля объекта, для которого определяется ограничение
Можно использовать только поля объекта, для которого определяется ограничение и поля вложенных таблиц (по отношению к полям объекта)
Любые таблицы, которые в запросе можно связать с полями объекта, для которого определяется ограничение
50 из 70
В конструкторе запросов условия на значения агрегатных функций можно накладывать:
На закладке «Группировка», в списке суммируемых полей при выборе агрегатной функции
На закладке «Итоги», в списке итоговых полей при выборе агрегатной функции
На закладке «Условия»
в конструкторе запросов задать условия на значения агрегатных функций нельзя
49 из 70
Для создания B запросе строк, сгруппированных помощью агрегатных функций, на закладке «Группировка» конструктора запросов обязательно должны быть заполнены:
Правильно
Подсказка
Обязательным является указание как групповых, так и суммируемых полей
Только список суммируемых полей, при этом остальные поля автоматически попадут в секцию «СГРУППИРОВАТЬ ПО» в тексте запроса
Только список групповых полей. Указание суммируемых полей не обязательно
48 из 70
Для создания в конструкторе запросов вычисляемого поля необходимо:
Создать вычисляемое поле можно только изменив текст запроса «вручную»
Открыть закладку «Объединения/Псевдонимы». В командной панели над списком полей нажать кнопку «Добавить» или выбрать одноименный пункт
контекстного меню
Открыть закладку «Таблицы и поля». В командной. панели над деревом «Таблицы» нажать кнопку «Изменить текущий элемент». В открывшемся окне добавить новое поле
Открыть закладку «Таблицы и поля». В командной панели над деревом «Поля» нажать кнопку «Добавить» или выбрать одноименный пункт контекстного меню
47 и3 70
Для создания B конструкторе запросов вложенного запроса необходимо:
Открыть закладку «Таблицы и поля». В командной панели над деревом «Поля» нажать кнопку «Добавить» или выбрать одноименный пункт
контекстного меню
В конструкторе запросов создать вложенный запрос
нельзя
Открыть закладку «Таблицы и поля». В командной панели над деревом «Таблицы» нажать кнопку «Добавить» или выбрать одноименный пункт контекстного меню
Открыть закладку «Таблицы и поля». В командной панели над деревом «База данных» нажать кнопку «Добавить» или выбрать одноименный пункт
Контекстного меню
46 из 70
На закладке «Таблицы и поля» конструктора запросов задают:
Источники данных запросов, в качестве которых могут выступать реальные и виртуальные таблицы
Набор полей из таблиц источников данных запроса
Поля в виде произвольного выражения
Верны ответы 1 и 2
Верны все варианты
45 из 70
Кем может использоваться конструктор запросов?
Разработчиками, так как необходимо знание языка запросов
Квалифицированными пользователями без использования конфигуратора
Верно все вышеперечисленное
Нет верного ответа
44 из 70
Конструктор запросов может быть вызван:
С помощью пункта главного меню «Текст — Конструктор запроса…»
С помощью кнопки «Конструкторы Конструктор запросов» на закладке «Макеты» из окна редактирования объекта
С помощью пункта всплывающего контекстного меню «Конструктор запроса…», появляющегося при нажатии в тексте модуля правой клавиши мыши
Варианты 1 и 3
Верны все варианты
43 из 70
При сохранении текста запроса, открытого повторно с помощью конструктора запроса, без внесения в этот текст изменений:
Весь первоначальный текст остается без изменений
Из первоначального текста будут удалены только комментарии
В первоначальном тексте комментарии останутся, а будут удалены только конструкции языка запросов построителя отчетов
Из первоначального текста будут удалены и комментарии, и конструкции языка запросов построителя отчетов
42 из 70
Использование конструктора запроса C обработкой результата позволяет:
Сформировать текст нового запроса
Сформировать программный код, содержащий создание объекта встроенного языка Запрос, текста запроса, получение и обработку результата выполнения запроса
Отредактировать текст имеющегося запроса
Варианты 1 и 3
Верны все варианты
41 из 70
Использование конструктора запросов позволяет:
Сформировать текст нового запроса
Сформировать программный код, содержащий создание объекта встроенного языка Запрос, текста запроса и получение результата выполнения запроса
Отредактировать текст имеющегося запроса
Варианты 1 и 3
40 и3,70
У документа уже определены все основные формы. При создании новой формы в конструкторе выставляют следующие флажки (см. рисунок). Что произойдет после того, как форма будет создана?
форма2 будет назначена основной формой документа
Ничего, поскольку не выставлен флажок «Основная форма списка и выбора»
форма2 будет назначена основной формой списка Документа
39 из 70
В конструкторе управляемой формы документа при необходимости нестандартного размещения элементов формы:
можно указать необходимость размещения на форме всех или только некоторых элементов формы, соответствующих составу подчиненных объектов (реквизитов, табличных частей)
можно указать требуемый вид элементов формы, соответствующих составу подчиненных объектов
Варианты 1 и 2
38 из 70
Можно ли в конструкторе управляемой формы документа На втором шаге (кнопка «Далее») указать размещение таблицы, содержащей данные регистра, для которого Данный документ является регистратором?
Нет, такие действия выполняются уже при работе с формой
Да, только если документ может иметь движения только по одному регистру
Да, при любых условиях
37 из 70
Можно ли в конструкторе формы документа на втором шаге (кнопка «Далее») указать размещение таблицы, содержащей данные документа, на основании которого введен данный документ?
Да, при любых условиях
Да, только если данный документ является основанием только для одного документа
Нет, такие действия нужно выполнять уже при работе с формой
36 из 70
Можно ли в конструкторе формы элемента справочника на втором шаге (кнопка «Далее») указать размещение таблицы, содержащей данные подчиненного справочника?
Нет, такие действия нужно выполнять уже при работе с формой
Да, если текущий справочник является владельцем только для одного справочника
Да, при любых условиях
35 из 70
Конструктор формы списка иерархического справочника при указании размещения дерева:
не позволяет выбрать просмотр групп и элементов. Это можно сделать позже при работе с формой из конфигуратора
сразу позволяет выбрать просмотр групп и
элементов
не позволяет выбрать просмотр групп и элементов. Это можно сделать позже при работе с формой из пользовательского режима
34 из 70
Конструктор формы списка справочника на закладке «Далее»…
всегда позволяет разместить в диалоге список элементов и, кроме того, для иерархических справочников с иерархией групп и элементов, — дерево групп
всегда позволяет разместить на форме и дерево групп и список элементов
для иерархических справочников либо список элементов, либо дерево групп
33 из 70
После нажатия на кнопку «Далее», в соответствии с рисунком, на второй закладке конструктора общих форм можно будет:
Список будет пуст (без возможности добавления)
32 из 70
При создании формы конструктором формы количество размещаемых на форме командных панелей:
Только одна
всегда — две (верхняя и нижняя)
Предыдущий
не ограничено
не более двух
31 из 70
При создании формы установлен флажок «Назначить форму основной». После сохранения этой формы можно ли будет назначить основной другую форму?
Можно, предварительно сняв флаг «Основная» свойствах формы, бывшей основной ранее
Нет ни при каких условиях
Нет, пока не будет удалена текущая основная форма
Можно в окне редактирования объекта конфигурации
30 из 70
Как можно Вызвать конструктор форм объектов конфигурации?
Из окна редактирования объекта конфигурации, закладка «Форма», при создании новой формы
При помощи контекстного меню из окна «Конфигурация»
Никак. Конструктор форм является составной частью конструктора выходных форм
Предыдущий
Варианты 1 и 2
29 из 70
Конструктор форм предназначен для:
создания новых объектов типа «форма»
редактирования объектов типа «форма»
Оформления диалоговой части формы и является лишь составной частью конструктора выходных форм
Предыдущий
Варианты 1 и 2
27 из 70
Количество языков для конструктора строк на разных языках:
определяется в конфигурации и может расширяться программно
предопределено в платформе и неизменно
определяется в конфигурации и ограничено набором
языков
задается настройками конфигуратора
26 из 70
Для открытия окна конструктора строк на разных языках необходимо:
нажать кнопку открытия в палитре свойств элемента формы в свойстве «Формат редактирования»
установить курсор в текст модуля и выбрать пункт «Текст — Конструктор строк на разных языках»
находясь в палитре свойств элемента формы в свойстве Формат, выбрать пункт «Текст — Конструктор строк на разных языках»
Предыдущий
Варианты 1 и 2
25 из 70
Конструктор строк на разных языках может использоваться для:
определения строковых представлений интерфейса
на разных языках
определения нескольких форматных строк под разные языки
перевода данных базы на разные языки
Предыдущий
Варианты 1 и 2
24 из 70
Каким образом можно задать текст надписей для элементов формы на выбранном языке?
В палитре свойств элемента управления в свойстве Заголовок нажать на кнопку «Кнопка открытия». В появившемся окне «Строки на разных языках» ввести надпись
Сменить язык редактирования конфигурации, а потом ввести надпись в свойстве Заголовок (или Синоним)
Нет правильного ответа
Предыдущий
Варианты 1 и 2
23 из 70
форматная строка, сформированная в палитре свойств элемента формы при помощи конструктора форматной строки:
недоступна для редактирования
может быть изменена вручную
может быть изменена конструктором форматной
строки
Предыдущий
Варианты 2 и 3
22 из 70
Для открытия окна конструктора форматной строки необходимо…
нажать кнопку выбора в палитре свойств элемента формы в свойстве «Формат редактирования»
установить курсор в текст модуля и выбрать пункт «Текст — Конструктор форматной строки»
находясь в палитре свойств элемента формы в свойстве «Формат редактирования», выбрать пункт «Текст — Конструктор форматной строки»
Предыдущий
Варианты 1 и 2
21 из 70
конструктор форматной строки:
можно вызывать в поле ввода и ячейке табличного Документа
можно использовать при написании текстов модулей
можно вызывать в поле выбора, поле списка
Варианты 1 и 2
20 из 70
Конструктор форматной строки используется для составления текста форматной строки данных:
имеющих тип Число, Дата или Булево
имеющих любой тип
имеющих тип Число, Строка, Дата или Булево
имеющих примитивный тип
19 из 70
Можно ли значение pecypca ‘Количество» задать произвольным выражением?
Нет, нельзя, формулу можно заполнить только значениями из списка реквизитов документа
Да, можно, но конструктор проверит правильность написания формул согласно списку реквизитов Документа
Да, можно, правильность написания формулы конструктор не проверяет
Нет, нельзя, формулу можно заполнить только значениями, выделенными «галочками» в списке реквизитов документа
18 из 70
Если процедура с именем «ОбработкаПроведения» уже
определена в модуле документа, то возможно ли в этом случае использование конструктора движений?
Да, но при этом система попросит подтверждение на замещение алгоритма проведения уже существующей процедуры «Обработка Проведения»
новым
Нет, сначала надо вручную удалить «старую» обработку проведения, а только потом вызывать конструктор
Да, система закомментирует «старую» обработку проведения и создаст «новую»
Да, но система при этом, безусловно, удалит «старую» обработку проведения
17 и3 70
Процедуру с каким именем и в каком контексте определяет конструктор движений документа?
ДвиженияДокумента. Определяется в модуле объекта документа
ДвиженияДокумента. Определяется в модуле формы документа
ОбработкаПроведения. Определяется в модуле формы документа
Обработка Проведения. Определяется в модуле объекта документа
16 из 70
Можно ли произвести автозаполнение выражений и, если «Да», то какими действиями?
Да, можно. Оставить все настройки согласно рисунку и нажать кнопку «Заполнить выражения»
Нет, нельзя. Каждое выражение для поля-приемника необходимо определять «вручную
Да, можно. В элементе формы «Табличная часть» выбрать табличную часть «Состав» документа и нажать кнопку «Заполнить выражения»
15 из 70
Назовите основное назначение конструктора движений Документа
Конструктор движений облегчает задачу разработки процедуры, с помощью которой будут формироваться движения документа в регистрах учета
Конструктор движений документа в системе отсутствует
Конструктор движений облегчает задачу формирования движений, но только в регистрах
накопления
Конструктор движений облегчает задачу разработки структуры документа, исходя из структуры регистров
учета
14 из 70
Назовите инструмент визуального создания алгоритма проведения документа и основное место его вызова
Инструмент визуального создания алгоритма проведения документов в системе отсутствует
Конструктор движений. Основное место вызова через окно редактирования объекта, закладка «Проведение», кнопка «Конструктор движений»
Конструктор движений. Основное место вызова через окно редактирования объекта, закладка «Движения», кнопка «Конструктор движений»
Конструктор движений. Основное место вызова через главное меню «Конструкторы» / «Движения регистров…»
13 из 70
Какое предназначение имеет выделение «галочками» элементов списка «Реквизиты объекта основания»?
Эти реквизиты система впишет в качестве формул заполнения реквизитов «Состав. Количество», «Состав. Сумма» при нажатии кнопки «ОК»
Эти реквизиты предлагаются для заполнения реквизитов «СписокНоменклатуры.Количество», «Состав.СписокНоменклатуры» по принципу
совпадения имен
Эти реквизиты система предлагает в качестве формулы заполнения реквизита «СписокНоменклатуры. Цена» по принципу совпадения типов реквизитов
12 из 70
Если процедура с именем «ОбработкаЗаполнения» уже
определена в модуле документа, то возможно ли в этом случае использование конструктора ввода основании?
Да, но система при этом, безусловно, удалит «старую» обработку заполнения
Да, система закомментирует «старую» обработку заполнения и создаст «новую»
Да, но при этом система попросит подтверждение на полное замещение уже существующей процедуры «ОбработкаЗаполнения» новой процедурой
Нет, сначала надо вручную удалить «старую» обработку заполнения, а только потом вызывать конструктор
11 из 70
Можно ли формулу заполнения поля «СписокНоменклатуры. Цена» задать произвольным выражением?
Нет, нельзя, формулу можно заполнить только значениями из списка «Реквизиты объекта основания»
Нет, нельзя, формулу можно заполнить только значениями, выделенными «галочками» в списке «Реквизиты объекта основания»
Да, можно, правильность написания формулы конструктор не проверяет
Да, можно, но конструктор проверит правильность написания формул согласно списку «Реквизиты объекта основания»
10 из 70
Назовите основное назначение конструктора ввода объекта «на основании».
Конструктор ввода на основании облегчает задачу разработки структуры другого объекта «на основании» структуры «объекта-основания»
конструктор ввода на основании облегчает задачу разработки процедуры, с помощью которой будет формироваться новый объект при вводе «на основании»
Конструктор ввода объекта «на основании» в системе отсутствует
Конструктор ввода на основании облегчает задачу формирования движений в регистрах учета «на основании» данных объекта
9 из 70
Назовите инструмент визуального создания алгоритма заполнения объекта «на основании» и основное место его вызова?
Мастер ввода на основании. Основное место вызова через окно редактирования объекта, закладка «Ввод. на основании», кнопка «Мастер ввода на основании»
Конструктор ввода на основании. Основное место вызова через окно редактирования объекта, закладка «Данные», кнопка «Конструктор ввода на основании»
конструктор ввода на основании. Основное место вызова через окно редактирования объекта, закладка «Ввод на основании», кнопка «Конструктор ввода на основании»
Конструктор ввода на основании. Основное место вызова через главное меню «Конструкторы» / «Ввод на приорации
8 из 70
Если в конструкторе печати указано имя процедуры, которая будет выполнять построение печатной формы, и такая процедура уже присутствует в модуле:
то конструктор перепишет ее заново, при этом введенный ранее в тело процедуры текст будет потерян
то конструктор предложит задать другое имя процедуры
то конструктор выполнит объединение текстов модулей, при этом ранее существовавший текст процедуры будет закомментирован
то конструктор выполнит объединение текстов модулей, при этом добавляемый текст процедуры будет закомментирован.
7 из 70
Для чего предназначен конструктор печати?
Для создания макета с заданными именованными областями и процедуры печати для определенных объектов конфигурации.
Для создания макета с заданными именованными областями и процедуры печати любых объектов конфигурации
Для создания макета с заданными именованными областями для определенных объектов конфигурации
Для создания макета с заданными именованными областями и процедуры печати отчетов
6 из 70
Выбор в конструкторе макетов типа «Табличный документ»:
позволяет использовать для подготовки макета Текстовый редактор
предполагает, что подготовка макета будет производиться с помощью Табличного редактора
позволяет использовать заранее подготовленные редактором географических схем документы для создания макета
Варианты 1 и 2
5 из 70
При работе с конструктором макета необходимо выполнять загрузку из файла при работе с типами макета:
Правильно
Подсказка
HTML-документ, Двоичные данные, Active document, Географическая схема
Табличный документ, Текстовый документ, HTML- документ
Двоичные данные, Active document, Географическая схема
Текстовый документ, Двоичные данные, Active document, Географическая схема
4 из 70
Какие данные может содержать макет, созданный конструктором макетов?
Текстовый документ
Географическую схему
Дерево значений
Варианты 1 или 2
Варианты 1 или 3
3 из 70
Макет какого типа может быть создан конструктором макетов?
Active document
Табличный документ
XML документ
Таблица значений
Варианты 1 или 2
2 из 70
Для открытия окна конструктора макета необходимо…
выполнить пункт «Действия — Добавить», если выбрана ветвь подчиненного объекта «Макеты»
выполнить пункт «Действия — Добавить», если выбрана ветвь «Общие макеты»
установить курсор в текст модуля и выбрать пункт «Текст — Конструктор макета»
Варианты 1 и 2
1 из 70
Конструктор макета можно использовать:
для создания макетов объектов конфигурации
для создания общих макетов
при написании текстов модулей
Варианты 1 и 2
//////////////////////////////////////////////////////////////////////////////////////
64 из 70
Как разместить B диалоге управляемой формы графические элементы, например, диаграмму?
Добавить элемент «Поле» и связать с реквизитом, у которого задан тип «Диаграмма»
Вызвать диалог вставки элементов управления и выбрать нужный элемент
Использовать панель инструментов для размещения элементов заданного типа на форму
Добавить элемент «Поле» и определить у него тип «Диаграмма»
63 из 70
Какие типы элементов можно добавить на форму в редакторе управляемых форм?
Поле, Кнопка, Таблица, Картинка, Группа, Декорация, Диаграмма
Поле, Кнопка, Таблица, Картинка, Диаграмма, Декорация
Поле, Кнопка, Таблица, Картинка, Группа, Декорация
Поле, Кнопка, Таблица, Картинка, Группа, Декорация,
62 из 70
Настройки редактора управляемых форм определяются…
Общие в настройках конфигуратора и индивидуальные в настройке формы
Для всех форм в настройках параметров конфигуратора
Только в настройках самой формы
Платформой без возможности их изменений
61 из 70
Редактор управляемых форм содержит закладки…
Форма, Модуль, Элементы, Команды, Реквизиты, Параметры, Командный интерфейс
Диалог, Модуль, Реквизиты, Элементы, Параметры, Команды формы, Командный интерфейс
Диалог, Модуль, Реквизиты
Форма, Модуль формы, Реквизиты
60 из 70
Редактор обычных форм может использоваться
В любом режиме работы конфигуратора
При установленном режиме совместимости интерфейса «Интерфейс 8.2»
Только в режиме работы конфигуратора «Управляемое приложение и обычное приложение»
Только при установке значения свойства конфигурации «Основной режим запуска» — Обычное приложение
59 и3 70
В редакторе обычных форм диалог создается:
определением структуры размещения элементов
размещением элементов управления в диалоге формы
рисованием с использованием встроенного редактора картинок
Варианты 1 и 2
58 из 70
Какие действия возможны в редакторе обычной формы?
Набор действий определяется пунктом меню «Правка» в главном меню конфигуратора
Набор действий определяется пунктом меню «форма» в главном меню конфигуратора
Набор действий определяется пунктом меню «Редактор форм» в главном меню конфигуратора
Набор действий определяется контекстным меню на закладке «Диалог» редактора форм
Варианты 2 и 4
57 и3 70
При удалении реквизита обычной формы:
Редактор удалит связанный с реквизитом элемент управления
Редактор удалит связанный с реквизитом элемент управления, но только если реквизит был создан редактором при добавлении элемента управления
Элемент управления останется и связь с данными будет очищена
Редактор не позволит удалить реквизит, если он связан с элементом управления
56 из 70
Какие настройки можно определить у реквизита обычной формы
«Имя»
«Тип»
«Проверка заполнения»
Верны варианты 1 и 2
Верны все варианты
55 из 70
При добавлении элемента управления на произвольную обычную форму без реквизитов:
редактор форм сам создаст реквизит и при удалении элемента с формы удалит реквизит формы
редактор форм предложит сначала создать реквизит, а потом позволит поместить элемент управления на форме
редактор форм сам создаст реквизит и при удалении элемента с формы оставит реквизит формы Поведение зависит от настройки редактора форм
54 из 70
Настройки редактора обычных форм определяются…
Только в настройках самой формы
Платформой без возможности их изменений
Для всех форм в настройках параметров конфигуратора
Общие в настройках конфигуратора и индивидуальные в настройке формы
53 из 70
На что влияет флажок «Использовать при вставке» в диалоге вставки элемента управления?
Редактор формы будет использовать диалог вставки элемента управления только в следующий раз при добавлении данного типа элемента управления на форму
Редактор формы будет всегда использовать диалог вставки элемента управления при добавлении элемента управления на форму
Редактор формы будет использовать диалог вставки элемента управления только в следующий раз при добавлении любого элемента управления на форму
Редактор формы будет использовать диалог вставки элемента управления при добавлении данного типа элемента управления на форму
Texify — Image to Text (OCR) — Photo to Text, [12.01.2023 13:41]
13:40:0,5 КБ/с 0 0
»
52 из 70
Какие способы доступны B конфигураторе для редактирования диалога обычной формы?
Через диалог вставки элементов управления
Через диалог размещения данных
Вставка элемента управления из панели инструментов
Предыдущий
Варианты 1 и 2
Верны все варианты
51 из 70
Редактор обычных форм содержит закладки:
Форма, Модуль, Команды формы, Параметры
Диалог, Модуль, Реквизиты
Форма, Модуль формы, Реквизиты
Диалог, Модуль, Реквизиты, Элементы, Параметры, Команды, Командный интерфейс
49 из 70
Режим «Скрыть невидимые по умолчанию» скрывает:
команды, для которых отключена только видимость по ролям
команды, для которых отключена общая видимость и видимость по ролям
группы, в которых нет команд
Варианты 1 и 2
Варианты 2 и 3
48 из 70
Что определяет серый флажок в видимости команды по ролям?
Видимость определяется программно
Видимость зависит от сочетания ролей
Видимость определяется общей настройкой
47 и3 70
Где отображается список доступных команд?
в редакторе командного интерфейса конфигурации
в редакторе командного интерфейса основного
Do’stlaringiz bilan baham:
Предложите, как улучшить StudyLib
(Для жалоб на нарушения авторских прав, используйте
другую форму
)
Ваш е-мэйл
Заполните, если хотите получить ответ
Оцените наш проект
1
2
3
4
5