Имя: Пароль:
1C
1С v8
Отчет в СКД что делаю не так?
,
0 Медвепут
 
16.05.14
08:00
Конфигурация УТ 10.3. Необходимо посчитать суммарный вес товаров в разрезе вида номенклатуры, на выбранном складе, т.е. написать один запрос, результатом которого будет следующего вида табличка:



Вид номенклатуры   Вес на начало предыдущей недели

Вес на начало выбранной недели        Прирост в весе



Остатки товара хранятся в регистре накопления ТоварыНаСкладах, вес хранится в реквизите Вес реквизита номенклатуры  ОсновнаяЕдиницаХранения. Кроме того, если получившийся вес вида номенклатуры и  на выбранной, и на предыдущей неделе меньше 1, то необходимо все такие строки объединить в одну с видом номенклатуры «Остальное».




ВЫБРАТЬ
    ТоварыНаСкладах.Период,
    ТоварыНаСкладах.Номенклатура.ВидНоменклатуры,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ КАК ВесПрош,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ КАК ВесВыбр,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ - ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ КАК Прирост,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Номенклатура.Вес < 1
            ТОГДА "Осталось"
        ИНАЧЕ 0
    КОНЕЦ КАК Осталось
ИЗ
    РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
1 chelentano
 
16.05.14
08:06
(0) хвастаешься?
2 Медвепут
 
16.05.14
08:07
chelentano  чем?
3 chelentano
 
16.05.14
08:10
(2) не знаю, но никакого вопроса в (0) не увидел, что не устраивает то?
4 Медвепут
 
16.05.14
08:16
chelentano  вопрос правильно ли я написал запрос в отчете.а именно условия отбора полей вес ,на даты( НачалоПрошлойНедели)(НачалоЭтойНедели) поле прирост (разница ) , поле Осталось это вес меньше единицы
5 echo77
 
16.05.14
08:25
(0) Неправильно.
Тебе надо или два раза таблицу остатков использовать или таблицу ОстаткиИобороты за Период(начало предыдущей недели; начало выбранной недели)
6 echo77
 
16.05.14
08:26
...и Суммарный вес товаров, это наверное: Количество х Вес, не?
7 Медвепут
 
16.05.14
08:40
ВЫБРАТЬ
    ТоварыНаСкладах.Номенклатура.ВидНоменклатуры,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ КАК ВесПрош,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ КАК ВесВыбр,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ - ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ КАК Прирост,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Номенклатура.Вес < 1
            ТОГДА "Осталось"
        ИНАЧЕ 0
    КОНЕЦ КАК Осталось
ИЗ
    РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки
        ПО ТоварыНаСкладах.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура

СГРУППИРОВАТЬ ПО
    ТоварыНаСкладах.Номенклатура.ВидНоменклатуры,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ - ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ 0
    КОНЕЦ,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Номенклатура.Вес < 1
            ТОГДА "Осталось"
        ИНАЧЕ 0
    КОНЕЦ
8 Медвепут
 
16.05.14
08:41
чет намудрил)
9 Медвепут
 
16.05.14
09:00
где все????
10 Wobland
 
16.05.14
09:02
соединить два разных среза предлагать?
11 Медвепут
 
16.05.14
09:03
Wobland можно)
12 Wobland
 
16.05.14
09:04
соедини два разных среза
13 Медвепут
 
16.05.14
09:05
как то так

ВЫБРАТЬ
    ТоварыНаСкладах.Номенклатура.ВидНоменклатуры,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ КАК ВесПрош,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ КАК ВесВыбр,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ - ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ КАК Прирост,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Номенклатура.Вес < 1
            ТОГДА "Остальное"
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ КАК Осталось
ИЗ
    РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки
        ПО ТоварыНаСкладах.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура

СГРУППИРОВАТЬ ПО
    ТоварыНаСкладах.Номенклатура.ВидНоменклатуры,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата1
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ - ВЫБОР
        КОГДА ТоварыНаСкладах.Период = &Дата
            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ,
    ВЫБОР
        КОГДА ТоварыНаСкладах.Номенклатура.Вес < 1
            ТОГДА "Остальное"
        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес
    КОНЕЦ
14 Wobland
 
16.05.14
09:07
>            ТОГДА ТоварыНаСкладах.Номенклатура.Вес
>        ИНАЧЕ ТоварыНаСкладах.Номенклатура.Вес

ничо так
15 Kookish
 
16.05.14
09:09
(14) Зато работает!
16 Медвепут
 
16.05.14
09:09
Wobland  подскажи как лучше
17 Defender aka LINN
 
16.05.14
09:10
(14) Это чтобы наверняка :)
18 Медвепут
 
16.05.14
09:10
как срез на дату сделать например на начало прошлой недели?
19 Медвепут
 
16.05.14
09:11
Defender aka LINN  .давайте без сарказма и стеба
20 Wobland
 
16.05.14
09:11
(16) выбрать естьнулл(прошлый, "-"), естьнулл(текущий, "-"), естьнулл(текущий, 0)-естьнулл(прошлый, 0)
из остатки(вчера) полное остатки(сегодня)
21 Wobland
 
16.05.14
09:12
(19) ты просишь невозможного
(18) добавить к дате -1 неделю
22 Kookish
 
16.05.14
09:13
(16) Есть хороший совет: подключить моск. Но он прокатывает только для тех, у кого моск присутствует.
(18) СрезПоследних(НачалоПрошлойНедели, .... - как-то так.
23 Медвепут
 
16.05.14
09:13
ага , так точна я прошу невозможного . работодателю это скажу сегодня. пусть поймет свой косяк
24 Медвепут
 
16.05.14
09:14
емти срез последних тока в регистрах сведений отработает .сейчас мы смотрим регистр оборотов
25 Wobland
 
16.05.14
09:15
(24) а можно мы будем смотреть регистр накопления?
26 Медвепут
 
16.05.14
09:16
ради Бога .только среза последних там уже не будет
27 Wobland
 
16.05.14
09:16
(26) ну это не беда. это даже хорошо
28 Wobland
 
16.05.14
09:17
а вот если ТоварыНаСкладах и впрямь оборотный, то приплыли - остаются только извращения
29 Медвепут
 
16.05.14
09:17
Wobland это очень хорошо.
30 Медвепут
 
16.05.14
09:18
Wobland ну тут без них никак))
31 Wobland
 
16.05.14
09:19
(30) у меня получилось, я люблю не всякие извращения
32 Kookish
 
16.05.14
09:20
Я не могу на это смотреть. (Ушел звонить в общество защиты животных)
33 Медвепут
 
16.05.14
09:20
Wobland подскажи рецепт)
34 echo77
 
16.05.14
09:21
рука-лицо.
Автор, советую взять отгул до ПН, а на следующей неделе все переделать
35 Медвепут
 
16.05.14
09:21
Kookish .да я тоже не могу на это смотреть .поехал в зоопарк
36 Wobland
 
16.05.14
09:21
(33) видимо, дважды надо

выбрать естьнулл(прошлый, "-"), естьнулл(текущий, "-"), естьнулл(текущий, 0)-естьнулл(прошлый, 0)
из остатки(вчера) полное остатки(сегодня)
выбрать естьнулл(прошлый, "-"), естьнулл(текущий, "-"), естьнулл(текущий, 0)-естьнулл(прошлый, 0)
из остатки(вчера) полное остатки(сегодня)
37 Медвепут
 
16.05.14
09:22
echo77  какой еще отгул? кто бы мне его дал) я же дома
38 Kookish
 
16.05.14
09:27
(32) (35) Упал под стол. Звоню из-под стола.
39 User_Agronom
 
16.05.14
09:27
Мне одному кажется, что нефига группировать, если не используются агрегатные функции?
40 Wobland
 
16.05.14
09:28
(39) неправда. при системе оплаты труда построчно это очень даже имеет смысл
41 User_Agronom
 
16.05.14
09:35
(40) А где такая система оплаты? Меня туда возьмут?
42 Медвепут
 
16.05.14
09:38
User_Agronom  конечно.ты прав
43 Wobland
 
16.05.14
09:40
(41) умеешь петь, танцевать и разговаривать на хинди?
44 Медвепут
 
16.05.14
09:43
развели флудилово в моей ветке ну вот дождались.
45 Медвепут
 
16.05.14
09:44
всем успеха .поехал на биржу..
46 User_Agronom
 
16.05.14
09:48
(42) Вы, мне сам Михаил Васильевич Фрунзе не тыкал;)
(43) Литр хорошего коньяка - и даже на украинском говорить смогу;)
47 Медвепут
 
16.05.14
10:09
пардон кто то кому то тыкал .извиняйте .если чем обидел
48 Медвепут
 
16.05.14
10:09
алкоголики
49 User_Agronom
 
16.05.14
10:15
(0) Бери не из таблицы РегистрНакопления.ТоварыНаСкладах, а из Таблицы РегистрНакопления.ТоварыНаСкладах.Остатки(&Дата1,)

Т.о Вы сможете получить две таблицы с остатками на нужные Вам две даты. Ну и соединение, маленький танец с оформлением и, вот оно, счастье))