Общая информация и интерфейс Студии

From SunFlurry wiki
Jump to: navigation, search

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

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

Интерфейс Студии

Студия имеет простой и удобный интерфейс, основные элементы которого, показаны на рис 1. Ниже дана краткая информация по каждому из элементов интерфейса:

  1. Заголовок окна приложения показывает информацию о том, какой путь метаданных редактируется в данный момент.
  2. Главное меню содержит все возможности Студии и будет рассмотрено ниже.
  3. Панель инструментов изменяется в зависимости от того, что редактируется в данный момент. На рисунке показана панель, связанная с редактором формы.
  4. Редактор свойств выделенного объекта (или объектов) используется для изменения свойств визуальных объектов редактора форм или объектов структуры данных в редакторе конфигурации данных.
  5. Поле текущего редактора. На рисунке показан WYSIWYG редактор формы с выделенной таблицей значений.
  6. Панель задач использует два ряда кнопок. Нижний ряд -- кнопки пути метаданных, при активации каждой из таких кнопок, верхний ряд кнопок меняется на окна редакторов, открытых для редактирования объектов этого пути. Такая система позволяет группировать большое количество открытых окон по объектам метаданных и упрощает навигацию и работу со Студией. В данном примере в нижней панели активирована кнопка документа "КорректировкаДолга", в верхней панели задач открыто 3 редактора: редактор основной формы, редактор формы страницы группы страниц с закладками и редактор исходного текста модуля.
  7. Панель статуса показывает дополнительную информацию по текущему редактору. В данном случае, это размеры и положение визуального объекта на форме.

Элементы интерфейса и ссылки на дальнейшие статьи

Главное меню Студии

Главное меню Студии состоит из следующих пунктов:

  • Файл -- доступ к основным функциям работы с проектов (создание, открытие, закрытие и пр.)
    • Создать... (Ctrl+N) -- Закрывает текущий открытый проект и создает новый. Если в текущем проекте были несохраненные изменения, будет задан вопрос о его сохранении. Кроме нового проекта, данный пункт меню позволяет создать свободную таблицу SFT для редактирования и дальнейшего сохранения а также новый внешний объект sfo. Внешние объекты могут содержать модули, формы, таблицы и бинарные файлы в одном архиве, который может быть загружен пользователем в клиенте. К внешним объектам также имеется программный доступ (см. Внешний загружаемый объект).
    • Открыть... (Ctrl+O) -- Выводит диалог открытия файла, позволяет открыть существующий проект, при этом закрывается текущий открытый проект и, если в текущем проекте были несохраненные изменения, будет задан вопрос о его сохранении. Также позволяет открыть свободную электронную таблицу для редактирования в форматах XLSX, XLS или SFT или внешний объект SFO для редактирования.
    • Сохранить... (Ctrl+S) -- Сохраняет изменения в текущем рабочем окне (к примеру, если это электронная таблица, то сохраняет изменения в таблице, если это форма, то в форме). Важно: сохранения изменений в текущем окне могут не вызывать физическую запись на диск. К примеру, если происходит редактирование текста визуального события формы, сохранение этого текста обновит его внутри формы, чтобы сохранить саму форму, нужно использовать этот же пункт в момент, когда окно редактирования формы будет активным, либо использовать пункт меню "Сохранить все изменения".
    • Сохранить копию как... -- Используется для сохранения электронных таблиц, если есть необходимость сохранить их на диск в указанное место, а не просто сохранить изменения в таблице, внедренной в проект. Сохранение может происходить в форматах SFT, XLS или XLSX.
    • Сохранить все изменения (Shift+Ctrl+S) -- Сохраняет изменения во всех открытых окнах проекта. Процедура предусматривает случаи, когда сохранение в одном из окон вызывает изменения в другом (к примеру, когда редактируется страница элемента группы страниц).
    • Загрузить изменения из локальной папки... -- Позволяет произвести обновление текущего проекта из локальной папки, в которой находится измененная (обновленная его версия). До начала обновления на экран будет выведен диалог, показывающий найденные изменения с возможностью выбрать необходимые. Таким образом можно обновлять проекты до текущей версии или копировать нужные изменения. Важная особенность: обновление не будет работать корректно, если метаданные текущего проекта были изменены (к примеру, добавлен новый справочник), так как поиск изменений в метаданных производится по внутренним идентификаторам и добавленный объект может иметь такой же идентификатор, как и совершенно другой объект в загружаемом проекте.
    • Импортировать проект из рабочей конфигурации... -- Пункт позволяет восстановить исходный проект, когда его оригинальные файлы утеряны. Так как на сервере хранятся все копии исходных файлов проекта (наряду со скомпилированными файлами), исходный проект всегда можно восстановить и продолжить разрабатывать из любой рабочей базы данных. Этот пункт копирует необходимые файлы из каталога рабочей базы данных в указанную папку на диске. В указанной папке будет создана копия проекта, которую можно будет открыть в Студии и продолжить разработку.
    • Завершить работу (Alt+X) -- Пункт закрывает текущий проект и завершает работу Студии. Если в текущем проекте были несохраненные изменения, будет задан вопрос о его сохранении.
  • Редактирование -- доступ к работой с буфером обмена в процессе использования одного из редакторов, поддерживающих буфер обмена, также отмена или повторение последних изменений в редакторах, поддерживающих такие функции.
    • Отменить (Ctrl+Z) -- Позволяет вернуть объект редактирования в состояние, к котором он был до момента выполнения последней операции. Не все редакторы поддерживают такую функцию. Функция будет доступна даже после сохранения состояния объекта на диск. Функцией можно воспользоваться многократно, каждый новый вызов будет возвращать объект на один шаг редактирования назад до тех пор, пока объект не достигнет исходного состояния до начала редактирования или не закончится внутренний буфер сохранения состояний объекта. К примеру, можно изменить текст модуля, затем использовать этот пункт, чтобы отменить сделанные изменения и вернуть текст в исходное состояние.
    • Вернуть (Shift+Ctrl+Z) -- Позволяет провести отмененные ранее изменения, т.е. вернуть объект редактирования в состояние, к котором он был после выполнения последней операции, если та была отменена с помощью пункта "отменить". Не все редакторы поддерживают такую функцию. Функция будет доступна даже после сохранения состояния объекта на диск. Функцией можно воспользоваться многократно, каждый новый вызов будет возвращать отмененные ранее изменения объекта на один шаг редактирования вперед до тех пор, пока объект не достигнет последнего состояния редактирования. Функция полезна, когда разработчик понимает, что отменил изменения по ошибке.
    • Вырезать (Ctrl+X) -- Позволяет скопировать в буфер обмена выделенный объект в текущем редакторе и удалить его после этого. Функция работает только для редакторов, поддерживающих работу с буфером обмена.
    • Запомнить (Ctrl+C) -- Позволяет скопировать в буфер обмена выделенный объект в текущем редакторе. Функция работает только для редакторов, поддерживающих работу
    • Вставить (Ctrl+V) -- Позволяет вставить текущий объек из буфера в выделенное место текущего редактора. Если объект в буфере не совместим с редактором, куда происходит вставка, последняя будет остановлена.
    • Удалить (Ctrl+Del) -- Позволяет удалить выделенный объект в текущем редакторе. Иногда также используется просто клавиша Del.
    • Выделить все (Ctrl+A) -- Позволяет выделить все объекты в текущий редакторе, если он поддерживают такую функцию. К примеру, выделить весь текст в редакторе модулей.
  • Таблица -- Меню доступно в случае, если активным редактором является редактор электронной таблицы SFT.
    • Общие свойства таблицы -- Пункт меню выводит диалог общих свойств таблицы. См. статью Редактор электронных таблиц.
    • Преварительный просмотр -- Позволяет открыть диалог предварительного просмотра таблицы. Также можно использовать панель инструментов.
  • Видимость -- Меню предоставляет доступ к нескольким глобальным режимам работы.
    • Редактор свойств виден постоянно -- Позволяет не прятать редактор свойств (рис. 1, пункт 4) при активации окон, для которых он обычно не используется. Редактор в этом случае, будет пустым, однако, сдвиги окон и мигание, особенно мешающие при частом переключении окон, уменьшится.
    • Линейка в редакторе форм -- Позволяет показывать или прятать линейку размеров в редакторе форм (рис 1.)
    • Перетаскивание объектов в форме конфигурации -- Позволяет включить или выключить режим, когда в редакторе конфигурации проекта будет разрешено перетаскивание объектов в пределах дерева конфигурации (к примеру, в другую папку). По умолчанию, этот режим отключен, любое перетасивание мешает основной файл метаданных.
  • Модуль -- Меню используется при активном редакторе исходных текстов и в других редаторах.
    • Найти... (Ctrl+F) -- Открывает диалог поиска и замены текста. Диалог открывается на закладке поиска с возможностью переключиться на закладку замены. Диалог позволяет найти фрагмент текста с учетом заданных условий. При нахождении текста, курсор (в редакторе модулей) или выделение (в редакторе таблиц, редакторе конфигурации проекта) будет установлено в место, где найден фрагмент. Для продолжения поиска, можно использовать комбинацию клавиш Ctrl+L.
    • Найти во всех файлах... (Ctrl+Alt+F) -- Открывает диалог поиска информации по всем файлам проекта. См. статью общий поиск.
    • Найти и заменить... (Ctrl+H) -- Открывает диалог поиска и замены текста. Диалог открывается на закладке замены с возможностью переключиться на закладку поиска. Диалог позволяет найти фрагмент текста с учетом заданных условий. При нахождении текста, он будет изменен на заданный. Диалог позволяет осуществить одну замену или замену всех случаев вхождения. В редакторе модулей, если произведено выделение фрагмента, поиск будет производиться внутри выделения.
    • Продолжить поиск (Ctrl+L) -- Продолжает ранее начатый поиск. Если поиск дошел до конца поля редактирования, он будет осуществлен сначала.
    • Перейти к строке... (Alt+G) -- В редакторе модулей позволяет переместить курсор в строку с заданным номером.
    • Блок текста -- Подменю содержит функции форматирования выделенного блока текста в редакторе модулей.
      • Форматировать -- Функция позволяет выполнить форматирование блока текста в соответствии с синтаксическими правилами языка (планируется).
      • Сдвинуть вправо (Tab) -- Функция позволяет сдвинуть текст в выделенных строках вправо на величину символа табуляции (обычно 2 символа), т.е., добавить к началу каждой строки нужное количество пробелов.
      • Сдвинуть влево (Shift+Tab) -- Функция позволяет сдвинуть текст в выделенных строках влево на величину символа табуляции (обычно 2 символа), т.е., удалить от начала каждой строки нужное количество пробелов, если в начале строки пробелы отсутствуют, строка не изменяется.
      • Добавить знак комментария (Ctrl+[) -- Функция позволяет добавить два знака "//" к тексту выделенных строк.
      • Удалить знак комментария (Ctrl+]) -- Функция позволяет удалить два знака "//" из текста выделенных строк, если эти знаки присутствуют в начале строки.
      • Включить в область комментария (Alt+[) -- Функция позволяет добавить знак "{" в начале выделенного блока и знак "}" в конце выделенного блока.
      • Исключить из области комментария (Alt+]) -- Функция удаляет знаки "{" и "}" внутри выделенного блока.
    • Закладки - Подменю позволяет работать с закладками строк в редакторе модулей.
      • Добавить, удалить закладку (Alt+F2) -- Функция позволяет добавить или удалить (повторный вызов) закладку в текущей строке текстового редактора. Закладки нумеруются, при добавлении закладки, функция ищет все номера закладок и добавляет следующую по номеру. Если в редакторе уже существует 10 или более закладок, добавляется закладка без номера. Закладку с номером также можно добавить в строку комбинацией клавиш Ctrl+Shift+<Цифровая клавиша>. К любой закладке с номером можно мгновенно перейти с помощью комбинации клавиш Ctrl+<Цифровая клавиша>, а закладки без номера можно только перебирать последовательно с помощью клавиши F2.
      • Перейти на следующую закладку (F2) -- Переходит к следующей закладке (с номером или без) в тексте. Если в тексте нет закладок или курсор находится на единственной закладке, положение курсора изменено не будет.
      • Перейти на предыдущую закладку (Shift+F2) -- Переходит к предыдущей закладке (с номером или без) в тексте. Если в тексте нет закладок или курсор находится на единственной закладке, положение курсора изменено не будет.
      • Удалить все закладки (Ctrl+Alt+F2) -- Функция удаляет все закладки из активного текстового редактора.
    • Функции -- Подменю предоставляет доступ к функциям разбора текста.
      • Список всех функций модуля... -- Выводит диалог со списком всех функций в тексте активного текстового редактора. В помощью двойного клика мыши в диалоге можно перейти к объявлению выбранной функции в тексте модуля.
    • Синтаксический контроль -- Осуществляет тестовую компиляцию в памяти открытого в данный момент модуля. Если при компиляции ошибок не обнаружено, будет выведено сообщение, иначе в панель сообщений будут добавлены интерактивные сообщения об ошибках, как это было бы при обычной компиляции.
    • Параметры редактора... -- Функция выводит диалог параметров текстового редактора. См. статью Редактор модулей.
  • Проект -- Меню предоставляет доступ к основным редакторам проекта
  • Развертывание -- Меню предоставляет доступ к функциям развертывания проекта.
    • Компиляция проекта... (Ctrl+F9) -- Функция выполняет компиляцию измененных исходных файлов или событий форм, метаданных или меню проекта. Файлы, которые не были изменены со времени предыдущей компиляции, будут пропущены. Если во время компиляции система встретит синтаксическую ошибку, ошибка будет добавлена в лог компиляции в дополнительном окне логов, которое будет открыто при необходимости. Сообщения об ошибках в окне логов, интерактивны, от них можно перейти к месту ошибки с помощью двойного клика мыши. Кроме того, после остановки компиляции, система самостоятельно активирует исходных текст с найденной ошибкой. См. статью Компиляция.
    • Безусловная компиляция всех модулей... (Shift+Ctrl+F9) -- Функция выполняет компиляцию всех исходный файлов или событий форм, метаданных или меню проекта, вне зависимости от того, были ли они изменены. К примеру, при удалении функции из глобального модуля, по умолчанию, система не будет компилировать модули, к которых эта функция используется, так как обычно компилируются только измененные модули. Это скроет ошибку, которая выявится в процессе работы пользователей. Безусловная компиляция позволяет убедиться, что подобных ошибок нет. Кроме того, обычно при такой компиляции увеличивается номер сборки (зависит от установок). После безусловной компиляции все модули компилированные обновляются, что вызывает передачу на сервер большого количества файлов.
    • Синтаксический контроль всех модулей... -- Функция выполняет компиляцию всех исходный файлов или событий форм, метаданных или меню проекта, вне зависимости от того, были ли они изменены, однако не производит сохранения компилированных модулей или форм на диск. Функция используется для проверки всех модулей без увеличения номера сборки или каких-либо изменений в проекте.
    • Развернуть проект... -- Функция открывает диалоговое окно развертывания проектов, позволяющее выполнить обновление проектов на выбранных из списка серверах. См. исходную статью.
  • Окна -- Меню используется для работы с окнами Студии.
    • Закрыть (Ctrl+F4) -- Функция пытается закрыть активное в данный момент окно. Если данные окна были изменены, функция выведет диалоговое окно с запросом о сохранении.
    • Закрыть все -- Функция пытается закрыть все открытые в данный момент окна Студии. Если какие-либо из окон содержат измененные данные, будет выведен запрос о сохранении.
    • Скрыть, показать панель сообщений -- Функция скрывает или показывает дополнительную панель логов, в которую обычно выводятся сообщения об ошибках компиляции.
  • Помощь -- Меню используется для получения сведений о Студии.
    • О программе... -- Функция вызывает диалоговое окно с информацией о текущей версии Студии.

Редактор свойств объектов

Редактор свойств объектов показывает свойства выделенного объекта в текущем редакторе Студии. Редактор представляет собой таблицу с двумя столбцами. Наименования свойств указаны в первом столбце, чаще всего эти наименования совпадают с доступными программно атрибутами объектов. Второй столбец используется для отображения значения свойства и для его редактирования. Редактирование большинства свойств (к примеру, тестовых полей или булевых свойств, осуществляется непосредственно в выделенном поле редактора, однако, некоторые свойства могут выводить особые диалоги редактирования (к примеру, редактор столбцов таблицы и т.п.). Краткое описание свойства появляется в нижней части редактора при выделении поля. Редактор может иметь несколько закладок. Чаще всего на первой закладке располагаются основные свойства объекта, вторая закладка используются для задания связи объекта с базой данных, третья закладка может использоваться для редактирования визуальных событий или событий метаданных. Рис. 1 показывает примерную конфигурацию редактора.

На текущий момент редактор свойств используется для редактирования объектов следующих редакторов Студии:

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

Для дополнительной информации, используйте следующую ссылку.

Каталог редакторов Студии

  • Редактор серверов развертывания проекта позволяет добавлять или изменять серверы, для которых будет производиться автоматическое развертывание изменений в проекте. Серверы должны быть доступны с помощью протокола TCP/IP. Смотрите также дополнительную информацию по развертыванию проектов.
  • Редактор установок проекта изменяет общие свойства проекта. Такие, как его уникальный идентификатор, информация об авторе, картинка при загрузке, номер сборки и прочие.
  • Редактор конфигурации данных проекта является основным редактором структуры метаданных проекта. Позволяет создавать, удалять или изменять свойства объектов базы данных проекта, добавлять, удалять и вызывать редакторы модулей, форм, таблиц, внедрять дополнительные файлы в проект и прочее.
  • Редактор визуальных форм позволяет редактировать визуальные формы в режиме WYSIWYG, а также изменять свойства визуальных элементов, в том числе их связь с базой данных.
  • Редактор исходных текстов позволяет редактировать исходные тексты проекта. Имеет встроенные выделение, шаблоны цветов, контекстную помощь в виде всплывающей подсказки и пр. Полностью поддерживает Unicode (в том числе вне таблицы BMP).
  • Редактор электронных таблиц является WYSIWYG редактором таблиц, которые в дальнейшем могут быть использованы, как шаблоны для создания отчетов и печатных форм.
  • Редактор библиотеки картинок позволяет изменять библиотеку картинок проекта.
  • Редактор главных меню позволяет редактировать главные меню и задавать обработчики событий их пунктов.
  • Редактор панелей инструментов позволяет редактировать панели инструментов и задавать их обработчики событий.
  • Редактор связанных элементов позволяет добавлять или удалять пользовательские связанные элементы.