V8: программно очистить субконто в наборе проводок #705593


#0 by Sasha_1CK
Меняю программно счет в наборе проводок/ Но набор не записывается, так как количество субконто на счетах разное - как удалить из проводки субконо "Номенклатура" и "Ставки НДС"
#1 by shuhard
в каждой типовой установка субконто живёт в общем модуле
#2 by Sasha_1CK
установка живет - это понятно а вот очистка там как то не фигурирует
#3 by hhhh
в каждом документе типовой есть выбор счета. Примеры: РКО, Списание с банковского счета. Миллион примеров. Включай уже голову.
#4 by Sasha_1CK
Включил. Но все равно не доходит - там меняется состав субконто на форме а мне нужно очистить субконто в проводке
#5 by cw014
Продам СП, дорого: РегистрБухгалтерииНаборЗаписей.<Имя регистра бухгалтерии>.Удалить (AccountingRegisterRecordSet.<Имя регистра бухгалтерии>.Delete) РегистрБухгалтерииНаборЗаписей.<Имя регистра бухгалтерии> (AccountingRegisterRecordSet.<Имя регистра бухгалтерии>) Удалить (Delete) Вариант синтаксиса: По индексу Синтаксис: Удалить(<Индекс>) Параметры: Тип: Число. Позиция записи в наборе. Вариант синтаксиса: По объекту записи Синтаксис: Удалить(<Запись>) Параметры: Тип: РегистрБухгалтерииЗапись. Удаляемая запись. Описание: Удаляет запись из набора записей регистра бухгалтерии. Доступность: Сервер, толстый клиент, внешнее соединение.
#6 by cw014
А для тех, кто в танке, еще и это: РегистрБухгалтерииНаборЗаписей.<Имя регистра бухгалтерии>.Очистить (AccountingRegisterRecordSet.<Имя регистра бухгалтерии>.Clear) РегистрБухгалтерииНаборЗаписей.<Имя регистра бухгалтерии> (AccountingRegisterRecordSet.<Имя регистра бухгалтерии>) Очистить (Clear) Синтаксис: Очистить Описание: Очищает набор записей регистра бухгалтерии, удаляя из него все записи. Доступность: Сервер, толстый клиент, внешнее соединение.
#7 by hhhh
вообще-то, чтобы не париться можно таблицу значений использовать НаборПроводок = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей;
#8 by Sasha_1CK
Зачем мне удалять все записи? Мне нужно изменить счет дебет и убрать из записи лишние субконто. зачем мне очищать набор записей и удалять из него записи? А для объекта Проводка.СубконтоДТ Методы очистить и удалить не работают. Собственно возможно и вообще нет такого метода - об чем и был изначальный вопрос -может я в глухую стенку стучусь.
#9 by shuhard
[может я в глухую стенку стучусь.] мы пока не видим даже попыток что-то сделать
#10 by cw014
Сорри, не то... Вот что тебя спасет: РегистрБухгалтерииСубконто.<Имя регистра бухгалтерии> (AccountingRegisterExtDimensions.<Имя регистра бухгалтерии>) РегистрБухгалтерииСубконто.<Имя регистра бухгалтерии> (AccountingRegisterExtDimensions.<Имя регистра бухгалтерии>) Элементы коллекции: КлючИЗначение Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются Ключ - вид субконто, Значение - значение субконто. Возможно обращение к значению субконто посредством оператора [...]. В качестве аргумента передается вид субконто (ПланВидовХарактеристикСсылка.<Имя плана видов характеристик>). Свойства: <Имя вида субконто> (<Extra dimension type name>) Методы: Конструкторы: Основной Описание: Коллекция значений субконто записи регистра бухгалтерии. Установка и получение значения конкретного субконто осуществляется через оператор [], в качестве параметра которому передается вид субконто. Возвращается значение типа КлючИЗначение. В качестве ключа вид субконто, в качестве значения значение субконто. Доступность: Сервер, толстый клиент, внешнее соединение. См. также: РегистрБухгалтерииВыборка, свойство Субконто
#11 by cw014
Поизучай методы все таки
#12 by Sasha_1CK
результат получен спасибо Но и в чистом виде не работает Ибо в этом варианте значение субконто очищается, но сам ВидСубконто в проводке остается и при записи программа ругается на то что - на счете такой субконто не предусмотрен. Собственно и стандартными методами СП - результат тот же - в отладчике я вижу, что значение субконто "Неопределено" - но ключ "вид субконто" все равно не очищается - и ошибка вываливается. Работает если сделать выгрузку в ТЗ и обнулить ВидСубконто Проводка.ВидСубконтоДт1 = Неопределено; Но штатными методами до вида субконто я так и не понял как достучаться.
#13 by laeg
На сколько мне память не изменяет работает механизм ввида
#14 by Sasha_1CK
именно потому что этот механизм не работал - я и создал тему. Это работает если нужно просто удалить значение. Но у меня в проводке меняется счет 90011 на 90021. на старом счете 3 субконто, на новом - только 1 субконто. при очистке значения, все равно в СубконтоДт остается ключ привязанный к субконто счета и при попытке сохранить набор записей происходит попытка создать аналитику с пустым значением - а поскольку на новом счете такой аналитики нет - то платформа вываливает ошибку - попытка записать несуществующее субконто в проводке.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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