Форум Чистова. Подготовка к экзаменам 1С

Аттестация "1С:Специалист" => Аттестация "1С:Специалист по платформе 1С:Предприятие 8.3 и 8.2" => Тема начата: hugo от Август 06, 2010, 01:34:27 pm

Название: 1.13
Отправлено: hugo от Август 06, 2010, 01:34:27 pm
Добрый день.
 При решении задачи столкнулся с трудностями при выводе набора записей (регистр сведений) по компплектующим номенклатуры.

Если кто решил данную задачу, выложите плиз для ознакомления.
 Спасибо.

Название: 1.13
Отправлено: 4kviper от Август 06, 2010, 08:35:08 pm
вот, но там без блокировок, без отчетов, так общий смысл чтоб ты понял.
Вложения:
1.13.dt
Название: 1.13
Отправлено: hugo от Август 09, 2010, 11:18:19 am
Quote (4kviper)
вот, но там без блокировок, без отчетов, так общий смысл чтоб ты понял.

спс, посмотрел
 вопрос:
 1. по условию задачи, необходимо реализовать уникальность деталей, т.е. одна и та же деталь не может относиться к разным стеллажам. В твоем решении одна деталь может относиться к разным стеллажам.

Название: 1.13
Отправлено: 4kviper от Август 10, 2010, 10:59:09 pm
Здесь в смысле что есть у тебя допустим болт - 1шт на складе и он не может быть задействован и в одном виде стеллажей, и вдругом. Ты можешь записать разные номенклатурные позиции, которые повторяться в разных стеллажах не будут.
Название: 1.13
Отправлено: savotii от Август 11, 2010, 02:13:15 pm
Кто-нибудь может выложить отчет по наличию стеллажей, а то я не догоняю , как его сделать?
 С ув. юра

Добавлено (11.08.2010, 14:13)
---------------------------------------------
Скачал от сюда решение http://expert.chistov.pro/public/download.php?login=yes&file=66249 , пока разбираюсь не могу вкурить одного , там в регистре сведений стеллажи, Изм Номенклатура и два ресурса , один Стеллаж ТИП(номенклатура) и КОличество.
 разве не должно быть
 Изм
 Стеллаж - Тип(справочник.Номенклатура)
 Деталь- Тип(справочник.Номенклатура)
 Рес
 Количество

а там

Изм
 Номенклатура- Тип(справочник.Номенклатура)
 Рес
 Стеллаж - Тип(справочник.Номенклатура)
 Количество

Или я ошибаюсь

Название: 1.13
Отправлено: napan от Август 12, 2010, 12:23:02 pm
Quote (savotii)
Скачал от сюда решение http://expert.chistov.pro/public/download.php?login=yes&file=66249 , пока разбираюсь не могу вкурить одного , там в регистре сведений стеллажи, Изм Номенклатура и два ресурса , один Стеллаж ТИП(номенклатура) и КОличество.
 разве не должно быть
 Изм
 Стеллаж - Тип(справочник.Номенклатура)
 Деталь- Тип(справочник.Номенклатура)
 Рес
 Количество

а там

Изм
 Номенклатура- Тип(справочник.Номенклатура)
 Рес
 Стеллаж - Тип(справочник.Номенклатура)
 Количество

Или я ошибаюсь

Это сделано для того чтобы одна и таже деталь не могла относиться к разным стелажам (уникальность деталей)

Название: 1.13
Отправлено: savotii от Август 12, 2010, 12:30:57 pm
хм может я не совсем понимаю структуру, я делал в номенклатуре поле принадлежность на ту же номенклатуру
Название: 1.13
Отправлено: napan от Август 12, 2010, 09:57:36 pm
Quote (savotii)
хм может я не совсем понимаю структуру, я делал в номенклатуре поле принадлежность на ту же номенклатуру

 Выложи базу посмотрю
Название: 1.13
Отправлено: tenikov от Август 17, 2010, 01:12:23 pm
Мой вариант. Прокомментируйте, плз.
Вложения:
tenikov_1.13.dt
Название: 1.13
Отправлено: aworld от Сентябрь 02, 2010, 09:28:37 pm
от она где спряталась новая методика проведения smile

Добавлено (02.09.2010, 21:28)
---------------------------------------------
tenikov, зачем использовать пакетный запрос? ты группируешь по складу, стеллажу, и деталям, но по складу и деталям и так сгруппированные данные в виртуальной таблице, а по стеллажам повторений быть не может по условию задачи. По моему прокатит и так:
 

Code
ВЫБРАТЬ
  ОстаткиНоменклатурыОстатки.Склад,
  СоставСтеллажей.Стеллаж,
  МИНИМУМ(ОстаткиНоменклатурыОстатки.КоличествоОстаток / СоставСтеллажей.Количество) КАК Количество
 ИЗ
  РегистрНакопления.ОстаткиНоменклатуры.Остатки(&Период, ) КАК ОстаткиНоменклатурыОстатки
   ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СоставСтеллажей КАК СоставСтеллажей
   ПО ОстаткиНоменклатурыОстатки.Номенклатура = СоставСтеллажей.Комплектующая

 СГРУППИРОВАТЬ ПО
  СоставСтеллажей.Стеллаж,
  ОстаткиНоменклатурыОстатки.Склад
Название: 1.13
Отправлено: User67 от Сентябрь 04, 2010, 07:30:24 pm
Доброго времени! Если я правильно понял в tenikov_1.13.dt( - не новая а старая методика проведения, по новой сразу пишутся данные в регистр, а затем проверяются минусовые остатки, или я что то путаю. Если не сложно прокомментируйте мою конфигурацию (подсистемы не настраивал).
Вложения:
user67_1_13.dt
Название: 1.13
Отправлено: SergTH000 от Сентябрь 05, 2010, 08:21:38 am
User67, Твою базу не смотрел, но aworld имел ввиду что в этой задаче ее как раз нужно применить (себестоимость то не надо считать)
Название: 1.13
Отправлено: User67 от Сентябрь 05, 2010, 02:30:47 pm
SergTH000, так я вроде о том и говорю, что в выложенном примере (tenikov_1.13.dt) реализована старая методика - очистка, проверка и формирование движений.
Название: 1.13
Отправлено: baksha_bni от Сентябрь 14, 2010, 08:38:10 am
Вот моя версия решения, все работает на ура) единственное только не понятно как в запросе или в СКД округлить число до целых, если кто знает подскажите??? это нужно в отчете Наличие стеллажей когда выбираем сколько целых стелажей у нас на складе
 
Code
МИНИМУМ(ОстаткиНоменклатурыОстатки.КоличествоОстаток / СоставСтеллажей.Количество) КАК Количество

 Получается что оно у нас как правило дробное...

Добавлено (14.09.2010, 08:36)
---------------------------------------------
упс, файл не прикрепился

Добавлено (14.09.2010, 08:38)
---------------------------------------------
1

Название: 1.13
Отправлено: baksha_bni от Сентябрь 14, 2010, 08:55:56 am
2
Вложения:
1.13_baksha_bni.dt
Название: 1.13
Отправлено: Dima1C от Сентябрь 14, 2010, 10:51:19 am
baksha_bni Почему в твоем решении закупаются целые стеллажи, в условии про это ни слова?
Название: 1.13
Отправлено: JIeHIH от Сентябрь 14, 2010, 10:58:40 am
ВЫРАЗИТЬ(ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) / ЕСТЬNULL(ВложенныйЗапрос.Количество, 0)-0.5 КАК ЧИСЛО(15, 0)))
Название: 1.13
Отправлено: baksha_bni от Сентябрь 14, 2010, 12:03:14 pm
JIeHIH, спасибо biggrin
 Dima1C, мне если честно этот вопрос в голову не приходил, но думаю что если мы можем закупать и стеллажи и комплектующие то это вряд ли будет ошибка...в противном случае можно поставить ограничение на закупку стеллажей...

Сейчас вспомнил что забыл поставить блокировку для изменения в расходной.....

Название: 1.13
Отправлено: JIeHIH от Сентябрь 14, 2010, 12:14:55 pm
Dima1C, а как можно закупить пол стеллажа??? что за бред, для этого и есть отдельные детали
Название: 1.13
Отправлено: Dima1C от Сентябрь 14, 2010, 01:03:08 pm
Quote (baksha_bni)
мне если честно этот вопрос в голову не приходил, но думаю что если мы можем закупать и стеллажи и комплектующие то это вряд ли будет ошибка...в противном случае можно поставить ограничение на закупку стеллажей...
ну лишняя работа может сыграть злую шутку и в плане дополнительного времени, дополнительных ошибок и прочее. Думал, я че то неправильно понял.

Добавлено (14.09.2010, 13:03)
---------------------------------------------

Quote (JIeHIH)
а как можно закупить пол стеллажа??? что за бред, для этого и есть отдельные детали

 В условии задачи написано "Закупка комплектующих отражается Приходной накладной" где хоть слово про закупку стеллажей?
Название: 1.13
Отправлено: bk от Сентябрь 21, 2010, 11:30:48 am
Выкладываю свое решение, покритикуйте пожалуйста.
Вложения:
1_13.dt
Название: 1.13
Отправлено: Zhora_Vlg от Октябрь 09, 2010, 08:04:38 pm
Я видимо все не так понял, но все равно поглядите
Вложения:
Zhora_Vlg-1.13.dt
Название: 1.13
Отправлено: SergTH000 от Октябрь 09, 2010, 08:28:36 pm
Всем советую, чтобы в приходной указывать только комплектующие:
 - сделать НЕ основную форму выбора спр Номенклатура
 - В реквизите с типом ДинамическийСпискок, сделать отбор: ВидНоменклатуры = Перечисления.ВидыНоменклатуры.Комплектующее
 - Назначить форму реквизиту ТЧ Приходной Номенклатура
 Мышкой все делается за 30 сек.
Название: 1.13
Отправлено: User_OKA от Октябрь 10, 2010, 06:50:40 pm
Тоже выложу
Вложения:
1_13_2.dt
Название: 1.13
Отправлено: sada от Октябрь 23, 2010, 01:03:33 am
Мой вариант Задачи 1.13
Вложения:
1Cv8_sada_1_13.dt
Название: 1.13
Отправлено: SergTH000 от Октябрь 23, 2010, 11:21:50 am
sada, А почему ты не используешь менеджер временных таблиц? В модуле расходной ты создаешь массив и заполняешь его номенклатурой, чтобы потом передать его как параметр в в вирт. таблицу остатков. Я на экзамене делал так:
 МВТ = Новый МенеджерВременныхТаблиц
 Запрос.МенеджерВременныхТаблиц = МВТ
 Далее ТЧ Расходной соединяем с РС, выбираем комплектующие, помещаем во временную таблицу. Потом выгружаем ее в РН Остатки.
 Когда тебе нужно будет проверить отрицательные остатки, то можно просто следующему запросу подключить тот же МВТ и писать Номенклатура В (ВЫБРАТЬ Расходная.Номенклатура ИЗ Расходная)
 Просто у меня еще таблица расходной нужна была и для бух (как и в большинстве задач) и преподу понравилось, что я использовал этот менеджер.
Название: 1.13
Отправлено: sada от Октябрь 23, 2010, 11:53:37 am
SergTH000, на этапе проверки я подумал, что надо по хорошему отбор по номенклатуре передать готовый, но т.к. склад один, он доступен из документа, а номенклатуру быстрее (в плане реализации) собрать в массив при пормировании набора записей, я решил лучше добавить 3 строки чем переделывать с менеджером. По производительности думаю разници нет.
 Так то я имею это ввиду, но сразу все сложно предвидеть когда торопишся, приходится заплатки ставить.
Название: 1.13
Отправлено: SergTH000 от Октябрь 23, 2010, 12:01:36 pm
Quote
РасходнаяНакладнаяСписокНоменклатуры.Ссылка.Склад КАК Склад
это зря через ссылку лучше писать &Cклад,причем во втором пакете, а потом установить параметр.
 По производительности да, я тоже думаю разницы нет, я другое имел ввиду: тебе эта таблица в бух может понадобиться, ну я просто посоветовал, здесь нет ошибки.
Название: 1.13
Отправлено: ut2k5 от Октябрь 26, 2010, 10:10:53 am
SergTH000, Мышкой все делается за 30 сек. Не верно! есть решение за 3 сек.: правда для этого я не использую перечисление, а просто реквизит типа Булево у номенклатуры "Стелаж" (ну по крайней мере услуги мы так указывали всю жизнь), при этом мы можем в реквизите номенклатура табличной части документа приходная установить вот так

Добавлено (26.10.2010, 09:31)
---------------------------------------------
да и в регистре сведений тоже можно указать тем же методом, что деталь - это только те позиции у которых "Нет", а стелажи - "Да"....

Добавлено (26.10.2010, 10:07)
---------------------------------------------
sada, в старом задачнике явно указано "использовать временную таблицу", так что может SergTH000 отчасти и прав, но вот почему то в новом задачнике это условие убрали....

Добавлено (26.10.2010, 10:10)
---------------------------------------------
а еще заметил, что в старом задачнике "себестоимость номенклатуры рассчитывается как средняя по складу", а в новом ее учитывать не надо, значит точно нужно по новой методике...


Вложения:
s1419809.jpg
Название: 1.13
Отправлено: SergTH000 от Октябрь 26, 2010, 10:38:00 am
ut2k5, Я думаю в каркасной не зря сделали Перечисление ВидыНоменклатуры(уже есть значения Товар, Услуга по-моему). Можно делать и булево, суть не в этом, мой совет был про неосновные формы, которые решают проблему выбора например только комплектующего или комплекта.
 Про новую методику согласен у sada как раз она применяется.
Название: 1.13
Отправлено: ut2k5 от Октябрь 26, 2010, 11:52:51 am
SergTH000, а я и не говорю что зря, можно было сделать тем же самым методом, только с указанием не "Да" или "нет" а предопределенного значения перечисления, что сути не меняет..., но я ее победил, если не лень посмотри
 там пару бантиков, ну типа при нехватки деталей указывает номер строки в котором ее не хватает, ну и ест-но по твоей подсказке с МенеджеромВТ, за что тебе спасибо...
Вложения:
Quest_1_13.dt
Название: 1.13
Отправлено: SergTH000 от Октябрь 26, 2010, 11:43:53 pm
ut2k5,
 1.Блокировать для изменения нужно не только при оперативном режиме. Вообще на экзамене не проверяется режим проведения его можно вообще отключить у всех документов.
 2. Мне не нравится запрос через объединение, оно лишнее.Используй ВЫБОР и соединение с РС. Т.е. ты выбираешь номенклатуру из документа если НЕ Номенклатура.Стелаж и номенклатуру из РС, если Номеклатура.Стелаж. Это я так решал=) У sada тоже хороший вариант запроса, посмотри его, он даже лучше наверное=). Тоже самое с количчеством. Кстати если количество NULL лучше 1 выбирать по-моему а не 0.
 3. По поводу контроля остатков и новой методике. Я разобрался с этим благодаря Dhm, а ему сам Белоусов объяснял=)
 Еще раз режим проведения не проверятся, забейте на это. Когда при новой методике получаем остатки параметр момент времени = НовыйГраница(МоментВремени(), ВидГраницы.Включая). Все, только что записанные движения увидим. Конечно, ты можешь объяснять экзаменатору, что при неоперативном проведении нет смысла проверять остатки, у тебя моментвремени вообще неопределено и так быстрее работать будет и т.д. Попробуй, может и прокатит. Но еще раз говорю на курсах в 1с показывают именно такую новую методику. Да кстати у sada тоже остатки на моментвремени неопределено...это прокатит только при оперативном проведении.

И вообще, почему при старой методике, никто не разделяет режимы проведения документов, а при новой их нужно разделять? Если на экзамене еще описывать разные алгоритмы проведения в зависимости от режима....все итак знают, как не хватает времени...

Название: 1.13
Отправлено: Andreich от Октябрь 27, 2010, 12:06:11 pm
Посмотрел все решения. Есть одно но. Напрмер есть 2 склада. На одном есть все комплектующие для какого - либо стеллажа. На втором есть только часть номенклатурных позиций для этого стеллажа (остальных, например болтов, совсем нет на этом складе). Итог? Наличие болтов совсем не будет учитываться. То есть стеллажи будут собираться без болтов. Это хорошо, когда хотя бы по одному комплектующему из состава стеллажа есть на складе. Тогда всё в порядке.

Добавлено (27.10.2010, 12:06)
---------------------------------------------
Это применительно к отчету! То есть он будет выводить недостоверную информацию.

Название: 1.13
Отправлено: SergTH000 от Октябрь 27, 2010, 12:21:31 pm
Andreich, А в чем проблема? Отчет должен показывать наличие целых стелажей на складе, в твоем варианте целого стелажа нет ни на одном складе.

Добавлено (27.10.2010, 12:21)
---------------------------------------------

Quote
ВЫБРАТЬ
    ОстаткиНоменклатурыОстатки.Склад,
    КомплектующиеСтелажей.Стелаж,
    МИНИМУМ(ВЫРАЗИТЬ(ЕСТЬNULL(ОстаткиНоменклатурыОстатки.Количеств оОстаток, 0) / КомплектующиеСтелажей.Количество - 0.5 КАК ЧИСЛО(15, 0))) КАК Поле1
 ИЗ
    РегистрСведений.КомплектующиеСтелажей КАК КомплектующиеСтелажей
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки КАК ОстаткиНоменклатурыОстатки
       ПО КомплектующиеСтелажей.Комплектующее = ОстаткиНоменклатурыОстатки.Номенклатура

СГРУППИРОВАТЬ ПО
    ОстаткиНоменклатурыОстатки.Склад,
    КомплектующиеСтелажей.Стелаж

У меня такой запрос. Соединяем все поля из РС Комплектующие с Остатками комплектующих, КоличествоОстаток делим на количество в стелаже получаем сколько целых стелажей образовали бы детали на складе. Далее группируем по стелажу и берем минимальное количество.

Название: 1.13
Отправлено: sada от Октябрь 27, 2010, 01:49:19 pm
Andreich, ты прав.
 SergTH000, в таком варианте тоже не будет работать, т.к. если деталь отсутствут на складе, она не будет учавствовать в соединении по этому складу, соответсвенно и в группировке МИНИМУМ ее значения тоже не будет.

Исправленый отчет прилагаю


Вложения:
113_.erf
Название: 1.13
Отправлено: SergTH000 от Октябрь 27, 2010, 03:18:04 pm
Quote
SergTH000, в таком варианте тоже не будет работать, т.к. если деталь отсутствут на складе, она не будет учавствовать в соединении по этому складу, соответсвенно и в группировке МИНИМУМ ее значения тоже не будет.

ИЗ
 РегистрСведений.КомплектующиеСтелажей КАК КомплектующиеСтелажей
 ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки КАК ОстаткиНоменклатурыОстатки
 ПО КомплектующиеСтелажей.Комплектующее = ОстаткиНоменклатурыОстатки.Номенклатура

Все поля из РС, если детали нет на складе, присоединится NULL, в формуле NULL приводим к 0, минимальное значение 0

Название: 1.13
Отправлено: sada от Октябрь 27, 2010, 03:54:11 pm
SergTH000,

Хорошо, заведи новый склад, оприходуй на него одну любую деталь из любого комплекта и сформируй отчет. Если нормально отработает, выложи базу посмотреть если не сложно.

Я просто не могу понять как левое соединение может добавить строки по отсутствующим складам.

Название: 1.13
Отправлено: Andreich от Октябрь 27, 2010, 04:28:04 pm
Сейчас закину отчет. Сегодня на работе делал. Вроде раз 5 задачу прорешал, особо не вдумывался. А тут вдруг попробовал придумать исключительную ситуацию и она, надо сказать, очень быстро придумалась.

Quote (SergTH000)
Все поля из РС, если детали нет на складе, присоединится NULL, в формуле NULL приводим к 0, минимальное значение 0

Вот работающий запрос. Может конечно есть куда его оптимизировать, но сходу сделал только такой:

Code
ВЫБРАТЬ
  СоставИзделий.Изделие КАК Изделие,
  СоставИзделий.Комплектующее,
  СоставИзделий.Количество
 ПОМЕСТИТЬ ВТДанныеОбИзделиях
 ИЗ
  РегистрСведений.СоставИзделий КАК СоставИзделий
 ;

 ////////////////////////////////////////////////////////////////////////////////
 ВЫБРАТЬ
  ОстаткиНоменклатурыОстатки.Номенклатура,
  ОстаткиНоменклатурыОстатки.Склад,
  ОстаткиНоменклатурыОстатки.КоличествоОстаток КАК КоличествоОстаток
 ПОМЕСТИТЬ ВТОстатки
 ИЗ
  РегистрНакопления.ОстаткиНоменклатуры.Остатки(
    ,
    Номенклатура В
     (ВЫБРАТЬ
      ВТДанныеОбИзделиях.Комплектующее
     ИЗ
      ВТДанныеОбИзделиях)) КАК ОстаткиНоменклатурыОстатки
 ;

 ////////////////////////////////////////////////////////////////////////////////
 ВЫБРАТЬ
  ВТОстатки.Склад,
  ВТДанныеОбИзделиях.Изделие,
  ВТДанныеОбИзделиях.Комплектующее,
  МАКСИМУМ(ВТДанныеОбИзделиях.Количество) КАК Количество
 ПОМЕСТИТЬ ВТИзделияНаСкладах
 ИЗ
  ВТДанныеОбИзделиях КАК ВТДанныеОбИзделиях
   ЛЕВОЕ СОЕДИНЕНИЕ ВТОстатки КАК ВТОстатки
   ПО (ИСТИНА)

 СГРУППИРОВАТЬ ПО
  ВТОстатки.Склад,
  ВТДанныеОбИзделиях.Изделие,
  ВТДанныеОбИзделиях.Комплектующее
 ;

 ////////////////////////////////////////////////////////////////////////////////
 ВЫБРАТЬ
  ВТИзделияНаСкладах.Склад КАК Склад,
  ВТИзделияНаСкладах.Изделие,
  МИНИМУМ(ВЫРАЗИТЬ(ЕСТЬNULL(ВТОстатки.КоличествоОстаток, 0) / ВТИзделияНаСкладах.Количество - 0.5 КАК ЧИСЛО(15, 0))) КАК КоличествоСтеллажей
 ПОМЕСТИТЬ ВТИтоговыеДанные
 ИЗ
  ВТИзделияНаСкладах КАК ВТИзделияНаСкладах
   ЛЕВОЕ СОЕДИНЕНИЕ ВТОстатки КАК ВТОстатки
   ПО ВТИзделияНаСкладах.Склад = ВТОстатки.Склад
    И ВТИзделияНаСкладах.Комплектующее = ВТОстатки.Номенклатура

 СГРУППИРОВАТЬ ПО
  ВТИзделияНаСкладах.Склад,
  ВТИзделияНаСкладах.Изделие
 ;

 ////////////////////////////////////////////////////////////////////////////////
 ВЫБРАТЬ
  ВТИтоговыеДанные.Склад,
  ВТИтоговыеДанные.Изделие,
  ВТИтоговыеДанные.КоличествоСтеллажей
 ИЗ
  ВТИтоговыеДанные КАК ВТИтоговыеДанные
 ГДЕ
  ВТИтоговыеДанные.КоличествоСтеллажей > 0

Добавлено (27.10.2010, 16:28)
---------------------------------------------
sada, Короче нужно сначала соединить Спецификации изделий со складами. Ну а потом привязать к таблице остатков как раньше.

Название: 1.13
Отправлено: sada от Октябрь 27, 2010, 04:36:20 pm
Andreich, Посмотри мой отчет , он чуть выше в 35-ом сообщении :)
 я просто сосчитал количество уникальных деталей для стелажа, и тоже количество мотрю в группировке по остаткам, если не соходся то откидываю эти строки :)
Название: 1.13
Отправлено: Andreich от Октябрь 27, 2010, 04:48:34 pm
Quote (sada)
Посмотри мой отчет , он чуть выше в 35-ом сообщении smile

 Глянул, работает. cool
Название: 1.13
Отправлено: Ezhilo от Октябрь 30, 2010, 12:55:30 am
Не могу не поделиться своим вариантом.
 Для тех кто еще не делал перечислю основные пункты для решения данной задачи
 1. Деталь - Измерение. Стеллаж - ресурс.
 2. Т.к себестоимость вести не требуется можно в които веки воспользоваться "новым методом" проведения( списываем - затем проверяем)
 3. Отчет по стеллажам - ппц. Нужно учитывать что некоторые детали никогда не приходовались на склад и левым соединением с регистром остатков не отделаться. Я так же как и sada, сначала считал количество различных деталей в стеллаже и если не сходились со сгруппированными по регистру - удалял.
Вложения:
1.13Ezhilo.dt
Название: 1.13
Отправлено: Andreich от Октябрь 30, 2010, 12:29:26 pm
Quote (Ezhilo)
Я так же как и sada, сначала считал количество различных деталей в стеллаже и если не сходились со сгруппированными по регистру - удалял.

 Наверное, самый оптимальный способ отбора для решения отчета в этой задаче.
Название: 1.13
Отправлено: YAGolova от Октябрь 31, 2010, 11:42:07 am
Всем привет! Посмотрел тут как решают эту задачу и решил выложить свой вариант. очень бы хотелось, чтобы посмотрели, покритиковали! особенно интересуют 2 вопроса:
 1. Почему никто не использовал подчиненный справочник для деталей (чем это плохо)
 2. И насколько ужасно то, что я указываю состав стеллажа в его (стеллажа) табличной части....
Вложения:
8509340.dt
Название: 1.13
Отправлено: sada от Октябрь 31, 2010, 12:13:21 pm
YAGolova, мое мнение чем лучше РС:

- нет составных типов;
 - назначение справочников не меняется (номенклатура для учета товара), захотим торговать бутербродами сможем сразу торговать.
 - в случае если оператор ввел случайно гайки от одного стеллажа в состав другого (ошибся) и оприходвал их то, это можно исправить одним движением.
 - может мы захотим для общего списка деталей использовать иерархию по производителю, такой фокус с подчиненными не пройдет :).

Название: 1.13
Отправлено: YAGolova от Октябрь 31, 2010, 12:44:55 pm
sada, а такие (больше пользовательские) прелести на экзамене играют роль???
Название: 1.13
Отправлено: sada от Октябрь 31, 2010, 01:03:53 pm
YAGolova, незнаю, составной тип не пользовательская прелесть, ладно хоть в регистре тип один.
 все равно вопрос задать могу почему именно на подчиненном справочнике, а так небудет вопросов :)
Название: 1.13
Отправлено: marku от Октябрь 31, 2010, 08:43:03 pm
Вот как я решал
Вложения:
marku_1.13_1Cv8.dt
Название: 1.13
Отправлено: svbel85 от Декабрь 05, 2010, 04:32:30 am
а правильно я понимаю, что при новой методике проведения, только в оперативном режиме необходимо ругатся и не проводить документ, в неоперотивном, проводить даже в минус??
Название: 1.13
Отправлено: SINISTER_STAR от Декабрь 11, 2010, 12:45:32 pm
Вот мой вариант с использованием блокировок и отчетами; уникальность деталей обеспечиваеться вторым подчиненым справочником Детали - мне показалось это более правильным нежели через регистр сведений.
Вложения:
STAR_1.13.dt
Название: 1.13
Отправлено: unknown181538 от Январь 05, 2011, 05:51:28 am
Мне такая на экзамене попалась. Там еще требуется, чтобы в форме списка номенклатуры был виден состав комплектующих стеллажей. У меня не получилось. Возможно, потому, что делал через табличную часть.
Название: 1.13
Отправлено: SINISTER_STAR от Январь 05, 2011, 06:31:34 pm
unknown181538, динамическим списком надо это делать, 3 минуты уйдет.
Название: 1.13
Отправлено: unknown181538 от Январь 07, 2011, 03:40:20 am
Это понятно, но список стал ругаться на какой-то параметр &ЭтоГруппа, которого я не задавал...
 Да и не получилось сходу правильно нужный параметр задать... но с этим разберусь...
 Те решения по отчету, которые видел в этой ветке, показались мне слишком сложными.
 Если ничего не забыл, можно просто собрать в одном запросе регистр сведений, справа к нему присоединить остатки, и рассчитать на какое кол-во стеллажей хватает каждой детали.
 Вторым запросом выбрать количество, и посчитать минимумы, группируя по стеллажам.
Название: 1.13
Отправлено: AndreiPiter от Февраль 01, 2011, 08:30:33 pm
моё решение
Вложения:
AP_1.13.dt
Название: 1.13
Отправлено: hapcher от Февраль 07, 2011, 11:22:29 pm
Я для отчета получала таблицу вида:
 Склад1 Стеллаж1 Деталь1 Кол1
 Склад1 Стеллаж1 Деталь2 Кол2
 ...
 СкладN СтеллажN ДетальN КолN
 А потом привязывала к ней остатки на складе. По-моему, такая же идея была и у Andreich, только я обошлась одним запросом без временных таблиц.
Вложения:
_1_13.dt
Название: 1.13
Отправлено: Danan от Апрель 14, 2011, 04:30:40 pm
Решая задачу попутно просматривал ветку форума, в своем решении применил следующее:
 1) Солидарен с sada, что целесообразно при контроле остатков по новой методике передавать массив с номенклатурой. Однако я использовал такой код:
 
Code
Движения.ОстаткиНоменклатуры.ВыгрузитьКолонку("Номенклатура")

 2) Текст запроса был составлен на основе отчета AndreiPiter, и постов пользователей baksha_bni и JIeHIH.
Вложения:
Task_1_13.dt
Название: 1.13
Отправлено: Lukashov_as от Май 12, 2011, 10:28:33 pm
Вот что то получилось:)))
Вложения:
1_13_lukashov.dt
Название: 1.13
Отправлено: DoctorRoza от Июль 15, 2011, 07:09:05 pm
sada, посмотрел Ваше решение отчета по стеллажам. Считаю, что его нужно немного уточнить. Если у нас по приходной пришло деталей ровно на, например, 2 стеллажа. Если делаем расход в 1 любой детали, то в отчете количество стеллажей должно уменьшиться на единицу! У Вас же количество стеллаей не меняется!
 //////////////////////////////////////////////
 Например, мое, топорное уточнение:
 ВЫБРАТЬ
    Комплектация.Стеллаж КАК Стеллаж,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Комплектация.Количество) КАК КолРазличныхТиповДеталейВСтеллаже
 ПОМЕСТИТЬ КоличествоДеталейВСтеллаже
 ИЗ
    РегистрСведений.Комплектация КАК Комплектация

 СГРУППИРОВАТЬ ПО
    Комплектация.Стеллаж
 ;

 ////////////////////////////////////////////////////////////////////////////////
 ВЫБРАТЬ
    ОстаткиНоменклатурыОстатки.Склад,
    Комплектация.Стеллаж КАК Стеллаж,
    МИНИМУМ(ОстаткиНоменклатурыОстатки.КоличествоОстаток / Комплектация.Количество) КАК КоличествоЦелыхОтношений,
    СУММА(1) КАК ЧастейВНаличии,
    КоличествоДеталейВСтеллаже.КолРазличныхТиповДеталейВСтеллаже
 ПОМЕСТИТЬ Итого
 ИЗ
    РегистрНакопления.ОстаткиНоменклатуры.Остатки КАК ОстаткиНоменклатурыОстатки
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Комплектация КАК Комплектация
          ЛЕВОЕ СОЕДИНЕНИЕ КоличествоДеталейВСтеллаже КАК КоличествоДеталейВСтеллаже
          ПО Комплектация.Стеллаж = КоличествоДеталейВСтеллаже.Стеллаж
       ПО ОстаткиНоменклатурыОстатки.Номенклатура = Комплектация.Деталь
 ГДЕ
    (НЕ Комплектация.Стеллаж ЕСТЬ NULL )

 СГРУППИРОВАТЬ ПО
    Комплектация.Стеллаж,
    ОстаткиНоменклатурыОстатки.Склад,
    КоличествоДеталейВСтеллаже.КолРазличныхТиповДеталейВСтеллаже
 ;

 ////////////////////////////////////////////////////////////////////////////////
 ВЫБРАТЬ
    Итого.Склад,
    Итого.Стеллаж,
    Итого.КоличествоЦелыхОтношений,
    ВЫРАЗИТЬ(Итого.КоличествоЦелыхОтношений КАК ЧИСЛО(10, 0)) КАК ОкругленноеЗначение,
    ВЫБОР
       КОГДА (ВЫРАЗИТЬ(Итого.КоличествоЦелыхОтношений КАК ЧИСЛО(10, 0))) - Итого.КоличествоЦелыхОтношений > 0
          ТОГДА (ВЫРАЗИТЬ(Итого.КоличествоЦелыхОтношений КАК ЧИСЛО(10, 0))) - 1
       КОГДА (ВЫРАЗИТЬ(Итого.КоличествоЦелыхОтношений КАК ЧИСЛО(10, 0))) - Итого.КоличествоЦелыхОтношений <= 0
          ТОГДА ВЫРАЗИТЬ(Итого.КоличествоЦелыхОтношений КАК ЧИСЛО(10, 0))
    КОНЕЦ КАК ОкруглЗнач
 ИЗ
    Итого КАК Итого
 ГДЕ
    Итого.КолРазличныхТиповДеталейВСтеллаже = Итого.ЧастейВНаличии
 ////////////////////////////////////////////////
 Если есть способ округлять в запросе, принемая, что 1.5 -> 1, а не принятое в математике 1.5 -> 2, то можно упростить запрос. Но!! Мне такое не известно .. Может что Вы скажете!
 ///////////////////////////////////////////////
 Ну и .. собственно говоря .. мое решение
Вложения:
DoctorRoza_1_13.dt
Название: 1.13
Отправлено: sada от Июль 22, 2011, 09:04:40 pm
DoctorRoza,

 Согласен, но как округлить пока не придумал :)
Название: 1.13
Отправлено: SergTH000 от Июль 22, 2011, 10:17:18 pm
sada, DoctorRoza,
 
Quote
Если есть способ округлять в запросе, принемая, что 1.5 -> 1, а не принятое в математике 1.5 -> 2


 ВЫРАЗИТЬ((КолвоСтелажей - 0,5) КАК Число(10,0))
Название: 1.13
Отправлено: sada от Июль 23, 2011, 07:55:47 am
SergTH000, то что надо, только 0.5 через точку :)
 ВЫРАЗИТЬ((КолвоСтелажей - 0.5) КАК Число(10,0))
Название: 1.13
Отправлено: SergTH000 от Июль 23, 2011, 02:19:08 pm
sada, biggrin
Название: 1.13
Отправлено: gr0ck от Июль 25, 2011, 11:47:01 am
sada,
 Объясни свой отчетик confused
 Точнее первый запрос в пакете)
 
Code


 ВЫБРАТЬ
  СУММА(1) КАК Количество,
  Комплекты.Стелаж
 ПОМЕСТИТЬ КолСостЧастей
 ИЗ
  РегистрСведений.Комплекты КАК Комплекты

 СГРУППИРОВАТЬ ПО
  Комплекты.Стелаж
 

Добавлено (25.07.2011, 11:47)
---------------------------------------------
Все, сам разобрался))) Блин, запросил не такой большой, но сложный... Сам бы ни в жизнь не додумался...

Название: 1.13
Отправлено: vvvlad85 от Июль 31, 2011, 02:21:00 pm
Подскажите кто сдавал. В задании сказано что поступление деталей происхоит документом "Приходная накладная". А стоит учитывать поступление стеллажей, в плане отчетов на количество стеллажей и деталей. Или считать что стеллажи не поступаю а только собираются.
Название: 1.13
Отправлено: gr0ck от Август 01, 2011, 03:07:56 pm
vvvlad85, Нет, в задании точно написано, что закупаются только комплектующие. Сейчас нет задачника под рукой, но вроде там точно так. За усложнение задачи балов не накинут, так что стараться не стоит
Название: 1.13
Отправлено: Незнайка от Август 01, 2011, 05:55:57 pm
День добрый!

 Просмотрела некоторые решения... Скажите, а зачем в номенклатуре в табличной части стеллажа указывать список его деталей?
 Этот же список прекрасненько хранится и в РС Комплектация...
Название: 1.13
Отправлено: kow1976 от Август 08, 2011, 08:47:26 pm
Такой вариант решения. Возможно, у кого ни будь есть замечания?
Вложения:
kow19761.13.dt
Название: 1.13
Отправлено: Saipl от Август 31, 2011, 03:48:47 pm
Стелаж - ЭтоГруппа и отчеты легче формировать и выборки делать. Мое решение.
Вложения:
Saipl_1.13.dt
Название: 1.13
Отправлено: Данияр от Сентябрь 16, 2011, 12:14:14 pm
Мое решение.
Вложения:
Daniyar_1_13.dt
Название: 1.13
Отправлено: van_za от Сентябрь 25, 2011, 08:25:13 pm
Saipl Saipl_1.13.dt(156Kb)

 А судьи кто :)!!!

 --------------------------------------
 РасходнаяНакладная
 1.
 Ошибка в запросе.
 СУММА(РасходнаяНакладнаяСписокНоменклатуры.Количество * РасходнаяНакладнаяСписокНоменклатуры.Количество)
 видимо нужно было добавить реквизит "количество" в справочник номенклатура.

 2.
 Проведение документа нужно было делать новым способом (так как не требуется рассчитывать себестоимость)
 в следсвии чего выбран неправильный способ блокировки

 Отчет НаличиеСтеллажей
 --------------------------------------------
 ВЫБРАТЬ
    ОстаткиНоменклатурыОстатки.Склад,
    НоменклатураСоставКомплектующих.Ссылка КАК Стеллаж,
    МИНИМУМ(ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) / НоменклатураСоставКомплектующих.Количество) КАК КоличествоСтеллажей
 ИЗ
    Справочник.Номенклатура.СоставКомплектующих КАК НоменклатураСоставКомплектующих
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки КАК ОстаткиНоменклатурыОстатки
       ПО НоменклатураСоставКомплектующих.Деталь = ОстаткиНоменклатурыОстатки.Номенклатура
 ГДЕ
    ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) / НоменклатураСоставКомплектующих.Количество > 0

 СГРУППИРОВАТЬ ПО
    НоменклатураСоставКомплектующих.Ссылка,
    ОстаткиНоменклатурыОстатки.Склад

 Запрос не вернет адекватное количество стелажей по двум причинам
 для нулевых остатков склад будет NuLL и более мелкое замечание то что количество не должно быть дробным

Добавлено (25.09.2011, 20:25)
---------------------------------------------
Saipl,
 Saipl Saipl_1.13.dt(156Kb)

 А судьи кто :)!!!

 --------------------------------------
 РасходнаяНакладная
 1.
 Ошибка в запросе.
 СУММА(РасходнаяНакладнаяСписокНоменклатуры.Количество * РасходнаяНакладнаяСписокНоменклатуры.Количество)
 видимо нужно было добавить реквизит "количество" в справочник номенклатура.

 2.
 Проведение документа нужно было делать новым способом (так как не требуется рассчитывать себестоимость)
 в следсвии чего выбран неправильный способ блокировки

 Отчет НаличиеСтеллажей
 --------------------------------------------
 ВЫБРАТЬ
 ОстаткиНоменклатурыОстатки.Склад,
 НоменклатураСоставКомплектующих.Ссылка КАК Стеллаж,
 МИНИМУМ(ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) / НоменклатураСоставКомплектующих.Количество) КАК КоличествоСтеллажей
 ИЗ
 Справочник.Номенклатура.СоставКомплектующих КАК НоменклатураСоставКомплектующих
 ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки КАК ОстаткиНоменклатурыОстатки
 ПО НоменклатураСоставКомплектующих.Деталь = ОстаткиНоменклатурыОстатки.Номенклатура
 ГДЕ
 ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) / НоменклатураСоставКомплектующих.Количество > 0

 СГРУППИРОВАТЬ ПО
 НоменклатураСоставКомплектующих.Ссылка,
 ОстаткиНоменклатурыОстатки.Склад

 Запрос не вернет адекватное количество стелажей по двум причинам
 для нулевых остатков склад будет NuLL и более мелкое замечание то что количество не должно быть дробным

Название: 1.13
Отправлено: van_za от Сентябрь 25, 2011, 08:35:51 pm
Критика приветствуется !!!
Вложения:
1Cv8_van_za_1_1.dt
Название: 1.13
Отправлено: Ramona от Октябрь 04, 2011, 09:26:44 am
Вот простенькое решение, поначалу казалось что задача вообще страшная, но как выяснилось все вообще проще простого, ни одного сложного запроса. Единственное с чем до конца не разобрался, скажите пожалуйста если документы проводятся неоперативно, нужно ли использовать блокировку (собственно смущает вот http://v8.1c.ru/overview/datalockcontrolpic1.htm). Я с этими блокировками вообще запутался ((, буду рад если посмотрите решение, на мой взгляд лаконично и работает верно.
Вложения:
2792077.dt
Название: 1.13
Отправлено: nodalt от Ноябрь 06, 2011, 04:22:21 pm
На первый взгляд можно сказать, что обработка проведения в расходной накладной не соответствует новой методике контроля отрицательных остатков при проведении документов в системе 1С:Предприятие 8.2.
 В данном случае (т.к. нет расчета себестоимости), правильным будет сначала списать номенклатуру, а затем проверить не ушли ли остатки в минус. И только потом сообщать о нехватке товара и отказываться от проведения.
Название: 1.13
Отправлено: nodalt от Ноябрь 06, 2011, 04:23:02 pm
Вот пример моего решения этой задачи
Вложения:
nodalt_1_13.dt
Название: 1.13
Отправлено: kow1976 от Ноябрь 06, 2011, 08:26:23 pm
nodalt,
 Посмотрел ваше решение, есть повод обсудить
 1 Используете в качестве параметра массив. На мой взгляд интересней менеджер временных таблиц(можно проиндексировать поля, и не нужно лишнее действие по созданию и заполнению массива)
 2 отключаете проверку на отрицательные остатки при неоперативном проведении
 3 Отчет о количестве стеллажей выдает отрицательное значение -1шт
Название: 1.13
Отправлено: nodalt от Ноябрь 06, 2011, 11:54:53 pm
kow1976, спасибо за комментарии.
 1. По поводу индексов, пожалуй согласен, не использовал, потому что мало знаком с ними - буду изучать.
 2. При неоперативном проведении, на сколько я знаю, проверка не нужна. "Практическое пособие разработчика 8.2", стр. 431, 3-й абзац. "При неоперативном проведении документов не имеет смысла производить целый ряд проверок, в частности контроль остатков." Павел Чистов тоже это пропагандировал. Или я что-то неправильно понял?
 3. Согласен, отчет корявый, буду исправлять.
Название: 1.13
Отправлено: kow1976 от Ноябрь 07, 2011, 05:15:53 am
nodalt,
 2 В этом случае должен быть дополнительный механизм контроля остатков(регламентный документ). А проводить в минус по количеству товар без возможности это отследить и исправить как то не хорошо.
Название: 1.13
Отправлено: SergTH000 от Ноябрь 07, 2011, 06:16:01 am
kow1976, nodalt, http://devtrainingforum.v8.1c.ru/forum/thread.jsp?id=569920#569920
Название: 1.13
Отправлено: ErrorPro от Ноябрь 17, 2011, 08:50:58 pm
Всем добрый день, прошу глянуть мое решение и прокомментировать.
Вложения:
9544606.dt
Название: 1.13
Отправлено: kow1976 от Ноябрь 18, 2011, 09:25:48 am
ErrorPro,

 Все хорошо работает
 Но я все-таки нашел, как завалить ваше решение .
 У меня в решении такая же ошибка
 Если в комплекте выбрать стеллаж - стеллаж то они перестанут продаваться. Нужно устанавливать отборы в РС.
Вложения:
s3749687.jpg
Название: 1.13
Отправлено: ErrorPro от Ноябрь 18, 2011, 11:26:26 am
kow1976 Спасибо =) Нужно было настроить парамерты выбора измерения, Отбор.Стеллаж(Ложь), опять не внимательность моя smile
Название: 1.13
Отправлено: kow1976 от Ноябрь 18, 2011, 01:04:14 pm
Я думаю к таким мелочам придираться не должны
Название: 1.13
Отправлено: chilli от Ноябрь 28, 2011, 09:24:35 pm
Code
|ВЫБРАТЬ
    |    ЕСТЬNULL(Комплекты.Комплектуюшее, ТЧ.Номенклатура) КАК Номенклатура,
    |    СУММА(ВЫБОР
    |   КОГДА Комплекты.Количество ЕСТЬ NULL    
    |    ТОГДА ТЧ.Количество
    |   ИНАЧЕ Комплекты.Количество * ТЧ.Количество
    |  КОНЕЦ) КАК Требуется
    |ИЗ
    |    ТЧ КАК ТЧ
    |  ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Комплекты КАК Комплекты
    |  ПО ТЧ.Номенклатура = Комплекты.Стелаж
    |
    |СГРУППИРОВАТЬ ПО
    |    ЕСТЬNULL(Комплекты.Комплектуюшее, ТЧ.Номенклатура)";
 

 буксую, что делает эта строчка?
 
Code
ЕСТЬNULL(Комплекты.Комплектуюшее, ТЧ.Номенклатура) КАК Номенклатура,
 

 ...... все, понял
Название: 1.13
Отправлено: kol_118 от Декабрь 06, 2011, 07:12:45 pm
вот мое решение,
 с помощью подчиненного справочника

Вложения:
kol118_task_1_1.dt
Название: 1.13
Отправлено: Sergey-K от Декабрь 10, 2011, 04:36:18 pm
Вариант с попыткой объединить все прочитанное ранее по этой задаче
Вложения:
__1_13.dt
Название: 1.13
Отправлено: sergey7 от Декабрь 25, 2011, 03:56:22 pm
Моё решение.
 Основные моменты:
 * контроль остатков по новой методике
 * отчет по остаткам стеллажей корректно работает, когда одни детали стеллажа на одном складе, а другие - на другом.
Вложения:
7_1-13.dt
Название: 1.13
Отправлено: SerF от Январь 15, 2012, 09:36:34 pm
Как говорил unknown181538,
 
Quote
Мне такая на экзамене попалась. Там еще требуется, чтобы в форме списка номенклатуры был виден состав комплектующих стеллажей.

 у меня вот тоже не получилось, не нахожу в этой ветке базы, в которой можно увидеть как это работает, может кто выложит???

 И еще вопрос. Смотрел несколько решений на основе подчиненных справочников - в основном сделано через создание новых справочников Стеллажи и Детали. Почему не провести аналогию с номенклатурой и спецификацией к ней. В итоге два справочника Номенклатура и Спецификации. И стеллажи и детали - элементы спр. Номенклатура, спр. Спецификации подчинен Номенклатуре и содержит два реквизита Деталь (тип спр. Номенклатура) и Количество. Приходуем по условию задачи только комплектующие, расходуем тоже их - и все это элементы спр. Номенклатура, а значит составной тип в Расходной отпадает.
 Покритикуйте такой вариант.
Название: 1.13
Отправлено: kow1976 от Январь 15, 2012, 10:07:55 pm
SerF,
 Интересно было бы посмотреть реализацию вашего предложения в решении. Выкладывайте обсудим.
Название: 1.13
Отправлено: SerF от Январь 16, 2012, 01:34:46 am
kow1976, конечно выложу тут, осталось доделать немного.
Название: 1.13
Отправлено: SerF от Январь 17, 2012, 09:41:38 pm
Мой вариант решения задачи.
 Сделал через подчиненный справочник, как предлагал в сообщении выше.
 Когда на экзамене попалась эта задача, в ней плюс ко всему нужно было сделать в форме элемента Стеллаж вывод списка деталей, к этому стеллажу относящихся. Также нужно было списывать себестоимость по средней по складу. Учел это в своем решении.
 С отчетом пришлось подумать, особенно в той ситуации, когда какая-либо из деталей никогда не приходовалась. Как это обойти уже предлагали sada и Andreich. Сделал по аналогии.
 Второго отчета в разрезе деталей в билете не было, его не стал добавлять.

 Буду рад любым замечаниям.
Вложения:
SerF_1.13.dt
Название: 1.13
Отправлено: kow1976 от Январь 18, 2012, 02:47:59 am
SerF,
 Не нашел как у вас реализовано требование "Необходимо обеспечить уникальность деталей, т.е. одна и та же деталь не может относиться к разным стеллажам" или в экзаменационной такого нет?
 Есть сомнения по блокировкам

 Движения.ОстаткиНоменклатуры.БлокироватьДляИзменения = Истина;

 Должно блокировать только те измерения по которым были движения. А движения по измерениям у нас появляются в конце транзакции.
Название: 1.13
Отправлено: SerF от Январь 18, 2012, 10:52:08 pm
kow1976, спасибо за отзыв.
 В экзаменационной есть такое условие. Вопрос только в том для чего оно - просто для упрощения условия задачи, чтобы не отслеживать какая деталь к какому стеллажу относится и не учитывать это в решении... или для выполнения как обязательного требования в условии.
 С блокировками - не спорю, еще только изучаю этот вопрос. Буду учитывать это в решениях.
Название: 1.13
Отправлено: tan1c от Январь 26, 2012, 02:03:31 am
ИМХО фраза "необходимо обеспечить уникальность" намек на регистр сведений, и она (фраза) мне не нравится :D, тоже хотел сначала использовать подчиненный справочник для комплектов.

Добавлено (25.01.2012, 19:29)
---------------------------------------------
И кстати вопрос, почему в РС стеллаж -ресурс, а не реквизит.

Добавлено (26.01.2012, 02:03)
---------------------------------------------
В отчете по стеллажам, как плюс сделать отбор по параметру вирт. таблицы РН используя РС. Не увидел ни в одном решении.

 По поводу ресурса и реквизита РС (нашел в книжке), технически без разницы (для РС), но политически biggrin ресурс -функция регистра, реквизит - комментарий.

Название: 1.13
Отправлено: Lazutin от Январь 26, 2012, 04:12:39 pm
SerF,
 Думаю на экзамене это сделали не для упрощения задачи, а как раз именно посмотреть способ реализации условия уникальности связи деталь-стеллаж.

 tan1c,
 В РС стеллаж будет ресурсом, а деталь измерением. Таким образом контроллируется уникальность деталей, чтобы нельзя было определить для одной детали несколько стеллажей (читай чтобы одна деталь относилась к разным стеллажам)
Название: 1.13
Отправлено: tan1c от Январь 26, 2012, 05:42:48 pm
Lazutin, Выбор не между ресурсом и измерением, а ресурсом и реквизитом.
 1 Деталь - изм, Ресурсы комплект(стеллаж) и кол-во
 2 Деталь - изм, ресурс - кол-во, реквизит -комплект(стеллаж).
 Уникальность не страдает biggrin
Название: 1.13
Отправлено: Lazutin от Январь 26, 2012, 10:17:43 pm
tan1c,
 Пожалуй возможно, но использовать стеллаж как реквизит не очень хорошо, на мой взгляд. Т.к. реквизит регистров по сути является лишь дополнительной информацией.
Название: 1.13
Отправлено: tan1c от Январь 27, 2012, 02:50:10 pm
Lazutin, Да именно про это
 
Quote (tan1c)
По поводу ресурса и реквизита РС (нашел в книжке), технически без разницы (для РС), но политически ресурс -функция регистра, реквизит - комментарий.
Название: 1.13
Отправлено: kirflaer от Февраль 23, 2012, 11:05:11 am
Вот моя версия решение. Для деталей использован отдельный подчиненный справочник. Состав регистра 2 измерения (Номенклатура, Комплектующее) ресурс (Количество). Получается быстро сделать отчеты: один просто по таблице "Остатки", второй по двум таблицам (как у многих решений).
 Просмотрев решение выложенные в ветке есть ряд вопросов:
 1) Почему плохо использовать составной тип данных в ТЧ документа, понимаю, что это влияет на производительность и универсальность, но ведь мы выполняем условие задачи.
 2) Использование блокировок. В какой именно момент надо блокировать регистр. До чтения? До записи? И еще в примере я видел что передается как источник блокировки ДокТЧ, и идет строчка в коде "ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Склад", "Склад");"
 Но ведь в ДокТч нет склада, там есть Ссылка.Склад. А ошибки нет. Как так?

 В аттаче мое решение.
Вложения:
1.13_frk.dt
Название: 1.13
Отправлено: sv_mikh от Февраль 23, 2012, 11:47:37 am
Quote (kirflaer)
Но ведь в ДокТч нет склада, там есть Ссылка.Склад. А ошибки нет. Как так?


 А вы вместо "Склад" напишите "Слон". Система тоже не поругается... Она просто молча забьет на слонов...
Название: 1.13
Отправлено: max_osodoev от Март 14, 2012, 11:32:19 am
держите, критика приветствуется
Вложения:
1.13_max_osodoe.dt
Название: 1.13
Отправлено: old_guest от Март 18, 2012, 02:27:26 am
решение max_osodoev - это то что хотят видеть от нас на экзамене tongue
Название: 1.13
Отправлено: sv_mikh от Март 18, 2012, 07:19:34 pm
Мое решение
Вложения:
sv_mikh_01_13.dt
Название: 1.13
Отправлено: LEOON от Март 18, 2012, 08:54:46 pm
sv_mikh,
 У тебя отчет не верно показывает(не учитывает отсутствие одной детали, мне пришлось соединять со всеми складами, возможно не оптимально, будет время поразмыслю). Вся сложность задачи как раз в нем.
 И кстати, решал до середины задачи так же как и ты потом осенило, что это вариант для новой методики. Так что могут на экзамене отругать.
 ::Мой вариант::
Вложения:
LEOON_1.13.dt
Название: 1.13
Отправлено: sv_mikh от Март 18, 2012, 10:18:22 pm
Quote (LEOON)
У тебя отчет не верно показывает(не учитывает отсутствие одной детали, мне пришлось соединять со всеми складами, возможно не оптимально, будет время поразмыслю). Вся сложность задачи как раз в нем.
 И кстати, решал до середины задачи так же как и ты потом осенило, что это вариант для новой методики. Так что могут на экзамене отругать. ::Мой вариант::
 


 ОК. Изучаю ситуацию
 -----------------------------------------------
 LEOON, слегка подправил отчет. Не могли бы Вы проверить и привести пример, если ситуация повторяется. Спасибо!

 Добавлено (18.03.2012, 22:18)
 ---------------------------------------------
 
Quote (LEOON)
это вариант для новой методики

 Похоже так и есть... Я ее в первый раз решаю. Не увидел. Трудности решить ее в новой методике нет никакой...
Вложения:
sv_mikh_01_13_2.dt
Название: 1.13
Отправлено: LEOON от Март 18, 2012, 10:34:19 pm
Вроде все пучком, заодно и у себя отчет подправил biggrin
Название: 1.13
Отправлено: sv_mikh от Март 18, 2012, 10:41:15 pm
Quote (LEOON)
Вроде все пучком, заодно и у себя отчет подправил

 ОК. Спасибо за проверку! Не всегда удается по быстрому отловить ошибки .
Название: 1.13
Отправлено: old_guest от Март 19, 2012, 12:22:16 am
sv_mikh,

 1) ещё один нюанс - не отслеживается ситуация, когда для стелажа не заполнен состав. РН в Вашем решении создаёт движение с пустой номенклатурой и 0 количеством. )))
 2) отчет косячит. ввожу в Вашу базу склад3, стелаж3 (состав:деталь1-2шт, деталь2-5шт.)
 провожу ПН - деталь1 - 10 шт
 запускаем отчёт - и о чудо 5 стелаж3 на склад3)))
Название: 1.13
Отправлено: sv_mikh от Март 19, 2012, 06:08:49 am
Quote (safer)
1) ещё один нюанс - не отслеживается ситуация, когда для стелажа не заполнен состав. РН в Вашем решении создаёт движение с пустой номенклатурой и 0 количеством. )))
 2) отчет косячит. ввожу в Вашу базу склад3, стелаж3 (состав:деталь1-2шт, деталь2-5шт.)
 провожу ПН - деталь1 - 10 шт
 запускаем отчёт - и о чудо 5 стелаж3 на склад3)))


 Спасибо! smile Исправленное решение, с учетом замечаний safer
 1. Отчет полностью переработал.
 2. Подправил списание со склада. Если комплект не имеет состава, то ничего не списывается, но документ проводится. Думаю нет смысла здесь ругаться.
Вложения:
sv_mikh_01_13_3.dt
Название: 1.13
Отправлено: fuel от Март 22, 2012, 03:09:20 pm
sv_mikh
 у тебя не учитывается реализация комплектующих
 мое решение

Добавлено (22.03.2012, 15:06)
---------------------------------------------
решение

Добавлено (22.03.2012, 15:07)
---------------------------------------------
+

Добавлено (22.03.2012, 15:09)
---------------------------------------------
+

Название: 1.13
Отправлено: fuel от Март 22, 2012, 03:19:30 pm
+
Вложения:
fuel_13.dt
Название: 1.13
Отправлено: sv_mikh от Март 22, 2012, 03:22:49 pm
Quote (fuel)
sv_mikh
 у тебя не учитывается реализация комплектующих

 В расходной накладной соединение нужно с внутреннего на левое поменять.
Название: 1.13
Отправлено: fuel от Март 22, 2012, 03:34:10 pm
тогда продашь стеллаж, его комплектющие и комплектющие в тч
 нужно поменять алгоритм
Название: 1.13
Отправлено: sv_mikh от Март 22, 2012, 03:49:33 pm
Quote (fuel)
тогда продашь стеллаж, его комплектющие и комплектющие в тч
 нужно поменять алгоритм

 Исправил соединение на левое. Сделал заглушку от стеллажа с пустым составом. Посмотрите и обоснованно приведите пример, когда по Вашему будет появляться указанная ошибка.
Вложения:
sv_mikh_01_13_4.dt
Название: 1.13
Отправлено: fuel от Март 22, 2012, 04:09:47 pm
Quote (sv_mikh)
Исправил соединение на левое. Сделал заглушку от стеллажа с пустым составом. Посмотрите и обоснованно приведите пример, когда по Вашему будет появляться указанная ошибка.

 Ошибки не будет.
 У меня сделано без реквизита стеллаж у номенклатуры.
 Думаю то что номенклатура является стеллажом можно определить из рег свед.
Название: 1.13
Отправлено: sv_mikh от Март 22, 2012, 04:20:54 pm
Quote (fuel)
Думаю то что номенклатура является стеллажом можно определить из рег свед.

 Это уже особенности реализации. Мое решение зато позволяет детектировать ситуацию того, что мы планируем продавать некое изделие как стеллаж, но на него не ввели состав. В Вашем же решении будет считаться, что стеллаж без состава = комплектующая... Нельзя сказать, что Ваше или мое решение лучше или хуже. И то и другое имеет право на жизнь.
Название: 1.13
Отправлено: fuel от Март 22, 2012, 04:29:18 pm
Quote (sv_mikh)
И то и другое имеет право на жизнь.

 согласен
 думаю на экзамене оба будут правильными
 вообще твое решение мне понравилось (оно почти повторяет мое)
 был удивлен что многие предлагают решение по "новой" методике
 рад что мое решение с кем то совпадает.
Название: 1.13
Отправлено: sv_mikh от Март 22, 2012, 04:33:27 pm
Quote (fuel)
вообще твое решение мне понравилось (оно почти повторяет мое)

 smile Ну значит я еще не безнадежен. Спасибо.

 
Quote (fuel)
был удивлен что многие предлагают решение по "новой" методике
 рад что мое решение с кем то совпадает.

 Новая методика заточена на регламентное проведение. Т.е. движение по документу только свободного остатка. В общей массе задач она встречается не часто, но есть.
Название: 1.13
Отправлено: Gyd от Март 22, 2012, 06:11:58 pm
Мое решение, за основу взял решение sv_mikh и добавил:

 1. Проведение по новой методике.
 2. В форме элемента типа стеллаж вывод списка деталей и их количества.

 Вопрос по новой методике. Одним из её преимуществ является отсутствие соединений, но используя МенеджерВременныхТаблиц заметил что без соединения не обойдешься, так как если использую поля МВТ только в параметрах виртуальной таблицы (нет соединений и явно не выбираю поля из МВТ), то таблица из МВТ просто пропадает. Кто подскажет, это так и должно быть или я что-то не так делаю? smile
Вложения:
Gyd_1_13.dt
Название: 1.13
Отправлено: fuel от Март 23, 2012, 09:00:26 am
Quote (Gyd)
Проведение по новой методике.

 зачем пишешь Движения.ОстаткиНоменклатуры.Записывать = Истина;? получится что ты первый раз записываешь набор записей и второй раз система запишет его не явно
 2 запроса хуже чем 1. Какой в этом смысл?
Название: 1.13
Отправлено: Gyd от Март 23, 2012, 10:19:37 am
Quote (fuel)
зачем пишешь Движения.ОстаткиНоменклатуры.Записывать = Истина

 Это лишнее, согласен.
 
Quote (fuel)
2 запроса хуже чем 1. Какой в этом смысл?

 Первый запрос для записи движений, второй для проверки остатков. Если обойтись одним запросом - тогда придется по старой методике проводить. Вы со мной согласны?
Название: 1.13
Отправлено: fuel от Март 23, 2012, 10:34:11 am
Quote (Gyd)
Вы со мной согласны?

 да, конечно
 
Quote (Gyd)
Первый запрос для записи движений, второй для проверки остатков

 зачем нужно 2 запроса я понял.
 не понятно зачем решать по новой методике если по старой эффективнее.
Название: 1.13
Отправлено: sv_mikh от Март 23, 2012, 11:01:06 am
Quote (fuel)
не понятно зачем решать по новой методике если по старой эффективнее.

 Чем эффективнее? Всегда надо помнить требования 1С к сдающим. Не использование эффективной методики тянет на хорошую ошибку. А новая методика считается эффективнее по умолчанию.

Добавлено (23.03.2012, 11:01)
---------------------------------------------

Quote (fuel)
Вопрос по новой методике. Одним из её преимуществ является отсутствие соединений, но используя МенеджерВременныхТаблиц заметил что без соединения не обойдешься, так как если использую поля МВТ только в параметрах виртуальной таблицы (нет соединений и явно не выбираю поля из МВТ), то таблица из МВТ просто пропадает. Кто подскажет, это так и должно быть или я что-то не так делаю?


 Совсем не обязательно использовать МВТ и соединения по новой методике. Финальный запрос к остаткам параметризуется составом ТЧ. Я не очень понял смысл вопроса, но просто пропасть таблица из МВТ не может, только если сами ее удалим или менеджер закроется.

 Кстати фишку хотите? В регистре ОстаткиНоменклатуры есть флажок Разрешить разделение итогов. Так вот он снят в стандартной каркасной не случайно smile В управляемых блокировках он должен быть включен. Убрали его спецом.
Название: 1.13
Отправлено: Gyd от Март 23, 2012, 11:52:21 am
Quote (sv_mikh)
Я не очень понял смысл вопроса, но просто пропасть таблица из МВТ не может, только если сами ее удалим или менеджер закроется.

 Происходит это так: во втором запросе я описываю таблицу из МВТ (у меня она называется Список), закрываю окно конструктора, открываю его снова - конструктор уже не видит таблицы Список (скрин). Соответственно, параметры в виртуальную таблицу не передаются и запрос не работает как надо.
Вложения:
s0575862.jpg
Название: 1.13
Отправлено: sv_mikh от Март 23, 2012, 11:56:09 am
Quote (Gyd)
Происходит это так: во втором запросе я описываю таблицу из МВТ (у меня она называется Список), закрываю окно конструктора, открываю его снова - конструктор уже не видит таблицы Список (скрин). Соответственно, параметры в виртуальную таблицу не передаются и запрос не работает как надо.

 Она не пропадает. Она просто забывает свое описание. Откуда ж оно возьмется, если голова оторвана? Это нормально. Можете сами добавить описания полей, если не хотите ручками прописывать.
Название: 1.13
Отправлено: fuel от Март 23, 2012, 12:13:18 pm
Quote (sv_mikh)
Чем эффективнее?

 Эффективнее тем что по старой методике 1 запрос к БД, по новой 2
 
Quote (sv_mikh)
А новая методика считается эффективнее по умолчанию.

 В данной задаче она не эффективна
 
Quote (sv_mikh)
Всегда надо помнить требования 1С к сдающим.

 да, задача будет сделана, но не оптимально, не знаю насколько это критично на экзамене, но думаю какое то количество балов снимут.
Название: 1.13
Отправлено: sv_mikh от Март 23, 2012, 01:15:51 pm
Quote (fuel)
Эффективнее тем что по старой методике 1 запрос к БД, по новой 2

 Ну давайте обсудим эффективность новой методики проведения. Во первых запрос запросу рознь. И чисто арифметически складывать количество запросов нельзя. Нужно проверять время выполнения запросов, нагрузку, которую они создают.
 В рассматриваемом решении 2 запроса.
 Запрос 1 ничего не вычисляет. Он просто берет данные из физ.таблицы строк табличной части. Нагрузка минимальна.
 Запрос 2 если все нормально -- пустой. Т.е. проблемы передать результат этого запроса нет.

 Теперь что со старым вариантом? В результате запроса все строки и по этим всем строкам были вынуты из БД остатки. При том, что суммы тут не нужны, а остатков по большей части позиций должно быть достаточно... Представим накладную в 1000 строк. Это отнюдь не из головы -- у потовиков это нормально... По классике все эти позиции сначала вынут остатки, потом результат перекачует с сервера БД на кластер серверов и лишь потом будет ясно -- стоило это делать или нет.
Название: 1.13
Отправлено: Gyd от Март 23, 2012, 01:38:57 pm
Quote (sv_mikh)
Можете сами добавить описания полей, если не хотите ручками прописывать.

 В том то и фишка что описание я делаю, только это не помогает. Сейчас даже попробовать типы значений указать... тот же эффект. Посмотрите пожалуйста второй запрос, я его изменил.
Вложения:
Test_Gyd_13.dt
Название: 1.13
Отправлено: sv_mikh от Март 23, 2012, 02:35:00 pm
Quote (Gyd)
В том то и фишка что описание я делаю, только это не помогает. Сейчас даже попробовать типы значений указать... тот же эффект. Посмотрите пожалуйста второй запрос, я его изменил.


 Попробуйте следующий вариант: 1. Скопируйте в буфер первый запрос и вставьте его во второй. ВТ будет доступна, т.к. она создается в тексте запроса. 2. Допишите запрос. 3. Удалите все, кроме дописанного. Мне кажется, если Вы вручную пишете ВТ, то возможно где-то ошиблись в вызове.
Название: 1.13
Отправлено: Gyd от Март 23, 2012, 02:45:13 pm
Quote (sv_mikh)
Попробуйте следующий вариант

 Сделал всё как описали. Тоже самое.
Название: 1.13
Отправлено: sv_mikh от Март 23, 2012, 03:09:59 pm
Quote (Gyd)
Сделал всё как описали. Тоже самое.

 smile Нужно думать... http://www.youtube.com/watch?v=IHNKIo1ag4k
Название: 1.13
Отправлено: fuel от Март 23, 2012, 03:35:28 pm
Quote (sv_mikh)
Ну давайте обсудим эффективность новой методики проведения.

 трудно не согласиться с твоими выводами, но чтобы поверить надо на реальных данных

Добавлено (23.03.2012, 15:35)
---------------------------------------------
проверить

Название: 1.13
Отправлено: Gyd от Март 23, 2012, 03:52:21 pm
Quote (sv_mikh)
Кстати фишку хотите? В регистре ОстаткиНоменклатуры есть флажок Разрешить разделение итогов. Так вот он снят в стандартной каркасной не случайно В управляемых блокировках он должен быть включен. Убрали его спецом.

 Проверяют включим ли мы его? smile
 В "Профессиональной разработке" как то скромно он описан. И непонятно что он вообще делает.
Название: 1.13
Отправлено: sv_mikh от Март 23, 2012, 04:09:42 pm
Quote (fuel)
трудно не согласиться с твоими выводами, но чтобы поверить надо на реальных данных

 "Новая методика" -- она в первую очередь жизненно важна для больших внедрений при большом количестве пользователей, при больших количествах документов. Кроме того что наиболее важно в данной методике -- время блокировки базы сокращается значительно. Т.е блокировка по новой методике возникает при записи набора движений, т.е. ближе к концу обработки проведения. После нее идет только контроль минусов, где по идее ошибок быть не должно, но если и есть, данные о них быстро будут получены. В классике же блокировка возникает в самом начале проведения документа. После нее последует 1. Получение данных об остатках, 2. Запись данных в базу данных. Это все наиболее времяемкие процедуры. А блокировка все еще наложена. Т.е. новая методика облегчена и по времени блокировки и по объему передаваемых данных.

Добавлено (23.03.2012, 16:09)
---------------------------------------------

Quote (Gyd)
Проверяют включим ли мы его?
 В "Профессиональной разработке" как то скромно он описан. И непонятно что он вообще делает.

 Проверят однозначно. Это подвох типа включенного периода у Доп.начислений... При включенном флажке при одновременной записи в регистр итоги будут пересчитываться и соответственно 2 человека эту операцию смогут сделать одновременно за счет разделения итогов по полю Сплитер. Позже при пересчете итогов эти задвоенные записи об итогах сгруппируются. Эта вещь работает только в клиент-серверном варианте. Я если честно сам до конца не понял механику взаимосвязи разделения итогов с работой управляемых блокировок... Нужно еще читать. Но для экзамена важно его включать.
Название: 1.13
Отправлено: Gyd от Март 23, 2012, 08:22:45 pm
Quote (sv_mikh)
Но для экзамена важно его включать.

 Спасибо, учтём.
Название: 1.13
Отправлено: old_guest от Март 23, 2012, 11:01:02 pm
1. разделение итогов включать имеет смысл если при записи не контролируются остатки. Т.е. где используем новую методу.
 sv_mikh, или я ошибаюсь?
 2. по-методике - sv_mikh, всё правильно пишет. плюс - 1) самая тяжеловесная операция это запись. в новой методе, мы сокращаем количество записей с 2 до 1. 2) избавляемся в запросах от ISNULL
Название: 1.13
Отправлено: sv_mikh от Март 24, 2012, 06:41:04 am
Quote (safer)
1. разделение итогов включать имеет смысл если при записи не контролируются остатки. Т.е. где используем новую методу.
 sv_mikh, или я ошибаюсь?

 Я собственно этот же вопрос задал Дмитрию Гончарову. Он сказал, что и по классике тоже нужно включать. Хотя разговор начался с того, что этот флажок является обязательным при новом методе.
Название: 1.13
Отправлено: GK от Апрель 13, 2012, 10:52:53 pm
Уважаемый sv_mikh, посмотрел ваше решение, не понял немного, это по старой методике проведение? т.е. у вас сначала запрос с вычислением остатков и потом запись?
Название: 1.13
Отправлено: sv_mikh от Апрель 13, 2012, 11:19:43 pm
Quote (GK)
Уважаемый sv_mikh, посмотрел ваше решение, не понял немного, это по старой методике проведение? т.е. у вас сначала запрос с вычислением остатков и потом запись?

 Скорее всего решение выложенное в ветке было еще по старой методике. Правильно решать эту задачу по новой.
Название: 1.13
Отправлено: Toxicoff от Апрель 18, 2012, 11:51:44 pm
Честно скажу, не осилил всю ветку темы... Но увидел про новую методику.

 Думаю, стоит ли использовать её в данной задаче?

 Что лучше,
 1) запрос + запись + запрос + откат транзации (если фейл) (новая методика)
 2) Запрос(жирнее) + откат транзации (если фейл) (старая методика)

 Что то я склоняюсь что всё таки старая методика результативнее, в данном случае...

 Никто с замером не тестировал? smile
Название: 1.13
Отправлено: GK от Апрель 19, 2012, 11:30:21 am
Quote (Toxicoff)
Что лучше,
 1) запрос + запись + запрос + откат транзации (если фейл) (новая методика)
 2) Запрос(жирнее) + откат транзации (если фейл) (старая методика)


 тоже задумался об этом, имхо, все таки лучше два запроса, если комплектация не прошла то остатки не надо брать сразу откат, соответственно лишний раз не обращаемся к бд и не блокируем таблицу...
 сегодня буду делать, выложу то что получится...
Название: 1.13
Отправлено: Teriban от Апрель 19, 2012, 02:14:43 pm
Делал по новой методе, немного помучался с остатками по стелажам...
Вложения:
1_13_v1.dt
Название: 1.13
Отправлено: Toxicoff от Апрель 20, 2012, 09:41:46 am
сделал по старой...
 Без отчетов) на блокировки не смотрите - лень пока что smile
Вложения:
toxicoff_1.13.dt
Название: 1.13
Отправлено: Matcoder от Май 03, 2012, 07:44:58 pm
По старой и без отчетов? А че смотреть-то? Там тогда делать нечего... Самая фишка в отчете
 Вот мое решение.
Вложения:
0431139.dt
Название: 1.13
Отправлено: Para_1987 от Май 16, 2012, 10:53:50 am
Всем привет. Попалась эта задача на экзамене. В общем не зачли. Конечно и других глюков нашли, но не в этом дело. Вопрос: кто как организовывал уникальность детали в стелажах? я сделал регистр сведений
 Измерение: Деталь
 Ресурсы: Стеллаж, Количество.
 При продаже стеллажа, необходимо списывать комплектующие. Вот запросом я соединяюсь к регистру сведений к ресурсу Стеллаж, при условии что номенклатура из ТЧ - это стеллаж и получаю состав стеллажа, далее как обычно, списываю.

 Результат экзамена:
 ОУ: неверно организовано хранение информации о составе стеллажа, регистры предназначены для быстрого получения информации по измерениям, а не ресурсам; блокировки при проведении РН установлены неверно, блокируется по стеллажам, а списываются детали;

 2. Как корректно то установить блокировки по деталям? Еще один запрос?

Добавлено (16.05.2012, 10:53)
---------------------------------------------
смысл ошибки я понял так: Нельзя устанавливать соединение к таблице по ресурсу. Ведь реально регистр нам возвращает ресурсы по комбинации измерений, получается нарушено предназначение регистра))))

Название: 1.13
Отправлено: kow1976 от Май 16, 2012, 04:06:02 pm
Para_1987,
 Тогда Измерение: Деталь, Стеллаж
 И если нужна проверка по деталям то в модуле объекта РС:
 
Code

 Процедура ПередЗаписью(Отказ, Замещение)
   Если Количество() тогда
    Запрос = Новый Запрос;
    Запрос.Текст =   
    "ВЫБРАТЬ
    |    Комплектующие.Детали,
    |    Комплектующие.Стелла КАК Стеллаж
    |ИЗ
    |    РегистрСведений.Комплектующие КАК Комплектующие
    |ГДЕ
    |    Комплектующие.Детали = &Детали";
      
    Запрос.УстановитьПараметр("Детали", Отбор.Детали.Значение);
    Результат = Запрос.Выполнить();
    Если не Результат.Пустой() тогда   
     Выборка=Результат.Выбрать();
     Выборка.Следующий();
     Сообщение = Новый СообщениеПользователю;
     Сообщение.Текст = "Такая деталь из стеллажа "+Выборка.Стеллаж;
     Сообщение.Сообщить();
     Отказ=истина;
    КонецЕсли;
   КонецЕсли;
 КонецПроцедуры
 
Название: 1.13
Отправлено: justaria от Май 21, 2012, 02:59:13 pm
Подскажите, плиз, а зачем у baksha_bni блокировка на регистр сведений? и в приходной, и в расходной.. Я чего-то не понимаю? wacko На РН остаткиНоменклатуры-то понятно почему блока нет, он сказал, что забыл поставить БлокироватьДляИзменения.. А вот с РС что-то совсем не въеду. Первый раз такое вижу. Может кто пояснить? Это что получается, если мы не поставим блокировку: пока мы считываем состав комплектующих для стеллажа, вот именно в этот самый момент.. меняются "ГОСТ"ы каким-то из пользователей и хоп! тот же стеллаж уже состоит из других зап.частей - было 5 цилиндров, стало 4 (у нас ведь всегда лишняя деталь есть во всем при сборке) или были в составе болты, а стали гвозди.. и наш стеллаж уже не стеллаж, а груда комплектующих? ИМХО, блокировка на РС - бред. Может я всё-таки чего-то не понимаю? Спецы, выскажитесь, пожалуйста, по этому поводу. question
Название: 1.13
Отправлено: Gyd от Май 22, 2012, 08:48:45 am
Quote (justaria)
а зачем у baksha_bni блокировка на регистр сведений? и в приходной, и в расходной

 Он перестраховался. В рамках экзамена блокировать РС не нужно.
Название: 1.13
Отправлено: koncull от Июнь 04, 2012, 10:03:29 pm
Quote (Para_1987)
2. Как корректно то установить блокировки по деталям?

 Я сделал так :
 
Code

  ЭлементБлокировкиКомплект = Блокировка.Добавить("РегистрНакопления.ОстаткиНоменклатуры");
  ЭлементБлокировкиКомплект.ИсточникДанных = СписокНоменклатуры;
  ЭлементБлокировкиКомплект.ИспользоватьИзИсточникаДанных("Номенклатура", "Номенклатура");
  Блокировка.Заблокировать();
 


 В регистре остатков, данных по стеллажам нет, а есть только по комплектующим
 В реквизите "Номенклатура", табличной части "СписокНоменклатуры", могут содержаться данные как по стеллажам. так и по комплектующим
 При блокировке данные по стеллажам не используются, так как в регистре их просто нет
Название: 1.13
Отправлено: Pavlyk от Июнь 05, 2012, 09:33:54 pm
Quote (kow1976)
Para_1987,
 Тогда Измерение: Деталь, Стеллаж

 Тогда можно будет присвоит одной и той же детали разные стеллажи , а нам как раз этого нужно избежать.... Я что-то так и не понял как нужно делать, если ресурсом нельзя.... ???
Название: 1.13
Отправлено: kow1976 от Июнь 06, 2012, 02:39:57 am
Pavlyk,
 Проверку можно выполнить программно.
Название: 1.13
Отправлено: Pavlyk от Июнь 06, 2012, 11:32:50 am
Quote (kow1976)
Pavlyk,
 Проверку можно выполнить программно.

 Можешь выложить базу, или код, а то я что-то не совсем понял.
Название: 1.13
Отправлено: kow1976 от Июнь 06, 2012, 05:18:33 pm
Pavlyk,
 http://forum.chistov.pro/index.php?topic=1026.msg22800#msg22800
Название: 1.13
Отправлено: Lukas от Июнь 19, 2012, 10:13:20 am
А подскажите пожалуйста решение которое подсказал kow1976 (по поводу контроля уникальности детали на основе регистра сведений) скажем так рассово правильное да? ) и единственное или как-то ещё можно решить эту проблему? А то судя по решениям которые я видел люди делают либо на основе справочника (что, наверное, не есть хорошо), либо на основе как раз таки РС, но (!) Измерение: Деталь; Ресурсы: Стеллаж, Количество, но такое решение бракуют на экзамене судя по посту на предыдущей странице.
Название: 1.13
Отправлено: SAV_tlt от Июнь 19, 2012, 06:26:33 pm
- Уникальность сделал так: Справочник стеллажи является владельцем номенклатуры и в измерении Номенклатура в РС установил отбор по владельцу;
 - Проведение по новой методе;
 - Отчеты вначале делал в одной СКД просто с двумя вариантами вывода(для стеллажей и деталей), но потом все таки переделал, сделал по отдельности из-за сомнений в примерах отчетов задания;
Вложения:
1_13_SAV.dt
Название: 1.13
Отправлено: Lukas от Июнь 20, 2012, 10:00:47 am
SAV_tlt, Объясните пожалуйста вот эти строчки из запроса для отчёта по стеллажам:
 
Code
МИНИМУМ(ВЫБОР
    КОГДА ОстаткиНоменклатурыОстатки.КоличествоОстаток > 0
     ТОГДА ВЫРАЗИТЬ(ОстаткиНоменклатурыОстатки.КоличествоОстаток / Комплектация.Количество - 0.5 КАК ЧИСЛО(10, 0))
    ИНАЧЕ 0
   КОНЕЦ) КАК Количество

 А именно для каких целей отнимается 0.5 ? Я так понимаю что когда привели к типу Число(10,0) дробная часть отбрасывается так ведь?
Название: 1.13
Отправлено: SAV_tlt от Июнь 20, 2012, 10:10:21 am
Потому что в запросе округляется 1.5=2
Название: 1.13
Отправлено: Lukas от Июнь 20, 2012, 11:01:30 am
SAV_tlt, а, он округляет, я думал просто отбрасывает дробную часть, тогда понятно, спасибо.
Название: 1.13
Отправлено: romansun от Июнь 24, 2012, 07:34:51 pm
всем привет

 народ, чото туплю наверно я, но запрос на отчет по стеллажам совсем простой ж... скачал несколько решений - всё сложно у народа как-то

 
Code
ВЫБРАТЬ
   Состав.Сборка,   
   ОстаткиНоменклатурыОстатки.Склад,
   МИНИМУМ(ВЫРАЗИТЬ(ОстаткиНоменклатурыОстатки.КоличествоОстаток / Состав.Количество - 0.5 КАК ЧИСЛО(10, 0))) КАК КоличествоЦелых
 ИЗ
   РегистрСведений.Состав КАК Состав
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки КАК ОстаткиНоменклатурыОстатки
    ПО Состав.Деталь = ОстаткиНоменклатурыОстатки.Номенклатура

 СГРУППИРОВАТЬ ПО
   Состав.Сборка,   
   ОстаткиНоменклатурыОстатки.Склад


 ---
 хотя, не... SergTH000 почти то же написал, да..
 http://forum.chistov.pro/index.php?topic=1026.msg12557#msg12557
Название: 1.13
Отправлено: Fruit83 от Июль 15, 2012, 12:24:27 am
Quote (Lukas)
Измерение: Деталь; Ресурсы: Стеллаж, Количество, но такое решение бракуют на экзамене судя по посту на предыдущей странице.


 По-видимому, стеллаж не может быть ресурсом, так как ресурсы регистра могут быть только числового типа.
Название: 1.13
Отправлено: zikonza от Июль 17, 2012, 05:39:08 pm
Мой Вариант без Блокировок

 "По-видимому, стеллаж не может быть ресурсом, так как ресурсы регистра могут быть только числового типа."
 Это РН , речь идет о РС

 "А подскажите пожалуйста решение которое подсказал kow1976 (по поводу контроля уникальности детали на основе регистра сведений) скажем так рассово правильное да? ) и единственное или как-то ещё можно решить эту проблему? А то судя по решениям которые я видел люди делают либо на основе справочника (что, наверное, не есть хорошо), либо на основе как раз таки РС, но (!) Измерение: Деталь; Ресурсы: Стеллаж, Количество, но такое решение бракуют на экзамене судя по посту на предыдущей странице."
 Думаю не стоит заморачиваться....просто делать стеллаж измерением это вроде как уже противоречит" уникальности"...не важно есть проверка там или нет решение уже некрасивое.....
Название: 1.13
Отправлено: zikonza от Июль 17, 2012, 05:57:03 pm
Мой Вариант без Блокировок

 
Quote (Fruit83)
По-видимому, стеллаж не может быть ресурсом, так как ресурсы регистра могут быть только числового типа.


 Это в регистре РН ресурс только числовой тип, речь идет о РС...

 
Quote (Lukas)
А подскажите пожалуйста решение которое подсказал kow1976 (по поводу контроля уникальности детали на основе регистра сведений) скажем так рассово правильное да? ) и единственное или как-то ещё можно решить эту проблему? А то судя по решениям которые я видел люди делают либо на основе справочника (что, наверное, не есть хорошо), либо на основе как раз таки РС, но (!) Измерение: Деталь; Ресурсы: Стеллаж, Количество, но такое решение бракуют на экзамене судя по посту на предыдущей странице.


 Думаю не стоит заморачиваться....просто делать стеллаж измерением это вроде как уже противоречит" уникальности"...не важно есть проверка там или нет решение уже некрасивое.....(Структура регистра сведений будет уже как бы неправильна.....лично я делал как и все по "Ошибочному" методу с помощью регистра сведений
Вложения:
1Cv81.13.dt
Название: 1.13
Отправлено: Pavlyk от Июль 18, 2012, 10:52:12 pm
Брокуют из за того что в запросе в Расходной , соединение идет по Ресурсу стеллаж, на сколько я понял!
 То есть правильно делать нужно через регистр сведений все равно, но только стеллаж измерение
Название: 1.13
Отправлено: alex7six от Июль 23, 2012, 08:17:07 pm
Всем привет!
 Мой вариант решения - единственная проблема возникла при построении отчета по остаткам Стеллажей, т.к. если не помещать результат певого запроса во временную то в компоновку выводятся неверные данные.
 Прочитал только 3 страницы темы - ни у кого этот отчет правильно не работал
Вложения:
0971791.dt
Название: 1.13
Отправлено: nontrade от Август 05, 2012, 05:28:44 am
Ну хоть убейте, не пойму, почему обязательно использовать РС для идентификации деталь - стеллаж. Что мешает Создать справочник стеллажей, а в номенклатуре создать реквизит типа "Стеллаж" и реквизит количество. В реализации Номенклатуру сделать составного типа. Будет ли это ошибкой?
Вложения:
13_1Cv8.dt
Название: 1.13
Отправлено: Nicola от Август 23, 2012, 05:55:39 pm
Мой вариант решения.

 Жду критики =)
Вложения:
1.13_Nicola.dt
Название: 1.13
Отправлено: iomoe от Август 26, 2012, 09:43:09 am
Зачем регистр, когда связь Деталь - Стеллаж можно показать прямо в справочнике Номенклатуры?
Вложения:
1Cv8_1_13.dt
Название: 1.13
Отправлено: kow1976 от Август 30, 2012, 05:29:48 am
Есть предположение, что можно сделать так:
Вложения:
s9609737.jpg
Название: 1.13
Отправлено: RoMeL от Сентябрь 02, 2012, 07:09:42 pm
мое решение... smile
 1. Новая методика проведения
 2. Програмная проверка в РС уникальности деталей ( взято у kow1976)
 3. Отчет только "наличия деталей" ( т.к. по последним данным (http://forum.chistov.pro/index.php?topic=993.msg24558#msg24558) только он нужен happy )

 Потом может еще сделаю второй вариант через справочники...
Вложения:
RoMeL_1.13.dt
Название: 1.13
Отправлено: Andy63 от Сентябрь 04, 2012, 10:30:30 pm
Посмотрите пожалуйста мой вариант решения, только начал готовиться к спецу. Решал полностью сам, пока без блокировак и отчета

 Буду рад критике, и помощи коллег biggrin

Добавлено (04.09.2012, 22:30)
---------------------------------------------

Quote (RoMeL)
мое решение... 1. Новая методика проведения 2. Програмная проверка в РС уникальности деталей ( взято у kow1976) 3. Отчет только "наличия деталей" ( т.к. по последним данным (http://forum.chistov.pro/index.php?topic=993.msg24558#msg24558) только он нужен ) Потом может еще сделаю второй вариант через справочники...
 Прикрепления: RoMeL_1.13.dt(151Kb)


 Посмотрел твой вариант он почти как у меня, единственно что меня смутило в обработке проведения расхродной накладнойу тебя сначала формируются движения потом идет проверка на остатки, мне кажется это не совсем верно, лучше будет объединить запрос по остаткам с основным, и сразу при переборе проверять остаток.... =)
Вложения:
_1_13__Andy.dt
Название: 1.13
Отправлено: Oliver от Сентябрь 05, 2012, 08:50:35 am
Решил. Задание понравилось. Другие решения не смотрел.
Вложения:
Oliver_1_13.dt
Название: 1.13
Отправлено: RoMeL от Сентябрь 05, 2012, 10:13:15 am
Oliver, зря не смотрел...
 1. "Необходимо обеспечить уникальность деталей" в решении не увидел...
 2. "В случае продажи стеллажа осуществляется списание со склада сооответствуещего количества комплектующих" - т.е. на момент продажи комплектующие присутствуют на складе , они не привязаны к конкретному стеллажу... на остатках вообще нет стеллажей
 smile

Добавлено (05.09.2012, 10:13)
---------------------------------------------

Quote (Andy63)
Посмотрел твой вариант он почти как у меня, единственно что меня смутило в обработке проведения расхродной накладнойу тебя сначала формируются движения потом идет проверка на остатки, мне кажется это не совсем верно, лучше будет объединить запрос по остаткам с основным, и сразу при переборе проверять остаток.... =)

 "Новая методика проведения" wink
Название: 1.13
Отправлено: Andy63 от Сентябрь 05, 2012, 02:38:31 pm
Quote (RoMeL)
"Новая методика проведения" wink


 А что за новая методика проведения?
Название: 1.13
Отправлено: Pavlyk от Сентябрь 05, 2012, 02:54:07 pm
http://chistov.spb.ru/publ....-1-0-29
Название: 1.13
Отправлено: ivanzavr от Сентябрь 05, 2012, 03:01:08 pm
Quote (Andy63)
А что за новая методика проведения?


 Сначала записываем движения, потом проверяем, не появился ли где-нибудь в остатках минус. Если появился отменяем проведение.

 Преимущества новой методики на экзамене: не нужно использовать объект "блокировка данных" (вместо него добавляем одну строку движения.регистр.блокироватьдляизменения=истина), проще запрос по остаткам, преподы любят когда её используют wink .

 Имеет смысл, когда на момент проведения не надо ничего расчитывать по данным регистра, т.е. в условии нет фразы типа "себестоимость расчитывается как средняя по складу".
Название: 1.13
Отправлено: Lazy от Сентябрь 05, 2012, 03:20:11 pm
Quote (ivanzavr)
Имеет смысл, когда на момент проведения не надо ничего расчитывать по данным регистра, т.е. в условии нет фразы типа "себестоимость расчитывается как средняя по складу".


 А если есть данная фраза, например, в задачах №1.16, №1.17?
Название: 1.13
Отправлено: ivanzavr от Сентябрь 05, 2012, 03:59:41 pm
значит нельзя пользоваться новой методикой)

 делаем по старой - сначала расчитываем и проверяем, потом записываем
Название: 1.13
Отправлено: TAV от Сентябрь 10, 2012, 02:21:37 pm
Почему для учета стеллажей никто не предложил добавить документ "Комплектовать стеллаж". Сам стеллаж номенклатура с видом "Комплект". Документ приходует на "ОстаткиНоменклатуры" стеллажи по спецификации (если хватает на складе комплектующих). Спецификация хранится в регистре сведений.
Название: 1.13
Отправлено: Andy63 от Сентябрь 10, 2012, 03:56:16 pm
Quote (TAV)
Почему для учета стеллажей никто не предложил добавить документ "Комплектовать стеллаж". Сам стеллаж номенклатура с видом "Комплект". Документ приходует на "ОстаткиНоменклатуры" стеллажи по спецификации (если хватает на складе комплектующих). Спецификация хранится в регистре сведений.

 Имхо только лишняя трата времени (которого на экзамене будет очень не хватать). Так что приходуем сразу стеллажи. Комплектацию указываем в регистре
Название: 1.13
Отправлено: zhizhko от Октябрь 24, 2012, 06:39:58 am
Простая задача.
Вложения:
zh_1_13.dt
Название: 1.13
Отправлено: Makh от Февраль 10, 2013, 03:59:59 pm
Мой вариант решения
Вложения:
Makh_1_13.dt
Название: 1.13
Отправлено: TuMyP1985 от Июнь 13, 2013, 09:59:21 pm
Мое решение данной задачи
Вложения:
KTT_1_13.dt
Название: 1.13
Отправлено: bilateral от Июнь 20, 2013, 04:35:32 pm
Хм. Вроде сделал. И даже работает и даже правильно. Особых сложностей не увидел. Подскажите кто ошибки найдет пожалуйста
Вложения:
bilateral_upr13.dt
Название: 1.13
Отправлено: patchwork от Июнь 26, 2013, 10:27:45 pm
Цитата (bilateral)
Подскажите кто ошибки найдет пожалуйста

 отчет наличае стелажей на дату  деление на 0 выдает
Название: 1.13
Отправлено: artfa от Июнь 26, 2013, 11:26:59 pm
просмотрел 5 решений, ни у кого решение не правильное на 100%, у кого-то не заведен регистр сведений, а он нужен для обеспечения уникальности деталей, у кого-то отчет НаличиеСтеллажей не доделан, хотя с виду все вроде бы работает, но стоит удалить с остатков на складах одну из комплектующих деталей, то вылазит ошибка - отчет все равно показывает наличие стеллажа на складе, хотя ему не хватает как минимум одной позиции по комплектующим.

 Думал что меня bilateral порадует, однако у него то же отчет косячный - та же ошибка, при занулении одной из комплектующих, отчет все равно показывает наличие стеллажа по этому складу, не настроены связи параметров выбора для приходной и для регистра сведений, хотя понравилсоь что он использовал вычисляемое поле с обращением к общему модулю.

 Больше всего провозился с отчетом НаличиеСтеллажей, в остальной части задача не представляет затруднений.
Вложения:
1013952.dt
Название: 1.13
Отправлено: svsource от Июль 02, 2013, 01:00:31 am
Решения типа справочник "Стеллажи"  а также табличные части справочников не рассматриваю совсем
 так как это ни что иное как размножение данных одной сущности
 Нормальное решение через регистр сведений. 
  
 Решил все же так - Измерения Стеллаж, Номенклатура Ресурс Количество.
 Перечитал много чего в т.ч. и посты выше. Так правильно будет.
 Сложность определится еще заставляет что регистр сведений непериодический
  
 Конечно многие напишут что потеряна уникальность на уровне системы для копмлектующей.
 ДА. это так. Но если подумать хорошо и без всяких "флажков" и видов номенклатуры то
 чисто теоретически пользователь может ввалить туда значение "стеллажа" т.е. то что уже детализировано.
 (Решения типа справочник "Стеллажи"  а также табличные части справочников не рассматриваю совсем
 так как это ни что иное как размножение данных одной сущности. Поэтому считаю
 Нормальное решение через регистр сведений) - нет ну конечно и они с т.зр. авторов имеют право на жизнь

 Лично я сделал проверку ее на уровне объекта регистра сведений.
 Причем проверка там и на равенство того что детализируется и чем. Короче интересно - посмотрите.
 Дальше - реквизит это "комментарий" - т.е. приложение к записи - это касается в  т.ч. и регистров накопления.
 Поэтому соединять по реквизиту чтобы получать ресурс....  ну лапша явная... А про то чтобы поместить "Стеллаж" в
 ресурс - и речи нет - придется соединять по нему и в документе и в отчетах - ЭТО ГРУБАЯ ОШИБКА. Точно.
 "Функция регистра" - извлечение значения РЕСУРСА по КЛЮЧУ (т.е. Период + Измерения)  - это верно.
  
 Просто еще раз повторяю что именно для независимого регистра сведений часто сложно определить что есть что.
 А вот попробуйте представить что сделали регистр периодическим - сразу станет ясно что "Стеллаж" - измерение.
 Ну это мое сугубо личное мнение. Может и не так.
  
 Дальше - сделал проверку на приход "Стеллажа". Потом применил "новую методику списания" дабы эта задача как раз наш случай. Отчеты вроде как работают. Люди пишут на экзамене есть задание вывести состав стеллажа на форму списка - сделал.
 Да еще - запись комплектующих к стеллажу - при редактировании элемента справочника. т.е. как для людей. А на форме списка номенклатуры - только просмотр с отбором.
  
 Файл с тестовыми данными прикрепил.
 С Уважением, Сергей
  
  


Вложения:
FS113.dt
Название: 1.13
Отправлено: afrorar от Июль 17, 2013, 09:29:12 am
Мое решение... Вроде задача простая, но судя по комментариям уже начинаю сомневаться.
 РС: Комплектующие; Измерение: Деталь; Ресурс: Количество; Реквизит: Стелаж.
Вложения:
3903158.dt
Название: 1.13
Отправлено: artfa от Июль 29, 2013, 05:06:46 pm
небольшие доделки
Вложения:
5142483.dt
Название: 1.13
Отправлено: sergejandreev от Август 13, 2013, 09:43:47 pm
Коллеги, так кто-нибудь защитил на экзамене данную задачу? Я тоже склоняюсь к 2 измерениям стеллаж и комплектующая + программная проверка, но хотелось бы услышать кто действительно "прошел через эту задачу" на экзамене
Название: 1.13
Отправлено: mayz от Сентябрь 24, 2013, 10:18:43 am
1
Название: 1.13
Отправлено: sevod от Октябрь 08, 2013, 10:42:50 pm
А почему все считают, что приход осуществляется только в виде деталей? А если приход будет в виде стеллажей?
 В приходной накладной сделал запрос который раскладывает стеллажи на детали. Комплекты сделал в регистре сведений.
 И еще не понимаю почему запросы у всех такие сложные? У меня все гораздо проще. Кому не трудно, посмотрите пожалуйста решение. Может быть ошибся где.
Вложения:
Sevod_1_13.dt
Название: 1.13
Отправлено: artfa от Октябрь 08, 2013, 11:03:00 pm
Цитата (sevod)
А почему все считают, что приход осуществляется только в виде деталей?
внимательно читаем второе предложение и второе предложение четвертого абзаца в условии задачи
Название: 1.13
Отправлено: sevod от Октябрь 09, 2013, 09:39:26 am
"Закупка комплектующих отражается документом «Приходная накладная», продажа - «Расходная накладная»."

 С приходом понятно. А в четвертом абзаце что? То что остатки только в виде комплектующих храним?
Название: 1.13
Отправлено: java от Октябрь 17, 2013, 11:22:34 am
Задействовал новую методику проведения. Остатки хранятся по деталям, потому что в условии нигде про комплектацию ни слова не сказали. Уникальность деталей сделал просто подчинив Номенклатуру справочнику "Стеллажи", а при продаже стеллажей не выбирать номенклатуру, а выбрать стеллаж и спишутся (состав деталей )* (колво стеллажей).
 Суммы по условию не нужны, поэтому не использовал.

 В отчетах сначала сделал сначала простой вариант как для экзамена - только по деталям,
 потом решил усложнить для деталей и стеллажей вместе, потом упростил для показа только стеллажей.
 В общем - оставил ещё отчет по деталям и стеллажам в конфе в виде бонуса smile
 Думаю в рамках экзамена этот монстрозапрос по стеллажам не успел бы написать.

 Посмотрите пожалуйста
Вложения:
java_1_13.dt
Название: 1.13
Отправлено: java от Октябрь 17, 2013, 10:11:43 pm
Кстати, обнаружил вот такую мелочь неприятную, оператор % работает в СКД, но не в запросе
 Поэтому попытка отбрасывания хвоста  для числа 15.9 другим методом, через выразить...

 
Код
Выбрать выразить(15.9 как число(10,0))  как Число
дает 16. Проще говоря, эта зараза по кличке "выразить" не отбрасывает, а округляет!

 На форумах предлагают вот такой код, феерический по сути, но рабочий на 100%

 
Код
ВЫБРАТЬ РАЗНОСТЬДАТ(ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0),
 ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0), СЕКУНДА, 15.9), СЕКУНДА) КАК ЧислоБезДробнойЧасти
даст 15
Название: 1.13
Отправлено: Voyager от Октябрь 18, 2013, 12:56:49 am
Мое решение, в правильности не сомневаюсь, я бы даже сказал эталонное smile Ветку не читал, 20 страниц пугает, но глянуть надо.
Вложения:
Voyager_1.13.dt
Название: 1.13
Отправлено: java от Октябрь 18, 2013, 11:20:02 am
Переделал отчет, упростил запрос, теперь отчет РАБОТАЕТ именно так как надо!
 Учитывает отсутствие некоторых деталей к стеллажам, не выводит лишних пустых строк, правильно отбрасывает десятичный хвост.

 Пожалуйста, посмотрите!
Вложения:
java_1_13_4.dt
Название: 1.13
Отправлено: SoleSurvivor от Ноябрь 15, 2013, 09:10:25 am
Мое решение. Может кто найдет ошибки?
 РС не использовал. Не вижу смысла все это городить на экзамене да и вообще.
 В РН одно измерение - деталь. Количество стеллажей в отчете вычисляю в запросе (довольно простой запрос по сравнению с тем, что тут встречал). Возможно даже, что запрос можно еще упростить.
 При проведении Расходной пользую новый метод. От стеллажей избавляюсь в первом запросе, формирующем временную таблицу.

 Задача понравилась. Когда читал, все выглядело страшней, чем оказалось на самом деле.

 З.Ы. Извините, подсистемы не создавал.
Вложения:
0988738.dt
Название: 1.13
Отправлено: Donto от Декабрь 09, 2013, 04:36:37 pm
ThinkingStone, Если в вашей расходной накладной изменить Болт М12 с 10 на 100, то документ проводится, а на остатках по этой номенклатуре получается минус 10, а должен быть контроль.
 Коллеги, у меня есть идея по поводу уникальности комплектующих:
 1) Сделать  Справочник стеллажи с ТЧ состав: Номенклатура/Количество
 2) Номенклатуру подчинить этому справочнику, Добавить предопределенный элемент "ПустойСтеллаж", его заполнять владельцем по умолчанию
 3) РН Остатки: Измерения Номенклатура+Стеллаж, ресурс Колво
 Приходная: приходует только комплекующие
 4) Документ "комплектация": списывает с пустого стеллажа на стеллаж в шапке документа
 5) Док расходная: составное поле номенклатура, если стеллаж, то списываем набор записей стеллаж+вся его ТЧ, если не стеллаж, то списываем номенклатура+пустой стеллаж.
 при такой организации регистра хотя бы ясно будет, не хватает номенклатуры отдельной или входящей в состав комплекта.

 прошу покритиковать, а также прояснить по отчету:
 допустим, если Стеллаж1 состоит из 5 гаек и 5 стоек, а Стеллаж2 из 10 гаек и 10 стоек, а у нас в наличии 45 гаек и 45 стоек, то отчет должен показать 9 стеллажей1 и 5 стеллажей2? то есть показывать максимум возможной сборки по каждому стеллажу?
Название: 1.13
Отправлено: Alexander от Декабрь 19, 2013, 01:22:35 pm
после просмотра решения задачи на других форумах, включая see1c сдается мне что РС сведений таки должен иметь стеллаж в качестве ресурса. А то, что такой подход зачли ошибкой на экзамене либо глюк либо не знаю что. Предложенный kow1976 (144) алгоритм для контроля уникальности не всегда верно срабатывает.
 Предложение сделать его реквизитом тоже рабочее, но если претензии у экзаменаторов по  поводу скорости доступа есть, то думаю они и останутся. так что ...
 ---
 в моём решении количество стеллажей для отчета считаю с долями. Просто в  СКД применяю функцию ЦЕЛ.
Вложения:
kul_1_13.dt
Название: 1.13
Отправлено: Alexander от Декабрь 20, 2013, 04:09:20 am
Выкладываю второе решение, где стеллажи - группы, детали - элементы групп. (Идея с  devtrainingforum.v8.1c)
Вложения:
kul_1_13_2.dt
Название: 1.13
Отправлено: korsal от Декабрь 29, 2013, 09:12:59 pm
Мой вариант:
 Стеллажи - группы справочника Номенклатура, детали - элементы, количество в стеллаже - реквизит.
 Регистр сведений не используется. Списание по новой методике.
Вложения:
1.13_korsal.dt
Название: 1.13
Отправлено: Михаил_80 от Январь 03, 2014, 08:26:16 pm
Такой вопрос: нужно ли в документе хранить информацию по комплектации стеллажей? 
 Например у нас на складе 20 болтов, на стеллаж нужно 15. Создали документ, провели, контроль остатков - ОК.
 Теперь поменяли комплектность и нужно уже 25 болтов. Пользователь открывает документ, жмет "Провести и закрыть" и...
 Ошибка - не хватка деталей.

 Выкладываю свой вариант, с двумя табличными частями в документе. В первую пользователь вводит что продаем, во второй уже конкретно что будет списываться с остатков.
Вложения:
m_1_13.dt
Название: 1.13
Отправлено: Sadr от Январь 22, 2014, 01:32:15 pm
Михаил_80, посмотрел Ваше решение. Две табличные части в документе - как по мне так это не нужное усложнение задачи.

 Нет блокировки при списывании. Также не понял манипуляции с параметром &Склад в модуле объекта.

 Еще из мелочей: Приходная накладная позволяет выбрать стелаж, в сообщение выводите ссылку на деталь, лучше (нужно) выводить строковое представление, в отчете по деталям поля группировок вместе с детальными записями, а по условиям задачи должны быть отдельно. Отчет по стелажам не смотрел, так как сам его не делал.

 Выкладываю свое решение, но сразу оговорюсь - условия задачи для себя упростил в сторону условии задачи из билета.
Вложения:
Sadr_1_13.dt
Название: 1.13
Отправлено: must_see от Февраль 18, 2014, 10:24:59 pm
Приветствую)
 Мой вариант решения. Буду рад критике. 
 Спасибо!
Вложения:
must_see_1.13.dt
Название: 1.13
Отправлено: mikas-2008 от Март 14, 2014, 11:04:17 pm
Цитата must_see ()
Приветствую) Мой вариант решения. Буду рад критике. 
 Спасибо!

 В целом комментировать нечего. Все аккуратно и правильно сделано. Уыбнул стеллаж корзина с деталью Крупа манная и тд...  biggrin
 Ну и еще для отбора остатков использовать МВ = ?(РежимПроведения = РежимПроведенияДокумента.Оперативный, Неопределено, Новый Граница(МоментВремени,ВидГраницы.Включая)).

 Кстати у задачи есть еще одно решение. У номенклатуры можно завести табличную часть, в которой можно указать детали, а не использовать РС детали. В прочем с РС задача смотрится красивее. Нет лишнего.
Название: 1.13
Отправлено: must_see от Март 15, 2014, 09:14:42 am
mikas-2008, спасибо)
 В эту пятницу как раз и ходил сдавать, сдал на 4. 
 Допустил мелкие описки (торопился), за которые поснимали чуть-чуть. Но все равно за 4 часа все сделал и сдал раньше.
Название: 1.13
Отправлено: ksandr от Июнь 06, 2014, 05:07:32 pm
Цитата: must_see;33647
Приветствую)
 Мой вариант решения. Буду рад критике.

 Прочитал всю ветку, уже голову сломал с отчетом по стеллажам, посмотрел Ваше решение, сразу на вскидку: приходят готовые изделия, в задании этого нет; при отсутствии на складе одной из деталей всеравно выдает количество стеллажей; количество стеллажей выдает десятичное.
Название: 1.13
Отправлено: ksandr от Июнь 06, 2014, 05:47:43 pm
Ну вроде все решил, посмотрите кто может.
Вложения:
6610936.dt
Название: 1.13
Отправлено: 32ops от Июль 17, 2014, 02:45:40 pm
Не понятно для чего все изголяются с комплектацией? Не проще ли в РН добавить измерение Стеллаж и в документах приходной и расходной в табличной части тоже. В расходной разрешить пустую комплектующую (номенклатура), если она не заполнена, то продаем весь стеллаж.
Название: 1.13
Отправлено: ital от Июль 29, 2014, 03:12:45 pm
Мой вариант:
 Регистр сведений
 , списание по новой методике
 Жду мений
Вложения:
9497759.dt
Название: 1.13
Отправлено: program1Cer от Сентябрь 16, 2014, 01:31:42 pm
Увидел тут на первых страницах идею с регистром сведений, где измерением является деталь, а не стеллаж. Оригинально. Сделал.

 + задача легко ложится на новую методику.
 + можно обойтись вообще одним отчетом, но с разными настройками. ( но я все-таки потом сделал два)
Вложения:
prog1Cer_1.13.dt
Название: 1.13
Отправлено: Prohhor от Декабрь 03, 2014, 08:41:39 am
Мой вариант:
+новая методика проведения;
+без РС для формирования комплектов, без табличных частей справочника Номенклатура, без подчиненных справочников. В справочник номенклатуры добавлен реквизит "Стеллаж" тип "СправочникСсылка.Номенклатура", тем самым контролируется уникальность Деталь - Стеллаж. Упрощаются запросы.
Название: Re: 1.13
Отправлено: Solitar от Май 02, 2015, 03:06:14 pm
Покритикуйте решение.

Делал хранение комлпектов через РСВ, т.к. так сказал делать сам Чистов.

Название: Re: 1.13
Отправлено: arthur1089 от Май 11, 2015, 07:11:13 am
Мой вариант:
+новая методика проведения;
+без РС для формирования комплектов, без табличных частей справочника Номенклатура, без подчиненных справочников. В справочник номенклатуры добавлен реквизит "Стеллаж" тип "СправочникСсылка.Номенклатура", тем самым контролируется уникальность Деталь - Стеллаж. Упрощаются запросы.
я тоже сделал связь комплектов через реквизит.
Запрос в РасходнойНакладной у меня получился больше в размере, зато отчет по наличию комплектов - проще.
Кстати, уже после возникла идея - возможно если сделать два справочника - "Стеллажи" и "Комплектующие", а связь по прежнему через реквизит справочника "Комплектующие", тогда уверен запросы будут намного проще и понятнее, а главное - займет меньше времени
Название: Re: 1.13
Отправлено: Albert от Май 13, 2015, 09:40:51 pm
Покритикуйте решение.

Делал хранение комлпектов через РСВ, т.к. так сказал делать сам Чистов.
В Расходной.
1. Движения.ОстаткиТоваров.Записать(); - лишняя запись, следом пишем сформированный набор.
2.При оперативном проведении в запросе-проверке на "минуса" параметр "МоментВремени" нужен Неопределено, тогда остатки берутся из таблицы итогов, готовые.
3.Для сообщения надо выбирать в запросе ПредставлениеНоменклатуры, а не через точку к Выборке его запрашивать.
Название: Re: 1.13
Отправлено: Prohhor от Май 14, 2015, 02:07:10 pm
Мой вариант:
+новая методика проведения;
+без РС для формирования комплектов, без табличных частей справочника Номенклатура, без подчиненных справочников. В справочник номенклатуры добавлен реквизит "Стеллаж" тип "СправочникСсылка.Номенклатура", тем самым контролируется уникальность Деталь - Стеллаж. Упрощаются запросы.
я тоже сделал связь комплектов через реквизит.
Запрос в РасходнойНакладной у меня получился больше в размере, зато отчет по наличию комплектов - проще.
Кстати, уже после возникла идея - возможно если сделать два справочника - "Стеллажи" и "Комплектующие", а связь по прежнему через реквизит справочника "Комплектующие", тогда уверен запросы будут намного проще и понятнее, а главное - займет меньше времени

Глянул Ваш вариант.
Пару маленьких замечаний:
1) Отчет по количеству стеллажей сформирован не полностью. Он не учитывает ситуацию, когда для стеллажа не хватает какой-то из детали. Он покажет минимальное количество стеллажей по имеющимся деталям, не учитывая, что каких-то деталей вообще нет. В этом случае и стеллажа нет.
2) Не целесообразно, особенно используя менеджер временных таблиц, для каждого нового запрос создавать новый объект типа Запрос. На мой взгляд, правильнее создать объект Запрос один раз, установить к нему менеджер временных таблиц, а далее только менять текст запроса и параметры.
3) Условие в запросе целесообразно задавать таким образом (Склад, Номенклатура) В (ВЫБРАТЬ &Склад, ТабДок.Номенклатура ИЗ ТабДок КАК ТабДок), а не через И;
Название: Re: 1.13
Отправлено: Jones от Июнь 18, 2015, 02:59:38 pm
Все упростил.
Гляньте, кому не лень, есть ли недостатки, помимо мелочей. :)
Название: Re: 1.13
Отправлено: АндрейМ от Июнь 19, 2015, 03:14:03 pm
Посмотрите мой вариант.
1) Проведение по новой методике
2) Вместо РегистраСведений использовал справочник Спецификации
Название: Re: 1.13
Отправлено: rusmosav от Июнь 20, 2015, 07:44:28 am
Прощу оценить.
Название: Re: 1.13
Отправлено: Sergey-Vl от Июнь 24, 2015, 02:17:05 pm
Просьба посмотреть решение задания.
Название: Re: 1.13
Отправлено: mrWinders от Июль 18, 2015, 07:10:38 pm
смотрел решение Prohhor и Solitar. сделал тоже на регистре сведение (Solitar). мне кажется при сдаче на это будут делать акцент,  но и первое тоже вполне рабочее.

Solitar забыл устанавливать условия отбора (выбора) стеллаж/деталь у реквизита документа. если это делать тогда не надо проверять запросами заполнение ТЧ
Название: Re: 1.13
Отправлено: AlexKo от Июль 24, 2015, 07:40:40 am
Привет.
Как Вы в отчете получаете целое количество стеллажей, те как берете целую часть от числа?
Я  в СКД использовал обращение к функции общего модуля, может в скд такая функция уже есть?
Название: Re: 1.13
Отправлено: alex1248 от Июль 24, 2015, 09:26:56 am
AlexKo, посмотри функцию Выразить (есть и в запросах, и в скд с немного отличающимся синтаксисом).
Название: Re: 1.13
Отправлено: AlexKo от Июль 25, 2015, 09:30:18 am
AlexKo, посмотри функцию Выразить (есть и в запросах, и в скд с немного отличающимся синтаксисом).
По моему она округляет по математическому принципу а не берет целое
Название: Re: 1.13
Отправлено: alex1248 от Июль 25, 2015, 09:43:58 am
AlexKo, посмотри функцию Выразить (есть и в запросах, и в скд с немного отличающимся синтаксисом).
По моему она округляет по математическому принципу а не берет целое
Целое (х) = Окр (х-0.5, 0). По крайней мере для положительных х.  :)
Название: Re: 1.13
Отправлено: Quantum81 от Август 25, 2015, 11:51:12 pm
....чик....

 <b>Результат экзамена:</b>
 <b>ОУ</b>: неверно организовано хранение информации о составе стеллажа, регистры предназначены для быстрого получения информации по измерениям, а не ресурсам; блокировки при проведении РН установлены неверно, блокируется по стеллажам, а списываются детали;

 2. Как корректно то установить блокировки по деталям? Еще один запрос?<p><b>Добавлено</b> (16.05.2012, 10:53)
---------------------------------------------
смысл ошибки я понял так: Нельзя устанавливать соединение к таблице по ресурсу. Ведь реально регистр нам возвращает ресурсы по комбинации измерений, получается нарушено предназначение регистра))))
По идее, для такого случая есть свойства у ресурса и реквизита "Индексировать", которое создает дополнительный индекс. Нпр: Ресурс+Измерение1+...
Но скорее всего, т.к. здесь без программной проверки всё-равно не обойтись (на вложенность и зацикленность), то такой вариант экзаменаторами не рассматривается.
Название: Re: 1.13
Отправлено: venvlad от Октябрь 13, 2015, 05:26:19 pm
Как-то так
Название: Re: 1.13
Отправлено: Gosha009 от Октябрь 28, 2015, 10:43:13 am
мое решение
Название: Re: 1.13
Отправлено: axel_work от Март 14, 2016, 05:21:04 pm
Критикуем плиз.

Новая методика проведения, отчет работает вроде гуд (если одного из комплектующих не хватает), для целого числа юзаю Int()
Название: Re: 1.13
Отправлено: Fat_Mike от Апрель 14, 2016, 01:08:59 pm
Посмотрите мой вариант кому не сложно, заранее спасибо ;)
Название: Re: 1.13
Отправлено: filosoff от Апрель 25, 2016, 10:19:12 am
Вот мой вариант :)
Название: Re: 1.13
Отправлено: alfalume от Август 09, 2016, 12:24:31 pm
покритикуйте
Название: Re: 1.13
Отправлено: erdem.badluev от Сентябрь 13, 2016, 12:59:00 pm
покритикуйте
Всё хорошо.
Вопрос: если на складе каком-нибудь нет какой-то детали из комплектации стеллажа (а остальные детали есть) , т.е. Остаток=0 тогда и стеллажа на этом складе не должно быть или будет минимальное число по имеющимся деталям, даже если деталь только одна из нескольких есть (как вы сделали)? или это не критично?
Название: Re: 1.13
Отправлено: alfalume от Сентябрь 17, 2016, 07:13:14 am
покритикуйте
Всё хорошо.
Вопрос: если на складе каком-нибудь нет какой-то детали из комплектации стеллажа (а остальные детали есть) , т.е. Остаток=0 тогда и стеллажа на этом складе не должно быть или будет минимальное число по имеющимся деталям, даже если деталь только одна из нескольких есть (как вы сделали)? или это не критично?
Я не до конца понял вопрос.
Если одна деталь не будет хватать(в комплекте) документ не проводится.
Название: Re: 1.13
Отправлено: erdem.badluev от Сентябрь 19, 2016, 08:53:45 am
Я не до конца понял вопрос.
Если одна деталь не будет хватать(в комплекте) документ не проводится.
Имею ввиду отчет "Наличие стеллажей".
Название: Re: 1.13
Отправлено: ecprof1c от Март 28, 2017, 11:48:23 pm
Добрый день начал подготовку к экзамену. Не судите строго покритикуйте лучше, если что не так объясните. Не совсем понял как сделать чтобы у стеллажей не было одинаковой номенклатуре в составе. Делал через новую методику проведения и регистр сведений. Спасибо. Новенький в данной сфере хочу добиться результатов.
Название: Re: 1.13
Отправлено: jonik от Июнь 26, 2017, 02:43:10 pm
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).
Название: Re: 1.13
Отправлено: const86 от Сентябрь 17, 2017, 07:37:51 pm
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).

У тебя есть ошибка. Ты блокируешь только комплектующие из табличной части. Но если указать стеллаж, блокировки необходимых комплектующих не произойдет.
Название: Re: 1.13
Отправлено: jonik от Сентябрь 18, 2017, 09:39:15 am
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).

У тебя есть ошибка. Ты блокируешь только комплектующие из табличной части. Но если указать стеллаж, блокировки необходимых комплектующих не произойдет.

Все норм блокируется: левое соединение с регистром дает необходимые комплектующие. Проверьте в отладчике.
Название: Re: 1.13
Отправлено: alx389d от Октябрь 27, 2017, 01:26:24 am
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).
отчет "Наличие стеллажей" работает неправильно - нужно проверять наличие всех деталей комплекта на складе, потом брать минимум().

выкладываю свой вариант: детали и стеллажи на одном справочнике, стеллаж сделан ресурсом в рег.сведений.
Название: Re: 1.13
Отправлено: jonik от Октябрь 27, 2017, 12:42:30 pm
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).
отчет "Наличие стеллажей" работает неправильно - нужно проверять наличие всех деталей комплекта на складе, потом брать минимум().

выкладываю свой вариант: детали и стеллажи на одном справочнике, стеллаж сделан ресурсом в рег.сведений.

Отчет работает верно. Левое соединение + функция МИНИМУМ в запросе присутствует.
Название: Re: 1.13
Отправлено: alx389d от Октябрь 27, 2017, 01:49:09 pm
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).
отчет "Наличие стеллажей" работает неправильно - нужно проверять наличие всех деталей комплекта на складе, потом брать минимум().

выкладываю свой вариант: детали и стеллажи на одном справочнике, стеллаж сделан ресурсом в рег.сведений.

Отчет работает верно. Левое соединение + функция МИНИМУМ в запросе присутствует.
попробуй создать новый склад Склад 1, оприходовать туда БОЛТ М12 в колве 100 шт. Отчет покажет наличие комплекта "Высокий" на складе "Склад 1" в кве 5 шт.
Название: Re: 1.13
Отправлено: jonik от Октябрь 27, 2017, 02:14:16 pm
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).
отчет "Наличие стеллажей" работает неправильно - нужно проверять наличие всех деталей комплекта на складе, потом брать минимум().

выкладываю свой вариант: детали и стеллажи на одном справочнике, стеллаж сделан ресурсом в рег.сведений.

Отчет работает верно. Левое соединение + функция МИНИМУМ в запросе присутствует.
попробуй создать новый склад Склад 1, оприходовать туда БОЛТ М12 в колве 100 шт. Отчет покажет наличие комплекта "Высокий" на складе "Склад 1" в кве 5 шт.

Да, вы правы :(. Надо будет переделать запрос. Посмотрел ваш - использование вложенных запросов крайне нежелательно, да и сама конструкция весьма необычна ??? На правильность не проверял. Но все равно спасибо за указание ошибки.
Название: Re: 1.13
Отправлено: alx389d от Октябрь 27, 2017, 02:20:25 pm
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).
отчет "Наличие стеллажей" работает неправильно - нужно проверять наличие всех деталей комплекта на складе, потом брать минимум().

выкладываю свой вариант: детали и стеллажи на одном справочнике, стеллаж сделан ресурсом в рег.сведений.

Отчет работает верно. Левое соединение + функция МИНИМУМ в запросе присутствует.
попробуй создать новый склад Склад 1, оприходовать туда БОЛТ М12 в колве 100 шт. Отчет покажет наличие комплекта "Высокий" на складе "Склад 1" в кве 5 шт.

Да, вы правы :(. Надо будет переделать запрос. Посмотрел ваш - использование вложенных запросов крайне нежелательно, да и сама конструкция весьма необычна ??? На правильность не проверял. Но все равно спасибо за указание ошибки.
ага, насчет вложенных запросов я тоже слышал, хотя впринципе ничего криминального там нет, в данном случае по крайней мере:) Хотя возможно могут придраться, не знаю. Второй отчет без вложенного запроса, через временную таблицу - по такому же принципу можно и первый сделать.
Название: Re: 1.13
Отправлено: jonik от Декабрь 08, 2017, 09:58:33 am
Всем привет. Задача, как мне показалось, не сложная. 2 справочника для номенклатуры, регистр, немного подумать над получением целой части для отчета (сделал через общий модуль).
отчет "Наличие стеллажей" работает неправильно - нужно проверять наличие всех деталей комплекта на складе, потом брать минимум().

выкладываю свой вариант: детали и стеллажи на одном справочнике, стеллаж сделан ресурсом в рег.сведений.

Отчет работает верно. Левое соединение + функция МИНИМУМ в запросе присутствует.
попробуй создать новый склад Склад 1, оприходовать туда БОЛТ М12 в колве 100 шт. Отчет покажет наличие комплекта "Высокий" на складе "Склад 1" в кве 5 шт.

Да, вы правы :(. Надо будет переделать запрос. Посмотрел ваш - использование вложенных запросов крайне нежелательно, да и сама конструкция весьма необычна ??? На правильность не проверял. Но все равно спасибо за указание ошибки.
Подкорректировал
Название: Re: 1.13
Отправлено: Недоучка от Февраль 16, 2018, 11:30:24 am
Здравствуйте! Покритикуйте пожалуйста мой вариант решения задачи.
Название: Re: 1.13
Отправлено: НатальяЮГ от Июнь 11, 2018, 07:01:14 pm
Мой вариант  :)
Название: Re: 1.13
Отправлено: Евгений_нвкз от Октябрь 01, 2020, 08:52:32 am
Мое решение. Критика приветствуется.
Название: Re: 1.13
Отправлено: slavyan_omsk от Октябрь 16, 2020, 01:37:51 pm
Мой Вариант решения.

Что использовано:
Справочник Номенклатура
РегистрСведений  Стеллажи
Регистр Остатков Остатки

В Расходной новая методика проведения

Отчеты: сделаны  два отчета , через варианты
Название: Re: 1.13
Отправлено: КонстантинП от Октябрь 27, 2021, 04:52:48 am
Мое решение, критика приветствуется!