|   |   | 
| 
 | Заполнение нетипового субконто ↓ (Волшебник 19.09.2025 09:37) | ☑ | ||
|---|---|---|---|---|
| 0
    
        berkoot 18.09.25✎ 15:23 | 
        БП корп 3.0.181.31 типовая, 8.3.27.1606
 В расширении(режим совместимости 8.3.24) добавлен тип субконто "Сотрудники" для ПВХ ВидыСубконтоХозрасчетные. Тип данных - Справочник Сотрудники. В этом же расширении документу Выдача денежных документов добавлен реквизит "Сотрудник" В этом же расширении есть обработка, в ее модуле объекта есть процедура &НаСервере
Процедура ЗаполнитьСотрудника(ДокСсылка) экспорт
	ПВХСотрудник = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НайтиПоНаименованию("Сотрудник");  
	НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
	НаборЗаписей.Отбор.Регистратор.Установить(ДокСсылка);
	НаборЗаписей.Прочитать(); 
	Для каждого Запись Из НаборЗаписей Цикл
		Если Лев(Запись.СчетКт.Код,5) = "50.03" Тогда 
			БухгалтерскийУчет.УстановитьСубконто(Запись.СчетКт, Запись.СубконтоКт,	ПВХСотрудник, ДокСсылка.Сотрудник);
		КонецЕсли;
	КонецЦикла;   
	НаборЗаписей.Записать(); 
КонецПроцедурыЕсли эту процедуру запускать из этой внешней обработки, то код работает и аналитика заполняется. Если эту процедуру запустить из расширения "после" "ОбработкаПроведения" документа Выдача денежных документов, то код отрабатывает, но субконто не заполняется. что сделать для решения? | |||
| 1
    
        Amra 18.09.25✎ 15:25 | 
        Потому что движения в момент проведения еще не записаны, по идее. Надо перебирать Движения.Хозрасчетный     | |||
| 2
    
        berkoot 18.09.25✎ 15:51 | 
        (1) Если бы движения не были записаны, то набор записей был бы пуст и код внутри цикла не исполнялся бы. На деле в обоих случаях набор записей не пуст и код внутри цикла исполняется.     | |||
| 3
    
        Мультук гуру 18.09.25✎ 16:01 | 
        (2) 
 Тогда давайте сократим высказывание (1) до Надо перебирать Движения.Хозрасчетный | |||
| 4
    
        Ботаник Гарден Меран 18.09.25✎ 16:37 | 
        Что-то как-то не очень развернулись.
 Не хватает еще видов субконто "Поставщики", "Покупатели", "ИФНСы", "БанкиИОбменники", "НоменклатураНаКомиссии", "РБПпоОтпускам". | |||
| 5
    
        Ботаник Гарден Меран 18.09.25✎ 16:41 | 
        У 50.03 уже есть нужное субконто, и нужно писать:
 БухгалтерскийУчет.УстановитьСубконто(Запись.СчетКт, Запись.СубконтоКт, "РаботникиОрганизаций", | |||
| 6
    
        Гена гуру 18.09.25✎ 17:10 | 
        (5) Разве в типовой БП Корп есть второе субконто на 50.03 кроме первого "Денежные документы"?     | |||
| 7
    
        Волшебник 18.09.25✎ 17:52 | 
        (6) Наверное, имелось в виду вид субконто     | |||
| 8
    
        Волшебник 18.09.25✎ 17:53 | 
        Мне кажется, тут нужна корреспонденция со счётом 71     | |||
| 9
    
        Гена гуру 18.09.25✎ 18:02 | 
        (8) Похоже у них не билеты, а что-то другое, что не в под отчёт, а в подарок раздаётся.     | |||
| 10
    
        berkoot 18.09.25✎ 18:06 | 
        (3) в процедуру, описанную выше, добавил код:
 ДокОбъект = ДокСсылка.получитьОбъект(); Проводки = ДокОбъект.Движения.Хозрасчетный; Проводки.Записывать = Истина; Проводки.Прочитать(); Для каждого Проводка Из Проводки Цикл БухгалтерскийУчет.УстановитьСубконто(Проводка.СчетКт, Проводка.СубконтоКт, ПВХСотрудник, ДокСсылка.Сотрудник); КонецЦикла; Проводки.Записать(); ситуация не изменилась. (6) в типовой нет. конфа была нетиповой. я привел к типовой, а субконто осталось, хоть и с пометкой на удаление. а если бы его не было, то через ИР можно добавить. тип субконто, как и писал выше, нетиповой и добавлен через расширение. да, я знаю, что это не самый оптимальный способ учета, но этот случай, когда цель определяет заказчик, а методы исполнитель. заказчику проще будет заполнить аналитику внешней обработкой, чем жить без привычной за 10 лет аналитики. расширение одно, в нем и нетиповой тип субконто, и вышеупомянутая обработка, и модуль объекта документа тоже "расширен" через это же расширение. (8) поясните пожалуйста, причем тут корреспонденция? если суть вопроса в том почему код работающий из обработки, не работает при вызове его же из модуля документа. | |||
| 11
    
        Волшебник 18.09.25✎ 18:09 | 
        (10) Сначала нужно понять, нужно ли субконто на счёте 50.03     | |||
| 12
    
        Гена гуру 18.09.25✎ 18:12 | 
        (11) Да можно, если очень надо. Например, условно, накупили лотерейных билетов и раздали работникам. Проводка 91-50.03 и не видно кому дали.     | |||
| 13
    
        Гена гуру 18.09.25✎ 18:15 | 
        Помогите уж человеку... скорее всего минутное дело...     | |||
| 14
    
        Волшебник 18.09.25✎ 18:21 | 
        (10) счёт ДТ и субконто ДТ
 Как гипотеза | |||
| 15
    
        shuhard 18.09.25✎ 18:20 | 
        (13) уже два раза объяснили, что в ОбработкаПроведения этот код не работает и нужно использовать Движения.Хозрасчетный     | |||
| 16
    
        Волшебник 18.09.25✎ 18:22 | 
        (15) и это тоже     | |||
| 17
    
        berkoot 18.09.25✎ 19:35 | 
        (11) нужно. 
 (14) Дт 71.01. да, там физ лица, но на 51.03 нужен сотрудник. для этого и создан доп реквизит в документе. так исторически сложилось у клиента, много лет назад разраб предложил(или клиент настоял) писать сотрудника на 51.03, клиент привык и сейчас имеем то, что имеем. правильно это или нет это не важно сейчас. вопрос совсем не в этом. ранее разраб все эти проводки правил просто в модифицированной конфе. сейчас поставлена задача сделать конфу типовой, а все прежние доработки сделать расширением. (15) так в (10) я написал, что правка Движения.Хозрасчетный не дала результата. или Вы хотите сказать, что в "после" "обработкаПроведения" этот код в принципе работать не будет? | |||
| 18
    
        Волшебник 18.09.25✎ 19:38 | 
        Значит несоответствие типов     | |||
| 19
    
        berkoot 18.09.25✎ 20:00 | 
        решено.
 процедуру вызвал из расширения "после" "ПослеЗаписи"(из событий формы). через НаборЗаписей сработало благодарю всех за участие | |||
| 20
    
        Волшебник 18.09.25✎ 20:04 | 
        (19) жуть     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |