Автор Тема: Задача 2.39, 2.40 (Сборник УТ 11.4)  (Прочитано 12368 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Кирилл Зубков

  • Пользователь
  • **
  • Сообщений: 15
Re: Задача 2.39, 2.40 (Сборник УТ 11.4)
« Ответ #30 : Октябрь 13, 2020, 04:17:37 pm »
По поводу доп. реквизита в соглашении с поставщиками - как именно всё реализовали? В доп. реквизите соглашения задается пороговый процент годности (один для всей номенклатуры, закупаемой в рамках соглашения), а на уровне серий пороговые проценты годности (т.е. доп. реквизит серии "Процент годности") не создавали вообще?
Да. Рассчитывала срок годности исходя из значений дата  производства и годен до. Ну а процент годности, ориентируясь на дату документа.
Согласен, доп. рек. в сериях не нужен. процент годности рассчитывать в запросе.

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

Вопрос в другом - как организовать хранение пороговых значений процента годности. Если храним в доп. реквизите серии - имеем возможность задать пороговый процент для каждой серии свой. Если в доп. реквизите соглашения - для всей закупаемой номенклатуры один и тот же. В сборнике задач 2016 года, как уже писал выше, задача решена через пороговые проценты годности, хранимые в доп. реквизите серии, а не в соглашении. Т.е. по данному моменту пока что остается вариативность (и мне это не нравится), и через доп. реквизит серии получается даже более гибкая настройка порогового процента годности.

А доп. реквизиты "Дата производства" и "Срок годности в днях" - действительно, лишние при любом раскладе, для каких бы то ни было целей.
Вот я не понял. Как, зачем, для чего? даже не могу сформулировать вопрос. В каждой серии Вы собираетесь хранить "порог годности"? а если для одного соглашения (поставщика) этот порог 50%, а для другого 10% сколько таких порогов будете хранить в одной серии? Или я Вас не понял.

В предыдущем сборнике задача решена через доп. реквизит серии, в котором хранятся пороговые проценты годности; вот и вся моя аргументация. Решение по данному варианту предполагает создание одного-единственного доп. реквизита у серии, без какой-либо привязки к соглашениям вообще. Но что-то возражать против "отлично" на экзамене трудновато, разумеется :) С чисто практической точки зрения вариант с хранением порогового процента годности в доп. реквизите соглашения более адекватный, пожалуй; тут я соглашусь.

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

По поводу "Ничего создавать не надо в расширении": в данном варианте решения ничего и не создается, только доп. реквизит серии в пользовательском режиме. В расширение только заимствуются объекты, необходимые для построения запроса, ну и дорабатывается обработчик события "Обработка проверки заполнения" в модуле объекта ПТиУ или ПОнТ, в зависимости от номера задачи (последнюю аббревиатуру нигде раньше не встречал, забавно получилось).

А вот Grekas и ikalina, похоже, создают ещё какой-то регистр сведений и чего-то с ним крутят-вертят.

sasha772

  • Новичок
  • *
  • Сообщений: 5
  • ФИО: Саша
Re: Задача 2.39, 2.40 (Сборник УТ 11.4)
« Ответ #31 : Ноябрь 29, 2020, 01:46:35 pm »
Добрый день! Готовлюсь к экзамену, решил задачу 2.39 таким образом. Интересно, подойдет ли такое решение на экзамене?


kmdtyjr

  • Пользователь
  • **
  • Сообщений: 12
  • ФИО: Миха1983
Re: Задача 2.39, 2.40 (Сборник УТ 11.4)
« Ответ #32 : Апрель 07, 2021, 10:17:42 am »
Коллеги, подскажите актуальное решение. Где все таки указывать ПГТ, в соглашении или в самой серии? Срок годности высчитывать из стандартных реквизитов или жестко указывать в доп реквизите срок годности.?

Илья Сергеев

  • Пользователь
  • **
  • Сообщений: 29
Re: Задача 2.39, 2.40 (Сборник УТ 11.4)
« Ответ #33 : Июль 14, 2021, 03:50:01 pm »
Добрый день! Готовлюсь к экзамену, решил задачу 2.39 таким образом. Интересно, подойдет ли такое решение на экзамене?
Автор еще заходит?
Есть вопросы.

ВидыНоменклатуры.Ссылка КАК ВидНоменклатуры
|ПОМЕСТИТЬ ВТ_ВидыНоменклатуры
|ИЗ
|   Справочник.ВидыНоменклатуры КАК ВидыНоменклатуры
|ГДЕ
|   ВидыНоменклатуры.ИспользоватьСрокГодностиСерии = ИСТИНА
|   И ВидыНоменклатуры.ИспользоватьДатуПроизводстваСерии = ИСТИНА
|   И ВидыНоменклатуры.НастройкаИспользованияСерий = &НастройкаИспользованияСерий

Зачем тут мы отбираем по НастройкаИспользованияСерий? Вы ж сами в комментариях пишете, что "Вопрос по ПартияТоваров или ЭземплярТовара, наверно спорный, но будем считать, что партия".
Тогда не проще оставить отбор по первым двум критериям? Код универсальнее и короче.


Илья Сергеев

  • Пользователь
  • **
  • Сообщений: 29
Re: Задача 2.39, 2.40 (Сборник УТ 11.4)
« Ответ #34 : Июль 14, 2021, 05:44:39 pm »
Добрый день! Готовлюсь к экзамену, решил задачу 2.39 таким образом. Интересно, подойдет ли такое решение на экзамене?

Ну, и еще:

Цитировать
ВЫБРАТЬ
|   СоглашенияСПоставщикамиДополнительныеРеквизиты.Значение КАК ДопустимыйСрокГодности
|ИЗ
|   Справочник.СоглашенияСПоставщиками.ДополнительныеРеквизиты КАК СоглашенияСПоставщикамиДополнительныеРеквизиты
|ГДЕ
|   СоглашенияСПоставщикамиДополнительныеРеквизиты.Свойство = &ДопустимыйСрокГодности
|   И СоглашенияСПоставщикамиДополнительныеРеквизиты.Ссылка = &Ссылка"   ;

   Запрос.УстановитьПараметр("ДопустимыйСрокГодности", Планывидовхарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Процент срока полезного использования"));

Зачем устанавливать параметр, ища его по наименованию (которое пользователь может запросто отредактировать), когда можно сразу отбирать по имени как-нить так:


Цитировать
|ГДЕ
|   СоглашенияСПоставщикамиДополнительныеРеквизиты.Свойство.Имя = ""ПроцентСрокаПолезногоИспользования_""
|   И СоглашенияСПоставщикамиДополнительныеРеквизиты.Ссылка = &Ссылка"   ;
   

PS Я не претендую на истину, просто разбираю задачи, поэтому поправьте меня, если я где не прав. 

pidid80367

  • Новичок
  • *
  • Сообщений: 1
Re: Задача 2.39, 2.40 (Сборник УТ 11.4)
« Ответ #35 : Август 03, 2022, 09:33:22 am »
Предлагаю свой вариант решения задачи 2.39/2.40. Только вот по первой задаче есть замечание: почему-то нельзя указать серии для документа "ПриобретениеТоваровИУслуг " нельзя указать серии, пока не установить в настройках склада галку "Ордерные склады"