Имя: Пароль:
1C
1С v8
Инвентарная карточка учета ОС
0 Igor_Krap
 
14.06.12
11:31
Здравствуйте. Подскажите пожалуйста механизм создания внешеней печатной формы в Бюджетной бухгалтерии учереждения.
Нужно редактировать форму 0504031(Инвентарная карточка учета ОС).
1 Igor_Krap
 
14.06.12
11:35
1С:Предприятие 8.2 (8.2.15.289)
Бухгалтерия государственного учреждения, редакция 1.0 (1.0.11.4)
2 Naumov
 
14.06.12
11:37
Механизмы описаны на ИТС.
3 Igor_Krap
 
14.06.12
11:39
на диске ИТС?
4 Igor_Krap
 
14.06.12
11:39
Просто первый раз сталкиваюсь с этим.
5 Kavar
 
14.06.12
11:40
Внешнюю печатную форму подключи.
6 Kavar
 
14.06.12
11:41
Вот тебе для примера:
http://infostart.ru/public/138385/
7 Kavar
 
14.06.12
11:45
А вот тут статья про созжание ВПФ.
http://www.1c-pro.ru/topic38768.html

ниче сложного там нет.
8 Igor_Krap
 
14.06.12
11:51
Для накладной может и не сложно,а вот форму 0504031 не могу сделать,с макетом запарки.
9 Igor_Krap
 
14.06.12
11:59
А может кто нибудь создать эту внешнюю печатную форму?
10 Igor_Krap
 
14.06.12
11:59
я бы на примере понял в чем у меня прокол
11 Kavar
 
14.06.12
12:01
в чем именно проблема?
12 Igor_Krap
 
14.06.12
12:01
помогите добрые люди,для кого то это не сложно,а для меня будет наглядный пример
13 Igor_Krap
 
14.06.12
12:02
создать внешнюю печатную форму (0504031),что бы я мог поправить таблицу оборотной части.
14 Kavar
 
14.06.12
12:03
(12) Тебе помочь решить конкретную проблему, или сделать готовую внешнюю печатную форму?
если первое - огласи свою проблему, если второе - сумму.
15 Igor_Krap
 
14.06.12
12:04
при нажатии печать выходила еще одна форма 0504031 (с другим именем),а таблицу я уже сам поправлю.
16 Kavar
 
14.06.12
12:06
(15) 500р.
или разбирайся сам в (7) все подробно описано.
Никакой принципиально разницы Накладная это или ИнвКарточка нет.
Будут конкретные вопросы - задавай -  поможем.
17 Igor_Krap
 
14.06.12
12:12
все там хорошо но вот с кодом запарка,код можете выложить?
18 Kavar
 
14.06.12
12:13
(17) Код чего?
Код формирования карточки есть в БГУ.
тебе его просто надо во внешний отчет перенести, и внести соотвествующие исправления.
19 Igor_Krap
 
14.06.12
12:17
да,можешь его скинуть,а его поправил бы.
20 Igor_Krap
 
14.06.12
12:18
(18)это он?
#Если Клиент Тогда
   
   // Функция формирует табличный документ с печатной формой инвентарной карточки ОС (форма 0504031)
   // Утверждена приказом Минфина России  № 123н от 23.09.2005
   // Возвращаемое значение:
   //  Табличный документ - печатная форма инвентарной карточки ОС
   Функция ПечатьФ0504031(ДатаСведений, Учреждение)
       
       ОписаниеТипаЧисло   = Новый ОписаниеТипов("Число");
       ОписаниеТипаСтрока  = Новый ОписаниеТипов("Строка");
       ОписаниеТипаДата    = Новый ОписаниеТипов("Дата");
       
       ДатаОтчета              = КонецДня(ДатаСведений);
       Макет                   = ПолучитьМакет("Ф0504031");
       Шапка                   = Макет.ПолучитьОбласть("Шапка");
       ОсновныеСведения        = Макет.ПолучитьОбласть("ОсновныеСведения");
       ПримечаниеСтрока        = Макет.ПолучитьОбласть("ПримечаниеСтрока");
       ПереоценкаСтрока        = Макет.ПолучитьОбласть("ПереоценкаСтрока");
       АмортизацияСтрока       = Макет.ПолучитьОбласть("АмортизацияСтрока");
       ПустаяСтрока            = Макет.ПолучитьОбласть("ПустаяСтрока");
       МодернизацияШапка       = Макет.ПолучитьОбласть("МодернизацияШапка");
       МодернизацияСтрока      = Макет.ПолучитьОбласть("МодернизацияСтрока");
       Стр1_Подвал             = Макет.ПолучитьОбласть("Стр1_Подвал");
       ПоступлениеПеремещение  = Макет.ПолучитьОбласть("ПоступлениеПеремещение");
       ПеремещениеСтрока       = Макет.ПолучитьОбласть("ПеремещениеСтрока");
       ШапкаХарактеристики     = Макет.ПолучитьОбласть("ШапкаХарактеристики");
       ДрагМеталл              = Макет.ПолучитьОбласть("ДрагМеталл");
       Подвал                  = Макет.ПолучитьОбласть("Подвал");
       ДанныхНет               = Макет.ПолучитьОбласть("ДанныхНет");
       
       СтруктураПараметров = Новый Структура("ДанныеУчреждения", Новый Структура("НаименованиеПолное,КодОКПО"));
       ПолучениеНСИ.ПолучитьДанные(Учреждение, ДатаОтчета, СтруктураПараметров);
       НазваниеОрганизации  = СтруктураПараметров.НаименованиеПолное;
       КодОКПО              = СтруктураПараметров.КодОКПО;
       
       ТабДок = Новый ТабличныйДокумент();
       
       ЗапросПоступление = Новый Запрос;
       ЗапросПоступление.УстановитьПараметр("ОсновноеСредство", Ссылка);
       ЗапросПоступление.УстановитьПараметр("ДатаСведений",    ДатаОтчета);
       ЗапросПоступление.Текст =
       "ВЫБРАТЬ РАЗРЕШЕННЫЕ
       |    СобытияОС.Событие,
       |    СобытияОС.ДатаСобытия,
       |    СобытияОС.ОС,
       |    СобытияОС.Учреждение,
       |    СобытияОС.ПричинаСписания,
       |    СобытияОС.Регистратор КАК ДокументСобытия,
       |    СобытияОС.Регистратор.МоментВремени КАК МоментСобытия,
       |    СобытияОС.НазваниеДокумента,
       |    СобытияОС.НомерДокумента
       |ИЗ
       |    РегистрСведений.СобытияОС КАК СобытияОС
       |ГДЕ
       |    СобытияОС.ОС = &ОсновноеСредство
       |    И СобытияОС.ДатаСобытия <= &ДатаСведений" ;
       
       ДатаПостОС             = '00010101';
       ДатаВыбытия            = '00010101';
       ДатаВводаВЭксплуатацию = '00010101';
       МоментВыбытия          = '00010101';
       ДокументПоступления    = "";
       ДокументВыбытия        = "";
       ПричинаВыбытия         = "";
       ДокументВводаВЭксплуатациюНомер = "";
       Поступления = ЗапросПоступление.Выполнить().Выбрать();
       Пока Поступления.Следующий() Цикл
           Если (Поступления.Событие = Перечисления.ВидыСобытийОС.ПринятиеКУчету) ИЛИ
               (Поступления.Событие  = Перечисления.ВидыСобытийОС.ПринятиеКУчетуСВводомВЭксплуатацию) Тогда
               Если ДатаПостОС = '00010101' Тогда
                   ДатаПостОС               = Поступления.ДатаСобытия;
                   ДокументПоступления      = Поступления.НазваниеДокумента;
                   ДокументПоступленияНомер = Поступления.НомерДокумента;
                   Если (Поступления.Событие  = Перечисления.ВидыСобытийОС.ПринятиеКУчетуСВводомВЭксплуатацию) Тогда
                       Если  ДатаВводаВЭксплуатацию  = '00010101' Тогда
                           ДатаВводаВЭксплуатацию = Поступления.ДатаСобытия;
                           ДокументВводаВЭксплуатациюНомер = Поступления.НомерДокумента;
                       КонецЕсли;
                   КонецЕсли;
               КонецЕсли;
           ИначеЕсли Поступления.Событие = Перечисления.ВидыСобытийОС.ВводВЭксплуатацию Тогда
               Если  ДатаВводаВЭксплуатацию  = '00010101' Тогда
                   ДатаВводаВЭксплуатацию = Поступления.ДатаСобытия;
                   ДокументВводаВЭксплуатациюНомер = Поступления.НомерДокумента;
               КонецЕсли;
           ИначеЕсли (Поступления.Событие = Перечисления.ВидыСобытийОС.Списание) Тогда
               Если ДатаВыбытия    = '00010101' Тогда
                   ДатаВыбытия           = Поступления.ДатаСобытия;
                   ПричинаВыбытия        = Поступления.ПричинаСписания;
                   ДокументВыбытия       = Поступления.НазваниеДокумента;
                   ДокументВыбытияНомер  = Поступления.НомерДокумента;
                   МоментВыбытия         = Поступления.МоментСобытия;
               КонецЕсли;
           КонецЕсли;
       КонецЦикла;
       Если  ДатаПостОС = '00010101' Тогда
           ДанныхНет.Параметры.НазваниеОрганизации  = НазваниеОрганизации;
           ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(НаименованиеПолное),НаименованиеПолное,Наименование);
           ТабДок.Вывести(ДанныхНет);
           Возврат ТабДок;
       КонецЕсли;
       
       Если ДатаВыбытия<>'00010101' Тогда
           ДатаОтчета   = КонецДня(ДатаВыбытия);
           МоментОтчета = МоментВыбытия;
       Иначе
           МоментОтчета = ДатаОтчета;
       КонецЕсли;
       
       СрокПолезногоИспользования = 0;
       СрокИспользованияДляВычисленияАмортизации = 0;
       СтоимостьДляВычисленияАмортизации         = 0;
       ДокументАмортизации                       = Неопределено;
       Если ВидУчета = Перечисления.ВидыУчетаНФА.НаБалансе Тогда
           
           ЗапросАм = Новый Запрос;
           ЗапросАм.УстановитьПараметр("ОсновноеСредство", Ссылка);
           ЗапросАм.УстановитьПараметр("ДатаСведений",     МоментОтчета);
           ЗапросАм.УстановитьПараметр("Учреждение",       Учреждение);
           ЗапросАм.Текст =
           "ВЫБРАТЬ РАЗРЕШЕННЫЕ
           |    ЕСТЬNULL(РасчетАмортизацииОССрезПоследних.СрокПолезногоИспользования, 0) КАК СрокПолезногоИспользования,
           |    ЕСТЬNULL(РасчетАмортизацииОССрезПоследних.СрокИспользованияДляВычисленияАмортизации, 0) КАК СрокИспользованияДляВычисленияАмортизации,
           |    ЕСТЬNULL(РасчетАмортизацииОССрезПоследних.СтоимостьДляВычисленияАмортизации, 0) КАК СтоимостьДляВычисленияАмортизации,
           |    РасчетАмортизацииОССрезПоследних.Регистратор КАК Документ
           |ИЗ
           |     РегистрСведений.РасчетАмортизацииОС.СрезПоследних(&ДатаСведений, ) КАК РасчетАмортизацииОССрезПоследних
           |ГДЕ
           |    РасчетАмортизацииОССрезПоследних.ОС = &ОсновноеСредство" ;
           
           ТекущиеСведенияОС = ЗапросАм.Выполнить().Выбрать();
           
           Если ТекущиеСведенияОС.Следующий() Тогда
               СрокПолезногоИспользования = ТекущиеСведенияОС.СрокПолезногоИспользования;
               СрокИспользованияДляВычисленияАмортизации = ТекущиеСведенияОС.СрокИспользованияДляВычисленияАмортизации;
               СтоимостьДляВычисленияАмортизации         = ТекущиеСведенияОС.СтоимостьДляВычисленияАмортизации;
               ДокументАмортизации                       = ТекущиеСведенияОС.Документ;
           КонецЕсли;
       КонецЕсли;
       
       ЗапросМодернизация = Новый Запрос;
       ЗапросМодернизация.УстановитьПараметр("ОсновноеСредство", Ссылка);
       ЗапросМодернизация.УстановитьПараметр("ДатаСведений",     ДатаОтчета);
       ЗапросМодернизация.УстановитьПараметр("Учреждение",      Учреждение);
       ЗапросМодернизация.Текст =
       "ВЫБРАТЬ РАЗРЕШЕННЫЕ
       |    МодернизацияОС.ОС,
       |    МодернизацияОС.СуммаМодерн КАК СуммаМодернизации,
       |    МодернизацияОС.Период КАК ДатаМ,
       |    МодернизацияОС.Регистратор КАК Документ
       |ИЗ
       |    РегистрСведений.МодернизацияОС КАК МодернизацияОС
       |ГДЕ
       |    МодернизацияОС.ОС = &ОсновноеСредство
       |    И МодернизацияОС.Период <= &ДатаСведений";
       
       СведенияМодернизации = ЗапросМодернизация.Выполнить().Выбрать();
       СуммаМодернизацииВсего = 0;
       ПереоценкаМодернизация = Новый ТаблицаЗначений;
       ПереоценкаМодернизация.Колонки.Добавить("ДатаМ",      ОписаниеТипаДата);
       ПереоценкаМодернизация.Колонки.Добавить("СуммаМод",   ОписаниеТипаЧисло);
       ПереоценкаМодернизация.Колонки.Добавить("ЖурналМод",  ОписаниеТипаСтрока);
       ПереоценкаМодернизация.Колонки.Добавить("ДокументМод");
       ПереоценкаМодернизация.Колонки.Добавить("ДатаПер",    ОписаниеТипаДата);
       ПереоценкаМодернизация.Колонки.Добавить("ЖурналП",    ОписаниеТипаСтрока);
       ПереоценкаМодернизация.Колонки.Добавить("СуммаП",     ОписаниеТипаЧисло);
       
       Пока СведенияМодернизации.Следующий() Цикл
           НоваяСтрока = ПереоценкаМодернизация.Добавить();
           СуммаМодернизации       = СведенияМодернизации.СуммаМодернизации;
           ДатаМ                   = СведенияМодернизации.ДатаМ;
           НоваяСтрока.ДатаМ       = ДатаМ;
           НоваяСтрока.СуммаМод    = СуммаМодернизации;
           НоваяСтрока.ДокументМод = СведенияМодернизации.Документ;
           НоваяСтрока.ЖурналМод   = "";
           Если ДатаМ >= ДатаПостОС И ДатаМ <= ДатаОтчета Тогда
               СуммаМодернизацииВсего = СуммаМодернизацииВсего + СуммаМодернизации;
           КонецЕсли;
       КонецЦикла;
       
       ЗапросПереоценка = Новый Запрос;
       ЗапросПереоценка.УстановитьПараметр("ОсновноеСредство",   Ссылка);
       ЗапросПереоценка.УстановитьПараметр("ДатаСведений",       ДатаОтчета);
       ЗапросПереоценка.Текст =
       "ВЫБРАТЬ РАЗРЕШЕННЫЕ
       |    ЕСТЬNULL(ПереоценкаНФА.ОсновнойКоэффициент,0) КАК Коэф,
       |    ЕСТЬNULL(ПереоценкаНФА.ПоправочныйКоэффициент,0) КАК Коэф1,
       |    ЕСТЬNULL(ПереоценкаНФА.ДооценкаБалансовойСтоимости,0) КАК ДооценкаБалансовойСтоимости,
       |    ЕСТЬNULL(ПереоценкаНФА.ДооценкаАмортизации,0) КАК ДооценкаАмортизации,
       |    ЕСТЬNULL(ПереоценкаНФА.БалансоваяСтоимостьПослеПереоценки,0) КАК БалансоваяСтоимостьПослеПереоценки,
       |    ЕСТЬNULL(ПереоценкаНФА.АмортизацияПослеПереоценки,0) КАК АмортизацияПослеПереоценки,
       |    ПереоценкаНФА.ПереоценкаПоСостояниюНА,
       |    ПереоценкаНФА.ПриказОПереоценке,
       |    ПереоценкаНФА.ГруппаОФ,
       |    ПереоценкаНФА.ДатаПроведения КАК ДатаПереоценки,
       |    ПереоценкаНФА.Период КАК ДатаП
       |ИЗ
       |    РегистрСведений.ПереоценкаНФА КАК ПереоценкаНФА
       |ГДЕ
       |    ПереоценкаНФА.НФА = &ОсновноеСредство
       |    И ПереоценкаНФА.Период <= &ДатаСведений";
       
       ПереоценкаЗ     =  ЗапросПереоценка.Выполнить();
       
       ДооценкаСтоимостиВсего = 0;
       Переоценка      = ПереоценкаЗ.Выбрать();
       Пока Переоценка.Следующий() Цикл
           ДатаП = Переоценка.ДатаП;
           Если ДатаП >= ДатаПостОС И ДатаП <= ДатаОтчета Тогда
               ДооценкаСтоимостиВсего = ДооценкаСтоимостиВсего + Переоценка.ДооценкаБалансовойСтоимости;
           КонецЕсли;
       КонецЦикла;
       
       ЗапросЦМО = Новый Запрос;
       ЗапросЦМО.УстановитьПараметр("ОсновноеСредство", Ссылка);
       ЗапросЦМО.УстановитьПараметр("ДатаСведений",    МоментОтчета);
       ЗапросЦМО.УстановитьПараметр("Учреждение",      Учреждение);
       ЗапросЦМО.Текст =
       
       "ВЫБРАТЬ РАЗРЕШЕННЫЕ
       |    ИнвентарныеНомераОС.Код КАК ИнвНомер,
       |    ИнвентарныеНомераОС.ОС КАК ОС,
       |    МестонахождениеОССрезПоследних.ЦМО.Сотрудник КАК МОЛ,
       |    МестонахождениеОССрезПоследних.ЦМО.Подразделение КАК Подразделение,
       |    МестонахождениеОССрезПоследних.Состояние
       |ИЗ
       |    Справочник.ИнвентарныеНомераОС КАК ИнвентарныеНомераОС
       |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних(&ДатаСведений, ОС = &ОсновноеСредство) КАК МестонахождениеОССрезПоследних
       |        ПО (МестонахождениеОССрезПоследних.ИнвНомер.Ссылка = ИнвентарныеНомераОС.Ссылка)
       |ГДЕ
       |    ИнвентарныеНомераОС.ОС = &ОсновноеСредство" ;
       
       ТекущиеСведенияОС = ЗапросЦМО.Выполнить().Выбрать();
       ТекущиеСведенияОС.Следующий();
       
       пИнвНомер        = ТекущиеСведенияОС.ИнвНомер;
       Подразделение    = ТекущиеСведенияОС.Подразделение;
       пМестоНахождение = Ссылка.Местонахождение;
       Если НЕ ЗначениеЗаполнено(пМестоНахождение) Тогда
           пМестоНахождение = Подразделение;
       КонецЕсли;
       
       МОЛ                 =  ТекущиеСведенияОС.МОЛ;
       ФИОМОЛ              = "";
       ТабНомМОЛ           = "";
       Если ЗначениеЗаполнено(МОЛ) Тогда
           ФИОМОЛ    = МОЛ.Наименование;
           ТабНомМОЛ = МОЛ.Код;
       КонецЕсли;
       
       КодКБК = ?(ЗначениеЗаполнено(Ссылка.КБК),Ссылка.КБК,"00000000000000000");
       КодКВД = ?(ЗначениеЗаполнено(Ссылка.КВД),Ссылка.КВД,"0");
       КодСчета = ?(ЗначениеЗаполнено(Ссылка.СчетУчета),Ссылка.СчетУчета,"000.00");
       ПолныйСчетОС =""+КодКБК+"."+КодКВД+"."+ КодСчета+".000";
       Шапка.Параметры.НомерИнвКарт               = Ссылка.НомерИнвКарт;
       Шапка.Параметры.ДатаКарточки               = ДатаОтчета;
       Шапка.Параметры.ДатаКарточкиПрописью       = Формат(ДатаОтчета,"ДЛФ=ДД");
       Шапка.Параметры.НазваниеОрганизации        = НазваниеОрганизации;
       Шапка.Параметры.КодОКПО                    = КодОКПО;
       Шапка.Параметры.Подразделение              = Подразделение;
       Шапка.Параметры.ПолноеНаименованиеОС       = ?(ЗначениеЗаполнено(НаименованиеПолное),НаименованиеПолное,Наименование);
       Шапка.Параметры.ОКОФ                       = КодПоОКОФ;
       Шапка.Параметры.НазначениеОбъекта          = Ссылка.НазначениеОбъекта;
       Шапка.Параметры.пМестоНахождение           = пМестоНахождение;
       Шапка.Параметры.Изготовитель               = Ссылка.Изготовитель;
       Шапка.Параметры.ФИОМОЛ                     = ФИОМОЛ;
       Шапка.Параметры.ТабНомМОЛ                  = ТабНомМОЛ;
       Шапка.Параметры.пИнвНомер                  = СОКРП(пИнвНомер);
       Если  АмортизационнаяГруппа.Пустая() Тогда
           НомерАмортизационнойГруппы             = "";
       Иначе
           ИндексЗначенияПеречисления             = Перечисления["АмортизационныеГруппы"].Индекс(АмортизационнаяГруппа);
           НомерАмортизационнойГруппы             = ИндексЗначенияПеречисления+1;
       КонецЕсли;
       Шапка.Параметры.АмортизационнаяГруппа      = НомерАмортизационнойГруппы;
       Шапка.Параметры.СрокПолезногоИспользования = УправлениеНефинансовымиАктивами.МесяцВГод(СрокПолезногоИспользования);
       Шапка.Параметры.ПолныйСчетОС               = ПолныйСчетОС;
       
       ТабДок.Вывести(Шапка);
       СчетАм   = ПланыСчетов.ЕПСБУ.Амортизация;
       Запрос = Новый Запрос;
       Запрос.УстановитьПараметр("ОсновноеСредство",   Ссылка);
       Запрос.УстановитьПараметр("ДатаСведений",       МоментОтчета);
       Запрос.УстановитьПараметр("ТекУчреждение",      Учреждение);
       Запрос.УстановитьПараметр("ТекКВД",             Ссылка.КВД);
       Запрос.УстановитьПараметр("ТекКБК",             Ссылка.КБК);
       Запрос.УстановитьПараметр("СчетОС",             Ссылка.СчетУчета);
       Запрос.УстановитьПараметр("СчетАм",             СчетАм);

       Запрос.Текст =
       "ВЫБРАТЬ РАЗРЕШЕННЫЕ
       |    ЕПСБУОстатки.Счет,
       |    ЕПСБУОстатки.Субконто2 КАК ОС,
       |    ЕПСБУОстатки.Учреждение,
       |    ЕПСБУОстатки.КВД,
       |    ЕПСБУОстатки.КБК,
       |    ЕСТЬNULL(ЕПСБУОстатки.СуммаОстатокДт,0) КАК БалансСтоимОС,
       |    ЕСТЬNULL(ЕПСБУОстатки.СуммаОстатокКт,0) КАК НачАмортизацииВсего,
       |    ЕСТЬNULL(ЕПСБУОстатки.КоличествоОстатокДт,0) КАК КоличествоОстаток
       |ИЗ
       |    РегистрБухгалтерии.ЕПСБУ.Остатки(
       |                &ДатаСведений,
       |                Счет.Ссылка в ИЕРАРХИИ(&СчетОС,&СчетАм),
       |            ,
       |            Учреждение = &ТекУчреждение
       |                И КВД = &ТекКВД
       |                И КБК = &ТекКБК
       |                И Субконто2 = &ОсновноеСредство) КАК ЕПСБУОстатки";
       
       БалансСтоимОС          = 0;
       НачАмортизацииВсего    = 0;
       ДоначисленоАмортизации = 0;
       Остатки = Запрос.Выполнить().Выбрать();
       Пока Остатки.Следующий() Цикл
           Если Остатки.Счет = Ссылка.СчетУчета Тогда
               БалансСтоимОС = Остатки.БалансСтоимОС;
           Иначе
               НачАмортизацииВсего = Остатки.НачАмортизацииВсего;
           КонецЕсли;
       КонецЦикла;
       
       Если ЗначениеЗаполнено(ДокументВыбытия) Тогда
           Запрос = Новый Запрос;
           Запрос.УстановитьПараметр("Регистратор", ДокументВыбытия);
           Запрос.УстановитьПараметр("ОсновноеСредство",   Ссылка);
           Запрос.УстановитьПараметр("СчетАм",             СчетАм);
           ТекстЗапроса =
           "ВЫБРАТЬ
           |    ЕПСБУДвиженияССубконто.СчетКт,
           |    ЕПСБУДвиженияССубконто.СубконтоКт2,
           |    ЕПСБУДвиженияССубконто.Сумма КАК ДоначисленоАмортизации
           |ИЗ
           |    РегистрБухгалтерии.ЕПСБУ.ДвиженияССубконто КАК ЕПСБУДвиженияССубконто
           |ГДЕ
           |    ЕПСБУДвиженияССубконто.Регистратор = &Регистратор
           |    И ЕПСБУДвиженияССубконто.СчетКт В ИЕРАРХИИ(&СчетАм)
           |    И ЕПСБУДвиженияССубконто.СубконтоКт2 = &ОсновноеСредство";
           Запрос.Текст = ТекстЗапроса;
           РезультатАм  =  Запрос.Выполнить().Выбрать();
           Пока РезультатАм.Следующий() Цикл
               ДоначисленоАмортизации = ДоначисленоАмортизации + РезультатАм.ДоначисленоАмортизации;
           КонецЦикла;
       КонецЕсли;
       НачАмортизацииВсего = НачАмортизацииВсего + ДоначисленоАмортизации;

       Если ДатаВводаВЭксплуатацию='00010101' Тогда
           ДатаИАктПередачиВЭксплуатацию ="";
       Иначе
           ДатаИАктПередачиВЭксплуатацию =Формат(ДатаВводаВЭксплуатацию, "ДЛФ=Д")+", № " +ДокументВводаВЭксплуатациюНомер;
       КонецЕсли;
       
       НормаАмортизации           = "";
       ГодНормаАмортизации        = "";
       МесАмортизация             = "";
       ГодАмортизация             = "";
       ПослМесяцАмортизации       = "";
       МесАмортизацияМод          = "";
       ГодАмортизацияМод          = "";
       НормаАмортизацииМод        = "";
       ГодНормаАмортизацииМод     = "";
       
       Если ПорядокПогашенияСтоимости = Перечисления.ПорядокПогашенияСтоимостиОС.СтоимостьНеПогашается Тогда
           ПослМесяцАмортизации = "Не начисляется";
       ИначеЕсли ПорядокПогашенияСтоимости = Перечисления.ПорядокПогашенияСтоимостиОС.СписаниеПриПринятииКУчету Тогда
           ПослМесяцАмортизации = "Списать с учета при вводе в эксплуатацию";
       ИначеЕсли ПорядокПогашенияСтоимости = Перечисления.ПорядокПогашенияСтоимостиОС.НачислениеАмортизации Тогда
           Если ВидУчета = Перечисления.ВидыУчетаНФА.НаБалансе Тогда
               Если СпособНачисленияАмортизации = Перечисления.СпособНачисленияАмортизации.ПриВводеВЭксплуатацию Тогда
                   ПослМесяцАмортизации = "100% при вводе в экспл.";
               ИначеЕсли СпособНачисленияАмортизации = Перечисления.СпособНачисленияАмортизации.Линейный Тогда
                   Если (СрокИспользованияДляВычисленияАмортизации > 0) И (СтоимостьДляВычисленияАмортизации > 0) Тогда
                       СрокПолезногоИспользованияМ = СрокИспользованияДляВычисленияАмортизации;
                       НачСтоимость                = СтоимостьДляВычисленияАмортизации;
                       МесАмортизацияМод           = ?(СрокПолезногоИспользованияМ<>0,(НачСтоимость / СрокПолезногоИспользованияМ),0);
                       ГодАмортизацияМод           =  МесАмортизацияМод*12;
                       НачСтоимость                = ?(БалансСтоимОС<>0,БалансСтоимОС,ПервоначальнаяСтоимость);
                       НормаАмортизацииМод         =  МесАмортизацияМод/НачСтоимость*100;
                       ГодНормаАмортизацииМод       = НормаАмортизацииМод*12;
                   КонецЕсли;
                   СрокПолезногоИспользованияМ = СрокПолезногоИспользования;
                   НачСтоимость                = ?(БалансСтоимОС<>0,БалансСтоимОС-СуммаМодернизацииВсего-ДооценкаСтоимостиВсего,ПервоначальнаяСтоимость);
                   НормаАмортизации            = ?(СрокПолезногоИспользованияМ<>0,100/СрокПолезногоИспользованияМ,0);
                   ПересчитатьНорму = Ложь;
                   МесАмортизация = ?(СрокПолезногоИспользованияМ<>0,(НачСтоимость / СрокПолезногоИспользованияМ),0);
                   ГодАмортизация = МесАмортизация*12;
                   ГодНормаАмортизации         = НормаАмортизации*12;
                   Если (ДатаПостОС='00010101') ИЛИ (ДатаВводаВЭксплуатацию='00010101') Тогда
                       ДатаВвода  = Макс(ДатаПостОС,ДатаВводаВЭксплуатацию);
                   Иначе
                       ДатаВвода  = Мин(ДатаПостОС,ДатаВводаВЭксплуатацию);
                   КонецЕсли;
                   Если ДатаВвода = '00010101' Тогда
                       ПослМесяцАмортизации = "";
                   Иначе
                       ПослМесяцАмортизацииР = ДобавитьМесяц(ДатаВвода,СрокПолезногоИспользования);
                       ПослМесяцАмортизации  = ПредставлениеПериода(НачалоМесяца(ПослМесяцАмортизацииР), КонецМесяца(ПослМесяцАмортизацииР));
                   КонецЕсли;
               КонецЕсли;
           КонецЕсли;
       КонецЕсли;
       
       ОсновныеСведения.Параметры.НомерПаспорта             = НомерПаспорта;
       ОсновныеСведения.Параметры.ЗаводскойНомер            = ЗаводскойНомер;
       ОсновныеСведения.Параметры.ДатаВыпуска               = ДатаВыпуска;
       ОсновныеСведения.Параметры.ДатаИАктПередачиВЭксплуатацию =ДатаИАктПередачиВЭксплуатацию;
       ОсновныеСведения.Параметры.ПервоначальнаяСтоимость    = ПервоначальнаяСтоимость;
       ОсновныеСведения.Параметры.ПослМесяцАмортизации       = ПослМесяцАмортизации;
       ОсновныеСведения.Параметры.НормаАмортизации           = НормаАмортизации;
       ОсновныеСведения.Параметры.ГодНормаАмортизации        = ГодНормаАмортизации;
       ОсновныеСведения.Параметры.МесАмортизация             = МесАмортизация;
       ОсновныеСведения.Параметры.ГодАмортизация             = ГодАмортизация;
       ОсновныеСведения.Параметры.АмортизацииНачальная       = "";
       ОсновныеСведения.Параметры.ДатаПостОС                 = ДатаПостОС;
       
       ТабДок.Вывести(ОсновныеСведения);
       
       ПримечаниеСтрока.Параметры.Примечание                 = "Данные на "+Формат(ДатаОтчета,"ДЛФ=ДД");
       ПримечаниеСтрока.Параметры.БалансСтоимОС              = БалансСтоимОС;
       ПримечаниеСтрока.Параметры.НачАмортизацииМод          = НачАмортизацииВсего;
       ПримечаниеСтрока.Параметры.ДатаМодернизации           = "";
       
       Переоценка      = ПереоценкаЗ.Выбрать();
       Пока Переоценка.Следующий() Цикл
           ПереоценкаСтрока.Параметры.Заполнить(Переоценка);
           ГруппаОФ = Переоценка.ГруппаОФ;
           Коэф     = Переоценка.Коэф;
           Коэф1    = Переоценка.Коэф1;
           ПриказОПереоценке = Переоценка.ПриказОПереоценке;
           НазвПереоценки  = "Переоценка по состоянию на "+Формат(Переоценка.ПереоценкаПоСостояниюНА,"ДЛФ=D");
           Если ЗначениеЗаполнено(ПриказОПереоценке) Тогда
               НазвПереоценки  =НазвПереоценки + " в соответствии с "+ ПриказОПереоценке;
           КонецЕсли;
           Если ЗначениеЗаполнено(ГруппаОФ) Тогда
               НазвПереоценки  =НазвПереоценки + Символы.ПС+ "группа """+Переоценка.ГруппаОФ+ """  коэф. "+ Переоценка.Коэф;
           Иначе
               НазвПереоценки  =НазвПереоценки + Символы.ПС+"  коэф. "+ Переоценка.Коэф;
           КонецЕсли;
           Если Коэф1>0 Тогда
               НазвПереоценки= НазвПереоценки+" попр.коэф. "+Коэф1;
           КонецЕсли;
           
           ПереоценкаСтрока.Параметры.НазвПереоценки = НазвПереоценки;
           ТабДок.Вывести(ПереоценкаСтрока);
       КонецЦикла;
       
       ЗапросИАМ = Новый Запрос;
       ЗапросИАМ.УстановитьПараметр("ОсновноеСредство",   Ссылка);
       ЗапросИАМ.УстановитьПараметр("ДатаСведений",       ДатаОтчета);
       ЗапросИАМ.Текст =
       "ВЫБРАТЬ РАЗРЕШЕННЫЕ
       |    ИсторияАмортизации.Период КАК ДатаНачГода,
       |    ИсторияАмортизации.СуммаАмортизации КАК НачАмортизацииНачГода
       |ИЗ
       |    РегистрСведений.ИсторияАмортизации КАК ИсторияАмортизации
       |ГДЕ
       |    ИсторияАмортизации.ОС = &ОсновноеСредство
       |    И ИсторияАмортизации.Период <= &ДатаСведений";
       
       ИсторияАмортизации = ЗапросИАМ.Выполнить().Выбрать();
       
       АмортизацияСтрока.Параметры.НачАмортизацииНачГода   ="";
       АмортизацияСтрока.Параметры.ДатаНачГода             ="";
       ГодСт = ""; Год = "";
       ПервСтрока = Истина;
       КоличествоСтрокАмортизации = 0;
       Пока  ИсторияАмортизации.Следующий() Цикл
           Год = Год(ИсторияАмортизации.ДатаНачГода);
           Если НЕ ПервСтрока И (Год <> ГодСт) Тогда
               ТабДок.Вывести(АмортизацияСтрока);
               КоличествоСтрокАмортизации = КоличествоСтрокАмортизации +1;
               ГодСт = Год;
           КонецЕсли;
           АмортизацияСтрока.Параметры.Заполнить(ИсторияАмортизации);
           ПервСтрока = Ложь;
       КонецЦикла;
       Если Год <> ГодСт Тогда
           ТабДок.Вывести(АмортизацияСтрока);
           КоличествоСтрокАмортизации = КоличествоСтрокАмортизации +1;
       КонецЕсли;
       Если ВидУчета = Перечисления.ВидыУчетаНФА.НаБалансе Тогда
           Если (БалансСтоимОС<>0) ИЛИ (НачАмортизацииВсего<>0) Тогда
               Если СпособНачисленияАмортизации = Перечисления.СпособНачисленияАмортизации.Линейный Тогда
                   Если (СрокИспользованияДляВычисленияАмортизации > 0) И (СтоимостьДляВычисленияАмортизации > 0) Тогда
                       СрокПолезногоИспользованияМ = СрокИспользованияДляВычисленияАмортизации;
                       НачСтоимость                = СтоимостьДляВычисленияАмортизации;
                       МесАмортизацияМод           = ?(СрокПолезногоИспользованияМ<>0,(НачСтоимость / СрокПолезногоИспользованияМ),0);
                       ГодАмортизацияМод           =  МесАмортизацияМод*12;
                       НачСтоимость                = ?(БалансСтоимОС<>0,БалансСтоимОС,ПервоначальнаяСтоимость);
                       НормаАмортизацииМод         =  МесАмортизацияМод/НачСтоимость*100;
                       ГодНормаАмортизацииМод       = НормаАмортизацииМод*12;
                   Иначе
                       СрокПолезногоИспользованияМ = СрокПолезногоИспользования;
                       НачСтоимость                = ?(БалансСтоимОС<>0,БалансСтоимОС,ПервоначальнаяСтоимость);
                       НормаАмортизацииМод         = ?(СрокПолезногоИспользованияМ<>0,100/СрокПолезногоИспользованияМ,0);
                       МесАмортизацияМод           = ?(СрокПолезногоИспользованияМ<>0,(НачСтоимость / СрокПолезногоИспользованияМ),0);
           
21 Igor_Krap
 
14.06.12
12:20
поправить ссылку на СсылкуНаОюъект?
22 Kavar
 
14.06.12
12:22
Да. оно.
Функция ПечатьФ0504031 будет у тебя просто Печать
А так же надо будет заменить Ссылка на СсылкаНаОбъект. в установке параметров запросов.
ну и далее по аналогии.
23 Kavar
 
14.06.12
12:22
(21) Ну вот сам уже все понял :)
24 Igor_Krap
 
14.06.12
12:26
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1058,12)}: Процедура или функция с указанным именем уже определена (Печать)
   Процедура <<?>>Печать(ИмяМакета, КоличествоЭкземпляров = 1, НаПринтер = Ложь, НепосредственнаяПечать = Ложь, ФормаЭлемента = Неопределено) Экспорт (Проверка: Толстый клиент (обычное приложение))
25 Igor_Krap
 
14.06.12
12:27
вот такую фигню пишет
26 Kavar
 
14.06.12
12:35
Дык у тебя там две функции печать чтоли?
должна быть одна.
27 luckyluke
 
14.06.12
12:38
(24) Позови программиста, что ли, зачем ты то туда полез?
28 Kavar
 
14.06.12
12:39
У тебя там должна быть функция Печать() без всяких параметров.
и возвращать ТабДокумент. все.
29 Igor_Krap
 
14.06.12
12:40
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(98,67)}: Переменная не определена (НаименованиеПолное)
           ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(<<?>>НаименованиеПолное),НаименованиеПолное,Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(98,87)}: Переменная не определена (НаименованиеПолное)
           ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(НаименованиеПолное),<<?>>НаименованиеПолное,Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(261,68)}: Переменная не определена (НаименованиеПолное)
       Шапка.Параметры.ПолноеНаименованиеОС       = ?(ЗначениеЗаполнено(<<?>>НаименованиеПолное),НаименованиеПолное,Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(261,88)}: Переменная не определена (НаименованиеПолное)
       Шапка.Параметры.ПолноеНаименованиеОС       = ?(ЗначениеЗаполнено(НаименованиеПолное),<<?>>НаименованиеПолное,Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(787,53)}: Переменная не определена (НаименованиеПолное)
       ПолноеНаименованиеОС        = ?(ЗначениеЗаполнено(<<?>>НаименованиеПолное),НаименованиеПолное,Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(787,73)}: Переменная не определена (НаименованиеПолное)
       ПолноеНаименованиеОС        = ?(ЗначениеЗаполнено(НаименованиеПолное),<<?>>НаименованиеПолное,Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(98,106)}: Переменная не определена (Наименование)
           ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(НаименованиеПолное),НаименованиеПолное,<<?>>Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(261,107)}: Переменная не определена (Наименование)
       Шапка.Параметры.ПолноеНаименованиеОС       = ?(ЗначениеЗаполнено(НаименованиеПолное),НаименованиеПолное,<<?>>Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(787,92)}: Переменная не определена (Наименование)
       ПолноеНаименованиеОС        = ?(ЗначениеЗаполнено(НаименованиеПолное),НаименованиеПолное,<<?>>Наименование); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(114,8)}: Переменная не определена (ВидУчета)
       Если <<?>>ВидУчета = Перечисления.ВидыУчетаНФА.НаБалансе Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(367,9)}: Переменная не определена (ВидУчета)
           Если <<?>>ВидУчета = Перечисления.ВидыУчетаНФА.НаБалансе Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(480,8)}: Переменная не определена (ВидУчета)
       Если <<?>>ВидУчета = Перечисления.ВидыУчетаНФА.НаБалансе Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1140,25)}: Переменная не определена (ВидУчета)
   Если ЗначениеЗаполнено(<<?>>ВидУчета) И ВидУчета <> Перечисления.ВидыУчетаНФА.НаБалансе Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1140,37)}: Переменная не определена (ВидУчета)
   Если ЗначениеЗаполнено(ВидУчета) И <<?>>ВидУчета <> Перечисления.ВидыУчетаНФА.НаБалансе Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(251,52)}: Переменная не определена (Ссылка)
       КодКБК = ?(ЗначениеЗаполнено(СсылкаНаОбъект.КБК),<<?>>Ссылка.КБК,"00000000000000000"); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(252,52)}: Переменная не определена (Ссылка)
       КодКВД = ?(ЗначениеЗаполнено(СсылкаНаОбъект.КВД),<<?>>Ссылка.КВД,"0"); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(253,60)}: Переменная не определена (Ссылка)
       КодСчета = ?(ЗначениеЗаполнено(СсылкаНаОбъект.СчетУчета),<<?>>Ссылка.СчетУчета,"000.00"); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(869,49)}: Переменная не определена (Ссылка)
       Запрос.УстановитьПараметр("СчетУчета",        <<?>>Ссылка.СчетУчета); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(896,54)}: Переменная не определена (Ссылка)
               КодКВД = ?(ЗначениеЗаполнено(СсылкаНаОбъект.КВД),<<?>>Ссылка.КВД,"0"); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(897,62)}: Переменная не определена (Ссылка)
               КодСчета = ?(ЗначениеЗаполнено(СсылкаНаОбъект.СчетУчета),<<?>>Ссылка.СчетУчета,"000.00"); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(926,54)}: Переменная не определена (Ссылка)
               КодКВД = ?(ЗначениеЗаполнено(СсылкаНаОбъект.КВД),<<?>>Ссылка.КВД,"0"); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(927,62)}: Переменная не определена (Ссылка)
               КодСчета = ?(ЗначениеЗаполнено(СсылкаНаОбъект.СчетУчета),<<?>>Ссылка.СчетУчета,"000.00"); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(262,48)}: Переменная не определена (КодПоОКОФ)
       Шапка.Параметры.ОКОФ                       = <<?>>КодПоОКОФ; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(796,53)}: Переменная не определена (КодПоОКОФ)
       Заголовок.Параметры.ОКОФ                        = <<?>>КодПоОКОФ; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(269,9)}: Переменная не определена (АмортизационнаяГруппа)
       Если  <<?>>АмортизационнаяГруппа.Пустая() Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(272,90)}: Переменная не определена (АмортизационнаяГруппа)
           ИндексЗначенияПеречисления             = Перечисления["АмортизационныеГруппы"].Индекс(<<?>>АмортизационнаяГруппа); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(773,9)}: Переменная не определена (АмортизационнаяГруппа)
       Если  <<?>>АмортизационнаяГруппа.Пустая() Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(776,90)}: Переменная не определена (АмортизационнаяГруппа)
           ИндексЗначенияПеречисления             = Перечисления["АмортизационныеГруппы"].Индекс(<<?>>АмортизационнаяГруппа); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(315,24)}: Переменная не определена (СсылкаНаОбъекта)
           Если Остатки.Счет = <<?>>СсылкаНаОбъекта.СчетУчета Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(932,102)}: Переменная не определена (СсылкаНаОбъекта)
                       ЗабалансовыйСчетУчетаОС = УправлениеНефинансовымиАктивами.ОпределитьЗабалансовыйСчетДляСчетаОС(<<?>>СсылкаНаОбъекта.СчетУчета); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(362,8)}: Переменная не определена (ПорядокПогашенияСтоимости)
       Если <<?>>ПорядокПогашенияСтоимости = Перечисления.ПорядокПогашенияСтоимостиОС.СтоимостьНеПогашается Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(364,13)}: Переменная не определена (ПорядокПогашенияСтоимости)
       ИначеЕсли <<?>>ПорядокПогашенияСтоимости = Перечисления.ПорядокПогашенияСтоимостиОС.СписаниеПриПринятииКУчету Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(366,13)}: Переменная не определена (ПорядокПогашенияСтоимости)
       ИначеЕсли <<?>>ПорядокПогашенияСтоимости = Перечисления.ПорядокПогашенияСтоимостиОС.НачислениеАмортизации Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1141,26)}: Переменная не определена (ПорядокПогашенияСтоимости)
       Если ЗначениеЗаполнено(<<?>>ПорядокПогашенияСтоимости) И ПорядокПогашенияСтоимости <> Перечисления.ПорядокПогашенияСтоимостиОС.СтоимостьНеПогашается Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1141,55)}: Переменная не определена (ПорядокПогашенияСтоимости)
       Если ЗначениеЗаполнено(ПорядокПогашенияСтоимости) И <<?>>ПорядокПогашенияСтоимости <> Перечисления.ПорядокПогашенияСтоимостиОС.СтоимостьНеПогашается Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(368,10)}: Переменная не определена (СпособНачисленияАмортизации)
               Если <<?>>СпособНачисленияАмортизации = Перечисления.СпособНачисленияАмортизации.ПриВводеВЭксплуатацию Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(370,15)}: Переменная не определена (СпособНачисленияАмортизации)
               ИначеЕсли <<?>>СпособНачисленияАмортизации = Перечисления.СпособНачисленияАмортизации.Линейный Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(482,10)}: Переменная не определена (СпособНачисленияАмортизации)
               Если <<?>>СпособНачисленияАмортизации = Перечисления.СпособНачисленияАмортизации.Линейный Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(376,70)}: Переменная не определена (ПервоначальнаяСтоимость)
                       НачСтоимость                = ?(БалансСтоимОС<>0,БалансСтоимОС,<<?>>ПервоначальнаяСтоимость); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(381,115)}: Переменная не определена (ПервоначальнаяСтоимость)
                   НачСтоимость                = ?(БалансСтоимОС<>0,БалансСтоимОС-СуммаМодернизацииВсего-ДооценкаСтоимостиВсего,<<?>>ПервоначальнаяСтоимость); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(406,59)}: Переменная не определена (ПервоначальнаяСтоимость)
       ОсновныеСведения.Параметры.ПервоначальнаяСтоимость    = <<?>>ПервоначальнаяСтоимость; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(488,70)}: Переменная не определена (ПервоначальнаяСтоимость)
                       НачСтоимость                = ?(БалансСтоимОС<>0,БалансСтоимОС,<<?>>ПервоначальнаяСтоимость); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(493,70)}: Переменная не определена (ПервоначальнаяСтоимость)
                       НачСтоимость                = ?(БалансСтоимОС<>0,БалансСтоимОС,<<?>>ПервоначальнаяСтоимость); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(803,42)}: Переменная не определена (ПервоначальнаяСтоимость)
       Шапка.Параметры.Цена                 = <<?>>ПервоначальнаяСтоимость; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(402,58)}: Переменная не определена (НомерПаспорта)
       ОсновныеСведения.Параметры.НомерПаспорта             = <<?>>НомерПаспорта; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(403,58)}: Переменная не определена (ЗаводскойНомер)
       ОсновныеСведения.Параметры.ЗаводскойНомер            = <<?>>ЗаводскойНомер; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(404,58)}: Переменная не определена (ДатаВыпуска)
       ОсновныеСведения.Параметры.ДатаВыпуска               = <<?>>ДатаВыпуска; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(791,53)}: Переменная не определена (НомерИнвКарт)
       Заголовок.Параметры.НомерИнвКарт                = <<?>>НомерИнвКарт; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1067,8)}: Переменная не определена (ВидНФА)
       Если <<?>>ВидНФА = Перечисления.ВидыНФА.КапВложения Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1127,9)}: Переменная не определена (ВидНФА)
   Если  (<<?>>ВидНФА = Перечисления.ВидыНФА.ОС) ИЛИ (ВидНФА = Перечисления.ВидыНФА.Казна) Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1127,48)}: Переменная не определена (ВидНФА)
   Если  (ВидНФА = Перечисления.ВидыНФА.ОС) ИЛИ (<<?>>ВидНФА = Перечисления.ВидыНФА.Казна) Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1074,46)}: Переменная не определена (Учреждение)
           ТабДокумент = ПечатьФ0504031(ДатаСведений,<<?>>Учреждение); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1077,46)}: Переменная не определена (Учреждение)
           ТабДокумент = ПечатьФ0504032(ДатаСведений,<<?>>Учреждение); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1083,186)}: Переменная не определена (Код)
       УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, "Инвентарная карточка ОС ("+ФормаВЗаголовок+") "+СсылкаНаОбъект, НепосредственнаяПечать,,"м"+ <<?>>Код); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1093,8)}: Переменная не определена (ГрупповойУчет)
       Если <<?>>ГрупповойУчет Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1131,14)}: Переменная не определена (ГрупповойУчет)
               Отказ =  <<?>>ГрупповойУчет; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1135,12)}: Переменная не определена (ГрупповойУчет)
       Отказ =  <<?>>ГрупповойУчет; (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1105,10)}: Переменная не определена (ДополнительныеСвойства)
   Если НЕ <<?>>ДополнительныеСвойства.Свойство(ИмяПеременной,Результат) Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1115,3)}: Переменная не определена (ДополнительныеСвойства)
       <<?>>ДополнительныеСвойства.Вставить(ИмяПеременной,Результат); (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1123,7)}: Переменная не определена (ЭтоГруппа)
   Если <<?>>ЭтоГруппа Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1128,27)}: Переменная не определена (СчетУчета)
       Если  ЗначениеЗаполнено(<<?>>СчетУчета) Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1129,9)}: Переменная не определена (СчетУчета)
           Если <<?>>СчетУчета = ПланыСчетов.ЕПСБУ.ДрагоценностиИмуществоКазны ИЛИ СчетУчета = ПланыСчетов.ЕПСБУ.НМА_ИмуществоКазны (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1129,71)}: Переменная не определена (СчетУчета)
           Если СчетУчета = ПланыСчетов.ЕПСБУ.ДрагоценностиИмуществоКазны ИЛИ <<?>>СчетУчета = ПланыСчетов.ЕПСБУ.НМА_ИмуществоКазны (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1130,9)}: Переменная не определена (СчетУчета)
               ИЛИ <<?>>СчетУчета = ПланыСчетов.ЕПСБУ.НПА_ИмуществоКазны Тогда (Проверка: Толстый клиент (обычное приложение))
{ВнешняяОбработка.ВнешняяОбработка2.МодульОбъекта(1074,18)}: Процедура или функция с указанным именем не определена (ПечатьФ0504031)
           ТабДокумент = <<?>>ПечатьФ0504031(ДатаСведений,Учреждение); (Проверка: Толстый клиент (обычное приложение))
30 Igor_Krap
 
14.06.12
12:41
замена Ссылка на СсылкаНаОбъект не обошлось
31 Kavar
 
14.06.12
12:42
У тебя код выполняется не внутри объекта, а вовнешнем отчете.
Надо писать СсылкаНаОбъект.НаименованиеПолное итд итп.
32 Kavar
 
14.06.12
12:42
Изучай основы программирования в 1С.
33 Igor_Krap
 
14.06.12
13:07
(32)покажи хоть на маленьком примере(моего блока)
34 Igor_Krap
 
14.06.12
13:09
(32)какую лучше литературу взять для изучения? 1С 8.2
35 Igor_Krap
 
14.06.12
13:14
я работаю системным админом,1с как бы обслуживаю(обновляю,копирую базы данных),хотя есть фирма кторая нас сопровождает,в 7.7 я правил печатные формы в 8 они теперь с замочком,в фирме говорят лучше не трогать,асоздать внешнюю форму.В  фирме нет денег на учебу и я все оттягивал заняться самообразование,видать время настало.
36 Kavar
 
14.06.12
13:16
(34) Для начала вот этого хватит
http://v8.1c.ru/metod/books/book.jsp?id=187

+ книжки из коробки

(33) Функция которую ты скопировал использовалась внутри объекта (СправочникОС) поэтому там идет прямое обращение к его реквизитам(свойствам,методам).
Так как ты ее вов нешний отчет вынес, перед реквизитом следует указать объект.

В твоем случае:
ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(НаименованиеПолное),НаименованиеПолное,Наименование);

Заменить на
ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(Сссылка НаОбъект.НаименованиеПолное),СсылкаНаОбъект.НаименованиеПолное,СсылкаНаобъект.Наименование);

ну и так далее...
37 Igor_Krap
 
14.06.12
13:22
(36)Книжки которые шли с диском ?

Спасибо.
38 Igor_Krap
 
14.06.12
13:24
Если я буду идти в током напровление
В твоем случае:

ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(НаименованиеПолное),НаименованиеПолное,Наименование);

Заменить на
ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(Сссылка НаОбъект.НаименованиеПолное),СсылкаНаОбъект.НаименованиеПолное,СсылкаНаобъект.Наименование);


подставляя везде СсылкуНаОбъект у меня получется?
39 Igor_Krap
 
14.06.12
13:36
(36)Книжки которые шли с диском ?
40 Kavar
 
15.06.12
05:29
(39) Которые в коробке вашей конфигурации. судя по сабжу - БГУ.
41 Igor_Krap
 
15.06.12
05:30
(40)Если я буду идти в током напровление
В твоем случае:


ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(НаименованиеПолное),НаименованиеПолное,Наименование);

Заменить на
ДанныхНет.Параметры.ПолноеНаименованиеОС = ?(ЗначениеЗаполнено(Сссылка НаОбъект.НаименованиеПолное),СсылкаНаОбъект.НаименованиеПолное,СсылкаНаобъект.Наименование);



подставляя везде СсылкуНаОбъект у меня получется?
42 Kavar
 
15.06.12
05:32
(41) Пробуй!
43 Igor_Krap
 
15.06.12
05:33
спасибо