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


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

Метки:регистры

Как при проведении прописать движения рег., имея переменную с его именем?

Я
   Den
 
14.11.04 - 16:01
Сабж таков. Делаю технологическое перепроведение с заменой элементов справочника. Перед проведением считываю все движения всех регистров нужного документа в ТЗ, выставляю глобальный флаг и перепровожу документ. Но при этом возникает проблема. Обычно в модуле проведения пишется что-то вроде
Конт.Регистр.ОстаткиТовара.ДвижениеПриходВыполнить()
или
Конт.Регистр.Взаиморасчеты.ДвижениеРасходВыполнить()

Все это здорово, но... Имена регистров у меня в ТЗ, движения регистров у переменных, созданных функцией СоздатьОбъект не прописываются и вообще все это делается только в модуле документа. Как быть? Каким образом, имея в переменной имя регистра, прописать движения? Неужели придется шлепать кошмарную конструкцию
Если ИмяРегистра = "Касса" Тогда
ИначеЕсли ИмяРегистра = "Взаиморасчеты" Тогда
...
Это же ужас! Никакой универсальности! Подскажите, как этого можно избежать?
 
 
   Бивень
 
10 - 15.11.04 - 13:05
(9) Смешной ты клоун :))
Рег=Регистр.ПолучитьАтрибут(ИмяРегистра);
...
Рег.ДвижениеРасходВыполнить();
 
  Рекламное место пустует
   Den
 
23 - 15.11.04 - 13:37
Прикольно получилось
// ********************

//
Процедура ОбработкаПроведения()

   //Здесь следует написать алгоритм проведения документа

    Рег = Регистр.ПолучитьАтрибут("Новый1");
        Рег.Новый1 = Новый1;
    Рег.Количество = 1;
    Рег.ДвижениеПриходВыполнить();
КонецПроцедуры

Спасибо, Бивень!



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