Отбор номенклатуры ,если остатки из другой базы.

1. dentoma51 8 20.08.17 18:46 Сейчас в теме
Всем,доброго здоровья!

Есть две базы БП 3.0. В первой базе создан регистр сведений,в котором хранятся остатки по товарам в количественном выражении и остатки эти собираются по результатам ввода документов в двух базах,а далее через ComConnect по расписанию идет обращение ко второй базе и забираются данные,чтобы сформировать текущий остаток товара.
Получается,что в первой базе в обработку Подбор номенклатуры просто внести изменение,чтобы вместо неправильного бухгалтерского остатка показывался текущий из нового регистра.

А вот как сделать новый Подбор номенклатуры во второй базе,где регистра с остатками собранными с двух баз - пока не получается.

Попробовал изменить запрос динамического списка Список номенклатуры по такой схеме:
1. Получаю из внешней базы через
Запрос1=БпДоп.NewObject("Запрос")
таблицу текущих остатков , пусть это будет ДинОст

2. Запрос дин.списка Список номенклатуры меняю на пакет запросов:

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


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

Пробую более простой вариант.
В обработке Подбор формируется таблица с остатками из другой базы.
В событии СписокНоменклатурыПриАктивизацииСтроки(Элемент)
надо остаток в Списке номенклатуры заменить из таблички.
Нарисовал такой код:

&НаКлиенте
Процедура СписокНоменклатурыПриАктивизацииСтроки(Элемент)
	// Вставить содержимое обработчика.
	Отбор = Новый Структура();
	Отбор.Вставить("Наименование",Элемент.ТекущиеДанные.Наименование);
	Строки = ДинОст.НайтиСтроки(Отбор);
	Если Строки.Количество() >0 Тогда
 	Элемент.ТекущиеДанные.КоличествоОстаток = Строки[0].ОстатокНаКонец;
	КонецЕсли;
	
КонецПроцедуры
Показать


Код срабатывает,остаток находится,подставляется.
Но,не происходит автоматическое изменение остатка на форме,а чтобы появилось это изменение,надо прокруткой поменять строки,ну как-то непонятно.
Друзья,прошу помочь,что неправильно делаю? Спасибо.
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. alxarz 31 23.08.17 10:36 Сейчас в теме
(1)
Но,не происходит автоматическое изменение остатка на форме,а чтобы появилось это изменение,надо прокруткой поменять строки,ну как-то непонятно.

может не в процедуру СписокНоменклатурыПриАктивизацииСтроки добавлять код, а в процедуру СписокНоменклатурыПриПолуяенииДанных, или при СписокНоменклатурыПриВыводеСтроки ?
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)