|
|
Заполнить программно документ УстановкаЦенНоменклатуры |
☑ |
|
0
maestro-72
17.02.15
✎
11:31
|
Собственно вопрос уже в теме. Нюанс следующий: хотел как-то облегчить себе жизнь, но поскольку я начинающий в восьмерке, запутался с запросами и ничего не получается. В общем при перекачке поступлений из 77 передается номенклатура и цена, и чтобы грамотно заполнить документ УстановкаЦенНоменклатуры хотелось бы не заполнять позиции цена которых не поменялась, а заполнять только те в которых либо были изменения, либо вообще цена не проставлялась. Думал как то с помощью левого соединения попробовать
Запрос собственно:
СпНомен = ТаблицаЦеныФайла.ВыгрузитьКолонку("Номенклатура"); //Массив
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("СпНомен", СпНомен);
Запрос.УстановитьПараметр("ТаблицаЦеныФайла", ТаблицаЦеныФайла);
Запрос.Текст = "ВЫБРАТЬ
| ТаблицаЦеныФайла.Номенклатура,
| ТаблицаЦеныФайла.Цена
|ПОМЕСТИТЬ ВТ_ТаблицаЦеныФайла
|ИЗ
| &ТаблицаЦеныФайла КАК ТаблицаЦеныФайла
|;
///////////////////////////////////////////////////
|ВЫБРАТЬ
| ВТ_ТаблицаЦеныФайла.Номенклатура,
| ВТ_ТаблицаЦеныФайла.Цена
| ЦеныНоменклатурыСрезПоследних.Номенклатура,
| ЦеныНоменклатурыСрезПоследних.ВидЦены,
| ЦеныНоменклатурыСрезПоследних.Цена
|ИЗ
| ВТ_ТаблицаЦеныФайла КАК ВТ_ТаблицаЦеныФайла
|ЛЕВОЕ СОЕДИНЕНИЕ
| РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
| ПО (ВТ_ТаблицаЦеныФайла.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура) И
| (ВТ_ТаблицаЦеныФайла.Цена = ЦеныНоменклатурыСрезПоследних.Цена);
|
|ГДЕ
| ЦеныНоменклатурыСрезПоследних.Номенклатура в &СпНомен
| И ЦеныНоменклатурыСрезПоследних.ВидЦены = &ВидЦены";
Запрос.УстановитьПараметр("ВидЦены", ВидЦены);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Сообщить(СокрЛП(ВыборкаДетальныеЗаписи.Номенклатура) + " " + СокрЛП(ВыборкаДетальныеЗаписи.Цена));
КонецЦикла;
Но не работает.
Может я вообще не в ту сторону копаю?
|
|
|
1
Timon1405
17.02.15
✎
11:33
|
ждите, в (50) вам предложат купить мегапрайс
|
|
|
2
salvator
17.02.15
✎
11:34
|
>> "заполнять только те в которых либо были изменения"
А что подразумевать под "были изменения"?
|
|
|
3
maestro-72
17.02.15
✎
11:42
|
(2) ну к примеру требуют изменения цены - было 20.05 стало 40.50 т.е. цену надо устанавливать. а если изменения цены не произошло, то соответственно эту номенклатуру в документ не включаем
|
|
|
4
salvator
17.02.15
✎
11:44
|
(3) Ну так укажи в условии соединения неравенство цен.
Кстати, как у тебя этот запрос ошибку-то не выдает?
|
|
|
5
maestro-72
17.02.15
✎
12:23
|
(4) Выдает. Пока не смог исправить.
|
|
|
6
salvator
17.02.15
✎
12:30
|
(5) Я три штуки минимум насчитал.
|
|
|
7
maestro-72
17.02.15
✎
13:03
|
(6) Значит надо над этим работать!
|
|
|
8
FIXXXL
17.02.15
✎
13:06
|
(0) не забудь про валюты и единицы измерения цен
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший