- •Часть 1 Содержание
- •Глава 1 Формат исходных текстов программных модулей 13
- •Вопрос 58
- •Глава 8 Системные предопределенные процедуры 88
- •Глава 9 Работа с Константами 95
- •Глава 10 Работа со Справочниками 98
- •Глава 11 Работа с Перечислениями 133
- •Глава 12 Работа с Документами 136
- •Глава 13 Работа с Журналами документов 173
- •Глава 14 Работа с Регистрами оперативного учета 178
- •Глава 15 Служебные типы данных компоненты «Бухгалтерский учет» 202
- •Глава 16 работа с бухгалтерскими счетами 207
- •Глава 17 Работа с операциями и проводками 229
- •Введение
- •Назначение и краткая характеристика встроенного языка
- •Построение книги
- •Формат описания элементов языка
- •Соглашения и обозначения, принятые в синтаксических диаграммах
- •Синтаксическая диаграмма описания элемента языка
- •ЭлементЯзыка
- •Глава 1 Формат исходных текстов программных модулей Что такое программный модуль?
- •Контекст выполнения программного модуля
- •Виды программных модулей
- •Формат программного модуля
- •Комментарии
- •Формат операторов
- •Имена переменных, процедур и функций
- •Зарезервированные слова
- •Структура программного модуля
- •Специальные символы, используемые в исходном тексте
- •Процедуры и функции программного модуля Процедура
- •Функция
- •Предварительное описание процедур и функций
- •Передача параметров
- •Передача локального контекста программного модуля в качестве параметра
- •Пример исходного текста программного модуля
- •Глава 2 Типы данных Базовые типы данных
- •Правила преобразования типов данных
- •Агрегатные типы данных
- •Англоязычные синонимы названий агрегатных типов данных
- •Атрибуты агрегатных типов данных
- •Методы агрегатных типов данных
- •Глава 3 Объявление переменных
- •Оператор объявления переменной Перем
- •Область использования переменной
- •Глава 4 Выражения и оператор присваивания Выражения
- •Арифметические операции
- •Операция конкатенации
- •Логические операции
- •Числовые константы
- •Константы даты
- •Строковые константы
- •Строковые выражения
- •Логические выражения
- •Оператор присваивания
- •Глава 5 Управляющие операторы Управляющие конструкции Если
- •Попытка
- •Управляющие операторы Перейти
- •Продолжить
- •Прервать
- •Возврат
- •Специальные конструкции языка #ЗагрузитьИзФайла
- •Глава 6 Системные константы
- •Строковые системные константы РазделительСтраниц
- •РазделительСтрок
- •СимволТабуляции
- •Глава 7 Системные процедуры и функции
- •Математические функции
- •Строковые функции СтрДлина
- •ПустаяСтрока
- •СтрЗаменить
- •СтрЧислоВхождений
- •СтрКоличествоСтрок
- •СтрПолучитьСтроку
- •ТекущаяДата
- •ДобавитьМесяц
- •НомерДняГода
- •НомерДняНедели
- •ПериодСтр
- •НачалоСтандартногоИнтервала
- •КонецСтандартногоИнтервала
- •Функции работы с временем ТекущееВремя
- •Функции преобразования типов Дата
- •РазобратьПозициюДокумента
- •Процедуры и функции форматирования Пропись
- •ФиксШаблон
- •Функции для вызова диалога ввода данных ВвестиЗначение
- •ВвестиЧисло
- •ВвестиСтроку
- •ВвестиДату
- •ВвестиПериод
- •ВвестиПеречисление
- •Процедуры и функции общего назначения Вопрос
- •Предупреждение
- •Сообщить
- •ОчиститьОкноСообщений
- •Состояние
- •? (Вычислить выражение по условию)
- •Функции среды исполнения ЗаголовокСистемы
- •ИмяКомпьютера
- •ИмяПользователя
- •ПолноеИмяПользователя
- •НазваниеНабораПрав
- •ПравоДоступа
- •МонопольныйРежим
- •ОсновнойЯзык
- •Процедуры работы с транзакциями
- •НачатьТранзакцию
- •ЗафиксироватьТранзакцию
- •ОтменитьТранзакцию
- •Специальные процедуры и функции СоздатьОбъект
- •СтатусВозврата
- •ОткрытьФорму
- •Открытие формы нового документа
- •Открытие окна истории значений периодических констант, реквизитов справочников и счетов.
- •ОткрытьФормуМодально
- •ТипЗначения
- •ТипЗначенияСтр
- •ПустоеЗначение
- •ПолучитьПустоеЗначение
- •НазначитьВид
- •ЗаписьЖурналаРегистрации
- •ПрефиксАвтоНумерации
- •ПолучитьЗначенияОтбора
- •КомандаСистемы
- •ЗапуститьПриложение
- •ЗавершитьРаботуСистемы
- •НайтиПомеченныеНаУдаление
- •НайтиСсылки
- •УдалитьОбъекты
- •ОбработкаОжидания
- •Процедуры и функции обработки значений ЗначениеВСтрокуВнутр
- •ЗначениеИзСтрокиВнутр
- •ЗначениеВСтроку
- •ЗначениеИзСтроки
- •ЗначениеВФайл
- •ЗначениеИзФайла
- •СохранитьЗначение
- •ВосстановитьЗначение
- •Процедуры и функции компоненты «Оперативный учет» ПолучитьТа
- •ПолучитьДатуТа
- •ПолучитьВремяТа
- •ПолучитьДокументТа
- •ПолучитьПозициюТа
- •УстановитьТАна
- •УстановитьТАпо
- •Процедуры и функции компоненты «Бухгалтерский учет»
- •ВыбранныйПланСчетов
- •ОсновнойПланСчетов
- •СчетПоКоду
- •НачалоПериодаБи
- •КонецПериодаБи
- •КонецРассчитанногоПериодаБи
- •НазначитьСчет
- •ВвестиПланСчетов
- •ВвестиВидСубконто
- •МаксимальноеКоличествоСубконто
- •Процедуры и функции компоненты «Расчет» ОсновнойЖурналРасчетов
- •Глава 8 Системные предопределенные процедуры
- •Предопределенные процедуры Глобального модуля
- •ПриНачалеРаботыСистемы
- •ПриЗавершенииРаботыСистемы
- •ПриУдаленииДокумента
- •ПриУдаленииЭлемента
- •ПриОткрытииИстории
- •ПриЗаписиИстории
- •ПриУдаленииИстории
- •ПриЗаписиКонстанты
- •ПриОтменеПроведенияДокумента
- •ПриИзмененииВремениДокумента
- •ПриУстановкеОтбора
- •ПриСменеРасчетногоПериода
- •ПриУдаленииСчета
- •ПриВыклВклПроводокОперации
- •Глава 9 Работа с Константами
- •Методы констант НазначитьТип
- •УстановитьАтрибут
- •ПолучитьАтрибут
- •Методы периодических констант Получить
- •Установить
- •Глава 10 Работа со Справочниками
- •Контекст работы со справочниками
- •Атрибуты справочников
- •Наименование
- •Родитель
- •Владелец
- •Методы периодических реквизитов Получить
- •Установить
- •Методы справочников
- •ПредставлениеВида
- •Уровень
- •УстановитьАтрибут
- •ПолучитьАтрибут
- •ЭтоГруппа
- •ПринадлежитГруппе
- •Выбрать
- •ВидыДляВыбора
- •ВыборГруппы
- •ТекущийЭлемент
- •ПолныйКод
- •ПолноеНаименование
- •НайтиЭлемент
- •НайтиПоКоду
- •НайтиПоНаименованию
- •НайтиПоРеквизиту
- •ВыбратьЭлементы
- •ВыбратьЭлементыПоРеквизиту
- •ОбратныйПорядок
- •ПолучитьЭлемент
- •ИспользоватьДату
- •ИспользоватьВладельца
- •ИспользоватьРодителя
- •ВключатьПодчиненные
- •ПорядокКодов
- •ПорядокНаименований
- •ПорядокРеквизита
- •НоваяГруппа
- •ПрефиксКода
- •УстановитьНовыйКод
- •НазначитьТип
- •Записать
- •Удалить
- •Блокировка
- •ПометкаУдаления
- •СнятьПометкуУдаления
- •Методы контекста Модуля формы элемента справочника
- •Модифицированность
- •ИспользоватьДату
- •СохранениеПериодическихРеквизитов
- •ПросмотрИстории
- •Предопределенные процедуры Модуля формы справочника
- •ВводНового
- •ПриЗаписи
- •Методы контекста Модуля формы списка справочника
- •ИспользоватьДату
- •ИспользоватьВладельца
- •ИспользоватьРодителя
- •ИерархическийСписок
- •ВыборГруппы
- •РедактироватьВДиалоге
- •СохранениеПериодическихРеквизитов
- •Сортировка
- •УстановитьОтбор
- •ПолучитьОтбор
- •ВидыОтбора
- •ЗакладкиОтбора
- •ИспользоватьСписокЭлементов
- •ПросмотрИстории
- •Предопределенные процедуры Модуля формы списка справочника
- •ПриВводеСтроки
- •ПриРедактированииНовойСтроки
- •ПриНачалеРедактированияСтроки
- •ПриЗаписи
- •ПриПереносеЭлементаВДругуюГруппу
- •ПриВыбореРодителя
- •ПриВыбореВладельца
- •ПриСменеИерархии
- •ПриУстановкеОтбора
- •Глава 11 Работа с Перечислениями
- •Контекст работы с перечислениями
- •Методы перечислений ПолучитьАтрибут
- •КоличествоЗначений
- •ЗначениеПоНомеру
- •ЗначениеПоИдентификатору
- •ПредставлениеВида
- •ПорядковыйНомер
- •Идентификатор
- •Глава 12 Работа с Документами
- •Контекст работы с документами
- •Позиция документа
- •Атрибуты документов НомерДок
- •ДатаДок
- •НомерСтроки
- •Операция
- •Методы документов
- •ПредставлениеВида
- •УстановитьАтрибут
- •ПолучитьАтрибут
- •Проведен
- •ТекущийДокумент
- •Выбрать
- •ВидыДляВыбора
- •КоличествоСтрок
- •НайтиДокумент
- •НайтиПоНомеру
- •Получить Строку ПоНомеру
- •ВыбратьДокументы
- •ВыбратьПодчиненныеДокументы
- •ВыбратьПоЗначению
- •ВыбратьПоНомеру
- •ВыбратьПоПоследователыюсти
- •ОбратныйПорядок
- •УстановитьФильтр
- •ПолучитьДокумент
- •ВыбратьСтроки
- •ПолучитьСтроку
- •ПрефиксНомера
- •УстановитьНовыйНомер
- •НазначитьТип
- •Записать
- •Удалить
- •ПометкаУдаления
- •СнятьПометкуУдаления
- •НоваяСтрока
- •УдалитьСтроку
- •УдалитьСтроки
- •СортироватьСтроки
- •ПолучитьПозицию
- •ПринадлежитПоследовательности
- •ИспользоватьЖурнал
- •Блокировка
- •ПолучитьВремя
- •УстановитьВремя
- •АвтоВремяНачалоДня
- •АвтоВремяКонецДня
- •АвтоВремяТекущее
- •АвтоВремяПослеТа
- •АвтоВремяОтключить
- •Провести
- •СделатьНеПроведенным
- •СравнитьТа
- •СуществуетОперация
- •ВыгрузитьТабличнуюЧасть
- •ЗагрузитьТабличнуюЧасть
- •Методы контекста Модуля формы документа
- •ПриЗаписиПерепроводить
- •ПроводитьПослеТа
- •АктивизироватьСтроку
- •ИзменениеПорядкаСтрок
- •Модифицированность
- •Предопределенные процедуры Модуля формы документа
- •ВводНового
- •ВводНаОсновании
- •ПриЗаписи
- •ПриНачалеРедактированияСтроки
- •ПриВводеСтроки
- •ПриРедактированииНовойСтроки
- •ПриОкончанииРедактированияСтроки
- •ПриУдаленииСтроки
- •ПриИзмененииПорядкаСтрок
- •Методы контекста Модуля документа
- •ИтогиАктуальны
- •ГрупповаяОбработка
- •НеПроводитьДокумент
- •УстановитьРеквизитСправочника
- •ОчиститьДвижения
- •ПривязыватьСтроку
- •Предопределенные процедуры Модуля документа
- •ОбработкаПроведения
- •ОбработкаУдаленияПроведения
- •АрхивироватьДокумент
- •Команды организации механизма заполнения документа методом подбора
- •Глава 13 Работа с Журналами документов Контекст работы с журналами документов
- •Атрибуты контекста Модуля формы журнала документов
- •ТекущийДокумент
- •Методы контекста Модуля формы журнала документов
- •ВидыОтбора
- •ЗакладкиОтбора
- •УстановитьОтбор
- •ПолучитьОтбор
- •УстановитьИнтервал
- •НачалоИнтервала
- •КонецИнтервала
- •ПодчинениеДокументу
- •Предопределенные процедуры Модуля формы журнала документов
- •ПриУстановкеОтбора
- •ПриУстановкеИнтервала
- •Глава 14 Работа с Регистрами оперативного учета
- •Контекст работы с регистрами
- •Атрибуты регистров Приход
- •Методы оборотных регистров
- •ИспользоватьПериод
- •СводныйИтог
- •СводныеИтоги
- •ИтогиПолучить
- •Методы регистров остатков
- •Остаток
- •СводныйОстаток
- •Остатки
- •СводныеОстатки
- •ОстаткиПолучить
- •Выбрать ДвиженияСОстатками
- •Общие методы регистров
- •ПредставлениеВида
- •НазначитьТип
- •УстановитьАтрибут
- •ПолучитьАтрибут
- •ВыбратьДвижения
- •ВыбратьДвиженияДокумента
- •ОбратныйПорядок
- •ПолучитьДвижение
- •ТекущийДокумент
- •НомерСтроки
- •ВыбратьИтоги
- •ПолучитьИтог
- •ВыгрузитьИтоги
- •ВременныйРасчет
- •УстановитьФильтр
- •УстановитьЗначениеФильтра
- •Методы контекста Модуля документа
- •ПривязыватьСтроку
- •ДвижениеПриход
- •ДвижениеРасход
- •ДвижениеПриходВыполнить
- •ДвижениеРасходВыполнить
- •Движение
- •ДвижениеВыполнить
- •Системные процедуры работы с регистрами
- •РассчитатьРегистрыНа
- •РассчитатьРегистрыПо
- •Вспомогательный объект Регистры
- •Атрибуты объекта Регистры
- •Методы объекта Регистры ПолучитьАтрибут
- •РассчитатьРегистрыНа
- •РассчитатьРегистрыПо
- •Актуальность
- •Глава 15 Служебные типы данных компоненты «Бухгалтерский учет» Тип данных «ПланСчетов»
- •Методы типа данных «ПланСчетов» Выбран
- •ПорядковыйНомер
- •Идентификатор
- •Атрибут глобального контекста «ПланыСчетов» ПланыСчетов
- •Методы глобального атрибута «ПланыСчетов»
- •КоличествоЗначений
- •ЗначениеПоНомеру
- •ЗначениеПоИдентификатору
- •Тип данных «ВидСубконто»
- •Методы типа данных «ВидСубконто» Выбран
- •ПорядковыйНомер
- •ТипСубконто
- •Идентификатор
- •Атрибут глобального контекста «ВидыСубконто» ВидыСубконто
- •Методы глобального атрибута «ВидыСубконто»
- •КоличествоЗначений
- •ЗначениеПоНомеру
- •ЗначениеПоИдентификатору
- •Глава 16 работа с бухгалтерскими счетами
- •Контекст работы с бухгалтерскими счетами
- •Атрибуты объекта «Счет»
- •Наименование
- •Валютный
- •Количественный
- •Забалансовый
- •Активный
- •Методы объекта «Счет» ВыбратьСчета
- •ПолучитьСчет
- •УстановитьАтрибут
- •ПолучитьАтрибут
- •Выбрать
- •НайтиПоКоду
- •НайтиСчет
- •ЗаданВКонфигурации
- •ПредставлениеВида
- •ПланСчетов
- •ЭтоГруппа
- •Уровень
- •ТекущийСчет
- •ПометкаУдаления
- •ВыборГруппы
- •ПринадлежитГруппе
- •КоличествоСубконто
- •ВидСубконто
- •ТолькоОбороты
- •УчетПоСумме
- •УчетПоВалютнойСумме
- •УчетПоКоличеству
- •ИспользоватьДату
- •ИспользоватьПланСчетов
- •Родитель
- •ИспользоватьРодителя
- •КодСубсчета
- •Блокировка
- •НазначитьТип
- •Записать
- •Удалить
- •СнятьПометкуУдаления
- •Методы контекста Модуля формы списка счетов
- •ИспользоватьДату
- •ИспользоватьПланСчетов
- •ИспользоватьРодителя
- •ИспользоватьКорСчет
- •ИерархическийСписок
- •РедактироватьВДиалоге
- •ВыборГруппы
- •Предопределенные процедуры модуля формы списка счетов
- •ПриВводеСтроки
- •ПриРедактированииНовойСтроки
- •ПриНачалеРедактированияСтроки
- •ПриВыбореРодителя
- •ПриЗаписи
- •Предопределенные процедуры модуля формы счета
- •ВводНового
- •ПриЗаписи
- •Глава 17 Работа с операциями и проводками
- •Контекст работы с операциями и проводками
- •Атрибуты объекта «Операция» ДатаОперации
- •Содержание
- •СуммаОперации
- •Документ
- •ВалСумма
- •Количество
- •Атрибуты объектов «Дебет» и «Кредит» Счет
- •Методы объектов «Дебет» и «Кредит» Субконто
- •ПредставлениеСубконто
- •Методы объекта «Операция» ВыбратьОперации
- •ВыбратьОперацииСПроводками
- •ИспользоватьСубконто
- •ИспользоватьКорСубконто
- •ВыбратьПоЗначению
- •ПолучитьОперацию
- •НайтиОперацию
- •Выбрана
- •УстановитьАтрибут
- •ПолучитьАтрибут
- •ВыбратьПроводки
- •ПолучитьПроводку
- •ПроводкаВыбрана
- •КоличествоПроводок
- •ПолучитьПроводкуПоНомеру
- •НомерПроводки
- •ПланСчетов
- •НомерКорреспонденции
- •СложнаяПроводка
- •НомерСтрокиДокумента
- •ПредставлениеПроводки
- •ПредставлениеСубконто
- •НазначитьТип
- •ЗаписатьПроводки
- •Записать
- •Удалить
- •ПометкаУдаления
- •СнятьПометкуУдаления
- •ПолучитьВремя
- •УстановитьВремя
- •ПолучитьДокумент
- •ВключитьПроводки
- •НоваяПроводка
- •НоваяКорреспонденция
- •ПроверитьПроводку
- •УдалитьПроводку
- •Атрибуты контекста модуля формы операции
- •Методы контекста модуля формы операции ПоТиповойОперации
- •ИспользоватьВалюту
- •ИспользоватьКорСчет
- •ИспользоватьСубконто
- •ИзменениеПорядкаСтрок
- •Предопределенные процедуры модуля формы операции
- •ВводНового
- •ВводНаОсновании
- •ПриЗаписи
- •ПриНачалеРедактированияСтроки
- •ПриВводеСтроки
- •ПриРедактированииНовойСтроки
- •ПриУдаленииСтроки
- •ПриИзмененииПорядкаСтрок
ПриУдаленииСчета
Предопределенная процедура, выполняемая при удалении бухгалтерского счета.
Синтаксис:
ПриУдаленииСчета(<УдалСчет>, <Режим>)
Англоязычный синоним:
OnDeleteAccount
Параметры:
-
<УдалСчет>
Значение типа «Счет» — удаляемый бухгалтерский счет.
<Режим>
Режим удаления. Может принимать значения:
1 — счет будет удален;
0 — счет будет помечен на удаление.
Описание:
Вызов предопределенной процедуры ПриУдаленииСчета производится системой 1С:Предприятие неявно при интерактивном удалении счета из плана счетов. В качестве параметров в процедуру передаются значение удаляемого счета и режим удаления: непосредственное удаление или пометка на удаление.
Если в данной процедуре установить статус возврата 0 (например, если нарушается ссылочная целостность системы), то счет не будет удален (или помечен на удаление).
Данная предопределенная процедура может располагаться только в глобальном программном модуле.
Пример:
Процедура ПриУдаленииСчета(УдСчет)
Если УдСчет.Валютный() = 1 Тогда
СтатусВозврата(0);
КонецЕсли;
КонецПроцедуры
См. также: СтатусВозврата
ПриВыклВклПроводокОперации
Предопределенная процедура, выполняемая при выключении или включении проводок.
Синтаксис:
ПриВыклВклПроводокОперации(<Документ>)
Англоязычный синоним:
OnOperEntryOffOn
Параметры:
-
<Документ>
Значение типа «Документ» — документ, которому принадлежит операция.
Описание:
Вызов предопределенной процедуры ПриВыклВклПроводокОперации производится системой 1С:Предприятие неявно при интерактивном выключении или включении проводок. В качестве параметра в процедуру передается значение документа, которому принадлежит операция.
Если в данной процедуре установить статус возврата 0, то действие не будет выполнено.
Данная предопределенная процедура может располагаться только в глобальном программном модуле.
Пример:
Процедура ПриВыклЗклПроводокОперации(Док)
Если Док.Вид() <> "Операция" Тогда
СтатусВозврата(0);
КонецЕсли;
КонецПроцедуры
См. также: СтатусВозврата
Глава 9 Работа с Константами
Константа — это агрегатный тип данных, средство работы с постоянными (условно постоянными) величинами. В константах хранится информация, характеризующая конфигурацию в целом, которая может быть как постоянной, так и изменяться с той или иной периодичностью.
Константы могут быть периодическими или нет (это задается в конфигураторе при их создании). Периодические константы — это константы, значения которых связаны с датой. При изменении значения периодической константы старое значение сохраняется, просто новое значение действует с указанной даты, а старое до указанной даты.
Пример:
* Изначально значение периодической константы Константа.ИмяДиректора было — "Иванов И. И.". В некоторый момент директор сменился.
Константа.ИмяДиректора.Установить('01.05.96', "Петров П.П.");
* Данный оператор устанавливает новое значение периодической константы с даты '01.05.96', но старое значение — "Иванов И. И." сохраняется до этой даты и может быть получено, например, следующей строкой текста программы:
ПрежнДирект = Константа.ИмяДиректора.Получить('01.01.96');
Средства языка предоставляют возможность непосредственного доступа к созданным в конфигураторе названиям констант в любом программном модуле, т. к. константы принадлежат глобальному контексту задачи. Работа с периодическими константами осуществляется при помощи методов Получить и Установить или при помощи специального агрегатного типа данных — Периодический. Работа с непериодическими константами осуществляется непосредственно через их идентификаторы.
Использование непериодических констант в синтаксисе языка аналогично глобальным переменным, т. е. идентификаторы непериодических констант могут размещаться в левой и правой части оператора присваивания, в выражениях, быть параметрами методов, процедур или функций в любом программном модуле.
В качестве имени константы обязательно должно выступать полное имя конкретной константы, как оно объявлено в конфигураторе. Имя константы записывается через точку после ключевого слова Константа, т. е. полное имя константы записывается следующим образом:
Константа.<Имя_константы>,
где <Имя_константы> — название конкретной константы, как оно объявлено в окне «Метеданные» конфигуратора.
Англоязычный синоним ключевого слова Константа — Const.
Пример:
* Пример работы с непериодическими константами:
Константа.Организация = "АО СПЕЦСТРОЙКОНСЕРВБАНК";
Константа.Адрес = "г.Москва, Вернадского, 523, 25";
Р_Счет = Константа.НашСчет;
// операторы
Если Всего > Константа.МинимальнаяЗарплата Тогда
// операторы
Иначе
// операторы
КонецЕсли;