Подскажите пожалуйста методику копирования движений по регистрам одного документа в другой, при условии, что типы обеих документов одинаковые. Я прочитал все движения одного документа, а как их записать в другой?
maximus, поделитесь, пожалуйста, зачем вам такое делать? А если вы будете проводить и перепроводить документ-приемник, как будут формироваться ваши движения? или это какая-то будет разовая обработка данных?
maximus, поделитесь, пожалуйста, зачем вам такое делать? А если вы будете проводить и перепроводить документ-приемник, как будут формироваться ваши движения? или это какая-то будет разовая обработка данных?
У меня товарищ проходит курсы по программированию 1С и вот там дали такое ДЗ. Мне тоже не совсем ясна логика этого процесса, но интересно)
логика такова, что движений может быть по нескольким регистрам, и вам это нужно учесть тут пример замены движений в одном регистре Расходной Накладной, имя кот ДОходыИРасходы. код не отлаживался, просто в модуле был набран.поэтому не знаю
ТЗ = Новый ТаблицаЗначений;
//ДокПриемник=Документы.РасходнаяНакладная.СоздатьДокумент();//ДокИсточник=Документы.РасходнаяНакладная.СоздатьДокумент();
ДвиженияИсточник=Докисточник.Движения;
ДвиженияПриемник=ДокПриемник.Движения;
движенияИсточник.ДоходыиРасходы.Выгрузить(ТЗ);
ТЗ.ЗаполнитьЗначения(ДокПриемник,"Регистратор");
движенияПриемник.ДоходыИРасходы.Загрузить(ТЗ);
в коде определенно есть ошибки. нужно работать с наборами записей. и тогда можно использовать Загрузить(), Выгрузить()
Сообщение отредактировал Домовик - 13.02.13, 11:44
У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 14050
Из: Киев
Спасибо сказали: 4613 раз
Рейтинг: 3750.1
Цитата(Домовик @ 13.02.13, 14:47)
тз=НаборЗаписейРегистра.Выгрузить() это одна из интаксических ошибок )
Это почему?
Цитата(maximus @ 13.02.13, 14:47)
А как правильно быть в этом куске
Ошибка в том, что НаборЗаписейРегистра - это набор записей источника. В него можно что-то писать или что-то читать. Нельзя через него обратиться к какому-то другому набору записей.
в том-то и сложность. может быть движений по нескольким регистрам. нет, не желательно цикл в цикле . а подыскивать соответсвующий набор приемника набору источника по регистру. но как.
Сообщение отредактировал Домовик - 13.02.13, 15:14
тз=НаборЗаписейРегистра.Выгрузить();
//изменить тз
набор = РегтистрыЧегото.СоздатьНаборЗаписей();
набор.Загрузить(тз);
//установить отбор
набор.Записать(Истина);
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник. ЗиУП
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!