Имя: Пароль:
1C
1С v8
Динамический список без основной таблицы
,
0 Ivan093
 
14.12.15
10:42
Уважаемый, подскажите, пожалуйста как в динамическом списке с произвольным запросов и без основной таблицы добраться до данных текущей строки?
Элементы.Заявки.ТекущаяСтрока возвращает номер строки, а дальше как?
НайтиПоИдентификатору не катит в данному случае...
1 aleks_default
 
14.12.15
10:43
Это почему?
2 Fedor-1971
 
14.12.15
10:45
(0) Элементы.Заявки.ТекущиеДанные
3 Ivan093
 
14.12.15
10:46
(1) ну ошибку выдает ))
Заявки.НайтиПоИдентификатору(Элементы.Заявки.ТекущаяСтрока)    {(1)}: Метод объекта не обнаружен (НайтиПоИдентификатору)
4 Ivan093
 
14.12.15
10:47
(2) Элементы.Заявки.ТекущиеДанные = Неопределено
ВСЕГДА, подозреваю, что т.к. не задана основная таблица.
Но задать ее нельзя т.к. в произвольном запросе выбираются документы 2 типов.
5 aleks_default
 
14.12.15
10:49
(3)Ну так это означает не то что такой строки нет, а то что ты не там ищешь.
6 aleks_default
 
14.12.15
10:49
(2) нет
7 vde69
 
14.12.15
10:50
сделай себе журнал документов и работай уже с ним,

очень много гемора избежишь...
8 Ivan093
 
14.12.15
10:52
(5) Есть выход или придется сделать по совету vde69?
9 Cyberhawk
 
14.12.15
10:52
Элементы.Заявки.НайтиПоИдентификатору как бы...
10 Ivan093
 
14.12.15
10:53
Элементы.Заявки.НайтиПоИдентификатору(Элементы.Заявки.ТекущаяСтрока)    {(1)}: Метод объекта не обнаружен (НайтиПоИдентификатору)
11 Тихий омут
 
14.12.15
10:53
(4) всё работает как надо в ДС без основной таблицы. Элементы.ИмяРекДС.ТекущиеДанные возвращает саму строку типа ДанныеФормыСтруктура, а не номер строки
12 Ivan093
 
14.12.15
10:55
(11) у меня возвращает Неопределено всегда. Сейчас сделаю скриншот
13 Fragster
 
гуру
14.12.15
10:55
Элементы.Список.ДанныеСтроки(твой номер)
14 Ivan093
 
14.12.15
10:56
Вернее не НеОпределено, а "Ошибка чтения"
15 aleks_default
 
14.12.15
10:56
Объект.Заявки.найтиПоИдентификатору
16 Ivan093
 
14.12.15
10:58
17 vde69
 
14.12.15
10:58
других вариантов нет, причина простая

основная таблица для динамического списка выполняет кроме рельсы еще и роль типизации которая используется при серилизации. Нет таблицы - стерилизация возможна только конкретных данных, которая и происходит при доступе к конкретным полям, но нет единого правила на всю запись...

примерно как у регистра нет "ключа записи", хотя данные есть но их нельзя проиндексировать так как типы индексных полей разные по таблице..

написал сумбурно, но думаю понятно...
18 Fragster
 
гуру
14.12.15
10:59
(17) ололо
19 Ivan093
 
14.12.15
10:59
(17) вот тоже была такая мысль после гугления, но думал, вдруг ошибаюсь...
20 Defender aka LINN
 
14.12.15
10:59
(14) Потому что какие, КЕМ, текущие данные на сервере?
21 Ivan093
 
14.12.15
11:00
Значит динамический список без основной таблицы -- фигня полная, если только на просмотр без чтения данных в коде )))
22 Fragster
 
гуру
14.12.15
11:00
(21) все работает
23 Cyberhawk
 
14.12.15
11:01
(16) На клиенте как бы надо...
24 Fedor-1971
 
14.12.15
11:02
(12) обманываешь, ТекущиеДанные=Неопределено, если ДС пуст и существует только НаКлиенте!!!
(21) НаСервере нет ТекущихДанных для строки ДС
25 vde69
 
14.12.15
11:03
(22) как будут индексы строится по составному полю ??? у автора составное поле с несколькими видами документов...

по идее я то же не вижу проблем с получением данных такой строки, но вот смысла в таком списке я то же не вижу, по тому как и отборы будут ограничены и сортировки....
26 Ivan093
 
14.12.15
11:03
(23) Алиллуя! На клиенте РАБОТАЕТ!
27 Ivan093
 
14.12.15
11:04
мне этого будет достаточно и на клиенте
28 Ivan093
 
14.12.15
11:06
Спасибо всем за помощь1
29 Fragster
 
гуру
14.12.15
11:11
(25) ну, например, немного тормозная форма подбора товара с остатками на складе на ДС с регистрнакопления.товары.остатки(). Вполне работает.