Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 апр 2024, 08:45

Запись в субконто по отбору

Автор Alex117-117, 01 июл 2016, 16:25

0 Пользователей и 1 гость просматривают эту тему.

Alex117-117

Добрый день, Друзья !
у меня мало опыта в 1с, помогите решить проблемму.
есть БГУ, нужно по отбору запроса установить новые записи в проводках - изменить договор


Процедура КнопкаВыполнитьНажатие(Кнопка)
   Если Справочники.Договоры.НайтиПоНаименованию("ТЕСТ_Договор").Пустая() Тогда
      НовыйДоговор = Справочники.Договоры.СоздатьЭлемент();
      НовыйДоговор.Наименование = "ТЕСТ_Договор";
      НовыйДоговор.Учреждение = Справочники.Организации.НайтиПоКоду("00009 ");
      НовыйДоговор.ВидОбязательства = Справочники.ВидыПервичныхДокументов.НайтиПоНаименованию("Договор");
      НовыйДоговор.Записать();
      Сообщить("Создан договор "+НовыйДоговор);
   КонецЕсли;
   Запрос = Новый Запрос;                                     
   Запрос.Текст =
   "ВЫБРАТЬ РАЗЛИЧНЫЕ                                                   
   |   ЕПСБУДвиженияССубконто.Регистратор КАК Док
   |ИЗ                                                                   
   |   РегистрБухгалтерии.ЕПСБУ.ДвиженияССубконто(                               
   |         ДАТАВРЕМЯ(2016, 1, 1),                             
   |         ,                                                                   
   |         (Счет.Код = ""206.91""                                   
   |            ИЛИ Счет.Код = ""302.91"")                       
   |            И КБК.Наименование ПОДОБНО ""%113"",
   |         ,
   |         ) КАК ЕПСБУДвиженияССубконто                     
   |ГДЕ
   |   ЕПСБУДвиженияССубконто.Регистратор.Договор <> ЗНАЧЕНИЕ(Справочник.Договоры.ПустаяСсылка)";
   
   Выборка = Запрос.Выполнить().Выбрать();
   
   НужныйДоговор = Справочники.Договоры.НайтиПоНаименованию("ТЕСТ_Договор");
                                        
   Пока Выборка.Следующий() Цикл
      Набор = РегистрыБухгалтерии.ЕПСБУ.СоздатьНаборЗаписей();
      Набор.Отбор.Регистратор.Установить(Выборка.Док);
      Набор.Прочитать();
      Для каждого Запись Из Набор Цикл
                                            
      КонецЦикла;
      Набор.Записать();
   КонецЦикла;
КонецПроцедуры

LexaK

что за го...но код? зачем такой ге...орой?
почему просто не хотите сделать?

1.найти нужные документы
2.заменить в них один договор на другой
3.записать документ с перепроведением

так же можно воспользоваться стандартной обработкой групповое изменение справочников и документов !
вообще ни чего программировать не надо (тем более когда не умеешь)
если помогло нажмите: Спасибо!

Теги: Субконто 

Похожие темы (5)

Рейтинг@Mail.ru

Поиск