|
УТ 11.4.7.150 выбор дополнительного вида цен | ☑ | ||
---|---|---|---|---|
0
LivingStar
06.06.19
✎
07:20
|
Конфигурация УТ 11.4.7.150. На форме разместил реквизит дополнительная цена. Тип справочник ВидыЦен.
В табличной части поле ЦенаСравнения. Как сейчас при выборе дополнительной цены, проставить в колонке эту цену? В справочнике не нашел самого числа цены. |
|||
1
Dmitrith
06.06.19
✎
08:47
|
Открой для себя регистр сведений ЦеныНоменклатуры
|
|||
2
Maniac
06.06.19
✎
08:49
|
)))) Реквизиты научился делать... а про код забыл))
|
|||
3
Maniac
06.06.19
✎
08:51
|
Прямо классика жанра, когда пользователи думают что в 1С простым волшебных добавлением колонок и кнопок думают что у программиста это работы на пару минут) И все сразу заработает как им нужно)))
|
|||
4
LivingStar
06.06.19
✎
10:31
|
Если я при перевыборе дополнительного вида цен, хочу сделать запрос по регистру сведений
и заполнить столбец с ценами. Как правильно это будет сделать? В запрос нужно передать список цен с табличной части документа? ВЫБРАТЬ ЦеныНоменклатурыПоставщиковСрезПоследних.Номенклатура КАК Номенклатура, ЦеныНоменклатурыПоставщиковСрезПоследних.Цена КАК Цена, ЦеныНоменклатурыПоставщиковСрезПоследних.ВидЦеныПоставщика КАК ВидЦеныПоставщика ИЗ РегистрСведений.ЦеныНоменклатурыПоставщиков.СрезПоследних(&Период, ВидЦеныПоставщика = &ДополнительнаяЦена) КАК ЦеныНоменклатурыПоставщиковСрезПоследних |
|||
5
LivingStar
06.06.19
✎
11:51
|
Как правильно выбрать? Что бы отбор был только в ценами?
ВЫБРАТЬ ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура, ЦеныНоменклатурыПоставщиковСрезПоследних.Цена КАК Цена ИЗ Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатурыПоставщиков.СрезПоследних(&Период, ВидЦеныПоставщика = &ВидЦены) КАК ЦеныНоменклатурыПоставщиковСрезПоследних ПО ЗаказПоставщикуТовары.Номенклатура = ЦеныНоменклатурыПоставщиковСрезПоследних.Номенклатура ГДЕ ЗаказПоставщикуТовары.Ссылка = &Ссылка |
|||
6
LivingStar
06.06.19
✎
12:00
|
Так верно будет?
ВЫБРАТЬ ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура, ЕСТЬNULL(ЦеныНоменклатурыПоставщиковСрезПоследних.Цена, 0) КАК Цена ПОМЕСТИТЬ ВТ_ДополнительныеЦены ИЗ Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатурыПоставщиков.СрезПоследних( &Период, ВидЦеныПоставщика = &ВидЦены И Цена <> NULL) КАК ЦеныНоменклатурыПоставщиковСрезПоследних ПО ЗаказПоставщикуТовары.Номенклатура = ЦеныНоменклатурыПоставщиковСрезПоследних.Номенклатура ГДЕ ЗаказПоставщикуТовары.Ссылка = &Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ДополнительныеЦены.Номенклатура КАК Номенклатура, ВТ_ДополнительныеЦены.Цена КАК Цена ИЗ ВТ_ДополнительныеЦены КАК ВТ_ДополнительныеЦены ГДЕ ВТ_ДополнительныеЦены.Цена <> 0 |
|||
7
sqr4
06.06.19
✎
12:03
|
Цена <> NULL
даже NULL <> NULL ахахахах |
|||
8
LivingStar
06.06.19
✎
13:37
|
При изменении види цен, делаю запрос.
Как сейчас правильно занести выбранные цены в строки табличной части? Подскажите пожалуйста. Очень благодарен!!! // &НаСервере Процедура УстановитьЦенуСравненияНаСервере() Для каждого СтрТовары Из Элементы.Товары Цикл Сообщить(СтрТовары.Товар); КонецЦикла; Запрос = Новый Запрос; Запрос.Текст = " |ВЫБРАТЬ | ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура |ПОМЕСТИТЬ ВТ_ЗаказПоставщику |ИЗ | Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары |ГДЕ | ЗаказПоставщикуТовары.Ссылка = &Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТ_ЗаказПоставщику.Номенклатура КАК Номенклатура, | ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена, | ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены |ИЗ | ВТ_ЗаказПоставщику КАК ВТ_ЗаказПоставщику | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних( | &Период, | ВидЦены = &ВидЦены | И Номенклатура В | (ВЫБРАТЬ | ЗаказПоставщику.Номенклатура | ИЗ | ВТ_ЗаказПоставщику КАК ЗаказПоставщику)) КАК ЦеныНоменклатурыСрезПоследних | ПО ВТ_ЗаказПоставщику.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура"; Запрос.УстановитьПараметр("Ссылка", Ссылка); Запрос.УстановитьПараметр("ВидЦен", Справочники.ВидыЦен.НайтиПоНаименованию("2018 ТЕСТ", 1)); Рез = Запрос.Выполнить(); Если Не Рез.Пустой() Тогда Выборка = Рез.Выбрать(); Пока Выборка.Следующий() Цикл КонецЦикла; КонецЕсли; КонецПроцедуры |
|||
9
sqr4
06.06.19
✎
14:02
|
Передавай в запрос еще идентификатор строки, а затем ищи ее через НайтиСтроки. Быстрее будет, взять все реквизиты тч, а затем из запроса все загрузить в тч, наверное.
|
|||
10
LivingStar
06.06.19
✎
14:10
|
(9) Не совсем понимаю, извините (((( Можно пример кода?
|
|||
11
LivingStar
06.06.19
✎
14:33
|
Подскажите как записать значения в табличную часть?
Если Не Рез.Пустой() Тогда Выборка = Рез.Выбрать(); Пока Выборка.Следующий() Цикл Отбор = Новый Структура(); Отбор.Вставить("Номенклатура", Выборка.Номенклатура); НайденноеЗначение = Объект["Товары"].НайтиСтроки(Отбор); Если НайденноеЗначение.Количество() > 0 Тогда Сч = 0; Пока НайденноеЗначение.Количество() >= Сч Цикл Сообщить(НайденноеЗначение[Сч].Наименование); НайденноеЗначение[Сч].СуммаСравнения = Выборка.Цена; Сч = Сч + 1; КонецЦикла; КонецЕсли; КонецЦикла; КонецЕсли; КонецПроцедуры // <- |
|||
12
LivingStar
06.06.19
✎
14:49
|
почему не появляются значения в табличной части которые я заполняю?
Пока Выборка.Следующий() Цикл Отбор = Новый Структура(); Отбор.Вставить("Номенклатура", Выборка.Номенклатура); // ОбъектЗаказПоставщику = Объект.Ссылка.ПолучитьОбъект(); // НайденноеЗначение = ОбъектЗаказПоставщику["Товары"].НайтиСтроки(Отбор); Если НайденноеЗначение.Количество() > 0 Тогда Сч = 0; Пока НайденноеЗначение.Количество() > Сч Цикл //Сообщить(НайденноеЗначение[Сч].Номенклатура); НайденноеЗначение[Сч].СуммаСравнения = Выборка.Цена; Сч = Сч + 1; КонецЦикла; КонецЕсли; //ОбъектЗаказПоставщику.Записать(РежимЗаписиДокумента.Запись); КонецЦикла; |
|||
13
LivingStar
06.06.19
✎
14:56
|
(12) Почему данные не появляются в табличной части? В отладчике она проставляются, что я не так делаю?
|
|||
14
LivingStar
06.06.19
✎
15:06
|
UP!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |