Имя: Пароль:
1C
1С v8
остаток товара на складе 1С 8.1 УТ 10.2 (почему не показывает?)
0 MrZLO
 
08.11.12
12:01
все же элементарно, что же он мне 0 пишет, хотя явно товар такой есть на этом складе?

Функция ПолучитьОстатокНаСкладе(Склад, Номенклатура)
   
   Остаток = 0;
   
   Запрос = Новый Запрос();
   
   Запрос.Текст = "ВЫБРАТЬ
   |    СУММА(ЕСТЬNULL(ТоварыНаСкладах.Количество, 0)) КАК Количество
   |ИЗ
   |    РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
   |ГДЕ
   |    ТоварыНаСкладах.Период = &Дата
   |    И ТоварыНаСкладах.Склад = &Склад
   |    И ТоварыНаСкладах.Номенклатура = &Номенклатура";
       
   Запрос.УстановитьПараметр("Дата", ТекущаяДата());
   Запрос.УстановитьПараметр("Склад", Склад);
   Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
   
   РезультатЗапроса = Запрос.Выполнить();
   
   Если НЕ РезультатЗапроса.Пустой() Тогда
       
       ОстатокТовара = РезультатЗапроса.Выгрузить()[0][0];    
       
       Если ЗначениеЗаполнено(ОстатокТовара) Тогда Остаток = ОстатокТовара; КонецЕсли;
       
   КонецЕсли;
   
   Возврат Остаток;
   
КонецФункции

Процедура Кнопка1Нажатие(Элемент)
   Сообщить(ПолучитьОстатокНаСкладе(Справочники.Склады.НайтиПоКоду("000000001"), Справочники.Номенклатура.НайтиПоКоду("000074167")));
КонецПроцедуры
1 GLazNik
 
08.11.12
12:05
(0) эмъ... вы смотрите движения... причем движения на конкретный момент времени ТекущаяДата()... вряд ли в этот момент есть движения
2 MrZLO
 
08.11.12
12:05
МоментВремени() вставлял так он ругацца начинает
3 cw014
 
08.11.12
12:05
(1) +1
4 cw014
 
08.11.12
12:05
(2) Мистер добро, по моему вам четко указали куда копать
5 MrZLO
 
08.11.12
12:06
а...
6 GLazNik
 
08.11.12
12:07
Откройте для себя РегистрНакопления.ТоварыНаСкладах.Остатки
7 MrZLO
 
08.11.12
12:07
вот так уже чета начал показывать    |    ТоварыНаСкладах.Период <= &Дата
8 cw014
 
08.11.12
12:08
(6) Я думаю тут уже дохлый номер. Пошли отсюда
9 ВераТ
 
08.11.12
12:10
Боже, ну откуда такие горе-програмисты берутся?? где вирт. таблица остатков, где параметры вирт. т-цы?? ну элементарный же запрос, проще просто некуда
10 GLazNik
 
08.11.12
12:10
(7) вот именно что "чета".... вам нужно это "чета"?
11 ВераТ
 
08.11.12
12:11
Вся функция - просто бред
12 MrZLO
 
08.11.12
12:11
я сморю тут умники опять одни, так в доках писали бы стразу про вирт таблицы и т.д., чё ж в справке такое не пишут
13 ВераТ
 
08.11.12
12:12
(7) все неправильно!!! начни с запроса к вирт. т-це остатков
14 cw014
 
08.11.12
12:12
(12) А чего же в справке не пишут реализации всех возможных вариантов всех методик на свете?
15 MrZLO
 
08.11.12
12:12
РегистрыНакопления.ТоварыНаСкладах.Остатки();
16 ВераТ
 
08.11.12
12:12
(12) в любой самой элементарной книжке по прогр-ю есть о вирт. т-цах. Это основа работы с регистрами
17 cw014
 
08.11.12
12:13
(16) Тут сложно все - человек со стажем в 6 лет не знает про вирт. таблицы
18 ВераТ
 
08.11.12
12:13
составляй через конструктор, может это спасет ситуацию...хотя если и с конструктором работать не умеешь, совсем беда..
19 ВераТ
 
08.11.12
12:14
(17) жуть, я в шоке...
20 MrZLO
 
08.11.12
12:14
да 1с вообще не моё, это шляпа полная, рисуйте формочки дальше свои умники
21 GLazNik
 
08.11.12
12:15
(14) так все там есть... справка-встроенный язык-работа с запросами-таблицы запросов-таблицы регистров накопления....
22 cw014
 
08.11.12
12:15
(20) Ну а зачем в 1С тогда полез?
23 GLazNik
 
08.11.12
12:15
(20) а вас кто-то заставляет? откройте для себя профессию дворника
24 ВераТ
 
08.11.12
12:16
(20) тут не надо быть умником. Тут надо хотя бы изучить основы того, куда лезешь и с чем работаешь
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn