|
Динамический Список обращение к колонке | ☑ | ||
---|---|---|---|---|
0
Peshalkin
22.11.20
✎
10:26
|
Добрый день, такой вопрос, нужно обратиться к полю Динамического списка, есть запрос, который по данным из реквизита производит поиск и если данные совпадают, то в пустое поле в ДС, должны попасть опр. данные, но вот обратиться ДинамическийСписок.Колонка не получается к нему, поле не найдено ошибка, может кто-то подсказать, как обратиться на прямую к колонке или возможно только динамический список выгрузить в таблицу значений и после уже обращаться в результат?
|
|||
1
Ненавижу 1С
гуру
22.11.20
✎
11:13
|
Использовать событие ПриПолученииДанныхНаСервере
|
|||
2
Peshalkin
22.11.20
✎
11:31
|
(1) Извиняюсь, что сразу не уточнил, а если делать при изменении какого-то конкретного реквизита, допустим Реквизит (Город)
|
|||
3
RomanYS
22.11.20
✎
11:53
|
(2) в ДС нет изменения, он только показывает данные. Данные изменились - ДС нужно обновить
|
|||
4
Peshalkin
22.11.20
✎
12:02
|
(3) У меня проблема в том, что я не понимаю, по какой причине у меня не отрабатывает ПриИзменении, я даже через отладчик не могу посмотреть, что у меня передаётся в Переменную мою, Скриншот - https://dropmefiles.com/lXhfy
|
|||
5
RomanYS
22.11.20
✎
12:09
|
(4)
1. Перечитай (3) и пойми, что ПриИзменении вызываться не будет 2. Идея запроса для каждой строки - плохая. Укажи источником у ДС произвольный запрос и в этом запросе сразу вытащи цены. |
|||
6
Peshalkin
22.11.20
✎
12:12
|
(5) Да, я уже пробовал в произвольном запросе вытащить цены и через, но проблема в том, что нужно именно по городу отследить, то-есть после того как в справочнике будет задан Город и Тип цены, если цена в РС есть, то цена будет выгружаться в нужную колонку, если цены нет, то будет проставляться 0
|
|||
7
Peshalkin
22.11.20
✎
12:13
|
(5) При изменении стоит не для ДС, а для Реквизитов Город и ТипЦены, Для ДС стоит СписокПриПолученииДанныхНаСервере, только проблема в том, что когда Город и ТипЦены меняются, запрос не выполняется, вот в чем проблема сама, я не понимаю, по какой причине у меня не выполняется запрос, чтобы эти данные уже передать в ПриПолученииДанныхНаСервере
|
|||
8
Василий Алибабаевич
22.11.20
✎
12:32
|
(7)
1. "Город" и "типЦены" должны быть параметрами запроса. 2. При изменении реквизитов формы нужно изменять соотвествующий параметр запроса ДС. 3. Все. Никаких ПРиПолученииДанных... не нужно. |
|||
9
Peshalkin
22.11.20
✎
12:44
|
(8) Я пытался так сделать, но если я в произвольный запрос ДС вытаскиваю номенклатура и Цену из РС, то после того, как Город и ТипЦены Заполняется, у меня в справочнике остаются только те товары, которые там есть, хочется сделать именно в таком формате, что после выбора города и ТипаЦены, цены заполнялись те, которые есть, а если по каким-то причинам цена отсутствует, то просто цена вставлялась 0, но через запрос у меня так не получилось сделать, приходится делать через ПриПолученииДанных, но там я не могу проверить заполненность Реквизитов "Город" и "ТипЦены"
|
|||
10
RomanYS
22.11.20
✎
12:47
|
(9)соединение в запросе должно быть левое и условия на регистр цен должны быть или в параметрах ВТ или в условиях соединения. Но не в ГДЕ!
|
|||
11
Peshalkin
22.11.20
✎
12:51
|
(10) У меня так и стоит, Левое Соединение и Параметры указаны не в ГДЕ, но проблема в том, что когда я запускаю Справочник, у меня пустой Справочник, что я должен указать в событии ПриИзменении Реквизита, не совсем понимаю, может из-за этого он пустой и оказывается у меня
|
|||
12
Peshalkin
22.11.20
✎
12:53
|
(10) Я пытаюсь добиться того, чтобы просто при открытии Справочника, у меня отображалась вся номенклатура, а после уже заполнения 2х реквизитов, цена проставлялась на товар, но вот проблема в том, что при открытии Справочник уже пустой
|
|||
13
RomanYS
22.11.20
✎
12:58
|
(11) запрос выкладывай. (8) абсолютно прав, ПриИзменении Реквизита ты должен заполнить параметры ДС и возможно вызвать его обновление, если оно не происходит автоматом
|
|||
14
Peshalkin
22.11.20
✎
13:01
|
(13) Я правильно понял, что запрос ДС нужен? - https://dropmefiles.com/GdShZ
|
|||
15
RomanYS
22.11.20
✎
13:06
|
(14) понял правильно, выкладывать лучше текстом.
А запрос - полное г. Основной таблицей(она же левая) должен быть Справочник. Все данные кроме цены должны браться из справочника. |
|||
16
Peshalkin
22.11.20
✎
13:11
|
(15) Тут извиняюсь, да, забыл убрать Цену, которую беру из справочника, не совсем понимаю, что не так с запросом, я беру все данные с Справочника, цену я беру из РС, левое соединение и параметры указываю в условие ВТ, но при запуске самого справочника, у меня все поля пустые, пока я не заполню 2 значения, а как мне сделать так, чтобы у меня Справочник отображался полностью, пока я не заполню Город и ТипЦены, вот этого я не совсем понимаю
|
|||
17
Peshalkin
22.11.20
✎
13:20
|
(15) Исправил запрос, не увидел, что когда я меня местами Основую таблицу, он переименовавал её и данные просто не отображались. Мне теперь просто нужно при изменении поставить Обновление ДС?
ВЫБРАТЬ Номенклатура1.Ссылка КАК Ссылка, Номенклатура1.ВерсияДанных КАК ВерсияДанных, Номенклатура1.ПометкаУдаления КАК ПометкаУдаления, Номенклатура1.Родитель КАК Родитель, Номенклатура1.ЭтоГруппа КАК ЭтоГруппа, Номенклатура1.Код КАК Код, Номенклатура1.Наименование КАК Наименование, Номенклатура1.Гарантия КАК Гарантия, Номенклатура1.Категория КАК Категория, Номенклатура1.ВидТовара КАК ВидТовара, Номенклатура1.ВидНоменклатуры КАК ВидНоменклатуры, Номенклатура1.СтавкаНДС КАК СтавкаНДС, Номенклатура1.Состав.( Ссылка КАК Ссылка, НомерСтроки КАК НомерСтроки, Товар КАК Товар, Количество КАК Количество, КомплектующееДляРазбора КАК КомплектующееДляРазбора ) КАК Состав, Номенклатура1.Предопределенный КАК Предопределенный, Номенклатура1.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных, Номенклатура1.Цена КАК Цена ИЗ Справочник.Номенклатура КАК Номенклатура1 ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних( , Город = Город И ТипЦены = ТипЦены) КАК ЦеныНоменклатурыСрезПоследних ПО Номенклатура1.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура |
|||
18
Peshalkin
22.11.20
✎
13:26
|
Сделал в Событии ПриИзменении Обновление, но после выбора нужного Филиала и ТипаЦены, ничего не меняется в Справочнике
Если ЗначениеЗаполнено(Город) и ЗначениеЗаполнено(ТипЦены) Тогда Элементы.Список.Обновить(); КонецЕсли; |
|||
19
RomanYS
22.11.20
✎
13:27
|
(17) НЕ
Город = Город И ТипЦены = ТипЦены" правильно Город = &Город И ТипЦены = &ТипЦены |
|||
20
RomanYS
22.11.20
✎
13:28
|
(17) На счёт необходимости явного обновления, не уверен. Возможно изменение параметров вызывает его автоматически
|
|||
21
Peshalkin
22.11.20
✎
13:35
|
(19) Благодарю, думал, что когда в условие прописываешь, оно автоматически проставляет &
Теперь возникла проблема в том, что когда открываешь справочник, вылетает ошибка, что не задано значение параметра &Город, можно как-то сделать так, чтобы изначально параметры были "Отключены"? |
|||
22
Peshalkin
22.11.20
✎
13:42
|
(20) При создании на сервере установил параметры для город и ТипЦены, в справочник заходит, но при выборе города и типа цены, цены не добавляются, даже если Обновлять при заполнении 2х параметров в событии приИзменении Реквизитов
|
|||
23
RomanYS
22.11.20
✎
13:50
|
(22) Значит параметры неправильно меняешь, код показывай
|
|||
24
Peshalkin
22.11.20
✎
13:54
|
(23)
Список.Параметры.УстановитьЗначениеПараметра("Город", Город); Список.Параметры.УстановитьЗначениеПараметра("ТипЦены", ТипЦены); ВЫБРАТЬ Номенклатура1.Ссылка КАК Ссылка, Номенклатура1.ВерсияДанных КАК ВерсияДанных, Номенклатура1.ПометкаУдаления КАК ПометкаУдаления, Номенклатура1.Родитель КАК Родитель, Номенклатура1.ЭтоГруппа КАК ЭтоГруппа, Номенклатура1.Код КАК Код, Номенклатура1.Наименование КАК Наименование, Номенклатура1.Гарантия КАК Гарантия, Номенклатура1.Категория КАК Категория, Номенклатура1.ВидТовара КАК ВидТовара, Номенклатура1.ВидНоменклатуры КАК ВидНоменклатуры, Номенклатура1.СтавкаНДС КАК СтавкаНДС, Номенклатура1.Состав.( Ссылка КАК Ссылка, НомерСтроки КАК НомерСтроки, Товар КАК Товар, Количество КАК Количество, КомплектующееДляРазбора КАК КомплектующееДляРазбора ) КАК Состав, Номенклатура1.Предопределенный КАК Предопределенный, Номенклатура1.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных, ЦеныНоменклатурыСрезПоследних.Цена КАК Цена ИЗ Справочник.Номенклатура КАК Номенклатура1 ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних( , Город = &Город И ТипЦены = &ТипЦены) КАК ЦеныНоменклатурыСрезПоследних ПО Номенклатура1.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура |
|||
25
Peshalkin
22.11.20
✎
13:54
|
(24) Не так вставил, Первые 2 строки у меня написаны в форме при создании на сервере
|
|||
26
RomanYS
22.11.20
✎
13:56
|
(25) А при изменении реквизитов?
|
|||
27
Peshalkin
22.11.20
✎
13:58
|
(26)
Если ЗначениеЗаполнено(Город) и ЗначениеЗаполнено(ТипЦены) Тогда Элементы.Список.Обновить(); КонецЕсли; |
|||
28
RomanYS
22.11.20
✎
14:00
|
(27) Где установка параметров? Зачем обновлять список, если ты параметры не изменил?
|
|||
29
Peshalkin
22.11.20
✎
14:03
|
(28) Всё заработало, спасибо за помощь, я думал, что параметры нужно установить только 1 раз, а после уже просто обновлять список, извиняюсь за тупость и спасибо за помощь
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |