Как в параметрической спецификации в графе "количество" формулой прописать несколько значений?
1C:Бухгалтерия
1С:Управление нашей фирмой 1.6
Платформа 1С v8.3
Легкая промышленность, мода и одежда
Windows
Россия
Корп. решения 1С
Автоматизация
Бухгалтер
Пользователь
Программист
Руководитель проекта
Системный администратор
Вопрос
(Устарело) Разработка
Добрый день!
1С УНФ. Как в параметрической спецификации в графе "количество" формулой прописать несколько значений?
Нужно в зависимости от характеристики "размер" брать разное количество ткани.
Например Если указан в номенклатура размер S, то расход ткани 2, Если указан размер M, то расход ткани 3.
Как это реализовано сейчас.
Каждый размер записан отдельной строчкой и на каждый размер прописана формула.
Но можно как то это все записать в 1 формулу? Логически должно решаться через "Если...Иначе", но больше 1 условия добавить не могу .
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
Так работает.
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
Так не работает
1С УНФ. Как в параметрической спецификации в графе "количество" формулой прописать несколько значений?
Нужно в зависимости от характеристики "размер" брать разное количество ткани.
Например Если указан в номенклатура размер S, то расход ткани 2, Если указан размер M, то расход ткани 3.
Как это реализовано сейчас.
Каждый размер записан отдельной строчкой и на каждый размер прописана формула.
Но можно как то это все записать в 1 формулу? Логически должно решаться через "Если...Иначе", но больше 1 условия добавить не могу .
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
Так работает.
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
Так не работает
Прикрепленные файлы:
Найденные решения
Так записать не получится. В каркасном выражении Если ... Иначе ... КонецЕсли нет строки ИначеЕсли, так как текст который вы собираете далее просто заменяется на программный оператор условия. Вариант который могу предложить это только вложенный оператор условия, получится в итоге
Вместо
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
Будет
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
#КОНЕЦЕСЛИ
Тогда оператор условия сработает правильно потому что сработает первое условие, а если нет то тогда будет проверятся второе.
В итоге выполнится код
?( [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M] , 2.65 , ?([Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M], 3, НЕОПРЕДЕЛЕНО))
Вместо
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
Будет
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
#КОНЕЦЕСЛИ
Тогда оператор условия сработает правильно потому что сработает первое условие, а если нет то тогда будет проверятся второе.
В итоге выполнится код
?( [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M] , 2.65 , ?([Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M], 3, НЕОПРЕДЕЛЕНО))
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Так записать не получится. В каркасном выражении Если ... Иначе ... КонецЕсли нет строки ИначеЕсли, так как текст который вы собираете далее просто заменяется на программный оператор условия. Вариант который могу предложить это только вложенный оператор условия, получится в итоге
Вместо
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
Будет
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
#КОНЕЦЕСЛИ
Тогда оператор условия сработает правильно потому что сработает первое условие, а если нет то тогда будет проверятся второе.
В итоге выполнится код
?( [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M] , 2.65 , ?([Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M], 3, НЕОПРЕДЕЛЕНО))
Вместо
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
Будет
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_S]
#ТОГДА 2.65
#ИНАЧЕ
#ЕСЛИ [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M]
#ТОГДА 3
#ИНАЧЕ НЕОПРЕДЕЛЕНО
#КОНЕЦЕСЛИ
#КОНЕЦЕСЛИ
Тогда оператор условия сработает правильно потому что сработает первое условие, а если нет то тогда будет проверятся второе.
В итоге выполнится код
?( [Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M] , 2.65 , ?([Характеристика.[Размер (Костюмы)]] = [ДополнительноеЗначение_M], 3, НЕОПРЕДЕЛЕНО))
Бухгалтер Пользователь Программист Руководитель проекта Системный администратор
Вопрос, разумеется, риторический - оформление ветки тегами напоминает классическую елку из Простоквашино:
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот