Imagesforyou.ru

IMG FOR YOU — ИНТЕРЬЕРНАЯ ФОТОСТУДИЯ
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Вывод изображения на управляемую форму

Вывод изображения на управляемую форму

В тестовой конфигурации для элементов справочника «Сотрудники» был создан механизм прикрепления файлов изображений. Однако при открытии элемента текущее изображение можно посмотреть лишь открыв прикрепленный файл.

Изображение

Наша задача будет заключаться в отображении на форме элемента текущего изображения. Главное условие — доработка осуществляется для управляемой формы.

Обработка для загрузки данных из Excel

Способ, описанный выше, подходит не для всех типов документов. Таким способом нельзя загрузить счет или другой важный документ. Потребуется дополнительная внешняя обработка, после которой файл обретет расширение epf.

Важно, чтобы офисный пакет, куда входит программа Excel, был обновлен до последней версии. Так же во время загрузки обработанного файла табличный документ должен быть закрыт.

Определенный формат требуется для того, чтобы «научить» софт определить, что и из какого столбца следует загружать. Для этого документ Excel следует отредактировать таким образом, чтобы для каждого типа данных был свой столбец. Структура, где будут ячейки со смешанными данными, не допустима.

Как открыть получившийся файл? Для этого существует несколько способов:

  • Открыв меню «Файл», выбрать пункт «Открыть», после чего выбрать сохраненный на компьютере обработанный файл.

  • Подключить внешние обработки.

Для тех, кто решит воспользоваться вторым методом, необходимо будет выполнить следующий порядок действий. Следует зайти в раздел «НСИ и администрирование», и там выбрать из большого списка пункт «Печатные формы, отчеты, и обработки».

Кликнув по пункту «Дополнительные отчеты и обработки», необходимо нажать на кнопку «Создать».

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

Для того, чтобы файл загрузился, следует проигнорировать это сообщение и нажать «Продолжить». После этого появится возможность выбрать файл, сохраненный на компьютере. Автоматически заполняться поля с наименованием и дополнительной информацией. После этого можно открыть файл обработки нажатием кнопки «Выполнить».

Загрузка из Excel в 1С

Загрузка данных из Excel в конфигурацию 1С: Предприятие 8.3 Управление торговлей редакции 11

Обработка по загрузке данных из табличного документа разработанная фирмой 1С. Данная обработка существует в 2-х версиях: для новых управляемых форма, в том числе интерфейса такси и для старых обычных форм, которые существуют с первых версий платформы 1С: Предприятие 8.1. Загрузку данных можно осуществлять из любых файлов Excel, табличных документов формата 1С, текстового файла и файла базы данных. Также можно взять любой документ, содержащий ячейки и скопировать содержимое напрямую в табличную форму обработки. Также заполнять эту табличную форму вручную и после загрузить данные в справочник, например справочник Номенклатуры, что будет проще, быстрее и удобнее, чем создавать те же данные непосредственно вводя добавляя новые позиции из списка справочника Номенклатура. Перейдем к обзору формы нашей обработки.

Читайте так же:
Виндовс 7 не загружается в обычном режиме
Начало обзора обработки загрузки

Первая закладка обработки загрузки данных

Первая закладка обработки загрузки данных

1. Открыв форму обработки загрузки, пойдем по порядку. Первая «строка» переключатель. Загрузить в: Справочник, Табличную часть, Регистр сведений. Справочник — самое распространённое место для загрузки данных. Табличной частью является одна из таблиц внутри справочника или документа, конечно чаще данный атрибут можно встретить в документах, во многих документах товародвижения Вы можете найти закладку Товары на которой содержится та, самая таблица в которую можно вносить данные обработкой.

2. Далее укажем, в какой объект будем загружать данные, т.е. его наименование. Выбирем из списка справочник Номенклатура. При этом у нас в первой строке табличной части заполнятся колонки в соответствии с полями справочника Номенклатура, по которым нужно заполнить таблицу.
При этом на закладке Настройка будут выведены поля Номенклатуры аналогичные полям, заполненным в строке таблицы, о которой мы рассказали выше.

Заполнение полей закладки Настройка обработки

Заполним несколько полей в табличной части вручную или подгрузив из внешнего файла и перейдем на закладку Настройка, где дозаполним оставшиеся поля значениями, общими для всех строк нашей таблицы. На скриншоте будут отображаться только верхние поля Номенклатуры, отсортированные по в данном по порядку, зашитому в конфигурации. Что не мешает нам менять порядок, перетаскивание или сортировать по алфавиту, если это необходимо.

Закладка Настройка

  • Пометка — указывает, будет ли значение данного поля использоваться при загрузку
  • Представление реквизита — Наименование поля данного справочника, тоже что мы видели на закладке Табличный документ
  • Поле поиска — определяет будет ли участвовать в поиске по значению, указанному в табличном документе, в нашем объекте (справочнике Номенклатура)
  • Описание типов — представляет из себя тот тип, который указан в конфигураторе разработчиком, что в прочем по наименованию позволяет соориентироваться, что будет в поле значение.
  • Режим загруки — Искать, Устанавливать, Вычислять.
    Устанавлить — будет усновлено значение, указанное в следующей колонке Значение по умолчанию.
    Вычислять — в колонке Условие связи / Выражение для значения — указывается алгоритм, по которому будет заполняться данное поле.
    И последнее значение — самое распростарненное Искать. При установленном значении будет производится поиск по установленному значению из табличного документа.

Также у нас есть возможность прописать так называемые События, позволяющая опять же в виде алгоритма написать программный код, который выполнится Перед записью объекта и При записи объекта.

Перейдем к практической части работы с обработкой загрузки

Выполнить загрузку типовым способом, как указано в скриншотах выше не удалось по причине ошибки «Задано неправильное имя атрибута структуры», что нам ни о чем не говорит и не указывается на значение ошибки в обработке. Подкорректируем немного нашу настройку обработки.

Читайте так же:
Виджеты скорости интернета для windows 10

Вкладка наистройки алгоритма из интернета

Вкладка наистройки алгоритма из интернета

  1. Для еденицы мы укажем Режим загрузки — Вычислять и в поле Условия связи пропишем алгоритм:
    «Результат = Справочники.УпаковкиЕдиницыИзмерения.НайтиПоКоду(«796″, Истина);»
    Как раз из-за значения этого поля и возникала ошибка, указанная выше. Возможно есть более оптимальный способ установки данного поля, для назначения идиницы измерения «шт.» (Штуки).
  2. Заполним оставшиеся поля как на скриншоте, выбра Резим загрузки — Устанавливать (установить из значения, указанного в поле Значение по умолчанию), не обращая внимание на заполнение данных в табличном документе.

На этом шаге мы можем завершить обзор данной обработки. Заходите в справочник Номенклатуры и проверяйте, конечный результа выполнения загрузки. Не назвать это простым способом, все же это позволяет потратив время разобраться в загрузке самому, не прибегая к помощи специалиста.
Спасибо за внимание!

  • Главная
  • Полезности
  • Мои сертификаты

Выгрузка результата СКД в таблицу значений

Функция РезультатКомпоновкиВТЗ ( СКД ) Экспорт

КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных ;
КомпоновщикНастроек . Инициализировать (Новый ИсточникДоступныхНастроекКомпоновкиДанных ( СКД ));
КомпоновщикНастроек . ЗагрузитьНастройки ( СКД . НастройкиПоУмолчанию );

НастройкиКомпоновщика = КомпоновщикНастроек . Настройки ;
ПараметрыНастройки = НастройкиКомпоновщика . ПараметрыДанных ;

// устанавливаем параметры отчета
ЗначениеПараметра = ПараметрыНастройки . НайтиЗначениеПараметра (Новый ПараметрКомпоновкиДанных ( «НачалоПериода» ));
ЗначениеПараметра . Значение = НачалоПериода ;

ЗначениеПараметра = ПараметрыНастройки . НайтиЗначениеПараметра (Новый ПараметрКомпоновкиДанных ( «КонецПериода» ));
ЗначениеПараметра . Значение = КонецДня ( КонецПериода );

КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных ;
МакетКомпоновкиДанных = КомпоновщикМакета . Выполнить ( СКД , НастройкиКомпоновщика . Тип ( «ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений» ));

ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных ;
ПроцессорКомпоновкиДанных . Инициализировать ( МакетКомпоновкиДанных );

ТаблицаРезультат = Новый ТаблицаЗначений ;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений ;

ПроцессорВывода . УстановитьОбъект ( ТаблицаРезультат );
ПроцессорВывода . Вывести ( ПроцессорКомпоновкиДанных );

Процедура КнопкаВыполнитьНажатие ( Кнопка )
Продажи . Загрузить ( РезультатКомпоновкиВТЗ ( СКД ));
КонецПроцедуры

личный блог

С задачей вывода каких либо данных в Таблицу Значений (ТЗ) на форме сталкиваются наверное все программисты. Если раньше до выхода Управляемого Интерфейса все решалось довольно просто, то теперь все немного изменилось.

Для обычных форм.

Стоит отметить, что предварительно нужно создать соответствующие РезультатуЗапроса колонки таблицы значений. Делается это также просто. Добавить ТаблицуЗначений следует в реквизиты Формы. Еще раз акцентирую внимание — Названия колонок и типы данных колонок ТЗ должны совпадать и на форме и в запросе. Можно вообще не создавать ТЗ на форме, а описать ее программно, примерно как то так:

Для управляемых форм все ровно тоже самое кроме того что нужно на сервере получить значение данных ТЗ на форме, записать в них результат запроса и потом снова вернуть их на форму.

Ниже пример такого преобразования.

Читайте так же:
Виндовс 7 настройка спящего режима

Во всей этой истории следует обратить внимание на 2 строчки.

Первая

Вторая

Первый из типа данных ДанныеФормыКоллекция преобразует данные в тип ТаблицаЗначений. Второй соответственно конвертирует в обратном направлении.

Интерактивные возможности табличного документа

Табличный документ 1С:Предприятия 8 служит не только для печати документов и отчетов. Он имеет расширенные возможности, которые превращают его в интерактивное средство взаимодействия с пользователем. К таким возможностям относятся:

  • расшифровки,
  • группировки,
  • примечания.

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

Расшифровки

Система «1С:Предприятие 8» поддерживает механизм расшифровок (drill-down, drill-through), когда пользователь щелкает на строке или ячейке отчета и получает более детальный отчет, если конечно это предусмотрено программистом.

Расшифровки делятся на стандартные и нестандартные. Стандартные расшифровки обрабатываются системой автоматически и не требуют дополнительных усилий от программиста, например, для документов будет открыта форма документа, а для элементов справочника будет открыта форма элемента. Если справочник редактируется в списке, то курсор будет установлен на текущем элементе в форме списка. Для выполнения нестандартной расшифровки предназначено событие ОбработкаРасшифровки.

Событие «ОбработкаРасшифровки» можно обработать, только если табличный документ помещен в форму как элемент управления, а не открывается в отдельном окне, поскольку это событие существует только у элемента управления «ПолеТабличногоДокумента». Ниже показаны категория свойств «События» элемента управления «ПолеТабличногоДокумента», где назначается процедура-обработчик расшифровки:

Сама процедура «РасшифроватьСтроку» может выглядеть следующим образом (как пример):

Примечание 1. В модуле приложения (аналог глобального модуля в версии 7.7) больше нет события ОбработкаЯчейкиТаблицы. Вся обработка расшифровок должна быть произведена в модуле формы, где располагается элемент управления «ПолеТабличногоДокумента».

Примечание 2. Событие «ОбработкаРасшифровки» возникает при щелчке на ячейке или рисунке, содержащих расшифровку. Не путайте его с событием «Выбор», возникающим для всех ячеек и рисунков при двойном щелчке мыши или нажатии клавиши Enter, причем, сначала возникает событие «Выбор», а потом «ОбработкаРасшифровки».

Группировки

В 1С:Предприятии 8 появилась возможность группировать данные в отчете. Группировки могут быть горизонтальные и вертикальные, тогда слева и сверху появляются специальные маркеры, позволяющие пользователю разворачивать и сворачивать группы, как показано на следующем рисунке:

Самый простой способ добавить группировки в отчет — доверить эту задачу системе, тогда от программиста потребуются минимальные усилия. Необходимо всего лишь применить методы НачатьАвтоГруппировкуСтрок/НачатьАвтоГруппировкуКолонок и ЗакончитьАвтоГруппировкуСтрок/ЗакончитьАвтоГруппировкуКолонок, которые включают режим автоматической группировки строк или колонок соответственно. В этом режиме при вызове методов Вывести (для строк) и Присоединить (для колонок) указываются дополнительные параметры для группировки:

Вывести(<Таблица>, <Уровень>, <Имя группы>, <Открыта>)
Присоединить(<Таблица>, <Уровень>, <Имя группы>, <Открыта>)

При использовании группировок очень полезно установить свойство ячейки «АвтоОтступ» в какое-нибудь ненулевое значение, например, 5. Тогда система будет автоматически добавлять заданное количество пробелов слева текста ячейки, основываясь на текущем уровне группировки. В результате отчет приобретет удобный внешний вид для отображения иерархии данных.

Следующий пример выводит список товаров с группировками:

Примечания

Ячейки табличного документа могут иметь примечания, тогда в правом верхнем углу ячейки выводится маленький красный треугольник. При наведении курсора мыши на ячейку примечание показывается во всплывающем окне:

Программная установка примечаний реализуется следующим образом:

Обратите внимание, что свойство «Примечание» у объекта «ОбластьЯчеекМакета» является объектом типа «Рисунок», а не простой строкой. Через этот объект можно редактировать внешний вид примечания, шрифт и цвет текста, фон, линии и т.д.

Консолидация данных из разных таблиц Excel

Одна из насущных задач, с которыми сталкиваются пользователи, – консолидация данных. Под консолидацией понимается объединение нескольких таблиц в одну. До появления Power Query это была довольно трудоемкая операция, особенно, если процесс требовал автоматизации. Хотя в эксель есть специальная команда Данные → Работа с данными → Консолидация, пользоваться ей не удобно. Мне, по крайней мере. Появление Power Query в корне изменило представление о том, как нужно объединять таблицы.

Рассмотрим пример. В некоторый файл каждый месяц вносится отчет о продажах в формате таблицы Excel. Каждая таблица при этом имеет соответствующее название: Январь_2018, Февраль_2018 и т.д. Необходимо объединить все таблицы книги в одну. Как бы скопировать и вставить одну под другой, создав при этом дополнительный столбец, указывающий, к какой таблице принадлежит конкретная строка. Задача не одноразовая, а с заделом на будущее, поэтому нужно предусмотреть появление в этом файле новых таблиц.

Процесс начинается с запуска пустого запроса: Данные → Получить и преобразовать данные → Создать запрос → Из других источников → Пустой запрос

Затем в строке формул вводим знакомую команду

Power Query показывает все таблицы в текущей книге.

Все таблицы в книге Excel

Их нужно развернуть кнопкой с двумя стрелками в названии поля Content (на скриншоте ниже выделено красным кружком).

Кнопка для разворачивания таблиц

Если есть лишние столбцы, то их можно не выводить, сняв соответствующую галку. Также лучше убрать галку напротив опции Использовать исходное имя столбца как префикс. Нажимаем Ok.

Все таблицы в Power Query

Все таблицы находятся на одном листе, а рядом колонка с названием источника, откуда взята каждая строка.

Данные загружены. Можно приступать к их обработке. Ограничимся преобразованием названий таблиц в настоящую дату, чтобы затем использовать для сведения данных по месяцам.

Визуально мы наблюдаем и месяц, и год. Но Power Query такое название воспринимает, как текст. Поэтому делаем следующее.

Удалим нижнее подчеркивание. Правой кнопкой мыши по названию столбца Name → Замена значений.

Замена

В следующем окне настроек указываем, что меняем _ на пусто, то есть в нижнем поле ничего не указываем.

Заполнение окна для замены

Подчеркивание удаляется из названия.

Удаленное подчеркивание

Поиск и замена здесь работает так же, как и в обычном Excel.

Далее запускаем команду Преобразование → Столбец «Дата и время» → Дата → Выполнить анализ.

Анализ текста для преобразования в дату

Power Query распознает дату и меняет формат колонки. Мы также переименовываем столбец на Период.

Поле с датой

Полученную таблицу можно использовать для анализа данных. Выгрузим ее на лист Excel.
Главная → Закрыть и загрузить.

Выгруженная таблица с ошибками

Но что-то пошло не так. Во-первых, внизу таблицы пустая строка; во-вторых, при выгрузке произошла одна ошибка. Обновим запрос (справа от названия запроса значок обновления).

После обновления запроса ошибок еще больше

Что-то еще больше пошло не так. Даты исчезли, снизу таблицы добавились новые строки, а количество ошибок уже 19. Спокойствие, только спокойствие! Дело вот в чем.

Помните, на первом шаге мы получили все таблицы из файла? Так ведь и выгруженная таблица – это тоже таблица! Получается, Power Query взял 3 исходных таблицы, обработал, выгрузил на лист Excel и на следующем круге видит уже 4 таблицы!

Таблица выхода в общем запросе

При повторном обновлении запрос захватывает их все, а т.к. таблица выхода имеет другую структуру, то возникают ошибки.

Короче, из запроса нужно исключить таблицу, которая получается на выходе (Запрос1). Есть разные подходы, самый простой – это добавить шаг фильтрации. Выделяем в правой панели первый шаг Источник, открываем фильтр в колонке с названиями, снимаем галку с таблицы Запрос1 → Ok.

Выгруженная таблица без ошибок

Снова выгружаем таблицу в Excel и на этот раз все в порядке.

Выгруженная таблица с запросом без ошибок

Сделаем с помощью сводной таблицы маленький отчет по месяцам.

Сводная таблица по результатам запроса Power Query

Прошло время, и в файл добавили новую таблицу с продажами за апрель.

Продажи за следующий месяц

Требуется обновить сводный отчет. Представьте на минуту, как это происходит в обычном Эксель: таблица копируется в самый низ общего источника, продлевается колонка с датой, изменяется диапазон для сводной таблицы, обновляется весь отчет.

А вот, как это выглядит при использовании Power Query.

Достаточно два раза нажать кнопку Обновить все (первый раз – для обновления запроса, второй – для сводной таблицы).

Обновленный отчет на основе запроса Power Query

На добавление в отчет новых данных вместе с их обработкой потребовалось несколько секунд.

Вот за это мы так любим Power Query.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector