|
При выборе номенклатуры выводился остаток в табличной части документа | ☑ | ||
---|---|---|---|---|
0
temik_a
26.03.12
✎
21:34
|
Ребята подскажите как вывести остаток товара в табличной части при выборе номенклатуры, (по примеру документа списание товаров).Т.Е. когда я выбираю номенклатуру в следующей колонке мне показывался товар по определенному складу.
я сделал не много Процедура НедовложенияНоменклатураПриИзменении(Элемент, ОформленияСтрок) Если ЗначениеЗаполнено (Элемент.Значение) Тогда ЭлементыФормы.Недовложения.ТекущиеДанные.ЕдиницаИзмеренияНоменклатуры = Элемент.Значение.ОсновнаяЕдиницаИзмерения;//Если ЗначениеЗаполнено(Элемент.Значение) Тогда КонецЕсли; Стр = ЭлементыФормы.Недовложения.ТекущиеДанные; Стр.Остаток = ПолучитьОстатокТовара(Стр.Номенклатура); КонецПроцедуры Функция ПолучитьОстатокТовара (Номенклатура) Запрос = Новый Запрос; Запрос.Текст = " | ВЫБРАТЬ | ОстаткиТоваровКомпанииОстатки.СкладКомпании.Подразделение, | ОстаткиТоваровКомпанииОстатки.Номенклатура, | ОстаткиТоваровКомпанииОстатки.КоличествоОстаток, | ОстаткиТоваровКомпанииОстатки.Номенклатура.ОсновнаяЕдиницаИзмерения |ИЗ | РегистрНакопления.ОстаткиТоваровКомпании.Остатки КАК ОстаткиТоваровКомпанииОстатки |ГДЕ |ОстаткиТоваровКомпанииОстатки.Номенклатура = &Номенклатура "; Запрос.УстановитьПараметр("Номенклатура", Номенклатура); Запрос.УстановитьПараметр("СкладКомпании", СкладКомпании); РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); Пока Выборка.Следующий() Цикл Остаток = Недовложения.Добавить(); Остаток.Номенклатура = Выборка.Номенклатура; Остаток.Остаток = Выборка.КоличествоОстаток; Остаток.ЕдиницаИзмеренияНоменклатуры = Выборка.Номенклатура.ОсновнаяЕдиницаИзмерения; КонецЦикла; КонецФункции |
|||
1
catena
26.03.12
✎
22:22
|
(0)Зачем в функции Недовложения.Добавить()? Твоя функция должна вернуть циферку. В запросе надо добавить условие на склад и убрать все лишнее, кроме остатка.
|
|||
2
hhhh
26.03.12
✎
22:22
|
а зачем в недовложения строчку добавляешь?
пиши просто Пока Выборка.Следующий() Цикл Возврат Остаток.КоличествоОстаток; КонецЦикла; Возврат 0; |
|||
3
temik_a
27.03.12
✎
09:52
|
2hhhh
Выдает ошибку переменная не определена (остаток) А какой мне функцией вернуть циферку? |
|||
4
Fish
27.03.12
✎
09:55
|
(3) Подумать самому никак? Напиши:
Если Выборка.Следующий() Тогда Возврат Выборка.КоличествоОстаток; Иначе Возврат 0; КонецЕсли; |
|||
5
Kassius
27.03.12
✎
10:02
|
и склад не используется.
|
|||
6
temik_a
27.03.12
✎
10:33
|
мой код в общем выводит мне остатки по каждому складу, но есть 2 проблемы, мне нужно выводить по подразделениям (в каждом подразделении у меня может быть пару складов и на них храниться могут одинаковые продукты)и по этому мне выводит по каждому складу из подразделения а мне нужно чтоб в общем по подразделению.
Проблема 2, при выборе номенклатуры у меня не заполняется строчка с остатком где я выбираю номенклатуру, а дальше все выводиться. Наверное меня ни кто не поймет(((( |
|||
7
hhhh
27.03.12
✎
10:49
|
(6) может так
Запрос.Текст = " | ВЫБРАТЬ | ОстаткиТоваровКомпанииОстатки.СкладКомпании.Подразделение, | ОстаткиТоваровКомпанииОстатки.Номенклатура, | СУММА(ОстаткиТоваровКомпанииОстатки.КоличествоОстаток), | ОстаткиТоваровКомпанииОстатки.Номенклатура.ОсновнаяЕдиницаИзмерения |ИЗ | РегистрНакопления.ОстаткиТоваровКомпании.Остатки(, Номенклатура = &Номенклатура) КАК ОстаткиТоваровКомпанииОстатки СГРУППИРОВАТЬ ПО | ОстаткиТоваровКомпанииОстатки.СкладКомпании.Подразделение, | ОстаткиТоваровКомпанииОстатки.Номенклатура, "; |
|||
8
zak555
27.03.12
✎
10:50
|
(0) жесть
сделай подбор, в котором будем выводится остаток товара |
|||
9
temik_a
27.03.12
✎
11:32
|
2hhhh есть по подразделению выводиться. Спасибо
Теперь нужно решить как убрать первую строчку в которую не выводиться остаток (при выборе номенклатуры) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |