Получить значение субконто из РегистраБухгалтерии #397174


#0 by Ann20485
Как можно получить значение субконто, перебрав записи РегистраБухгалтерии? Выдает ошибку: {Форма.Форма}: Значение не является значением объектного типа (Значение) Сообщить(Суб.Значение);
#1 by Ann20485
Или таким способом невозможно получить значение Субконто? Я бы сделала запросом,только мне нужно выключить потом полученные проводки.
#2 by andr14142
Могу порекомендовать выгрузку в набор записей - основной прием для работы с регистрами:
#3 by Ann20485
Отбор по регистратору не использую,нужны все проводки. Ничего не выдает, ни субконто,ни счет,никакие реквизиты проводки НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей;
#4 by andr14142
Всего три субконто по дебету и три субконто по кредиту. Их видно в конструкторе запроса, если посмотреть РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто. Если вывести суммы - должен показать. А дальше надо разбираться, дебет или кредит, какие субконто.
#5 by Ann20485
Может немного не то делаю. Проводки в 8-ке можно выключать без удаления документа? Пишу Рег.Активность=ЛОЖЬ. {Форма.Форма}: Поле объекта недоступно для записи (Активность)       Рег.Активность=Ложь;
#6 by Ann20485
Сумму тож не выводит После дт=стр.*** выпадает подсказка: Владелец,Получить,Установить. вместо реквизитов проводки
#7 by andr14142
Конфигурация-то какая? У меня Бухгалтерия предприятия 1.6.14.4.
#8 by Ann20485
Бухгалтерия 1.6.11
#9 by Ann20485
У меня такой вопрос: как можно пометить на удаление или выключить определенные проводки в регистреБухгалтерии?
#10 by andr14142
Проводки хранятся в регистре, а подвязаны к регистратору. Регистратор - это документ, в крайнем случае - документ ОперацияБух. Если документ помечен на удаление, то и его проводки не учитываются.
#11 by Ann20485
Но я же не могу пометить на удаление документ...у него могут быть и другие проводки,которые нужно оставить
#12 by Ann20485
Задача не выполнима?
#13 by andr14142
Если в регистре сделать отбор по регистратору, то мы получим набор записей. В этом наборе записей можно сделать изменения: добавить или удалить записи. А потом этот набор записать обратно в регистр. Тогда и удалится только то, что нужно.
#14 by andr14142
Но если записи нужно сохранить но не учитывать, то их придется записать в другой регистратор, который помечен на удаление.
#15 by Euguln
#16 by andr14142
А еще у каждой записи есть реквизит Активность. Скорее всего, он и управляет тем, учитываются записи или нет. Но это нужно проверять. Полный список всех 30 полей регистра Хозрасчетный: Число колонок таблицы значений: 30 Имя колонки : Период Имя колонки : Регистратор
#17 by Ann20485
Почему-то субконто никакие не находит,хотя они есть:
#18 by Ann20485
#19 by Ann20485
Запись.СчетДт.ВидыСубконто.Количество = 1
#20 by Euguln
Отладчик в помощь
#21 by Ann20485
Остальные реквизиты определяет
#22 by Ann20485
В Табло: Запись.СубконтоДт[Сч-1]; Значение: {1,24} Ошибка в выражении
#24 by Ann20485
Неужели нельзя перебором записей найти значения субконто? Все перепробовала,не почается. Могу их конечно запросом найти.. Но и выключить проводки тож не получается,пишу:
#25 by Ann20485
{Форма.Форма}: Метод объекта не обнаружен (Записать)            Запись.Записать;
#26 by Euguln
Во-первых НаборЗаписей.Записать Во-вторых Точно уверена, что в проводке есть непустое субконто?
#27 by andr14142
Отдельную запись записать нельзя, только весь набор с отбором по регистратору. значения субконто нужно брать из каждой записи по имени СубконтоДт1, ...
#28 by Ann20485
В регистреБухгалтерии есть записи с НЕпустыми субконто
#29 by Euguln
А уверена, что именно они выбираются. По F9 посмотри у Запись.СубконтоДт и Запись.СубконтоКт значения
#30 by Euguln
И вообще код в студию
#31 by Ann20485
Для Каждого ТекСтрока Из ТЗ2 Цикл
#32 by Ann20485
НаборЗаписей.Записать;  // не дает записать Активность {Форма.Форма}: Ошибка при вызове метода контекста (Записать): Запись не верна! Не совпадает активность записей (Регистр бухгалтерии: Регистр бухгалтерии старый; Номер строки: 2)        НаборЗаписей.Записать;
#33 by Ann20485
В отладчике: Запись.СубконтоДт[Сч-1]; Тип: не определено. значение пустое
#34 by Ann20485
Но РегистреБухгалтерии же есть субконто
#36 by Ann20485
Если снять активность для всех записей,то получается
#37 by Ann20485
Программа позволяет снять Активность только у всех проводок  Регистратора
#38 by Ann20485
Для Каждого ТекСтрока Из ТЗ2 Цикл
#40 by Euguln
А вот интересно, что ты хочешь сделать с субконто???
#41 by Ann20485
Мне нужно получить все данные проводок(счет,субконто,сумма..),чтобы на их основе создать новые проводки с другим планом счетов. Такое задание)
#42 by Ann20485
А старые проводки пометить на удаление
#45 by Euguln
Тогда оптимальнее все делать запросом, а в цикле только выключать активность
#46 by Ann20485
Тогда если Активность выключается только у всех проводок Регистратора, проще Регистратор пометить на удаление. Вряд ли попадает под требования задачи..
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С