Имя: Пароль:
1C
 
Как в форме списка справочника получить объект текущей строки
0 Voffka
 
06.09.06
22:35
я делал так: искал по коду или наименованию текущей строки, но может есть другой более разумный способ?
1 Волшебник
 
06.09.06
22:36
не поверишь ЭлементыФормы.СправочникСписок.ТекущаяСтрока
2 Voffka
 
06.09.06
22:38
пробовал, но реквизиты не доступны
3 Волшебник
 
06.09.06
22:39
(2) рассказывай сказки
4 Voffka
 
06.09.06
23:05
Процедура ОбновлениеОтображения()
   ТекДанные = ЭлементыФормы.СправочникСписок.ТекущаяСтрока;
   
   Если ПустаяСтрока(ТекДанные) Тогда
       Сообщить(ТекДанные.НомерПродукта);
   КонецЕсли;
КонецПроцедуры

при открытии формы списка вылетает ошибка:
{Справочник.Товары.Форма.ФормаСписка(6)}: Значение не является значением объектного типа (НомерПродукта)
       Сообщить(ТекДанные.НомерПродукта);
5 Voffka
 
06.09.06
23:06
а если дальше что то делать, с элементами списка, то нормально сообщает этот номер
6 Voffka
 
06.09.06
23:07
Если ТекДанные <> Неопределено Тогда ....
тоже не работает
7 Mort
 
06.09.06
23:08
Блин, Вован лучше бы тебе батька в детстве спектрум купил, а не скейтбоард...
8 Voffka
 
06.09.06
23:09
навичек, чтож поделать, надо учиться
9 Voffka
 
06.09.06
23:10
понимаю почуму так происходит, а как это обойти - хз.
10 Mort
 
06.09.06
23:15
Мне самому интересно, можна так сказать итератор коллекции прочитанной бд 1сники прозвали "текушая строка"

ЭлементыФормы.СправочникСписок.ТекущаяСтрока

а указатель прочитанных данных в табле  "ТекущиеДанные"

Короче в ЭлементыФормы.СправочникСписок.ТекущаяСтрока.ССылка должен хранится ссылочный объект на это поле в бд (бл* я слишком пьян чтобы разглагольствовать про умные и гениальные указатели) по нему и получишь объект...
11 Mort
 
06.09.06
23:17
А щшибка в (4) вылетает потому что при открытии строки указатель на текущую строку выглядит так: *pointer->nah*i
12 Voffka
 
06.09.06
23:22
Как на языке 1С написать *pointer->nah*i
13 Voffka
 
06.09.06
23:24
мдя,
{Справочник.Товары.Форма.ФормаСписка(3)}: Значение не является значением объектного типа (Ссылка)
   ТекДанные = ЭлементыФормы.СправочникСписок.ТекущаяСтрока.Ссылка;
14 Mort
 
06.09.06
23:25
Бля ща откопаю из своей проги
15 Voffka
 
06.09.06
23:26
Уже страшно...
16 Темный Эльф
 
06.09.06
23:26
Процедура ОбновлениеОтображения()
   Если СокрЛП(ЭлементыФормы.ТабличноеПоле1.ТекущаяСтрока)="" Тогда
       Возврат;
   КонецЕсли;    
   Надпись1 = Строка(ЭлементыФормы.ТабличноеПоле1.ТекущаяСтрока.Счет);
   Надпись2 = УстДоступность();
   Надпись3 = Строка(ЭлементыФормы.ТабличноеПоле1.ТекущаяСтрока.БазЕдиница);
   Отб = Новый Структура;
   Отб.Вставить("ТМЦ",ЭлементыФормы.ТабличноеПоле1.ТекущаяСтрока);
   Цена_Розн = РегистрыСведений.ТМЦ.ПолучитьПоследнее(РабочаяДата,Отб).Цена_Розн;
   Надпись4 = Строка(Цена_Розн) + " грн.";
КонецПроцедуры
17 Voffka
 
06.09.06
23:27
ВОТ!!!!
СокрЛП() Ёпрст... давно бы так!
18 Voffka
 
06.09.06
23:27
Всем спасиб!
19 Mort
 
06.09.06
23:29
Блин да простит меня хасподьвсеямистывалшепник ё*а*ы*от наследники семёновой вокруг чоли? Главное афтар нихрена ни понял из кодирования. Я пошол пить яд.
20 Voffka
 
06.09.06
23:32
Все уже поняли,  а ты иди травись.
21 Mort
 
06.09.06
23:32
Итак, подведу итог темы :
v8: Как в форме списка справочника получить объект текущей строки  

Отет:
СокрЛП() Ёпрст... давно бы так!

Даже своим ником не хочется подписываться
22 Темный Эльф
 
06.09.06
23:35
(21)Я человек простой, примитивный. Если у меня оно работает, то мне неинтересно почему. Если знаешь более красивый и классический способ, то расскажи.
23 Mort
 
06.09.06
23:35
Начинающие прогеры спрашивают о букварьном потенциале, продвинутые спрашивают о существующих паттернах, остальные программируют ради денег.
24 Voffka
 
06.09.06
23:37
Слушай, не мути воду. Спросили как ошибки избежать, мне ответили(Это один из способов), а ты алкашь дастал, слов многу, а толку малу!!! так чта или дай совет нормальный, или нелесь, лана, не в обиду!
25 Voffka
 
06.09.06
23:42
Знаю я еще один тип прогеров, словами кидаются а что нить подсказать - хрена...
26 Mort
 
06.09.06
23:44
Да г вопрос. Задай вопрос правильно я на него отвечу.
А насчет СокрЛП(ЭлементыФормы.ТабличноеПоле1.ТекущаяСтрока)="" я бы с удовольствием поговорил о приведении типов.
(25) Ну давай померяемся...
27 Mort
 
06.09.06
23:46
Я хотел изо всех сил помочь но нихрена не понял твоего вопроса. Ты хотел получить объект. Ты его получил?
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.