Как в ТиС при подборе номенклатуры выташить в отдельную графу РЕЗЕРВ?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
да ковыряю в результате ставлю Управляющию аналитику по фирме делаю документы Заявка, Остаток до кументов 2 шт, после проведения 0 шт, смотрю вижу что 2 резрва проведены, убрал в
Процедура глПолучитьОстаткиНоменклатуры(ФирмаДляОстатковТМЦ, Номенклатура, Единица, ОстаткиТМЦ, ОстатокНаСкладе, ОстатокПоФирме, Склад,
РезервыТМЦ = 0, УчитыватьРезерв = 0, Договор = 0, Заявка = 0) Экспорт
//Нач_изм____________________________
//ОстатокНаСкладе = ОстатокНаСкладе - РезервНаСкладе;
//ОстатокПоФирме = ОстатокПоФирме - РезервПоФирме;
ОстатокНаСкладе = ОстатокНаСкладе;
ОстатокПоФирме = ОстатокПоФирме;
//Нач_изм____________________________
Теперь сотаток показывает нормально, но хочеться еще и видить сколько резервов
при подборе
глПолучитьОстаткиНоменклатуры(ФирмаДляОстатковТМЦ, ТекНоменклатура, ЕдиницаТекНоменклатуры, ОстаткиТМЦ, ТовОстаток, ТовОстатокПоФирме, Склад, Резервы, 1);
Если ПоказыватьОстатокПоФирме = 1 Тогда
ТекОстатокПоФирме = ?(ПустоеЗначение(ТовОстатокПоФирме) = 1, "", СокрЛП(Формат(ТовОстатокПоФирме,"Ч014.3")));
КонецЕсли;
ОстатокТекНоменклатуры = ?(ПустоеЗначение(ТовОстаток) = 1, "", СокрЛП(Формат(ТовОстаток,"Ч014.3")));
Не пойму как теперь Значению резерв из глоб. модуля добавить
РезервНаСкладе
Процедура глПолучитьОстаткиНоменклатуры(ФирмаДляОстатковТМЦ, Номенклатура, Единица, ОстаткиТМЦ, ОстатокНаСкладе, ОстатокПоФирме, Склад,
РезервыТМЦ = 0, УчитыватьРезерв = 0, Договор = 0, Заявка = 0) Экспорт
//Нач_изм____________________________
//ОстатокНаСкладе = ОстатокНаСкладе - РезервНаСкладе;
//ОстатокПоФирме = ОстатокПоФирме - РезервПоФирме;
ОстатокНаСкладе = ОстатокНаСкладе;
ОстатокПоФирме = ОстатокПоФирме;
//Нач_изм____________________________
Теперь сотаток показывает нормально, но хочеться еще и видить сколько резервов
при подборе
глПолучитьОстаткиНоменклатуры(ФирмаДляОстатковТМЦ, ТекНоменклатура, ЕдиницаТекНоменклатуры, ОстаткиТМЦ, ТовОстаток, ТовОстатокПоФирме, Склад, Резервы, 1);
Если ПоказыватьОстатокПоФирме = 1 Тогда
ТекОстатокПоФирме = ?(ПустоеЗначение(ТовОстатокПоФирме) = 1, "", СокрЛП(Формат(ТовОстатокПоФирме,"Ч014.3")));
КонецЕсли;
ОстатокТекНоменклатуры = ?(ПустоеЗначение(ТовОстаток) = 1, "", СокрЛП(Формат(ТовОстаток,"Ч014.3")));
Не пойму как теперь Значению резерв из глоб. модуля добавить
РезервНаСкладе
Не вижу в чем проблема вообще...
Тупо, в ТисЕ так - в ПриОткрытии создается Объект Регистры, далее объекты останковых регистров Остатки/партии + Резервы...
ставится им временной расчет + фильтры, если нужно и делается их расчет...
затем тупо в формуле текстовой колонки вызоф функции, в которой берется сводный остаток. всё.
Тупо, в ТисЕ так - в ПриОткрытии создается Объект Регистры, далее объекты останковых регистров Остатки/партии + Резервы...
ставится им временной расчет + фильтры, если нужно и делается их расчет...
затем тупо в формуле текстовой колонки вызоф функции, в которой берется сводный остаток. всё.
(я) просто не въезжаю если честно, как мне сделать функцию и вернуть сумму кол-во резервов
понимаю что нужно сделать типа
Остатки = 0;
Остатки = ОстаткиТМЦ.СводныйОстаток(ФирмаПолучатель, Номенклатура, СкладПолучатель,, "Количество");
Если Остатки = 0 Тогда
Остатки = " ";
КонецЕсли;
Возврат Остатки;
но к какому регистру обратиться, как посчитать резрвы по фирме, в целом, а не по складу?
понимаю что нужно сделать типа
Остатки = 0;
Остатки = ОстаткиТМЦ.СводныйОстаток(ФирмаПолучатель, Номенклатура, СкладПолучатель,, "Количество");
Если Остатки = 0 Тогда
Остатки = " ";
КонецЕсли;
Возврат Остатки;
но к какому регистру обратиться, как посчитать резрвы по фирме, в целом, а не по складу?
чего-то не хватает
Остатки = РезервыТМЦ<<?>>.СводныйОстаток(Фирма,Наименование,,, "Количество");
{Справочник.Номенклатура.ФормаСписка.ДляПодбора.Модуль(42)}: Переменная не определена (РезервыТМЦ)
сделал так
Функция ОстатокНаВыбранномСкладе(Фирма, Наименование)
Остатки = 0;
Остатки = РезервыТМЦ.СводныйОстаток(Фирма,Наименование,,, "Количество");
Сообщить("ТМЦ "+Наименование+" остаток "+Остатки);
Если Остатки = 0 Тогда
Остатки = " ";
КонецЕсли;
Возврат Остатки;
КонецФункции //ОстатокНаВыбранномСкладе()
Остатки = РезервыТМЦ<<?>>.СводныйОстаток(Фирма,Наименование,,, "Количество");
{Справочник.Номенклатура.ФормаСписка.ДляПодбора.Модуль(42)}: Переменная не определена (РезервыТМЦ)
сделал так
Функция ОстатокНаВыбранномСкладе(Фирма, Наименование)
Остатки = 0;
Остатки = РезервыТМЦ.СводныйОстаток(Фирма,Наименование,,, "Количество");
Сообщить("ТМЦ "+Наименование+" остаток "+Остатки);
Если Остатки = 0 Тогда
Остатки = " ";
КонецЕсли;
Возврат Остатки;
КонецФункции //ОстатокНаВыбранномСкладе()
сделай Перем Резервы; в начале модуля,
в ПриОткрытии
Рег = СоздатьОбъект("Регистры");
Резервы = Рег.РезервыТМЦ;
если нужно, то Резервы.ВременнойРасчет();
Рег.РассчитатьРегистрыНа(......);
далее тупо в формулу Резервы.СводныйОстаток(Фирма,Номенклатура,,, "Количество");
в ПриОткрытии
Рег = СоздатьОбъект("Регистры");
Резервы = Рег.РезервыТМЦ;
если нужно, то Резервы.ВременнойРасчет();
Рег.РассчитатьРегистрыНа(......);
далее тупо в формулу Резервы.СводныйОстаток(Фирма,Номенклатура,,, "Количество");
Все равно резервы не показывает
Функция ОстатокНаВыбранномСкладе(Фирма, Наименование)
ОстатокРезерв = 0;
//Остатки = Резервы.СводныйОстаток(Фирма,Наименование,"Количество");
ОстатокРезерв =Резервы.СводныйОстаток(Фирма,Наименование, ,,,"Количество");
//Сообщить("ТМЦ "+Наименование+" остаток "+Остатки);
Если ОстатокРезерв = 0 Тогда
ОстатокРезерв = " ";
КонецЕсли;
Возврат ОстатокРезерв;
КонецФункции //ОстатокНаВыбранномСкладе()
//Сообщить("ТМЦ "+Наименование+" остаток "+Остатки); тоже дает 0
Функция ОстатокНаВыбранномСкладе(Фирма, Наименование)
ОстатокРезерв = 0;
//Остатки = Резервы.СводныйОстаток(Фирма,Наименование,"Количество");
ОстатокРезерв =Резервы.СводныйОстаток(Фирма,Наименование, ,,,"Количество");
//Сообщить("ТМЦ "+Наименование+" остаток "+Остатки);
Если ОстатокРезерв = 0 Тогда
ОстатокРезерв = " ";
КонецЕсли;
Возврат ОстатокРезерв;
КонецФункции //ОстатокНаВыбранномСкладе()
//Сообщить("ТМЦ "+Наименование+" остаток "+Остатки); тоже дает 0
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот