Как добавить субконто к счету?

1. Death_eye 03.10.12 11:01 Сейчас в теме
Открыли субсчета к счету 50.01. Сразу не добавили субконто, а после записи это сделать невозможно. Попытался сделать добавление программно (пример взят из книги Простые примеры разработки) - не получилось, виснет после записи счета.
Подскажите, как правильно добавить субконто? Конфигурация бухгалтерия 1.6
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. rasswet 82 03.10.12 12:07 Сейчас в теме
програмнно ты субконто не добавишь, имхо.
в конфигураторе можно добавить.
5. Death_eye 03.10.12 13:50 Сейчас в теме
(2) Зачем же Габец в книге "Простые примеры разработки" помещает пример?

ВидМенеджеры = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НайтиПоНаименованию("Менеджеры", Истина);

// Добавить новый вид характеристик.
Если ВидМенеджеры.Пустая() Тогда
ВидМенеджеры = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СоздатьЭлемент();

ВидМенеджеры.Наименование = "Менеджеры";
ВидМенеджеры.ТипЗначения = Новый ОписаниеТипов("СправочникСсылка.Пользователи");

ВидМенеджеры.Записать();

КонецЕсли;

// Получить нужный счет.
Счет = ПланыСчетов.Хозрасчетный.НайтиПоКоду("90.01.1");

Если (Не Счет.Пустая()) И (Счет.ВидыСубконто.Найти(ВидМенеджеры) = Неопределено) Тогда

// Добавить новый вид субконто к счету.
ОбъектСчета = Счет.ПолучитьОбъект();
НовыйВидСубконто = ОбъектСчета.ВидыСубконто.Добавить();

НовыйВидСубконто.ВидСубконто = ВидМенеджеры;
НовыйВидСубконто.ТолькоОбороты = Истина;
НовыйВидСубконто.Суммовой = Истина;

ОбъектСчета.Записать();

КонецЕсли;

Делаю примерно так же (из ПВХ выбираю, ничего нового там не создаю) , весь код выполняется. Виснет после выполнения ОбъектСчета.Записать();
Diamante; +1 Ответить
3. Jen1978 19 03.10.12 12:10 Сейчас в теме
в конфигураторе открой счет, "Предопределенные" там добавляй субконто
6. Death_eye 03.10.12 13:51 Сейчас в теме
(3) не пойдет. У меня счета не предопределенные, а заданы в режиме Предприятия
(4) Спасибо за идею, но хотелось бы разобраться, почему не работает код предложенный в книге.
4. deniseek77 86 03.10.12 12:26 Сейчас в теме
Правильно ли я понимаю, что к 50.01 создали 50.01.1, после записи не получается создать субконто? Если да, то посоветую сделать так- создайте некий 50.01.3 (с нужным субконто), далее ваш кривой счет- поменяйте код на другой, поменяйте в новь созданном на нужным...и в документах обработкой переоформите все на вновь созданный.
Death_eye; +1 Ответить
7. deniseek77 86 03.10.12 14:06 Сейчас в теме
Конечно не подойдет, зайдите в модуль объекта плана счетов и посмотрите на перечень "Запрещенных к изменению счетов":

ЗапрещенныеСчета.Добавить(ПланыСчетов.Хозрасчетный.Касса);
ЗапрещенныеСчета.Добавить(ПланыСчетов.Хозрасчетный.КассаОрганизации);
ЗапрещенныеСчета.Добавить(ПланыСчетов.Хозрасчетный.ОперационнаяКасса);
ЗапрещенныеСчета.Добавить(ПланыСчетов.Хозрасчетный.КассаПлатежногоАгента);
ЗапрещенныеСчета.Добавить(ПланыСчетов.Хозрасчетный.КассаОрганизацииВал);

а затем в модуль формы элемента, в процедуру ПриОткрытии()

лементыФормы.ВидыСубконто.Колонки.Валютный.Видимость = Валютный;
ЭлементыФормы.ВидыСубконто.Колонки.Количественный.Видимость = Количественный;

Запрос = Новый Запрос();
Запрос.УстановитьПараметр("Ссылка", Ссылка);
Запрос.УстановитьПараметр("СписокСчетов", ЗапрещенныеСчета);
Запрос.УстановитьПараметр("СписокИсключений", СписокИсключений);
Запрос.Текст =
"ВЫБРАТЬ
| Хозрасчетный.Ссылка КАК Ссылка
|ИЗ
| ПланСчетов.Хозрасчетный КАК Хозрасчетный
|ГДЕ
| Хозрасчетный.Ссылка = &Ссылка
| И Хозрасчетный.Ссылка В ИЕРАРХИИ(&СписокСчетов)
| И (НЕ Хозрасчетный.Ссылка В ИЕРАРХИИ (&СписокИсключений))";
мЗапрещенныйСчет = НЕ Запрос.Выполнить().Пустой();

Если мЗапрещенныйСчет Тогда

ЭлементыФормы.КоманднаяПанель1.Кнопки.Добавить.Доступность = Ложь;
ЭлементыФормы.КоманднаяПанель1.Кнопки.Изменить.Доступность = Ложь;
ЭлементыФормы.КоманднаяПанель1.Кнопки.Удалить.Доступность = Ложь;

КонецЕсли;
То есть, если ваш счет в запрещенных, то кнопки недоступны
8. deniseek77 86 03.10.12 14:11 Сейчас в теме
Это все из серии добавить руками, а если нужно обработкой, то нужно дописать строку :


ОбменДанными.Загрузка=Истина;
Grigorop; Death_eye; +2 Ответить
9. pavelyar 18.02.15 09:36 Сейчас в теме
10. vec435 15 24.05.16 11:32 Сейчас в теме
ОбъектСчета.ОбменДанными.Загрузка=Истина;
Grigorop; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот