![]() |
|
Связь в запросе по похожести серии(для уценки) | ☑ | ||
---|---|---|---|---|
0
MiniMuk
12.02.14
✎
10:28
|
Есть у меня номенклатура с серией СЕРИЯ, через какое-то время эта серия списывается и приходуется как СЕРИЯНН, при оприходовании я запоминаю процент уценки как %.
После изменения цены на номенклатуру владельца СЕРИИ в запросе хочу посчитать новую цену для СЕРИИНН через запомнены процент уценки ЦеныНоменклатурыСрезпоследних.Цена*уценка.% выбрать из ЦеныНоменклатурыСрезпоследних .. левоесоединение (выбрать %, СерияНН из Уценка) как уценка по ЦеныНоменклатурыСрезпоследних.СЕРИЯ подобно уценка.СЕРИЯНН |
|||
1
Maxus43
12.02.14
✎
10:29
|
в чем вопрос то?
|
|||
2
Wobland
12.02.14
✎
10:33
|
(1) какой такой вопрос?
|
|||
3
MiniMuk
12.02.14
✎
10:33
|
как бы соедениние по подобно сделать
|
|||
4
Wobland
12.02.14
✎
10:34
|
(3) начинай рассказывать, что такое похожесть элементов справочника
|
|||
5
MiniMuk
12.02.14
✎
10:36
|
программно я делаю так от серия откидываю 2 последних цифры тоесть из СЕРИИИНН(НомеклатураНН) получаю СЕРИЯ(Номеклатура) ищу цену на Номеклатура помножаю на процент. можно не программно а запросом
|
|||
6
Wobland
12.02.14
✎
10:37
|
можно подумать, запросом - это не программно. сравниваеь подстроки штоль?
|
|||
7
MiniMuk
12.02.14
✎
10:40
|
программно в коде обработки запроса
|
|||
8
MiniMuk
12.02.14
✎
10:40
|
Если Прав(СерииНоменклатуры, 2) = "UC" тогда
КоличествоСимволов = СтрДлина(Номенклатура.Артикул); СтараяНоменклатура = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Сред(Номенклатура.Артикул, 1, КоличествоСимволов-2) ); Иначе // Заполнение цены зависит от розничности операции. КонецЕсли; |
|||
9
MiniMuk
12.02.14
✎
10:41
|
вот я для номеклатуры получаю цену
|
|||
10
MiniMuk
12.02.14
✎
10:41
|
Функция ПолучитьЦенуНового(Номенклатура, СерииНоменклатуры )
//ТекТипЦен = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнойТипЦенПродажи"); ////Ковалев 20130830 найдем цену товара до уценки Цена = 0; Если Прав(СерииНоменклатуры, 2) = "UC" тогда КоличествоСимволов = СтрДлина(Номенклатура.Артикул); СтараяНоменклатура = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Сред(Номенклатура.Артикул, 1, КоличествоСимволов-2) ); Иначе // Заполнение цены зависит от розничности операции. КонецЕсли; //ОбработкаТабличныхЧастей.ЗаполнитьЕдиницуЦенуПродажиТабЧасти(СтрокаТовара, ЭтотОбъект, //мВалютаРегламентированногоУчета, мВалютаРегламентированногоУчета, ТипЦен, Истина); Если Не СтараяНоменклатура = Справочники.Номенклатура.ПустаяСсылка() Тогда Цена = Ценообразование.ПолучитьЦенуНоменклатуры(СтараяНоменклатура, , ТипыЦен, ДатаКон, ,мВалютаРегламентированногоУчета); КонецЕсли; Возврат Цена; |
|||
11
MiniMuk
12.02.14
✎
10:43
|
никак не могу понять как в запросе обойти вот этот
Сред(Номенклатура.Артикул, 1, КоличествоСимволов-2) |
|||
12
Wobland
12.02.14
✎
10:44
|
на всякий случай даю справку: "аанн" таки подобно "аа"+"%"
|
|||
13
MiniMuk
12.02.14
✎
10:47
|
(12) про подобно в условии ГДЕ я слышал
|
|||
14
MiniMuk
12.02.14
✎
10:51
|
ВЫБРАТЬ
Была.Номенклатура, Была.Цена, Уценка.НоменклатураУценки, Уценка.СерииНоменклатурыУценки, Уценка.ПроцентУценки ИЗ РегистрСведений.ЦеныУценки.СрезПоследних КАК Уценка ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК Была ПО Уценка.НоменклатураУценки = Была.Номенклатура вместо равно подобно не ставиться |
|||
15
Wobland
12.02.14
✎
10:53
|
чего врёшь-то?
http://i.imgur.com/AMDGSo3.png |
|||
16
MiniMuk
12.02.14
✎
11:09
|
нда, надо было наименование добавить
|
|||
17
MiniMuk
12.02.14
✎
11:09
|
Уценка.НоменклатураУценки.Наименование
|
|||
18
Wobland
12.02.14
✎
11:12
|
да не за что
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |