---
title: Контроль лимитов УХ
slug: erp-uh/контроль-лимитов-ух
---


## ПолучитьПериодПоДате
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает период по дате и периодичности
//
// Параметры:
//  Периодичность  - ПеречислениеСсылка.Периодичность - Требуемая периодичность
//  ДатаПериода  - Дата - Дата
//
// Возвращаемое значение:
//   СправочникСсылка.Периоды, неопределено   - Найденный по параметрам элемент справочника Периоды. Если не найдено, то неопределено
//
Функция ПолучитьПериодПоДате(Периодичность, ДатаПериода) Экспорт
```

Пример вызова
```bsl
Результат = КонтрольЛимитовУХ.ПолучитьПериодПоДате(Периодичность, ДатаПериода) 
```
</details>

## ПодготовитьТаблицуЛимитовПоЗаявкеВерсииСоглашения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает таблицу движений по регистру накопления ЛимитыПоБюджетам для заявки/версии соглашения
Функция ПодготовитьТаблицуЛимитовПоЗаявкеВерсииСоглашения(Запрос, ДатаСовершенияОперации) экспорт Экспорт
```

Пример вызова
```bsl
Результат = КонтрольЛимитовУХ.ПодготовитьТаблицуЛимитовПоЗаявкеВерсииСоглашения(Запрос, ДатаСовершенияОперации) экспорт);
```
</details>

## ПолучитьТаблицуЛимитов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает таблицу лимитов для записи в регистр ЛимитыПоБюджетам.
//
// Параметры:
//   Запрос  	 - <Запрос> - Запрос, в котором сформированы следующие временные таблицы: ВТ_ТаблицаПлановССуммамиЛимитирования
//                 <продолжение описания параметра>
//   ДатаСовершенияОперации  - <Дата> - Дата получения совершения операции.
//                 Используется для получения курсов валют.
//   ПоместитьРезультатВоВременнуюТаблицу - Булево - Если Истина, то результат во временной таблице запросе, иначе возвращает ТаблицуЗначений
//
// Возвращаемое значение:
//   ТаблицаЗначений - ТаблицаЗначений  - Таблица движений по регистру ЛимитыПоБюджетам
//
Функция ПолучитьТаблицуЛимитов(Запрос, ДатаСовершенияОперации = неопределено, ПоместитьРезультатВоВременнуюТаблицу=Ложь) экспорт Экспорт
```

Пример вызова
```bsl
Результат = КонтрольЛимитовУХ.ПолучитьТаблицуЛимитов(Запрос, ДатаСовершенияОперации, ПоместитьРезультатВоВременнуюТаблицу);
```
</details>

## ПолучитьВТ_ТекущиеЛимиты
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

//
Процедура ПолучитьВТ_ТекущиеЛимиты(Запрос, ДатаКонтроляЛимита) Экспорт
```

Пример вызова
```bsl
КонтрольЛимитовУХ.ПолучитьВТ_ТекущиеЛимиты(Запрос, ДатаКонтроляЛимита) 
```
</details>

## ДобавитьКонтролиЛимитов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

//
Функция ДобавитьКонтролиЛимитов(МассивКонтролей, ТекстЗапроса) Экспорт
```

Пример вызова
```bsl
Результат = КонтрольЛимитовУХ.ДобавитьКонтролиЛимитов(МассивКонтролей, ТекстЗапроса) 
```
</details>

## ПолучитьПериодКонтроля
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Функция возвращает период контроля лимита для вида бюджета и желаемой дате платежа
Функция ПолучитьПериодКонтроля(ВидБюджета, ДатаНачала) экспорт Экспорт
```

Пример вызова
```bsl
Результат = КонтрольЛимитовУХ.ПолучитьПериодКонтроля(ВидБюджета, ДатаНачала) экспорт);
```
</details>

## ПолучитьЗаполненностьДоговораЗаявки
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

//
Функция ПолучитьЗаполненностьДоговораЗаявки(Организация, Контрагент, ДоговорКонтрагента) экспорт Экспорт
```

Пример вызова
```bsl
Результат = КонтрольЛимитовУХ.ПолучитьЗаполненностьДоговораЗаявки(Организация, Контрагент, ДоговорКонтрагента) экспорт);
```
</details>

## ПодготовитьТаблицуДатИПериодов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедуры и функции контроля наличия элементов справочника Периоды для документов оперативного планирования
//
//	I. В процедуре менеджера документа ИнициализироватьДанныеДокумента после заполнения параметров инициализации добавить код:
//
//	// Если в справочнике периоды нет требуемых элементов, то прекращаем собирать данные
//	Если НЕ КонтрольЛимитовУХ.ПодготовитьТаблицуДатИПериодов(Запрос, ДокументСсылка, ДополнительныеСвойства) Тогда
//		Возврат;
//	КонецЕсли;
//
//  II. В процедуре ОбработкаПроведения, после вызова процедуры ИнициализироватьДанныеДокумента добавить код
//
//	//
//	КонтрольЛимитовУХ.ВыполнитьПроверкуНаличияПериодов(Ссылка, ДополнительныеСвойства, Отказ);
//	Если Отказ Тогда
//		Возврат;
//	КонецЕсли;
//
//  III. В модуле менеджера документа должна быть функция ПолучитьДатыОпераций, которая
//
//  Функция возвращает текст запроса, который формирует временную таблицу запроса ВТ_ДатыОпераций с колонками
//  Дата 		- Дата - Дата операции по документу
//	ВидБюджета - ПланВидовХарактеристикСсылка.ВидыБюджетов - Вид бюджета, по которому будет операция
//  Текст запроса уникален для каждого вида документа
//
//Функция ТексЗапроса_ДатыОперацийДокумента() экспорт
//
//	Запрос.Текст =
//	"ВЫБРАТЬ
//	|	НАЧАЛОПЕРИОДА(ТЧ.Ссылка.Дата, ДЕНЬ) КАК Дата,
//	|	ЗНАЧЕНИЕ(ПланВидовХарактеристик.ВидыБюджетов.БюджетДвиженияДенежныхСредств) КАК ВидБюджета
//	|ПОМЕСТИТЬ ВТ_ДатыОпераций
//	|ИЗ
//	|	Документ.<Документ>.<ТабличнаяЧасть> КАК ТЧ
//	|ГДЕ
//	|	ТЧ1.Ссылка = &Ссылка";
//
//	Запрос.Выполнить();
//
//КонецПроцедуры

//
Функция ПодготовитьТаблицуДатИПериодов(Запрос, ДокументСсылка, ДополнительныеСвойства) экспорт Экспорт
```

Пример вызова
```bsl
Результат = КонтрольЛимитовУХ.ПодготовитьТаблицуДатИПериодов(Запрос, ДокументСсылка, ДополнительныеСвойства) экспорт);
```
</details>

## ВыполнитьПроверкуНаличияПериодов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

Процедура ВыполнитьПроверкуНаличияПериодов(Ссылка, ДополнительныеСвойства, Отказ) экспорт Экспорт
```

Пример вызова
```bsl
КонтрольЛимитовУХ.ВыполнитьПроверкуНаличияПериодов(Ссылка, ДополнительныеСвойства, Отказ) экспорт);
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
