
- •Тема 1. Обзор системы 1с:Предприятие 8.0
- •1.1. Обзор системы 1с:Предприятие 8.0
- •1.2. Объекты конфигурации
- •1.3. Инструменты разработки
- •1.4. Администрирование
- •1.5. Файловый и клиент-серверный варианты работы
- •Вопросы для повторения
- •Резюме по теме
- •Тема 2. Встроенный язык. Программные модули.
- •2.1. Встроенный язык
- •2.1.1. Программные модули
- •2.1.2. Разделы программного модуля
- •2.2. Контекст
- •2.3. Стандарты именования переменных, процедур и объектов конфигурации
- •2.4. Правила написания программных модулей
- •2.5. Конструкции встроенного языка
- •2.5.1. Условия
- •2.5.2. Циклы
- •2.5.3. Безусловные переходы
- •2.5.4. Обработка исключений
- •2.5.5. Процедуры и функции
- •2.6. Инструкции препроцессора
- •2.7. Типы данных
- •2.8. Редактор программных модулей
- •Вопросы для повторения
- •Резюме по теме
- •Тема 3. Основные объекты конфигурации
- •3.1. Константы
- •3.2. Справочники, их структура, предопределенные элементы, подчиненные справочники, иерархические справочники
- •3.2.1. Структура справочника
- •3.2.2. Предопределенные элементы
- •3.2.3. Подчиненные справочники
- •3.2.4. Табличные части
- •3.2.5. Иерархические справочники
- •3.2.6. Экранные формы
- •3.3. Документы и журналы документов
- •3.3.1. Структура документа
- •3.3.2. Экранные формы документа
- •3.3.3. Макеты документа
- •3.3.4. Проведение документов
- •3.3.5. Модуль документа
- •3.3.6. Нумерация документов
- •3.3.7. Журналы документов
- •3.3.8. Последовательности
- •3.4. Перечисления
- •3.5. Отчеты и обработки
- •3.6. Внешние обработки
- •Вопросы для повторения
- •Резюме по теме
- •Тема 4. Интерфейс пользователя
- •4.1. Интерфейсы
- •4.2. Экранные формы
- •4.3. Редактор форм
- •4.4. Элементы управления
- •4.4.1. Поле ввода
- •4.4.2. Надпись
- •4.4.3. Кнопка
- •4.4.4. Командная панель
- •4.4.5. Флажок
- •4.4.6. Переключатели
- •4.4.7. Табличное поле
- •4.4.8. Поле списка
- •4.4.9. Поле выбора
- •4.4.10. Панель
- •4.4.11. Поле табличного документа
- •4.4.12. Рамка
- •4.4.13. Картинка
- •4.4.14. Диаграмма
- •4.4.15. Индикатор
- •4.4.16. Полоса регулирования
- •4.4.17. Поле календаря
- •4.4.18. Поле текстового документа
- •4.4.19. Поле html-документа
- •4.4.20. Разделитель
- •4.5. Привязка границ
- •4.6. Приемы программирования
- •4.6.1. Открытие и закрытие форм
- •4.6.2. Формы для выбора
- •4.6.3. Внешний вид формы
- •4.6.4. Элементы формы
- •Вопросы для повторения
- •Резюме по теме
- •Тема 5. Коллекции значений
- •5.1. Массив
- •5.2. Структура и соответствие
- •5.3. Список значений
- •5.4. Таблица значений
- •5.5. Дерево значений
- •Вопросы для повторения
- •Резюме по теме
- •Тема 6. Взаимодействие с другими системами
- •6.1. Текстовые файлы
- •6.1.1. Объект «ТекстовыйДокумент»
- •6.1.2. Последовательный доступ к тексту
- •6.1.3. Объект «ЗаписьТекста»
- •6.1.4. Объект «ЧтениеТекста»
- •6.2. XBase (работа с dbf-файлами)
- •6.2.1. Запись dbf-файла
- •6.2.2. Чтение dbf-файла
- •6.2.3. Удаленные записи
- •6.2.4. Индексы
- •6.3.1. Запись xml
- •6.3.2. Чтение xml
- •6.4. Интернет-технологии
- •6.4.1. Интернет-соединение
- •6.4.2. Поле html-документа
- •6.4.3. Электронная почта (e-mail)
- •6.4.4. Работа с ftp
- •6.5. Работа с операционной системой
- •6.7. Механизм Automation
- •6.8. Технология внешних компонент
- •Вопросы для повторения
- •Резюме по теме
- •Практикум (лабораторный) Лабораторная работа №1. Знакомство с платформой 1с:Предприятие 8.0. Создание новой информационной базы.
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №2. Знакомство с объектом конфигурации «Справочник».
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №3. Знакомство с объектом конфигурации «Документ».
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №4. Знакомство с объектом конфигурации «Регистр накопления».
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №5. Знакомство с объектом конфигурации «Отчет».
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №6. Знакомство с объектом конфигурации «Макет».
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №7. Редактирование макетов и форм.
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №8. Периодический регистр сведений.
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №9. Знакомство с объектом конфигурации «Перечисление».
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №10. Проведение документа по нескольким регистрам.
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа №11. Оборотный регистр накопления.
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа № 12. Знакомство с объектом конфигурации «Отчет» ч.1.
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
- •Лабораторная работа № 13. Знакомство с объектом конфигурации «Отчет» ч.2.
- •Требования к содержанию, оформлению и порядку выполнения
- •Теоретическая часть
- •Общая постановка задачи
- •Список индивидуальных данных
- •Пример выполнения работы
- •Контрольные вопросы к защите
- •Способ оценки результатов
3.3.5. Модуль документа
Следует отличать модуль документа и модули его форм (как и в версии 7.7). В модуле документа располагаются процедуры и функции, связанные с документом как объектом конфигурации, независимо от его экранных форм.
Например, там и только там располагаются обработчики следующих событий:
ОбработкаПроведения
Событие возникает в момент проведения документа. Обычно в нем содержится алгоритм формирования движений документа по регистрам. Событие имеет два параметра:
Отказ и Режим. Если в обработчике события первому параметру присвоить значение Истина, тогда документ не будет проведен. Второй параметр позволяет узнать режим проведения документа: оперативный или неоперативный.
Перед началом выполнения данной процедуры, если документ раньше сформировал движения, то они обычно очищаются системой автоматически.
ОбработкаУдаленияПроведения
Событие возникает в момент отмены проведения документа. При этом движения документа, как правило, очищаются автоматически.
ОбработкаЗаполнения
Это событие возникает при вводе документа на основании другого документа (или, например, элемента справочника), который передается в параметр Основание. В данной процедуре программист должен предусмотреть заполнение реквизитов документа.
ПередЗаписью
Это событие возникает перед выполнением записи объекта после начала транзакции, но до начала записи документа в базу данных.
ПередУдалением
Событие возникает перед удалением документа из базы, независимо от того, программно или интерактивно он удаляется.
ПриУстановкеНовогоНомера
Данное событие возникает в момент, когда выполняется установка нового номера документа.
ПриКопировании
Это событие возникает при создании документа копированием. В процедуре обработчике можно произвести дополнительные действия, например, присвоить новую дату и новый номер, заполнить реквизит Автор и т.д.
Кроме вышеперечисленных процедур, в модуле документа могут располагаться процедуры и функции, созданные разработчиком. Если их объявить с ключевым словом Экспорт, то они станут доступными вне документа, как обычные методы.
Часто, таким образом, производится печать документов, например, ниже приведена процедура печати расходной накладной:
Процедура Печать(ТабДок) Экспорт
//получение макета
Макет = Документы.РасходнаяНакладная.ПолучитьМакет("Печать");
//вывод шапки
Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.НомерДокумента = Номер;
Область.Параметры.От = Дата;
ТабДок.Вывести(Область);
//вывод табличной части Состав
Для Каждого СтрокаСостава Из Состав Цикл
Область = Макет.ПолучитьОбласть("Строка");
Область.Параметры.Заполнить(СтрокаСостава);
ТабДок.Вывести(Область);
КонецЦикла;
//вывод подвала
Область = Макет.ПолучитьОбласть("Подвал");
Область.Параметры.ИтогоКоличество = Состав.Итог("Количество");
Область.Параметры.ИтогоСумма = Состав.Итог("Сумма");
ТабДок.Вывести(Область);
КонецПроцедуры
Теперь в любом программном модуле можно вызвать эту процедуру и передать ей в качестве параметра табличный документ,который затем можно показать на экране или отправить сразу на принтер.
Например, в форме документа по кнопке «Печать» вызывается следующая процедура:
Процедура ПечатьСПросмотром(Кнопка)
ТабДок = Новый ТабличныйДокумент;
Печать(ТабДок); //вызывается приведенная выше процедура
ТабДок.Показать();
КонецПроцедуры
Аналогично, можно организовать печать текущей расходной накладной из журнала документов, и снова будет вызвана наша процедура Печать из модуля документа, например:
Процедура ПечатьТекущегоДокумента()
Список = ЭлементыФормы.Список;
Если Список.ТекущаяСтрока = Неопределено Тогда
Возврат;
КонецЕсли;
ТекДокумент = Список.ТекущаяСтрока.ПолучитьОбъект();
ТабДок = Новый ТабличныйДокумент;
ТекДокумент.Печать(ТабДок);
ТабДок.Показать();
КонецПроцедуры