Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
21 сен 2024, 06:16

Схема компоновки данных

Автор макс, 14 окт 2010, 04:39

0 Пользователей и 1 гость просматривают эту тему.

макс

Есть отчет в бухгалтерии предприятия Ведомость амортизации ОС, он сделал через схему компоновки данных, у него есть поле ОстаточнаяСтоимость, в запросе, в выбранных полях какие-то папки, как я понял они добавляются через модуль объекта
вот код модуля

ГруппаДанныеНаНачало = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаДанныеНаНачало.Заголовок     = "На начало периода";
   ГруппаДанныеНаНачало.Использование = Истина;
   ГруппаДанныеНаНачалоСтоимость = ГруппаДанныеНаНачало.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаДанныеНаНачалоСтоимость.Заголовок     = "Стоимость";
   ГруппаДанныеНаНачалоСтоимость.Использование = Истина;
   ГруппаДанныеНаНачалоСтоимость.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   ГруппаДанныеНаНачалоАмортизация = ГруппаДанныеНаНачало.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаДанныеНаНачалоАмортизация.Заголовок     = "Амортизация (износ)";
   ГруппаДанныеНаНачалоАмортизация.Использование = Истина;
   ГруппаДанныеНаНачалоАмортизация.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   ГруппаДанныеНаНачалоОстаточнаяСтоимость = ГруппаДанныеНаНачало.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаДанныеНаНачалоОстаточнаяСтоимость.Заголовок     = "Остаточная стоимость" + ?(ИДКонфигурации = "БАУ" ИЛИ ИДКонфигурации = "БАУКОРП", " (с учетом износа)", "");
   ГруппаДанныеНаНачалоОстаточнаяСтоимость.Использование = Истина;
   ГруппаДанныеНаНачалоОстаточнаяСтоимость.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   
   ГруппаОбороты = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаОбороты.Заголовок     = "За период";
   ГруппаОбороты.Использование = Истина;
   ГруппаУвеличениеСтоимости = ГруппаОбороты.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаУвеличениеСтоимости.Заголовок     = "Увеличение стоимости";
   ГруппаУвеличениеСтоимости.Использование = Истина;
   ГруппаУвеличениеСтоимости.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   ГруппаНачислениеАмортизации = ГруппаОбороты.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаНачислениеАмортизации.Заголовок     = "Начисление амортизации (износа)";
   ГруппаНачислениеАмортизации.Использование = Истина;
   ГруппаНачислениеАмортизации.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   ГруппаУменьшениеСтоимости = ГруппаОбороты.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаУменьшениеСтоимости.Заголовок     = "Уменьшение стоимости";
   ГруппаУменьшениеСтоимости.Использование = Истина;
   ГруппаУменьшениеСтоимости.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   ГруппаСписаниеАмортизации = ГруппаОбороты.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаСписаниеАмортизации.Заголовок     = "Списание амортизации (износа)";
   ГруппаСписаниеАмортизации.Использование = Истина;
   ГруппаСписаниеАмортизации.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   
   ГруппаДанныеНаКонец = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаДанныеНаКонец.Заголовок     = "На конец периода";
   ГруппаДанныеНаКонец.Использование = Истина;
   ГруппаДанныеНаКонецСтоимость = ГруппаДанныеНаКонец.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаДанныеНаКонецСтоимость.Заголовок     = "Стоимость";
   ГруппаДанныеНаКонецСтоимость.Использование = Истина;
   ГруппаДанныеНаКонецСтоимость.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   ГруппаДанныеНаКонецАмортизация = ГруппаДанныеНаКонец.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаДанныеНаКонецАмортизация.Заголовок     = "Амортизация (износ)";
   ГруппаДанныеНаКонецАмортизация.Использование = Истина;
   ГруппаДанныеНаКонецАмортизация.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   ГруппаДанныеНаКонецОстаточнаяСтоимость = ГруппаДанныеНаКонец.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаДанныеНаКонецОстаточнаяСтоимость.Заголовок     = "Остаточная стоимость" + ?(ИДКонфигурации = "БАУ" ИЛИ ИДКонфигурации = "БАУКОРП", " (с учетом износа)", "");
   ГруппаДанныеНаКонецОстаточнаяСтоимость.Использование = Истина;
   ГруппаДанныеНаКонецОстаточнаяСтоимость.Расположение  = РасположениеПоляКомпоновкиДанных.Вертикально;
   
   Структура = Структура.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
   Структура.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
   Структура.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных"));
   
   ГруппаОсновноеСредство = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
   ГруппаОсновноеСредство.Заголовок     = "";
   ГруппаОсновноеСредство.Использование = Истина;
   ГруппаОсновноеСредство.Расположение = РасположениеПоляКомпоновкиДанных.Вместе;
   
   ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаОсновноеСредство, "ОсновноеСредство");
   ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаОсновноеСредство, "ИнвентарныйНомер");
   
   Если ДанныеОтчета.ПоказателиОтчета.БУ.Значение Тогда
   
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаПоказатели,                        "ПоказательБУ");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаНачалоСтоимость,           "НаНачалоПериода.СтоимостьОстатокНачПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаНачалоАмортизация,         "НаНачалоПериода.АмортизацияИзносОстатокНачПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаНачалоОстаточнаяСтоимость, "НаНачалоПериода.ОстаточнаяСтоимостьНачПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаУвеличениеСтоимости,               "ЗаПериод.СтоимостьУвеличение");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаУменьшениеСтоимости,               "ЗаПериод.СтоимостьУменьшение");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаНачислениеАмортизации,             "ЗаПериод.АмортизацияИзносНачисление");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаСписаниеАмортизации,               "ЗаПериод.АмортизацияИзносСписание");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаКонецСтоимость,            "НаКонецПериода.СтоимостьОстатокКонПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаКонецАмортизация,          "НаКонецПериода.АмортизацияИзносОстатокКонПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаКонецОстаточнаяСтоимость,  "НаКонецПериода.ОстаточнаяСтоимостьКонПериода");
      
   КонецЕсли;
   
   Если ДанныеОтчета.ПоказателиОтчета.НУ.Значение Тогда
   
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаПоказатели,                        "ПоказательНУ");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаНачалоСтоимость,           "НаНачалоПериода.СтоимостьНУОстатокНачПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаНачалоАмортизация,         "НаНачалоПериода.АмортизацияНУОстатокНачПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаНачалоОстаточнаяСтоимость, "НаНачалоПериода.ОстаточнаяСтоимостьНУНачПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаУвеличениеСтоимости,               "ЗаПериод.СтоимостьНУУвеличение");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаУменьшениеСтоимости,               "ЗаПериод.СтоимостьНУУменьшение");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаНачислениеАмортизации,             "ЗаПериод.АмортизацияНУНачисление");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаСписаниеАмортизации,               "ЗаПериод.АмортизацияНУСписание");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаКонецСтоимость,            "НаКонецПериода.СтоимостьНУОстатокКонПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаКонецАмортизация,          "НаКонецПериода.АмортизацияНУОстатокКонПериода");
      ТиповыеОтчеты.ДобавитьВыбранноеПоле(ГруппаДанныеНаКонецОстаточнаяСтоимость,  "НаКонецПериода.ОстаточнаяСтоимостьНУКонПериода");
      
   КонецЕсли; 

макс

в запросе схемы не выводит остаточную стоимость, может быть в модуле? подскажите

макс

В схеме компановки  Настройки - Выбранные поля, как я понимаю попадают поля из запроса, там помимо них всякие папки, поля которых в запросе нету

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск