Имя: Пароль:
1C
1С v8
Как сделать такой запрос? СКД
,
0 demous
 
31.10.12
08:56
упп 8.2
Как сделать вот такой запрос?

на каждую номенклатурную позицию должно выводиться две колонки
1 количество товара на складе
2 количество товара в поддонах

три вида единиц товара
банка с объемом 0.33   ( в поддоне 2592 шт )
банка с объемом 0.5    ( в поддоне 1728 шт)
бутылка с объемом 1    (в поддоне 630 шт)

как сделать максимально верно подсчет количества поддонов на номенклатуру из того что нам известно?
1 butterbean
 
31.10.12
08:58
а почему количество на складе будет отличаться от количества в поддонах??
2 Нуф-Нуф
 
31.10.12
09:03
3 Нуф-Нуф
 
31.10.12
09:04
имхо иди и сдайся, что не можешь решить тестовое задание. поймут. простят.
4 demous
 
31.10.12
09:28
(3) но отчет то нужен как ни крути
5 shuhard
 
31.10.12
09:28
(4) форуму отчет не нужен
6 Нуф-Нуф
 
31.10.12
09:29
(3) тогда рассказывай что именно не получается
7 Нуф-Нуф
 
31.10.12
09:29
(6) к (4)
8 demous
 
31.10.12
09:35
(6) немного не пойму, как в запросе задать это вычисление ( в скд )
9 Нуф-Нуф
 
31.10.12
09:35
(8) показывай запрос который уже есть
10 demous
 
31.10.12
09:38
(9) как не получается, так и удаляю....
Вытаскивать надо что?
я исхожу из вот этих данных
ТоварыВРезервеНаСкладахОстатки.Склад,
   ТоварыВРезервеНаСкладахОстатки.Номенклатура,
   ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток,
   ВложенныйЗапрос.Объем,   ( из единиц измерения )

этого достаточно будет?
11 butterbean
 
31.10.12
09:47
а где хранится инфа о количестве банок в поддоне??
12 demous
 
31.10.12
09:54
(11) в том то и дело, что такой инфы в базе не забито...
13 demous
 
31.10.12
10:17
ап
14 butterbean
 
31.10.12
10:19
(13) забей инфу в базу
15 demous
 
31.10.12
14:38
(14) желательно обойтись без этого
16 demous
 
31.10.12
16:44
не?()
17 GANR
 
31.10.12
16:59
(15) Вот "гениальный" запрос для такой ситуации )))
ВЫБРАТЬ
   ТоварыНаСкладах.Номенклатура КАК Номенклатура,
   ЕмкостьПоддона.КоличествоВПоддоне,
   ТоварыНаСкладах.КоличествоОстаток,
   ВЫРАЗИТЬ(ВЫБОР
           КОГДА ТоварыНаСкладах.КоличествоОстаток <> 0
               ТОГДА ТоварыНаСкладах.КоличествоОстаток / ЕмкостьПоддона.КоличествоВПоддоне
           ИНАЧЕ 0
       КОНЕЦ КАК ЧИСЛО) КАК КоличествоПоддоновСПродукцией
ИЗ
   РегистрНакопления.ТоварыНаСкладах.Остатки(, Номенклатура В (&Бут033, &Бут05, &Бут1)) КАК ТоварыНаСкладах
       ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
           &Бут033 КАК Номенклатура,
           2592 КАК КоличествоВПоддоне
       
       ОБЪЕДИНИТЬ ВСЕ
       
       ВЫБРАТЬ
           &Бут05,
           1728
       
       ОБЪЕДИНИТЬ ВСЕ
       
       ВЫБРАТЬ
           &Бут1,
           630) КАК ЕмкостьПоддона
       ПО ТоварыНаСкладах.Номенклатура = ЕмкостьПоддона.Номенклатура
18 GANR
 
31.10.12
17:03
>Только ошибка
ВЫБОР
           КОГДА ТоварыНаСкладах.КоличествоОстаток <> 0
               ТОГДА ТоварыНаСкладах.КоличествоОстаток / ЕмкостьПоддона.КоличествоВПоддоне
           ИНАЧЕ 0
       КОНЕЦ

заменить на

ВЫБОР
           КОГДА ЕмкостьПоддона.КоличествоВПоддоне <> 0
               ТОГДА ТоварыНаСкладах.КоличествоОстаток / ЕмкостьПоддона.КоличествоВПоддоне
           ИНАЧЕ 0
       КОНЕЦ

чтоб деления на 0 избежать
19 Wobland
 
31.10.12
17:03
автору уже сказали, что запрос и СКД - это разные вещи?
20 demous
 
31.10.12
17:38
(19) пока еще нет)

(17) спасибо... Ток чет пока не хочет формировать
21 GANR
 
31.10.12
17:49
(20)Параметры Бут033, Бут05 и Бут1 задай. Только сними в СКД "ограничение доступа", они отобразятся в настройка КД на закладке "параметры данных". Или просто поставь на последней закладке флаг "отображать недоступные параметры".
22 kabanoff
 
31.10.12
17:54
(17) Хорошее решение.
23 kabanoff
 
31.10.12
17:55
+(22) Только вместо констант будет лучше завести характеристику номенклатуры.
24 GANR
 
31.10.12
17:55
(22) )))))) Да уж
25 demous
 
01.11.12
08:42
(21) только смотри, задаю параметры Бут033 и т.д. как номенклатуру? то есть отчет должен сформироваться по трем позициям всего-лишь?
26 GANR
 
01.11.12
09:22
(25) ))))) А что делать, если никак нельзя ввести данные о вместимости поддонов?
27 demous
 
01.11.12
09:42
(26) а если забьют на все позиции количество по поддонам?)
28 GANR
 
01.11.12
09:44
(27) Тогда вообще всё просто тривиально. Думай сам. На реальной работе задачи будут на порядок сложнее и какой тогда смысл устраиваться? Выгонят же так и так...
29 GANR
 
01.11.12
09:46
+(28) Да, и ещё Радченко, Хрусталева, сборник задач к экзамену 1С:Специалист по Платформе 8.2 (рекомендую начать именно с него) в помощь.
30 demous
 
01.11.12
09:53
(29) я бы начал..да вот только это из последних моих заданий, это точно... не влилось мне 1С, устройство было случайным, и ошибочным, вернусь к порталам и сайтам.... Сорри за оффтоп... просто описал ситуацию)
31 GANR
 
01.11.12
10:08
(30) Уметь работать с запросами должен любой желающий иметь интересную работу и доход современный программист (Хоть Web, хоть C#, хоть 1С, да хоть Win32 API).

Поэтому, НАСТОЯТЕЛЬНО советую сдать на 1-й сертификат на сайте sql-ex.ru (2-й сертификат и оптимизационный этап - это уже на любителя). Из ВСЕХ ИТ-тренингов, что я в своей жизни проходил этот имеет лучшее соотношение

(польза от полученных навыков и знаний) / (потраченные силы и время).

В среднем 4 недели, если работаешь и 2 недели - если без работы сидишь уходит у людей.
32 demous
 
01.11.12
10:11
(31) благодарю за ссылку, обязательно ознакомлюсь и пройду его...

но с отчетом сейчас-то запар(
33 hhhh
 
01.11.12
10:22
(30) теперь на порталы эта же самая фигня проникает, чем сейчас в 1С вы занимаетесь. Поэтому вернуться на портал без элементарных знаний у вас уже не получится. Старые времена когда вы на сайтах рисовали только рюшечки с картинками уходят в прошлое. Теперь там тоже поддоны и контейнеры.
34 GANR
 
01.11.12
10:23
(32) Оставь тест, уведомив об этом работодателя. Представляешь себе последствия для себя, если тебя с таким навыком посадят за гораааааздо более сложные задачи на реальной работе за реальные деньги???

Лучше тренинг (31) пройди за недельку-другую, пока нигде не работаешь, а уж потом с полученным навыком работодателям пройтись и удиви их.
35 GANR
 
01.11.12
10:26
+(34) По ТЕМ-ЖЕ работодателям.
36 demous
 
01.11.12
11:00
(33) (34) (35)
Это все понятно, что лучше тренинг пройти и курсы, я с вами по этому поводу не спорю... но на данный момент необходимо сделать данный отчет)
37 GANR
 
01.11.12
11:19
(36) Данные о номенклатуроемкости поддона где хранятся? Если это реквизит справочника "Номенклатура" - то запрос выглядит так (выбор - чтоб деления на 0 избежать):

ВЫБРАТЬ
   ТоварыНаСкладах.Номенклатура КАК Номенклатура,
   ТоварыНаСкладах.КоличествоОстаток,
   ВЫБОР
           КОГДА ТоварыНаСкладах.Номенклатура.КоличествоВПоддоне <> 0
               ТОГДА ТоварыНаСкладах.КоличествоОстаток / ТоварыНаСкладах.Номенклатура.КоличествоВПоддоне
           ИНАЧЕ 0
       КОНЕЦ КАК КоличествоПоддоновСПродукцией
ИЗ
   РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладах
38 demous
 
01.11.12
11:52
(37) количество в поддоне забито в номенклатура ТЧ Единицы
Является ЕдиницейПоКласификатору
39 GANR
 
01.11.12
12:04
(38) минуту
40 GANR
 
01.11.12
12:10
(38) Это не ТЧ - это СправочникСписок с отбором по владельцу (текущему элементу "Номенклатура"). А запрос будет таким:

ВЫБРАТЬ
   ТоварыНаСкладах.Номенклатура КАК Номенклатура,
   ТоварыНаСкладах.КоличествоОстаток,
   ВЫБОР
       КОГДА ТоварыНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент <> 0
           ТОГДА ТоварыНаСкладах.КоличествоОстаток / ТоварыНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент
       ИНАЧЕ 0
   КОНЕЦ КАК КоличествоПоддоновСПродукцией
ИЗ
   РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладах
41 GANR
 
01.11.12
12:18
(38)Тьху-е, единица по классификатору тогда по другому.
42 GANR
 
01.11.12
12:48
(42) тогда не помогу - УПП перед глазами нет((((
43 demous
 
01.11.12
12:56
(42) грустно(((( спасибо за помощь тем не менее))))
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан