Имя: Пароль:
1C
1С v8
Составное имя колонки табличной строки
0 askharlov
 
25.07.11
16:08
Добрый день. Вопрос:
Есть документ с табличной частью "Затраты", в этой табличной части присутствуют колонки "Субконто1", "Субконто2", "Субконто3". Необходимо в зависимости от логики программы записывать значение в одну из 3-х колонок. Пытался так:

НоваяСтрока = Затраты.Добавить();
...
НоваяСтрока.Субконто[ъ] = Выборка.ОбъектСтроительства;

Ругается что нет свойства "Субконто". Подскажите как правильно писать, чтоб выбирало одну из 3-х колонок в зависимости от значения переменной "ъ"?
Заранее благодарю
1 Buster007
 
25.07.11
16:12
НоваяСтрока["Субконто"+Строка(ъ)]= Выборка.ОбъектСтроительства;
Не совсем понятно "от логики программы"...
2 Prapor
 
25.07.11
16:13
Выполнить("НоваяСтрока.Субконто["+Строка(ъ)+"] = Выборка.ОбъектСтроительства"));
3 Prapor
 
25.07.11
16:14
Выполнить("НоваяСтрока.Субконто"+Строка(ъ)+" = Выборка.ОбъектСтроительства"));

так лучше. Квадратные скобки не нужны, если имена колонок такие, как описаны и ъ может принимать значение 1, 2 или 3.
4 Buster007
 
25.07.11
16:27
(2) работать не будет.
(3) так не лучше. ИМХО
5 Prapor
 
25.07.11
16:30
(4) Чегойта не буде. (3) прекрасно отработает.
6 Buster007
 
25.07.11
16:33
(5) я про (3) не писал, что не отработает ;)
7 Prapor
 
25.07.11
16:36
Я понял. Я имелл ввиду что (3) лучше (2), а не того, что написал ты:)
ЗЫ Мне лично конструкции "выполнить()" нравятся.
8 Defender aka LINN
 
25.07.11
16:38
(2), (3) Жесть аще...
9 askharlov
 
25.07.11
17:24
Спасибо. Написал на форум и сразу сам сообразил как прописать (1)
Программист всегда исправляет последнюю ошибку.