Экстрактор данных 1С в ClickHouseDB, PostgreSQL, MySQL и REST

12000,00 

Описание

Онлайн доставка заказа после оплаты.

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

Если ссылка не пришла или скачать не удалось, просим обратится через формы обратной связи на сайте.

Область применения

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

Чтобы выгружать данные из информационной системы во внешнюю базу данных для дальнейшего анализа и создания BI дэшбордов, например в Yandex DataLens.

Совместимо с обычными формами (для фоновых заданий, требуется доработка вашей конфигурации).

Технические требования

Для работы с PostgreSQL требуется:

  • Windows 7 / Linux Ubuntu 20. и старше
  • Python 3.8 и старше (лучше устанавливать для всех пользователей)
  • psycopg2 версии 2.8.4 и старше (pip install psycopg2==2.8.4)

Для работы с MySQL требуется:

  • Windows 7 / Linux Ubuntu 20. и старше
  • Python 3.8 и старше (лучше устанавливать для всех пользователей)
  • mysql-connector-python-rf (pip install mysql-connector-python-rf

Решение протестировано на конфигурациях:

  • 1С:Управление торговлей 11.5.17.122
  • 1С:Бухгалтерия предприятия от 3.0.157.32
  • 1С:Зарплата и управление персоналом 3.1.30.35
  • 1С:Розница 3.0.10.178
  • 1C:Комплексная автоматизация 2.5.20.91
  • 1С:Управление производственным предприятием, редакция 1.3.122.2 (для фоновых заданий, требуется доработка вашей конфигурации 6 часов)

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

Код открыт.

Создание виртуальной машины с базой данных

Создаем свой виртуальный или физических сервер (#VM, #VDS, #VDI и др.)

Для своей VDS вам понадобиться 1-2 ядра, 4Gb RAM, 15-20 GB SSD/HDD.

У которого есть ай пи адрес и порт снаружи.

Адрес

<адрес вашей ВМ, где лежит база данных>

порт по умолчанию

8123

  • Подготовить логин и пароль  для пользователя БД.

<имя пользователя>

<пароль пользователя с правами на вставку данных и создание таблиц>

  • Настроить свои фаерволлы, кому ходить можно, а кому нельзя
  • Зайти на веб морду базы

Подготовка

  • Создать базу данных ClickHouseDB или PostgreSQL или MySQL
    • CREATE DATABASE db_1c_test COMMENT ‘The 1C Test Metrics database’;
  • выдать на нее права определенному пользователю
    • GRANT SELECT ON <db_name>.* TO <user_name>; (ClickHouseDB)
    • psql -c “GRANT ALL PRIVILEGES ON DATABASE <db_name> to <user_name>;” (PostgreSQL)

Проверка

Для ClickHouseDB проверяем http:// <адрес вашей ВМ, где лежит база данных>:8123/play

Для PostgreSQL проверяем через pgAdmin

Для MySQL проверяем через phpMyAdmin

Для обеих баз можно использовать утилиту DBeaver.

 

Что нужно сделать в своей информационной базе

  • Открыть обработку в информационной базе, например тестовую или демо базу
  • Включите использование дополнительных и внешних обработок для своей конфигурации
  • Предоставьте своего пользователю права на открытие внешних обработок
  • Ввести все данные во вкладке параметры
  • Указать имя таблицы, например «Test»
  • Закрыть и открыть, убедиться, что параметры сохраняются
  • Вставить запрос из конструктора, взять срез последних любого регистра
  • Переименовать поле «Период» в «ПериодРегистратор»
  • Выставить свои даты в поля стандартного периода
  • Ограничить запрос датами «Дата1» и «Дата2»
  • Выставить глубину смещения дат назад
  • Отправить свой запрос

Чтобы ваша обработка запускалась в фоново в файловом варианте базы, то вам понадобиться создать еще одного пользователя, например «exchange» и создать задание в планировщике Windows или Cron на запуск программы без интерфейса.

Как проверить что отправилось в БД

Проверяем свой запрос в базе:

  • select * from db_1c_test.Test;

Чтобы проверить какие ключи и типы полей создались используем:

  • SHOW CREATE TABLE db_1c_test.Test;

Чтобы уничтожить таблицу, пишем:

  • DROP TABLE db_1c_test.Test;

Чтобы просто очистить:

  • TRUNCATE TABLE db_1c_test.Test;

или если хотите с условием что-то удалить:

  • DELETE FROM db_1c_test.Test where date_record > ‘2023-11-24 12:00:00’;

Какие тонкие настройки можно сделать через конфигуратор обработки

Чтобы более тонко настроить ключи, ресурсы и реквизиты, то открываем обработку через конфигуратор:

  • Добавляем свой новый макет компоновки данных
  • В своей СКД создаем свой запрос, а в полях, все что ключи не ставим никакой тип данных
  • Все, что ресурсы указываем числовые
  • Все, что ресурсы, строки или дата, или булево. Все остальное будет конвертироваться в строку или 0.
  • В полях не допускается поле “Периода”, поэтому переименовываем в «ПериодРегистратор».
  • Или не указываем вовсе, поле “Период” подставится автоматически исходя из вашего запроса и параметров.

Можно не лезть в конфигуратор для нескольких выгрузок?

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

Просто, если разбираетесь, то можно сделать несколько схем и команд в одной обработке и ее одну администрировать.

Создание #BI дэшборда в #Yandex #DataLens и что может получится

На картинках представлены примеры из Демо базы 1С Управление торговлей 11.5.17.122.

Представлены картинки из мобильной версии DataLens.