Имя: Пароль:
1C
1С v8
можно ли создать в 1с свой тип на основании объекта?
,
0 Andy MilkyWay
 
11.01.13
12:24
Заранее прошу прощения за заумность вопроса :).
  У меня есть объект - структура с определенными ключами. Мне нужно  создать ряд элементов массива, в каждом из которых будет хранится такая структура, и далее в цикле сделать обработку массива. При простом перезаполнении структуры и ее сохранении в массиве фактически я сохраняю ссылку на одну и ту же структуру, а не создаю новый экземпляр структуры.
  Можно ли определить свой тип данных на основании моей структуры и пользоваться для создания новых элементов массива? Или нужно каждый раз создавать новую с помощью новый структура?
1 Fragster
 
гуру
11.01.13
12:25
КопияСтруктуры = ЗначениеИзСтрокиВнутр(ЗначениеВСТрокуВнутр(Структура));
2 Andy MilkyWay
 
11.01.13
12:26
(1) сейчас попробую...
3 Fragster
 
гуру
11.01.13
12:26
Вообще по логике -
СписокОбщихПолей = "Поле1,Поле2";
Структура1 = Новый СТруктура(СписокОбщихПолей);
Структура2 = Новый СТруктура(СписокОбщихПолей);
4 Fragster
 
гуру
11.01.13
12:27
а не будет в этом случае логичнее использовать таблицу значений?
5 Andy MilkyWay
 
11.01.13
12:28
(4) сейчас попробую, подумаю, потом отпишусь. Может Вы и правы
6 Andy MilkyWay
 
11.01.13
12:44
Благодарю за помощь, все получилось, как и хотел! Наверное проще было бы действительно воспользоваться ТЗ, просто зациклился на структуре :). Но буду иметь в арсенале и такой способ.
7 samozvanec
 
11.01.13
12:53
вот за это (1) вам леща, а за это (4) пирожок)
8 del123
 
11.01.13
12:55
(7) итого пирожок с лещем :D
9 pessok
 
11.01.13
12:57
лещ в пятницу. к пиву. самое то :)
10 Reset
 
11.01.13
13:04
Если уж задаваться целью делать копию структуры,я бы делал так:

Копия=Новый Структура;
Для каждого Свойство из СтруктураОригинал цикл
 Копия.Вставить(Свойство.Ключ,Свойство.Значение);
КонецЦикла;

Но вообще использование ТЗ самая здравая мысль.
11 Reset
 
11.01.13
13:06
для "неициализированной структуры"

Копия.Вставить(Свойство.Ключ);

или, если список полей известен, то (3)
12 Fragster
 
гуру
11.01.13
13:08
(7) мне всё можно
13 Fragster
 
гуру
11.01.13
13:09
(10) сравни производительность (1) и своего способа
14 Reset
 
11.01.13
13:10
Массив структур удобнее, если между собой они существенно отличаются наборами свойств. Если в основном или полностью совпадают, то ТЗ удобнее + получаем в виде бонуса сортировку,поиск, индексирование
15 Reset
 
11.01.13
13:13
Можно также использовать ТЗ с колонка-"общими" свойствами и колонкой "дополнительные свойства", в которой хранить структуру свойств "уникальных"
16 Reset
 
11.01.13
13:14
(13) Лень
2 + 2 = 3.9999999999999999999999999999999...