Имя: Пароль:
1C
1C 7.7
v7: Как в документе присвоить программно значение типа
0 st31
 
21.04.14
02:03
Народ, извиняйте, давно не программировал на 1С, вернулся и споткнулся. Надо перенести документы из одной базы во вторую через Excel файл. В документе есть поля с выбором из перечислений.       Выгрузил информацию, загрузил в Таблицу значений: ТЗ.НоваяКолонка("КодыРабот","Строка",25,,,25);//Перечисление.КодыРабот
ТЗ.НоваяКолонка("КодыРаботПрчсл","Перечисление.КодыРабот");
Дальше по представлению нахожу нужную строку заданного перечисления и хочу ее присвоить  в строку КодыРаботПрчсл:
Для НомерСтроки = 1 По ТЗ.КоличествоСтрок() Цикл
ТЗ.ПолучитьСтрокуПоНомеру(НомерСтроки);
Сообщить("Строка "+НомерСтроки);
    
Всего1=Перечисление.КодыРабот.КоличествоЗначений();
Для Ном=1 По Всего1 Цикл
            Вариант1=Перечисление.КодыРабот.ЗначениепоНомеру(Ном);
Если СокрЛП(ТЗ.КодыРабот)=Строка(СокрЛП(Вариант1)) Тогда
                ТЗ.КодыРаботПрчсл=Вариант1.Идентификатор();
Сообщить(ТЗ.КодыРаботПрчсл);  
Прервать;
КонецЕсли;
КонецЦикла;
Не присваивается.:-(                                                                                                                                  Заодно подскажите как из ТЗ.КодыРаботПрчсл программно присвоить соответствующее значение в поле документа, в котором надо сохранить текущее значение перечисления. Спасибо за своевременную помощь.                Не до конца въехал, где что набирать вверху.
1 st31
 
21.04.14
02:24
Пробывал присвоить как в справочнике через                          .ТекущийЭлемент() -не прокатило
2 hhhh
 
21.04.14
05:51
ТЗ.КодыРаботПрчсл=Вариант1;
3 dk
 
21.04.14
08:28
(2) +1
---
Строка(СокрЛП(Вариант1))
"строка" после сокрЛП - лишнее. достаточно
СокрЛП(ТЗ.КодыРабот)=СокрЛП(Вариант1)
4 1dvd
 
21.04.14
08:47
перечисления, вроде, по идентификатору ищутся