новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума

Выгрузка данных справочника 1С в Excel с отбором в запросе по группе

  • Добавить свою публикацию
  • для этого требуется регистрация

Наличие нескольких групп папок в справочнике (сложная структура родителей) довольно часто можно встретить для таких справочников как номенклатура, контрагенты, статьи затрат и многих других на предприятиях с хорошо продуманной архитектурой отчетов и грамотным ведением бухгалтерского учета.

Как пользоваться обработкой выгрузки справочника в Excel?

Откройте обработку в режиме работы "1С:Предприятие 8.1", укажите исходный справочник как показано на рисунке:



Составной реквизит "Отбор по родителю" при выборе справочника автоматически приводится к типу справочника для удобства последующего выбора нужной группы справочника (Инициализируется пустой ссылкой, см. рис.):



До выбора справочника:



После выбора папки справочника для отбора:



В результате выполнения обработки будет создан файл в формате Microsoft Excel примерно следующего вида:



Графически такая структура данных справочника номенклатура из стандартной конфигурации "1С:Бухгалтерия 8" выглядит следующим образом:



Жирным шрифтом выделены группы элементов для последующего создания такой же структуры родителей в базе данных назначения. Красным цветом отделен признак ЭтоГруппа, который удобно будет использовать в последующих обработках при выборочном переносе определенных данных между различными конфигурациями 1С.

Внешняя обработка по выгрузке данных в Excel

Общий код обработки был рассмотрен в общем разделе конфигурирования платформы, сейчас остановимся на проведенных модернизациях исходного кода, а именно добавлению нового запроса, сформированного от имени метаданных справочника с учетом иерархии групп и элементов:

1. Добавлен новый реквизит обработки:

"пРодитель", составной тип СправочникСсылка

2. В процедуру ВыборСправочникаПриИзменении формирования реквизитов для выгрузки было добавлено:

  // Добавим реквизит родитель для справочников с установленным видом Иерархии
  Если Строка(КоллекцияРеквизитов.ВидИерархии) = "ИерархияГруппИЭлементов" Тогда
    стр = ТП.Добавить();
    стр.НазваниеРеквизита = "Родитель";
    стр = ТП.Добавить();
    стр.НазваниеРеквизита = "ЭтоГруппа";
  КонецЕсли;



3. В основную форму обработки было добавлено два элемента - надпись и поле ввода для реквизита Родитель



4. В процедура ОсновныеДействияФормыЭкспорт, обеспечивающую запись данных справочника в файл, были внесены следующие изменения:



  // Выгрузить данные справочника
  Запрос = Новый Запрос;
  Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ *
      | ИЗ
      | Справочник." + ИмяСправочника + " КАК " + ИмяСправочника;

  // Если указан родитель справочника добавить отбор по иерархии
  Если пРодитель неопределено и не пРодитель.Пустая() Тогда
    Запрос.Текст = Запрос.Текст + " ГДЕ " + ИмяСправочника + ".Родитель В ИЕРАРХИИ(&пРодитель) ";
    Запрос.УстановитьПараметр("пРодитель",пРодитель);
  КонецЕсли;

  // Если для справочника используется иерархия групп и элементов, установим сортировку в иерархии
  Если ТП.Найти("ЭтоГруппа","НазваниеРеквизита") Неопределено Тогда
    Запрос.Текст = Запрос.Текст + " УПОРЯДОЧИТЬ ПО " + ИмяСправочника + ".ЭтоГруппа ИЕРАРХИЯ УБЫВ";
  КонецЕсли;

// Выполняет запрос и записывает результат в свойство Результат.
// Формирует выборку записей из результата запроса.
  выборка = Запрос.Выполнить().Выбрать();

 

 

 
0
Читайте также
Специализированная конфигурация "Автоапдейтер"
Конфигурация предназначена для автоматического внесения изменений в другие конфигурация 1С 8.Х.
Берегите родителей или что бывает, когда "Родитель" ушел в себя
Зависает приложение, пропадают элементы, группа справочника - где искать причину?
Подчиненные справочники. Быстро.
Создание подчиненных справочников
Разработки
Выгрузка прайса в Excel из 1с7 ТиС.
Как выгрузить из 1С 7 прайс в Excel
Выгрузка данных из УТ 10.3.16.1 в Бухгалтерию 2.0
Обработка для выгрузки данных из УТ 10.3 в БП 2.0
Выгрузка данных из 1С УТ 10.3-11 в Бухгалтерию 2
"Как выгрузить данные из 1С УТ10.3 в БП 2"
Еще от автора
≡ к списку статей