1С 8.3.9.1850 УТП 1.2.27.6 Стоит задача в алгоритм действия скидок, добавить условие чтобы скидки срабатывали при наличии у покупателя дисконтной карты. Т.е. должен быть такой вариант, например, что если стоит условие "количество товара превысило" например 5 штук и стоит признак "Только для дисконтных карт", то эта скидка срабатывает только при наличии у покупателя карты. В регистр сведений "СкидкиНаценкиНоменклатуры", добавил ресурс "СкидкиТолькоДляКарт", добавил флаг в документ "Установка скидок номенклатуры", который устанавливает этот ресурс. Теперь осталось доработать запрос в общем модуле в функции "ЗапросПоСкидкам" и здесь основная трудность )) т.к. там такой запрос в котором я не очень могу разобраться ))) Вот собственно запрос:
ТекстЗапроса = " | ВЫБРАТЬ РАЗРЕШЕННЫЕ | СпрНоменклатура.Номенклатура КАК Номенклатура, | СпрНоменклатура.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, | СпрКачество.Ссылка КАК Качество, | РегСкидкиНоменклатуры.Условие КАК НУсловие, | РегСкидкиНоменклатуры.ЗначениеУсловия КАК НЗначениеУсловия, | РегСкидкиНоменклатуры.ОграничениеСкидкиНаценки КАК НОграничениеСкидкиНаценки, | " + ?(ЭтоНакопительнаяСкидка, "ВЫБОР КОГДА РегСкидкиНоменклатуры.ПроцентСкидкиНаценки ЕСТЬ НЕ NULL | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте) | ИЛИ РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт)) ТОГДА &ПроцентНакопительнойСкидки ИНАЧЕ РегСкидкиНоменклатуры.ПроцентСкидкиНаценки КОНЕЦ", "РегСкидкиНоменклатуры.ПроцентСкидкиНаценки") + " КАК НПроцентСкидкиНаценки, | РегСкидкиПоЦеновымГруппам.Условие КАК ЦУсловие, | РегСкидкиПоЦеновымГруппам.ЗначениеУсловия КАК ЦЗначениеУсловия, | РегСкидкиПоЦеновымГруппам.ОграничениеСкидкиНаценки КАК ЦОграничениеСкидкиНаценки, | " + ?(ЭтоНакопительнаяСкидка, "ВЫБОР КОГДА РегСкидкиПоЦеновымГруппам.ПроцентСкидкиНаценки ЕСТЬ НЕ NULL | И (РегСкидкиПоЦеновымГруппам.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте) | ИЛИ РегСкидкиПоЦеновымГруппам.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт)) ТОГДА &ПроцентНакопительнойСкидки ИНАЧЕ РегСкидкиПоЦеновымГруппам.ПроцентСкидкиНаценки КОНЕЦ", "РегСкидкиПоЦеновымГруппам.ПроцентСкидкиНаценки") + " КАК ЦПроцентСкидкиНаценки |ИЗ | (ВЫБРАТЬ | СпрНоменклатура.Ссылка КАК Номенклатура, | ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) КАК ХарактеристикаНоменклатуры | ИЗ | Справочник.Номенклатура КАК СпрНоменклатура | ГДЕ | СпрНоменклатура.Ссылка В (&МассивНоменклатуры) | ОБЪЕДИНИТЬ ВСЕ | ВЫБРАТЬ | СпрХарактеристики.Владелец, | СпрХарактеристики.Ссылка | ИЗ | Справочник.ХарактеристикиНоменклатуры КАК СпрХарактеристики | ГДЕ | СпрХарактеристики.Ссылка В (&МассивХарактеристик) | ОБЪЕДИНИТЬ ВСЕ | ВЫБРАТЬ | ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка), | ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) | ) КАК СпрНоменклатура | ВНУТРЕННЕЕ СОЕДИНЕНИЕ | Справочник.Качество КАК СпрКачество | ПО | СпрКачество.Ссылка В (&МассивКачество) |ЛЕВОЕ СОЕДИНЕНИЕ | (ВЫБРАТЬ | РегСкидкиНоменклатуры.Номенклатура, | РегСкидкиНоменклатуры.ХарактеристикаНоменклатуры, | РегСкидкиНоменклатуры.Качество, | РегСкидкиНоменклатуры.Условие, | ВЫБОР КОГДА РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) ТОГДА | ВЫРАЗИТЬ(РегСкидкиНоменклатуры.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность | ИНАЧЕ | РегСкидкиНоменклатуры.ЗначениеУсловия | КОНЕЦ КАК ЗначениеУсловия, | МАКСИМУМ(РегСкидкиНоменклатуры.ПроцентСкидкиНаценки) КАК ПроцентСкидкиНаценки, | РегСкидкиНоменклатуры.ОграничениеСкидкиНаценки * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность КАК ОграничениеСкидкиНаценки | ИЗ | РегистрСведений.СкидкиНаценкиНоменклатуры.СрезПоследних(&Дата, | Номенклатура В (&МассивНоменклатуры) | И Качество В (&МассивКачество) | И ПолучательСкидки В (&МассивПолучателей)) КАК РегСкидкиНоменклатуры | ЛЕВОЕ СОЕДИНЕНИЕ | РегистрСведений.ВремяДействияСкидок КАК ВремяДействия | ПО | РегСкидкиНоменклатуры.Регистратор = ВремяДействия.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ | РегистрСведений.КурсыВалют.СрезПоследних(&Дата) КАК КурсыВалют | ПО | РегСкидкиНоменклатуры.Валюта = КурсыВалют.Валюта | ГДЕ | (ВремяДействия.ДеньНедели ЕСТЬ NULL | ИЛИ ВремяДействия.ДеньНедели = &ДеньНедели | И &ТекущееВремя МЕЖДУ ВремяДействия.ВремяНачала И ВремяДействия.ВремяОкончания) | И РегСкидкиНоменклатуры.Валюта <> ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) //| И РегСкидкиНоменклатуры.ПроцентСкидкиНаценки <> 0 | И (РегСкидкиНоменклатуры.ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1) ИЛИ КОНЕЦПЕРИОДА(РегСкидкиНоменклатуры.ДатаОкончания, ДЕНЬ) >= &Дата) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) И ВЫРАЗИТЬ(РегСкидкиНоменклатуры.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность < &Сумма ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуОплаты) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ВидОплаты ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуОплаты)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ВидДисконтнойКарты ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ДисконтнаяКарта ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте)) | СГРУППИРОВАТЬ ПО | РегСкидкиНоменклатуры.Номенклатура, | РегСкидкиНоменклатуры.ХарактеристикаНоменклатуры, | РегСкидкиНоменклатуры.Качество, | РегСкидкиНоменклатуры.Условие, | ВЫБОР КОГДА РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) ТОГДА | ВЫРАЗИТЬ(РегСкидкиНоменклатуры.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность | ИНАЧЕ | РегСкидкиНоменклатуры.ЗначениеУсловия | КОНЕЦ, | РегСкидкиНоменклатуры.ОграничениеСкидкиНаценки * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность | ) КАК РегСкидкиНоменклатуры |ПО | СпрНоменклатура.Номенклатура = РегСкидкиНоменклатуры.Номенклатура | И (СпрНоменклатура.ХарактеристикаНоменклатуры = РегСкидкиНоменклатуры.ХарактеристикаНоменклатуры ИЛИ РегСкидкиНоменклатуры.ХарактеристикаНоменклатуры = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)) | И СпрКачество.Ссылка = РегСкидкиНоменклатуры.Качество |ЛЕВОЕ СОЕДИНЕНИЕ | (ВЫБРАТЬ | РегСкидкиПоЦеновымГруппам.ЦеноваяГруппа, | РегСкидкиПоЦеновымГруппам.Качество, | РегСкидкиПоЦеновымГруппам.Условие, | ВЫБОР КОГДА РегСкидкиПоЦеновымГруппам.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) ТОГДА | ВЫРАЗИТЬ(РегСкидкиПоЦеновымГруппам.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность | ИНАЧЕ | РегСкидкиПоЦеновымГруппам.ЗначениеУсловия | КОНЕЦ КАК ЗначениеУсловия, | МАКСИМУМ(РегСкидкиПоЦеновымГруппам.ПроцентСкидкиНаценки) КАК ПроцентСкидкиНаценки, | РегСкидкиПоЦеновымГруппам.ОграничениеСкидкиНаценки * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность КАК ОграничениеСкидкиНаценки | ИЗ | РегистрСведений.СкидкиНаценкиПоЦеновымГруппам.СрезПоследних(&Дата, Качество В (&МассивКачество) И ПолучательСкидки В (&МассивПолучателей)) КАК РегСкидкиПоЦеновымГруппам | ЛЕВОЕ СОЕДИНЕНИЕ | РегистрСведений.ВремяДействияСкидок КАК ВремяДействия | ПО | РегСкидкиПоЦеновымГруппам.Регистратор = ВремяДействия.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ | РегистрСведений.КурсыВалют.СрезПоследних(&Дата) КАК КурсыВалют | ПО | РегСкидкиПоЦеновымГруппам.Валюта = КурсыВалют.Валюта | ГДЕ | (ВремяДействия.ДеньНедели ЕСТЬ NULL | ИЛИ ВремяДействия.ДеньНедели = &ДеньНедели | И &ТекущееВремя МЕЖДУ ВремяДействия.ВремяНачала И ВремяДействия.ВремяОкончания) | И РегСкидкиПоЦеновымГруппам.Валюта <> ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) //| И РегСкидкиПоЦеновымГруппам.ПроцентСкидкиНаценки <> 0 | И(РегСкидкиПоЦеновымГруппам.ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1) ИЛИ КОНЕЦПЕРИОДА(РегСкидкиПоЦеновымГруппам.ДатаОкончания, ДЕНЬ) >= &Дата) | И(РегСкидкиПоЦеновымГруппам.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) И ВЫРАЗИТЬ(РегСкидкиПоЦеновымГруппам.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность < &Сумма ИЛИ РегСкидкиПоЦеновымГруппам.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента)) | И (РегСкидкиПоЦеновымГруппам.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуОплаты) И РегСкидкиПоЦеновымГруппам.ЗначениеУсловия = &ВидОплаты ИЛИ РегСкидкиПоЦеновымГруппам.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуОплаты)) | И (РегСкидкиПоЦеновымГруппам.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт) И РегСкидкиПоЦеновымГруппам.ЗначениеУсловия = &ВидДисконтнойКарты ИЛИ РегСкидкиПоЦеновымГруппам.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт)) | И (РегСкидкиПоЦеновымГруппам.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте) И РегСкидкиПоЦеновымГруппам.ЗначениеУсловия = &ДисконтнаяКарта ИЛИ РегСкидкиПоЦеновымГруппам.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте)) | СГРУППИРОВАТЬ ПО | РегСкидкиПоЦеновымГруппам.ЦеноваяГруппа, | РегСкидкиПоЦеновымГруппам.Качество, | РегСкидкиПоЦеновымГруппам.Условие, | ВЫБОР КОГДА РегСкидкиПоЦеновымГруппам.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) ТОГДА | ВЫРАЗИТЬ(РегСкидкиПоЦеновымГруппам.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность | ИНАЧЕ | РегСкидкиПоЦеновымГруппам.ЗначениеУсловия | КОНЕЦ, | РегСкидкиПоЦеновымГруппам.ОграничениеСкидкиНаценки * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность | ) КАК РегСкидкиПоЦеновымГруппам |ПО | СпрНоменклатура.Номенклатура.ЦеноваяГруппа = РегСкидкиПоЦеновымГруппам.ЦеноваяГруппа | И СпрКачество.Ссылка = РегСкидкиПоЦеновымГруппам.Качество |ГДЕ | РегСкидкиНоменклатуры.Условие ЕСТЬ НЕ NULL | ИЛИ РегСкидкиПоЦеновымГруппам.Условие ЕСТЬ НЕ NULL |";
Я понимаю, что нужно в этом подзапросе добавить условие:
|ЛЕВОЕ СОЕДИНЕНИЕ | (ВЫБРАТЬ | РегСкидкиНоменклатуры.Номенклатура, | РегСкидкиНоменклатуры.ХарактеристикаНоменклатуры, | РегСкидкиНоменклатуры.Качество, | РегСкидкиНоменклатуры.Условие, | ВЫБОР КОГДА РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) ТОГДА | ВЫРАЗИТЬ(РегСкидкиНоменклатуры.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность | ИНАЧЕ | РегСкидкиНоменклатуры.ЗначениеУсловия | КОНЕЦ КАК ЗначениеУсловия, | МАКСИМУМ(РегСкидкиНоменклатуры.ПроцентСкидкиНаценки) КАК ПроцентСкидкиНаценки, | РегСкидкиНоменклатуры.ОграничениеСкидкиНаценки * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность КАК ОграничениеСкидкиНаценки | ИЗ | РегистрСведений.СкидкиНаценкиНоменклатуры.СрезПоследних(&Дата, | Номенклатура В (&МассивНоменклатуры) | И Качество В (&МассивКачество) | И ПолучательСкидки В (&МассивПолучателей)) КАК РегСкидкиНоменклатуры | ЛЕВОЕ СОЕДИНЕНИЕ | РегистрСведений.ВремяДействияСкидок КАК ВремяДействия | ПО | РегСкидкиНоменклатуры.Регистратор = ВремяДействия.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ | РегистрСведений.КурсыВалют.СрезПоследних(&Дата) КАК КурсыВалют | ПО | РегСкидкиНоменклатуры.Валюта = КурсыВалют.Валюта | ГДЕ | (ВремяДействия.ДеньНедели ЕСТЬ NULL | ИЛИ ВремяДействия.ДеньНедели = &ДеньНедели | И &ТекущееВремя МЕЖДУ ВремяДействия.ВремяНачала И ВремяДействия.ВремяОкончания) | И РегСкидкиНоменклатуры.Валюта <> ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) //| И РегСкидкиНоменклатуры.ПроцентСкидкиНаценки <> 0 | И (РегСкидкиНоменклатуры.ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1) ИЛИ КОНЕЦПЕРИОДА(РегСкидкиНоменклатуры.ДатаОкончания, ДЕНЬ) >= &Дата) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) И ВЫРАЗИТЬ(РегСкидкиНоменклатуры.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность < &Сумма ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуОплаты) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ВидОплаты ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуОплаты)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ВидДисконтнойКарты ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ДисконтнаяКарта ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте))
Но что-то не получается ((( И как лучше выборку ограничить или в условия выборки, что-то я никак не пойму.
О Майн Год! Там же, в документе "Установка скидок номенклатуры" есть условие "По виду дисконтной карты". Назначьте дисконтным картам какой-то вид. В документе условие = По виду дисконтных карт. В Типе назначаемой скидки условие = Количество одного товара в документе превысило...
О Майн Год! Там же, в документе "Установка скидок номенклатуры" есть условие "По виду дисконтной карты". Назначьте дисконтным картам какой-то вид. В документе условие = По виду дисконтных карт. В Типе назначаемой скидки условие = Количество одного товара в документе превысило...
А так не работает. Если бы так работало, то я бы так сделал. Но оно не работает. Или это ошибка именно моей конфигурации? Тип скидки служит для быстрого заполнения реквизитов документа "Установка скидок номенклатуры"
... | ГДЕ | (ВремяДействия.ДеньНедели ЕСТЬ NULL | ИЛИ ВремяДействия.ДеньНедели = &ДеньНедели | И &ТекущееВремя МЕЖДУ ВремяДействия.ВремяНачала И ВремяДействия.ВремяОкончания) | И РегСкидкиНоменклатуры.Валюта <> ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка) //| И РегСкидкиНоменклатуры.ПроцентСкидкиНаценки <> 0 | И (РегСкидкиНоменклатуры.ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1) ИЛИ КОНЕЦПЕРИОДА(РегСкидкиНоменклатуры.ДатаОкончания, ДЕНЬ) >= &Дата) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента) И ВЫРАЗИТЬ(РегСкидкиНоменклатуры.ЗначениеУсловия КАК ЧИСЛО) * &КурсКратность * КурсыВалют.Курс / КурсыВалют.Кратность < &Сумма ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоСуммеДокумента)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуОплаты) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ВидОплаты ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуОплаты)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ВидДисконтнойКарты ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоВидуДисконтныхКарт)) | И (РегСкидкиНоменклатуры.Условие = ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте) И РегСкидкиНоменклатуры.ЗначениеУсловия = &ДисконтнаяКарта ИЛИ РегСкидкиНоменклатуры.Условие <> ЗНАЧЕНИЕ(Перечисление.УсловияСкидкиНаценки.ПоДисконтнойКарте)) // Flexy | И ВЫБОР КОГДА &ДисконтнаяКарта <> ЗНАЧЕНИЕ(Справочник.ИнформационныеКарты.ПустаяСсылка) ТОГДА РегСкидкиНоменклатуры.СкидкиТолькоДляКарт = ИСТИНА КОНЕЦ //-----
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!