G
Guest
Нужна помощь, хочу задать правильно условие для переменной , которая должна иметь 4 значения NEW, PriceDOWN, PriceUP, Цена без изменений.
Суть в том чтобы в обработке ПечатьПрайса присутствовало значение позиции в прайсе, "НОВАЯ", "ЦЕНА УПАЛА", "ЦЕНА ПОДНЯЛАСЬ", сам я имею очень маленький опыт программирования, который вот из таких мелочей и состоит собственно...
Вот часть кода которую я добавил в обработку "ПечатьПрайса":
Если (ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта,РабочаяДата() ) -
ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата(-3) )) < 0 Тогда
Price = "PriceDOWN";
ИначеЕсли (ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата() ) -
ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата(-3) )) = 0 Тогда
Price = "Цена без изменений";
ИначеЕсли (ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата() ) -
ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта ,РабочаяДата(-3) )) > 0 Тогда
Price = "PriceUP";
ИначеЕсли ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата(-3) ) = 0 Тогда
Price = "NEW";
КонецЕсли;
Естественно переменную "Price" я задал правильно в нужном месте, иначе бы меня обматерила 1Ска...
У меня во всех случях переменная Price имеет значение "Цена без изменений", а я хотел чтобы те позиции на которые цена изменилась до 3х дней и меньше отмечалась "PriceDOWN" или "PriceUP", а если текущая позиция новая, то в течении 3х дней отмечать её как "NEW". Я предполагаю что я неверно "отматываю" дату назад, т.е. "РабочаяДата(-3)" не есть текущая дата - 3 дня... Кто подскажет как это сделать правильно?
Заранее спасибо!
Суть в том чтобы в обработке ПечатьПрайса присутствовало значение позиции в прайсе, "НОВАЯ", "ЦЕНА УПАЛА", "ЦЕНА ПОДНЯЛАСЬ", сам я имею очень маленький опыт программирования, который вот из таких мелочей и состоит собственно...
Вот часть кода которую я добавил в обработку "ПечатьПрайса":
Если (ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта,РабочаяДата() ) -
ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата(-3) )) < 0 Тогда
Price = "PriceDOWN";
ИначеЕсли (ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата() ) -
ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата(-3) )) = 0 Тогда
Price = "Цена без изменений";
ИначеЕсли (ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата() ) -
ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта ,РабочаяДата(-3) )) > 0 Тогда
Price = "PriceUP";
ИначеЕсли ОпределитьЦенуПродукта(В_Фирма, В_МХ, ТабЦен.ВидЦен, ТабПрод.Продукт, ТабПрод.ЕИ, В_Валюта, РабочаяДата(-3) ) = 0 Тогда
Price = "NEW";
КонецЕсли;
Естественно переменную "Price" я задал правильно в нужном месте, иначе бы меня обматерила 1Ска...
У меня во всех случях переменная Price имеет значение "Цена без изменений", а я хотел чтобы те позиции на которые цена изменилась до 3х дней и меньше отмечалась "PriceDOWN" или "PriceUP", а если текущая позиция новая, то в течении 3х дней отмечать её как "NEW". Я предполагаю что я неверно "отматываю" дату назад, т.е. "РабочаяДата(-3)" не есть текущая дата - 3 дня... Кто подскажет как это сделать правильно?
Заранее спасибо!