|
Не работает МоментВремени(). Надо получить старую цену. |
☑ |
0
Koliaff
13.06.13
✎
07:51
|
Надо получить старую оптовую цену для товара.
Вот код :
============================
ЗапросПоСтаромуОпту = Новый Запрос;
ЗапросПоСтаромуОпту.Текст = "ВЫБРАТЬ
| ЦеныНоменклатурыСрезПоследних.Цена
|ИЗ
| РегистрСведений.ЦеныНоменклатуры.СрезПоследних(
| &ПериодВремениДоДокумента,
| ТипЦен = &Опт
| И Номенклатура = &НашаНоменклатура) КАК ЦеныНоменклатурыСрезПоследних";
ЗапросПоСтаромуОпту.УстановитьПараметр("Опт",Справочники.ТипыЦенНоменклатуры.НайтиПоКоду("00002"));
ЗапросПоСтаромуОпту.УстановитьПараметр("НашаНоменклатура",ДанныеСтроки.Номенклатура);
Если ЭтоНовый() Тогда
ЗапросПоСтаромуОпту.УстановитьПараметр("ПериодВремениДоДокумента",ТекущаяДата());
Иначе
ЗапросПоСтаромуОпту.УстановитьПараметр("ПериодВремениДоДокумента",Новый Граница(Ссылка.МоментВремени(), ВидГраницы.Исключая));
КонецЕсли;
=================================
Почему-то если документ, в котором распологается этот запрос делает движения по регистру цены номенклатуры, то запрос срабатывает так, что показывает цену, установленную нашим проводимым документом, хотя ВидГраницы.Исключая
================================
Подскажите ?
|
|
1
cw014
13.06.13
✎
08:03
|
Новый Граница(Ссылка.Дата, ВидГраницы.Исключая)
|
|
2
Koliaff
13.06.13
✎
08:06
|
ЗапросПоСтаромуОпту.УстановитьПараметр("ПериодВремениДоДокумента",Новый Граница(Ссылка.Дата, ВидГраницы.Исключая));
==========================================
Все равно показывает цену установленную документом
|
|
3
Фрэнки
13.06.13
✎
08:09
|
(2) у меня тоже есть подобного рода запросы, но все нормально работает по варианту:
УстановитьПараметр("ПериодВремениДоДокумента",Новый Граница(Ссылка.МоментВремени(), ВидГраницы.Исключая));
|
|
4
Defender aka LINN
13.06.13
✎
08:09
|
(2) За Ссылка.Дата - пожизненный эцих с гвоздями.
А вообще - подумать пробовал? Ну, там, в сторону того, какая у регистра "ЦеныНоменклатуры" периодичность? Или в сторону того - стоит ли записывать движения принудительно?
|
|
5
Koliaff
13.06.13
✎
08:09
|
ЗапросПоСтаромуОпту.УстановитьПараметр("ПериодВремениДоДокумента",Новый Граница(НачалоДня(Ссылка.Дата)-1, ВидГраницы.Исключая));
Вот так работает, но что-то как-то не красиво
|
|
6
Фрэнки
13.06.13
✎
08:10
|
(2) а что в регистре сведений? как он настроен по периодичности?
|
|
7
Фрэнки
13.06.13
✎
08:10
|
(5) похоже что у тебя периодичность День
|
|
8
Koliaff
13.06.13
✎
08:11
|
"В пределах дня" - периодичность
|
|
9
Koliaff
13.06.13
✎
08:12
|
ВОт так напиал :
ЗапросПоСтаромуОпту.УстановитьПараметр("ПериодВремениДоДокумента",НачалоДня(Ссылка.Дата)-1);
======================
Правильно ?
|
|
10
Фрэнки
13.06.13
✎
08:17
|
(9) Если ваш проводимый документ устанавливает Цену, то убирай независимость, а периодичность установи по регистратору. Иначе глюки в установке цен все равно будут, если кто-то из юзеров забудет, что устанавливать цену разрешается только один раз в день. Но если не менять периодичность, то работать будет и так как у тебя написано в 9
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший