Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 19:51

Вывод в номенклатуру количества ТМЦ в резеревах

Автор llpass, 19 фев 2015, 13:58

0 Пользователей и 1 гость просматривают эту тему.

llpass

Подскажите пож как из регистра РезервыТМЦ вытащить количества товра
есть аналог
//******************************************************* Это касается Физического склада
Функция Остаток3()
   Если ЭтоГруппа() = 0 Тогда
          Рег = Создатьобъект("Регистр.ОстаткиТМЦ");
Рег.УстановитьЗначениеФильтра("Номенклатура",ТекущийЭлемент(),1);
Рег.УстановитьЗначениеФильтра("Склад",Склад3,1);
          Таб=СоздатьОбъект("ТаблицаЗначений");
          Рег.ВыгрузитьИтоги(Таб,1,1);
          Возврат глФРМ(Таб.Итог("Количество"));
Конецесли;
КонецФункции // Остаток3()

//********************************  ВЫВОДИМ СКЛАД С ОСТАТКАМИ В СПИСОК НОМЕНКЛАТУРЫ
Спр = СоздатьОбъект("Справочник.Склады");
     Если Спр.НайтиПоНаименованию("Логистика",0,1) = 1 Тогда
     Если Спр.ТекущийЭлемент().Складзакрыт = 0 Тогда
       Склад3 = Спр.ТекущийЭлемент();
    Иначе
    Форма.Склад3.Видимость(0);
     КонецЕсли;
КонецЕсли;
//********************************  Это касается виртуального склада  где числяться  резервы
Функция Резерв()
Если ЭтоГруппа() = 0 Тогда
          Рег = Создатьобъект("Регистр.РезервыТМЦ");
Рег.УстановитьЗначениеФильтра("Номенклатура",ТекущийЭлемент(),1);
Рег.УстановитьЗначениеФильтра("Склад",Склад4,1);
          Таб=СоздатьОбъект("ТаблицаЗначений");
          Рег.ВыгрузитьИтоги(Таб,1,1);
          Возврат глФРМ(Таб.Итог("Количество"));
        Конецесли;
КонецФункции // Резерв()

//*************************************** ВЫВОДИМ Резервы С ОСТАТКАМИ В СПИСОК НОМЕНКЛАТУРЫ
Спр = СоздатьОбъект("Справочник.Склады");  //********* Как создать  обьект с  РезервамиТМЦ  ???????
     Если Спр.НайтиПоНаименованию("???????????",0,1) = 1 Тогда
     Если Спр.ТекущийЭлемент().Складзакрыт = 0 Тогда
       Склад4 = Спр.ТекущийЭлемент();
    Иначе
    Форма.Склад4.Видимость(0);
     КонецЕсли;
КонецЕсли;


СПС  должно получиться как на фото

дфтын

Функция Резерв()
Если ЭтоГруппа() = 0 Тогда
          Рег = Создатьобъект("Регистр.РезервыТМЦ");
Рег.УстановитьЗначениеФильтра("Номенклатура",ТекущийЭлемент(),1);
Рег.УстановитьЗначениеФильтра("Склад",Склад4,1);
          Таб=СоздатьОбъект("ТаблицаЗначений");
          Рег.ВыгрузитьИтоги(Таб,1,1);
          Возврат глФРМ(Таб.Итог("Количество"));
        Конецесли;
КонецФункции // Резерв()


Вот же вы получаете резерв,

llpass

он получается... не понятно во второй части вывод этих цифр в с список номенклатуры см фото     

дфтын

если открыть совйства столбца резерв, или любого другого где цифры, то там во второй вкладке будет прописано название функции которая возвращает эту цифру

llpass

Да така и есть...  для вывода на на  экран  сосздается справочниик 
как для физического склада

Спр = СоздатьОбъект("Справочник.Склады");
     Если Спр.НайтиПоНаименованию("Логистика",0,1) = 1 Тогда
     Если Спр.ТекущийЭлемент().Складзакрыт = 0 Тогда
       Склад3 = Спр.ТекущийЭлемент();
    Иначе
    Форма.Склад3.Видимость(0);
     КонецЕсли;
КонецЕсли;


дфтын

Ну так я не понимаю, что вы хотите получить?

llpass

Посмотрите миниатюры...  видите  в колонке склад стоят колличества  ( это количесвтва на реальном складе) и есть колонка резерв  в ней должна  быть цифра котрая  зарезервирована

дфтын

Ну???? а я вам о чом говорю? У вас прописано там функция резерв(), следовательно оно туда заходит и вычисляет резерв. если цифры нулевые, а он есть, изучайте в отладчике отчего они нулевые.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск