1С бухгалтерия

После очередного обновления при закрытии месяца бухгалтера стали жаловаться на очень медленное перепроведение документов.
Проблема нашлась в документе "Поступление на расчетный счет". Приведу часть запроса, который очень долго выполняется:

	"ВЫБРАТЬ
	|	ХозрасчетныйОстатки.Субконто1 КАК Контрагент,
	|	ХозрасчетныйОстатки.Субконто2 КАК Договор,
	|	ХозрасчетныйОстатки.Субконто3 КАК РасчетныйДокумент,
	|	ХозрасчетныйОстатки.Счет,
	|	ХозрасчетныйОстатки.Валюта КАК ВалютаВзаиморасчетов,
	|	ЕСТЬNULL(ХозрасчетныйОстатки.Подразделение, &ПустоеПодразделение) КАК Подразделение,
	|	ХозрасчетныйОстатки.СуммаОстаток КАК СуммаРуб,
	|	ВЫБОР
	|		КОГДА ХозрасчетныйОстатки.Счет.Валютный
	|			ТОГДА ХозрасчетныйОстатки.ВалютнаяСуммаОстаток
	|		ИНАЧЕ ХозрасчетныйОстатки.СуммаОстаток
	|	КОНЕЦ КАК СуммаВзаиморасчетов
	|ПОМЕСТИТЬ ВТВыборкаПосчетамУСН
	|ИЗ
	|	РегистрБухгалтерии.Хозрасчетный.Остатки(
	|			&ДатаОстатка,
	|			Счет В (&СчетаУСН),
	|			&ВидыСубконто,
	|			Организация = &Организация
	|				И &УсловиеПоПодразделению
	|				И (Субконто1, Субконто2, Субконто3) В
	|					(ВЫБРАТЬ
	|						АналитикаОстатков.Контрагент,
	|						АналитикаОстатков.ДоговорКонтрагента,
	|						АналитикаОстатков.РасчетныйДокумент
	|					ИЗ
	|						ВТ_АналитикаОстатков КАК АналитикаОстатков)) КАК ХозрасчетныйОстатки
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	РасчетныйДокумент
	|;

А если еще точнее, то тормозит вот эта конструкция:

	|(Субконто1, Субконто2, Субконто3) В
	|					(ВЫБРАТЬ
	|						АналитикаОстатков.Контрагент,
	|						АналитикаОстатков.ДоговорКонтрагента,
	|						АналитикаОстатков.РасчетныйДокумент
	|					ИЗ
	|						ВТ_АналитикаОстатков КАК АналитикаОстатков)

Просто переписал запрос на такую конструкцию и скорость запроса увеличилась в десятки раз.

	"ВЫБРАТЬ
	|	ХозрасчетныйОстатки.Субконто1 КАК Контрагент,
	|	ХозрасчетныйОстатки.Субконто2 КАК Договор,
	|	ХозрасчетныйОстатки.Субконто3 КАК РасчетныйДокумент,
	|	ХозрасчетныйОстатки.Счет КАК Счет,
	|	ХозрасчетныйОстатки.Валюта КАК ВалютаВзаиморасчетов,
	|	ЕСТЬNULL(ХозрасчетныйОстатки.Подразделение, &ПустоеПодразделение) КАК Подразделение,
	|	ХозрасчетныйОстатки.СуммаОстаток КАК СуммаРуб,
	|	ВЫБОР
	|		КОГДА ХозрасчетныйОстатки.Счет.Валютный
	|			ТОГДА ХозрасчетныйОстатки.ВалютнаяСуммаОстаток
	|		ИНАЧЕ ХозрасчетныйОстатки.СуммаОстаток
	|	КОНЕЦ КАК СуммаВзаиморасчетов
	|ПОМЕСТИТЬ ВТВыборкаПосчетамУСН
	|ИЗ
	|	РегистрБухгалтерии.Хозрасчетный.Остатки(
	|			&ДатаОстатка,
	|			Счет В (&СчетаУСН),
	|			&ВидыСубконто,
	|			Организация = &Организация
	|				И Подразделение В (&Подразделения)) КАК ХозрасчетныйОстатки
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_АналитикаОстатков КАК ВТ_АналитикаОстатков
	|		ПО ВТ_АналитикаОстатков.Контрагент = ХозрасчетныйОстатки.Субконто1
	|			И ВТ_АналитикаОстатков.ДоговорКонтрагента = ХозрасчетныйОстатки.Субконто2
	|			И ВТ_АналитикаОстатков.РасчетныйДокумент = ХозрасчетныйОстатки.Субконто3
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	РасчетныйДокумент
	|;

Такое поведение по крайней мере замечено на платформе 8.3.22.1750

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • Строки и параграфы переносятся автоматически.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <1c7>, <drupal5>, <drupal6>, <javascript>, <php>. Beside the tag style "<foo>" it is also possible to use "[foo]".