|   |   | 
| 
 | Возможно ли запросом без цикла узнать сколько дней товар был на складе в наличии? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Обфускация 27.06.18✎ 14:06 | 
        Возможно ли запросом без цикла узнать сколько дней товар был на складе в наличии? Если можно то как?     | |||
| 1
    
        vis_tmp 27.06.18✎ 14:09 | 
        Возможно.     | |||
| 2
    
        olegves 27.06.18✎ 14:09 | 
        (0) возможно - берешь Период (измерение периодического регистра) поступления на склад и получаешь разницу с текущей датой (можно задать параметром запроса) в днях     | |||
| 3
    
        ssh2006 27.06.18✎ 14:09 | 
        (0) остатки и обороты периодичность день, разность дат     | |||
| 4
    
        Обфускация 27.06.18✎ 14:10 | 
        Можете пример нарисовать для типового регистра остатков?     | |||
| 5
    
        Darych 27.06.18✎ 14:12 | 
        (4) лодырь     | |||
| 6
    
        Лодырь 27.06.18✎ 14:12 | 
        (5) Нихрена, это не я.     | |||
| 7
    
        Darych 27.06.18✎ 14:13 | 
        6 :)     | |||
| 8
    
        Малыш Джон 27.06.18✎ 14:19 | 
        (4) Выбирай обороты с периодичностью нужной, делай нарастающий итог на каждую дату, выкидывай те даты, где остаток нарастающим итогом 0, считай количество дней.     | |||
| 9
    
        olegves 27.06.18✎ 14:20 | 
        (4) деньги за тебя тоже получить?     | |||
| 10
    
        aleks_default 27.06.18✎ 14:20 | 
        если товар в один и тот же день привезли и израсходовали - это считается что он был в наличии?     | |||
| 11
    
        Обфускация 27.06.18✎ 14:22 | 
        Вот у меня такой запрос в цикле, он всегда показывает 0 даже когда остатки были. Что там не так?     | |||
| 12
    
        Обфускация 27.06.18✎ 14:22 | 
        ДнейВыборки=окр((объект.ДатаПродажОкончание-объект.ДатаПродажНачало)/(60*60*24),0);
 для каждого стр из объект.Товары цикл ДнейНаСкладе=0; для СчДней=0 по ДнейВыборки цикл ЗапросОстатокСклада=новый запрос; ЗапросОстатокСклада.Текст="ВЫБРАТЬ | ОстаткиНоменклатурыОстатки.Номенклатура, | ОстаткиНоменклатурыОстатки.КоличествоОстаток |ИЗ | РегистрНакопления.ОстаткиНоменклатуры.Остатки(&период, ) КАК ОстаткиНоменклатурыОстатки |ГДЕ | ОстаткиНоменклатурыОстатки.Номенклатура = &Номенклатура | И ОстаткиНоменклатурыОстатки.Склад = &Склад"; ЗапросОстатокСклада.УстановитьПараметр("Склад",стр.склад); ЗапросОстатокСклада.УстановитьПараметр("Номенклатура",стр.Номенклатура); ЗапросОстатокСклада.УстановитьПараметр("период",объект.ДатаПродажНачало+СчДней*60*60*24); ИтогЗапросОстаток=ЗапросОстатокСклада.Выполнить().Выгрузить(); Если ИтогЗапросОстаток.Количество()>0 тогда Если ИтогЗапросОстаток[0].КоличествоОстаток>0 тогда ДнейНаСкладе=ДнейНаСкладе+1; конецесли; конецесли; конеццикла; стр.ДнейНаСкладе=ДнейНаСкладе; конеццикла; | |||
| 13
    
        _Дайвер_ 27.06.18✎ 14:28 | 
        НУ если ты хочешь запросом это делать, тогда:
 1. тебе надо в массив добавить те номенклатуры по которым ты собираешься получить дни 2. пишешь запрос, в нем указываешь что номенклатура в массиве, получаешь дату, добавляешь поле запроса "0", в выражении высчитываешь значение полученное. 3. выполняешь, загружаешь в ТЧ может что-то упустил | |||
| 14
    
        aleks_default 27.06.18✎ 14:33 | 
        (12) В отладке проверял? Может даты не заполнены?     | |||
| 15
    
        _Дайвер_ 27.06.18✎ 14:56 | 
        (14) Он женщиной стал...     | |||
| 16
    
        Малыш Джон 27.06.18✎ 14:57 | 
        хмм... неожиданно...     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |