Проводки документов

  • Автор темы nMagz
  • Дата начала
N

nMagz

#1
Добрый день! Поставили задачу но так глубоко с 1С еще незнаком.

Стандартная Конфигурация Бухгалтерия 7.7 редакция 4.5

Документ "Услуги сторонних организаций" требуеться чтобы при Субконто1 = некоторым наименованиям с видом "Прочие операционные доходы и расходы" проводкой по налоговому учету падало на счет Н01.05 (Прямые расходы)...

Наведите на мысль либо ткните на мануал который можно покурить :)
 

vbs

Well-known member
18.02.2007
1 708
1
#2
Изучай в модуле документа процедуру

СформироватьПроводкиДляЦелейНалоговогоУчета(ОбъектыАналитикиНУ, СтоимостьУслуг, Услуга)
 
N

nMagz

#3
Вот кусок кода
Если Субконто1.ВидПрочихДоходовИРасходов=Перечисление.ВидыПрочихДоходовИРасходов.Проч
иеОперационныеДоходыРасходы Тогда
ОбъектыАналитикиНУ.Установить("Счет", СчетПоКоду("Н01.5"));
ОбъектыАналитикиНУ.Установить("ВидыНоменклатуры", Субконто1);
ОбъектыАналитикиНУ.Установить("ГруппыВидыРасходов", Перечисление.ВидыРасходов.ПрямыеРасходы);
КонецЕсли;
но при запуске выдает ошибку Значение не представляет агрегатный объект (ВидПрочихДоходовИРасходов)

Каким образом можно узнать что Субконто1 при проводке именно то
 
H

Hryv

#4
Скорее всего Субконто1 пустое, либо другого типа, чем вы ожидаете и у Субконто1 нет такого реквизита ВидПрочихДоходовИРасходов

Можно проверить пройдя в отладчике
 
N

nMagz

#5
Дело в том что Субконто1 является реквизитом неопределенного типа табличной части документа, каким образом можно узнать что значение этого реквизита (в данной ситуации это Справочник ПрочиеДоходыИРасходы) именно того вида

Субконто1.ВидПрочихДоходовИРасходов = Перечисление.ВидыПрочихДоходовИРасходов.ПрочиеОперационныеДоходыРасходы
 
H

Hryv

#6
1 вариант

Код:
Попытка
//Ваш код
Исключение
//ничего или какой-то код, когда Субконто1 не имеет реквизита ВидПрочихДоходовИРасходов
Конец попытки;
2 вариант

Код:
Если ТипЗначения(Субконто1)=11 Тогда // то есть это Справочник
Если Субконто1.Вид()="ПрочиеДоходыИРасходы" Тогда
Если ПустоеЗначение(Субконто1)=0 Тогда
//ваш код
КонецЕсли;
КонецЕсли;
КонецЕсли;
 

vbs

Well-known member
18.02.2007
1 708
1
#7
Или изначально проверить Субконто1 на Непустое значение
 
H

Hryv

#8
vbs, если
Субконто1 является реквизитом неопределенного типа
то чисто теоретически Субконто1 может быть строкой или числом и не быть пустым
Тогда проверка на ПустоеЗначение ничего полезного не даст, и для полной надежности ее не хватит