Вход | Регистрация

1С:Предприятие ::

Метки:

Движения регистров не могут выполняться у данного объекта

Я
   prochor
 
01.12.04 - 09:46
Недавно посоветовался тут(на форуме Миста!) относительно реквизитов регистров и их сохранения! Было предложено наплевать, я так и сделал скрепя сердцем!
Теперь следующий вопрос по регистрам – мне их надо восстановить.
Завел документ, пишу в модуле документа
    ВремРег = СоздатьОбъект("Регистры");
     Рег=ВремРег.ПолучитьАтрибут(ИмяРег); //где в ИмяРег идентификатор регистра
Проверяю в отладчике, Рег – действительно объект, действительно регистр и действительно того вида, что нужен.
Затем переписываю из таблицы значений ТаблРег данные в этот регистр
ПОка ТаблРег.ПолучитьСтроку() = 1 Цикл
    НС=ТаблРег.НОмерСтроки;
    ДЛя Инд1 = 1 По КолИзм Цикл
        Атр=СписИзм.ПолучитьЗначение(Инд1);
        Рег.УстановитьАтрибут(Атр, ТаблРег.ПолучитьЗначение(НС,Атр));
    КонецЦикла;
    ДЛя Инд1 = 1 По КолРес Цикл
        Атр=СписРес.ПолучитьЗначение(Инд1);
        Рег.УстановитьАтрибут(Атр, ТаблРег.ПолучитьЗначение(НС,Атр));
    КонецЦикла;
            
    Рег.ДвижениеПриходВыполнить();    
КонецЦикла;
СписИзм и КолИзм: СписокЗначений с перечнем идентификаторов измерений и соответственно их количество.
Аналогично СписРес и КолРес – по ресурсам.
Прога доходит до   Рег.ДвижениеПриходВыполнить(); и дает то сообщение, что в заголовке.
Если делаю такое присвоение
Рег=Регистр.Покупатели;
отрабатывает, как миленькая.
Мне досталось в наследство 20 регистров, я, конечно, вышел из положения, тупо написав обработку для каждого из имеющихся регистров.
А теперь вопрос:
А как сделать так, чтобы
Рег=Регистр.<ИмяРег>; где ИмяРег – строковая переменная?
Или есть еще какая-то возможность?
 
 
   Оборотень
 
1 - 01.12.04 - 10:15
Получить значение атрибута по идентификатору.
Синтаксис:
ПолучитьАтрибут(<ИмяАтрибута>)

Параметры:
<ИмяАтрибута>    Строковое выражение, содержащее идентификатор регистра конфигурации.

Возвращаемое значение:
Значение атрибута <ИмяАтрибута>.

Описание:
Метод ПолучитьАтрибут позволяет получить значение регистра по идентификатору, как он задан в метаданных.
Пример:
СпецРег = СоздатьОбъект("Регистры");
Рег = СпецРег.ПолучитьАтрибут("ОстаткиТоваров");

Вместо "ОстаткиТоваров" как понимешь можно подать строковую переменную.
В Рег будет требуемый регистр.
   Оборотень
 
2 - 01.12.04 - 10:16
(1) Извиняюсь - не вчитался в пост - и понес пургу....
   GrayT
 
3 - 01.12.04 - 10:27
(0)Флажок Оперативный учет у документа
   prochor
 
4 - 02.12.04 - 08:00
(1) и (2) - извиняю, сынку! Так много отвечать, а потом встретить свой ответ в первых строках моего вопроса!
(3) а с трех попыток слабо определить, стоит ли флажок у документа, работающего с регистрами)))? Вроде бы не чайник, иногда отвечаешь разумно и дельно. Если бы флажок не был выставлен - мне бы друго-о-е сообщение выдалось! А вот какое - вот тебе дом.задание!
Ну а по вопросу(0) нечего ответить?
   vS
 
5 - 02.12.04 - 08:07
а ты сделай рг=создатьОбжект("Регистр."+Переменная)
   Морозов Александр
 
6 - 02.12.04 - 08:09
(0) А это, что нельзя написать Времрег=СоздатьОбъект("Регистр."+ИмяРег);
   SnarkHunter
 
7 - 02.12.04 - 08:14
   427
 
8 - 02.12.04 - 08:17
............................ .....
............................ .....
............................ .....
............................ .....
............................ .....
............................ .....
............................ .....
............................ .....
............................ .....
............................ .....
............................ .....
............................ .....


   песня программиста
   prochor
 
9 - 02.12.04 - 08:17
(5) и (6) глубокое мерси! Начало драл с примера в книжке, так как с регистрами я еще на на очень большое ВЫ(((
   prochor
 
10 - 02.12.04 - 08:25
(8) с добрым утром, любимая! Если ты промолчишь - значит...
 
  Рекламное место пустует
   prochor
 
11 - 02.12.04 - 08:48
(9) не смотря на всю логичность подсказки - беру свои слова обратно.
Результат тот же, что и в заголовке.
"Пилите, Шура, Пилите!"
   Волшебник
 
12 - 02.12.04 - 08:53
   vS
 
13 - 02.12.04 - 08:57
Шура, у вас ножовка не той модели... Снимите уже валенки с рук...
   miki
 
14 - 02.12.04 - 10:00
(0)У тебя регистры какого типа(вида)?
   miki
 
15 - 02.12.04 - 10:24
(14)Короче, может трабл у тебя в том, что

Замечание:
<...>
Метод используется только для регистров остатков.
©СП


Список тем форума
Рекламное место пустует   Рекламное место пустует
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки - вот настоящая работа.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует