1с загрузка данных из табличного документа вычислить
После манипуляции с файлом необходимо его закрыть. В противном случае он останется захваченным в системе, и мы не сможем его использовать в других приложениях.
Клиент-Серверный вариант в управляемых формах.
1. Считываем данные из файла в массив из структур и затем этот массив передаем на сервер для дальнейших манипуляций с данными.
2-ой способ - это передать файл Excel на сервер через хранилище данных и далее работать с ним уже на сервере.
Очень часто приходится работать с очень большими файлами Excel, и его обработка путем перебора строк занимает огромное количество времени.
В таких случаех удобно в одно действие загрузить всю таблицу в массив и в потом работать уже непосредственно с массивом.
На выходе получаем двумерный массив, который содержит все данные указанного листа Excel
Полезные функции при работе с Excel:
Устанавливает видимость Excel при работе |
Добавление новой книги в файл Excel |
Сохранение книги Excel |
Добавление нового листа к книге |
Переименование листа |
Изменение маштаба листа |
Изменение ориентации листа |
Отступы листа |
Обращение к ячейки чтение/запись |
Обращение к области ячеек |
Очень часто при чтении или записи значений в Excel ставятся лишние пробелы в числе, например, вместо 1502 он читает как 1 502 и в дальнейшем это значение не приводится к числу. Эту проблему можно решить заменой. |
Объединение ячеек |
Работа с именованными ячейками в Excel |
Удаление ячейки |
Удаление области ячеек |
Обращение к строке |
Изменение ширины колонки |
Обращение к колонке |
Удаление Строки |
Фон ячейки / области / Строки / |
Функция переводит цвет из формата RGB в формат Excel |
Управление шрифтом в ячейки/строке/области |
Р азрешает переносить по словам в ячейке |
Управление рамкой ячейки |
Устанавливаем формат ячейки |
Формула в ячейки |
Формула в ячейки |
Формула в ячейки |
Формула в ячейки |
Функция для получения ширины колонки Excel Спасибо пользователю goodwill |
Разрешить перенос слов в ячейке Спасибо пользователю roofless |
Группировки данных на листе Спасибо пользователю dr-wit, ignor |
При работе с Excel мы оперируем столбцами как числом (Например, 1 столбец), а у Excel адресация столбцов производится с помощью символов. И когда нам нужно отредактировать формулу, то нам нужно номер столбца преобразовать в символ. В таких случаях вам пригодится эта функция.
2. Работа с Excel через ТабличныйДокумент 1С
С помощью данного метода можно и загружать из Excel и выгружать в Excel. Но на мой взгляд этот метод идепально подходит когда вам необходимо посто сохранить информацию в Excel без дальнейшей манипуляции.
Итак, приступим: загрузка из Excel:
1. Загружаем файл Excel в табличный документ
2. Производим манипуляции уже с ТабличнымДокументом
Давайте теперь разберем сохранение в Excel с помощью данного метода:
Тут все очень просто сначала мы формируем обычный Табличный документ и затем записываем его в Excel
2. Работа с Excel ADODB
Выражаю особую благодарность коллеги Fragster за хороший комментарий
Данный метод позволяет работать с Excel через ODBC и имеет ряд преимуществ:
- Не требует установки самой Excel, необходима лишь установить ODBC. Но как правило он уже установлен. Это особенность позволяет работать на стороне сервера без дополнительных установок Excel.
- Позволяет работать с таблицой Excel как с БД и строить к ней запросы на T-SQL. Таким образом мы можем делать отборы еще на этапе чтения данных и другие преимущества что дает Т-SQL. Что на мой взгляд огромный плюс.
Подключение к ADO
Отключение от ADO
Выполнение запроса
Пример запроса:
Запись в Excel тоже производится в виде запроса:
Хочу отметить что наименование полей производится по первой строке в таблице
ADODB предоставляет ряд объектов, с которыми мы работаем
ADODB.Recordset
В файле продемонстрированны оба варианта работы с запросами.
На этом пока все. По возможности буду дополнять статью :)
В архиве находится обработка, которая демонстрирует все описанные и другие возможности при работе с Excel.
В данной инструкции мы рассмотрим, как загрузить номенклатуру, которая находится в excel формате через обработку «загрузка данных из табличного документа».
Первоначально мы должны убедиться, что у пользователя под которым мы будем проводить загрузка есть необходимые нам права.
Заходим в нашего пользователя и переходим во вкладку «права доступа»:
Нас интересует право «открытие внешних отчетов и обработок»:
У пользователя это право есть, если же его нет, тогда нажимаем на кнопку «включить в группу» и из списка выбираем право:
Теперь переходим к открытию обработки.
В верхнем правом углу открываем меню и выбираем файл-открыть:
Откроется папка в которой мы выбираем обработку:
В программе открылось окно загрузки, тут мы выбираем, что мы будем загружать, в нашем случае это будет «справочник». Теперь выбираем вид справочника – номенклатура:
Переходим на вкладку «настройка» и убираем все галки:
Далее будем выбирать необходимые нам параметры:
В данном случае мы выбрали обязательные первоначальные настройки, в других моментах можно выбрать: текстовое описание, группу доступа, марка(бренд) и другие.
Предоставляем таблицу первоначальных настроек:
Теперь перейдем обратно на вкладку «табличный документ» и обновим:
Корректируем ширину колонок для удобства:
Открываем документ в котором находится номенклатура и копируем первый столбец (ВАЖНО – полная таблица не перенесется):
Возвращаемся в программу, нажимаем на первую строчку первого столбца и с помощью правой кнопки мыши выбираем «специальная вставка»:
Этот столбец вставляем в колонку «наименование для печати», если эти два наименования совпадают:
По такому же принципу копируем и вставляем «артикул»:
В остальных столбцах мы выбрали режим загрузки «устанавливать» и выбрали значение, в таком случае эти столбцы заполнять не нужно.
Необходимо убедиться в правильности веденных данных, нажимаем кнопку «контроль заполнения»:
Так как, ошибок у нас не выявлено, тогда нажимаем на гиперссылку «загрузить данные»:
Интересно, народ скачивает, плюсует, а комментариев ни каких .
нужно ли кому-нибудь доработка для загрузки в регистры движений документа?
Ну вот тебе мой комментарий: скачал, но как назло, до сих пор не было случаев применить её в работе, а просто так играться некогда.
недавно в Бух81 появился документ ввод остатков имеющий табличную часть, в которую можно загрузить и типовой обработкой.
когда же такого документа не было без мне доработки было трудно, особенно при загрузке остатков из всякой лабуды типа Бэст и тп
Загружаю остатки в УПП. Применил для документа "Корретировка записей регистрову". Все четко! Спасибо автору!
:D Отличная обработка. Огромное спасибо автору.
Хочу только написать, что при загрузке в Оперцию для загрузки значений субконто нужно:
- в колонке "Вид субконто" указать режим загрузки "Устанавливать" и в графе "Значение по умолчанию" - выбрать тот вид субконто, который необходим (н.р, справочник "Номенклатура");
- в колонке "Субконто" - "Описание типов" снять все флажки и оставить у одного субконто
(6) ну так, там ведь универсальный механизм, к тому же раз-два загрузил и забыл, а ради одного раза так сильно настраивать и конкретизировать не хотелось :o к тому же все что нужно в ручную можно выставить
Как раз то что надо. Нужно было загрузить данные в документ "Перенос данных". Правда не сразу понял, что можно грузить в этот документ, а также в "Корректировку записей регистров накопления".
Хорошая идея. Жаль не хватает записи в стандартные поля: Период, Активность, ВидДвижения (для регистров накопления) и т.п.
Отличная обработка.
Советую поменять в строке 2435 модуля документа ЗагрузкаДанныхИзТабличногоДокумента+Опер.81 на
Для нн = Кол+1 по ДвиженияРегистра.Колонки.Количество()-1 Цикл //4
У меня было больше 3-х субконто и как раньше не работало.
при открытии:
: Поле объекта не обнаружено (ЭлементыФормы)
Для каждого ЭлементФормы Из Форма.ЭлементыФормы Цикл
ЗУП 3.1 - толстый клиент
Просмотры 29746
Загрузки 1236
Рейтинг 54
Создание 21.08.09 10:24
Обновление 21.08.09 10:38
№ Публикации 21890
Кому Для всех
Конфигурация Конфигурации 1cv8
Операционная система Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Бесплатно (free)
Код открыт Не указано
См. также
Обработка позволяет загрузить сотни строк номенклатурных позиций и зарегистрировать цены для них за десятки секунд в простой и наглядной форме.
14.02.2012 25004 289 karnilaev 65
Остаток в табличной части документа
Расширение, показывающее остаток номенклатуры на текущий момент времени по строчке в табличной части документов.
16.01.2022 2053 75 user720820720 2
План заполнения табличной части
Оснастка «План заполнения табличной части». Предназначена для кастомизации заполнения табличной части объекта базы данных (справочника, документа и других). Рассматривается как дополняющая идейные возможности, предоставляемые подсистемой БСП «Дополнительные отчеты и обработки».
16.11.2021 2192 58 totchaz 2
Универсальная выгрузка данных в excel с вычисляемыми параметрами и простой консолью запросов, или как выгрузить результат нескольких запросов в заданные листы нескольких файлов excel
У вас часто встречаются ситуации, когда нужно периодически выгрузить несколько наборов разных данных из базы 1С в разные файлы excel в заданные листы для их анализа? Тогда обработка "Универсальная выгрузка данных в excel с вычисляемыми параметрами и простой консолью запросов" поможет вам. Обработка "Универсальная выгрузка данных в excel с вычисляемыми параметрами и простой консолью запросов" позволяет создать таблицу заданий для выгрузки данных запросов в файлы excel. Результат запросов можно посмотреть тут же в обработке с помощью встроенной консоли запросов, а для заполнения параметров написать код 1С для того, чтобы они заполнялись в зависимости от разных условий (например заполнять в параметр &Дата только сегодняшний день). Таблицу заданий можно сохранить в файл и в дальнейшем использовать его, например для ежедневной выгрузки данных. Причем если использовать в запросах стандартный параметр выгрузки (например «Вчерашний день») и вычисляемые параметры то ежедневная выгрузка данных может сводиться к нажатию одной кнопки «Выгрузить в excel»
В данном случае загрузка выполняется с помощью внешней обработки ЗагрузкаДанныхИзТабличногоДокумента.epf .
Где взять обработку
Обработка доступна на сайте ИТС. Зайдите на сайт и скачайте обработку по ссылке Копировать .
Как открыть обработку в 1С
Скачанная обработка находится в архиве, распакуйте его. В 1С зайдите в меню Файл – Открыть .
Найдите обработку, выделите ее и нажмите Открыть .
При этом может выйти предупреждение безопасности, нажмите Да .
Загрузка данных с помощью обработки
В обработке выберите режим загрузки данных:
- загрузка в справочник;
- загрузка в табличную часть справочника или документа;
- загрузка в регистр сведений.
Далее выберите необходимый объект. Рассмотрим загрузку на примере справочника Номенклатура .
После выбора справочника на вкладке Табличный документ автоматически определяется состав колонок. Если уже есть файл с данными, настройте его под этот формат. Если файла нет, заполните информацию для загрузки — либо прямо в обработке, либо в файле Excel. Для удобства создайте файл из обработки. Для этого нажмите кнопку Сохранить в файл .
Укажите папку для создания файла, выберите формат *xls и нажмите Сохранить .
Откройте сохраненный файл и заполните его данными. Если колонка Код не заполнена, при загрузке код справочника сформируется автоматически.
В обработке нажмите кнопку Открыть файл и выберите файл Excel для загрузки.
Заполнится табличная часть.
Перед загрузкой проверьте настройки на соответствующей вкладке.
- Укажите, с какой строки загружать данные. В примере укажем цифру 2, чтобы случайно не загрузились названия колонок.
- Для исключения создания дублей укажите, по какому полю искать номенклатуру в справочнике. При наличии кода удобно искать по нему. В данном случае в колонке Поле поиска установим флажок для поля Наименование . Теперь, если в справочнике уже есть номенклатура с таким названием, новый элемент загружаться не будет.
- Если файл создавался вручную, проверьте и при необходимости поменяйте номера колонок. Для этого нажмите Нумерация колонок – Ручная нумерация колонок и проставьте номера для каждого поля.
После определения настроек нажмите Загрузить .
Новая номенклатура загружена.
Загрузка данных из табличного документа 1С 8.3
В 1С:Бухгалтерия предприятия 3.0 загрузка данных из табличного документа уже встроена в некоторые справочники. Например, в справочники Контрагенты и Номенклатура .
Рассмотрим загрузку контрагентов.
Откройте справочник и нажмите кнопку Загрузить .
Выберите файл для загрузки. Поддерживается не только формат *xls, но и *xlsx.
Заполнится таблица данными из файла. Соответствие колонок в файле и полей в справочнике определяется автоматически. Для колонок, по которым не удалось найти соответствие, установите его вручную по ссылке Укажите реквизит .
Выберите подходящий реквизит.
После проверки таблицы нажмите Далее .
Программа предложит создать новых контрагентов. Сверьте данные для загрузки, укажите папку для размещения контрагентов и нажмите Загрузить .
Контрагенты появятся в справочнике.
Подобным образом загружается и номенклатура.
Итак, мы рассмотрели, как загрузить данные из табличного документа для 1С 8.2 и 8.3.
См. также:
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
Похожие публикации
-
Добрый день! В формируемых отчетах при моих настройках интерфейса не.В ЗУП 3 реализованы следующие возможности.В данной публикации рассматривается операция загрузки Классификатора банков РФ в.У вас нет доступа на просмотр Чтобы получить доступ:Оформите коммерческую.
(2 оценок, среднее: 5,00 из 5)
Публикацию можно обсудить в комментариях ниже.
Обратите внимание!
В комментариях наши эксперты не отвечают на вопросы по программам 1С и законодательству.
Задать вопрос нашим специалистам можно в Личном кабинете
Вы можете задать еще вопросов
Доступ к форме "Задать вопрос" возможен только при оформлении полной подписки на БухЭксперт8
Нажимая кнопку "Задать вопрос", я соглашаюсь с
регламентом БухЭксперт8.ру >>
Изменения в 2022 году, о которых нужно знать бухгалтеру
6-НДФЛ за 1 квартал 2022 в 1С
Санкции и контрмеры: как работать организации и ее бухгалтеру в новой реальности. Часть 2
Учет малоценных ОС и запасов (ОСН)
Отчетность за 1 квартал 2022
Спасибо, Марина Аркадьевна. Ваш семинар, как всегда великолепен.
С уважением,
Римма
Интересно, народ скачивает, плюсует, а комментариев ни каких .
нужно ли кому-нибудь доработка для загрузки в регистры движений документа?
Ну вот тебе мой комментарий: скачал, но как назло, до сих пор не было случаев применить её в работе, а просто так играться некогда.
недавно в Бух81 появился документ ввод остатков имеющий табличную часть, в которую можно загрузить и типовой обработкой.
когда же такого документа не было без мне доработки было трудно, особенно при загрузке остатков из всякой лабуды типа Бэст и тп
Загружаю остатки в УПП. Применил для документа "Корретировка записей регистрову". Все четко! Спасибо автору!
:D Отличная обработка. Огромное спасибо автору.
Хочу только написать, что при загрузке в Оперцию для загрузки значений субконто нужно:
- в колонке "Вид субконто" указать режим загрузки "Устанавливать" и в графе "Значение по умолчанию" - выбрать тот вид субконто, который необходим (н.р, справочник "Номенклатура");
- в колонке "Субконто" - "Описание типов" снять все флажки и оставить у одного субконто
(6) ну так, там ведь универсальный механизм, к тому же раз-два загрузил и забыл, а ради одного раза так сильно настраивать и конкретизировать не хотелось :o к тому же все что нужно в ручную можно выставить
Как раз то что надо. Нужно было загрузить данные в документ "Перенос данных". Правда не сразу понял, что можно грузить в этот документ, а также в "Корректировку записей регистров накопления".
Хорошая идея. Жаль не хватает записи в стандартные поля: Период, Активность, ВидДвижения (для регистров накопления) и т.п.
Отличная обработка.
Советую поменять в строке 2435 модуля документа ЗагрузкаДанныхИзТабличногоДокумента+Опер.81 на
Для нн = Кол+1 по ДвиженияРегистра.Колонки.Количество()-1 Цикл //4
У меня было больше 3-х субконто и как раньше не работало.
при открытии:
: Поле объекта не обнаружено (ЭлементыФормы)
Для каждого ЭлементФормы Из Форма.ЭлементыФормы Цикл
ЗУП 3.1 - толстый клиент
Просмотры 29746
Загрузки 1236
Рейтинг 54
Создание 21.08.09 10:24
Обновление 21.08.09 10:38
№ Публикации 21890
Кому Для всех
Конфигурация Конфигурации 1cv8
Операционная система Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Бесплатно (free)
Код открыт Не указано
См. также
Обработка позволяет загрузить сотни строк номенклатурных позиций и зарегистрировать цены для них за десятки секунд в простой и наглядной форме.
14.02.2012 25004 289 karnilaev 65
Остаток в табличной части документа
Расширение, показывающее остаток номенклатуры на текущий момент времени по строчке в табличной части документов.
16.01.2022 2053 75 user720820720 2
План заполнения табличной части
Оснастка «План заполнения табличной части». Предназначена для кастомизации заполнения табличной части объекта базы данных (справочника, документа и других). Рассматривается как дополняющая идейные возможности, предоставляемые подсистемой БСП «Дополнительные отчеты и обработки».
16.11.2021 2192 58 totchaz 2
Универсальная выгрузка данных в excel с вычисляемыми параметрами и простой консолью запросов, или как выгрузить результат нескольких запросов в заданные листы нескольких файлов excel
У вас часто встречаются ситуации, когда нужно периодически выгрузить несколько наборов разных данных из базы 1С в разные файлы excel в заданные листы для их анализа? Тогда обработка "Универсальная выгрузка данных в excel с вычисляемыми параметрами и простой консолью запросов" поможет вам. Обработка "Универсальная выгрузка данных в excel с вычисляемыми параметрами и простой консолью запросов" позволяет создать таблицу заданий для выгрузки данных запросов в файлы excel. Результат запросов можно посмотреть тут же в обработке с помощью встроенной консоли запросов, а для заполнения параметров написать код 1С для того, чтобы они заполнялись в зависимости от разных условий (например заполнять в параметр &Дата только сегодняшний день). Таблицу заданий можно сохранить в файл и в дальнейшем использовать его, например для ежедневной выгрузки данных. Причем если использовать в запросах стандартный параметр выгрузки (например «Вчерашний день») и вычисляемые параметры то ежедневная выгрузка данных может сводиться к нажатию одной кнопки «Выгрузить в excel»
Читайте также: