Внешние источники данных: создание таблиц в MS SQL с помощью скриптов *.sql

21.01.20

Интеграция - Внешние источники данных

Как быть программисту 1С, если для интеграции базы 1С: Предприятие 8.3 есть техническое задание со стороны разработчика внешней базы данных. Но самой базы данных нет ? А она уже нужна: для отладки выгрузки данных. В тех.задании коллегами описана структура таблиц внешней базы данных. Тогда Вам можно создать такую базу данных самостоятельно. С помощью скрипта для MS SQL.

Скачать исходный код

Наименование Файл Версия Размер
Скрипты для создания таблиц в MS SQL
.7z 3,01Kb
4
.7z 2020.01.17 3,01Kb 4 Скачать
Описание в формате PDF с форматированием для печати на формат листа A4
.pdf 1,36Mb
0
.pdf 2020.01.20 1,36Mb Скачать

Всё чаще возникают задачи для обмена со сторонними базами данных.
Для платформы 1С:Предприятие 8.3.12 вполне подходит механизм "Внешние источники данных".

Исходная задача :

 Чтобы получить таблицы "Внешние источники данных", нужно обладать таблицами в MS SQL

Внешние Источники Данных в 1С: Предприятии могут иметь два типа : "Объектные" и "Необъектные"

Начнём с простого примера : "Объектные таблицы"

К таблицам "Объектного" типа относятся таблицы с первичным ключом, который состоит из одного поля.

В 1С: Предприятии такому типу таблиц соответствует объект типа "Справочник" у которого есть поле "Код" (длина поля "Код" больше нуля)

Если создать текст скрипта : Самый простой справочник : "Единицы измерения"

То при его выполнении в MS SQL Server Management Studio можем получить таблицы с полями : 

Создание "Справочника" в MS SQL

Для создания в MS SQL таблицы, соответствующей регистру накопления, следует написать такой сценарий : 

Исходный текст сценария

В результате мы получим таблицы : 

Таблицы "Регистров накопления"

При создании таблицы в MS SQL, соответствующей "шапке" документа, может быть создана "Объектная" таблица. Если первичный ключ "PRIMARY KEY" состоит из одного, уникального ключа. Как в этом случае : 

Скрипт создания объектной таблицы типа "Шапка документа"Такой вариант был выбран разработчиком ТЗ : номер документа уникален для всей базы данных. В результате будут созданы таблицы : 

"Шапка документа" с уникальным номером документа

Табличная часть будет создана в результате работы скрипта :

Скрипт создания табличной части документаИз сценария получается, что номенклатура в табличной части используется без повторений. Таково пожелание разработчика ТЗ.

И созданная таблица будет иметь "Необъектный тип" : 

Результат работы скрипта

 

Скрипты для MS SQL (Я использую : Версия 15.0.18183.0, "О программе SQL Server Management Studio") я создавал в конфигураторе 1С:Предприятия 8.3.12.1790. Внешние источники данных импортировал  в конфигурацию ERP 2.4.6 на этом же релизе платформы.

Для работы примера в MS SQL следует создать пустую базу "MyFirstDataBaseFor1C" - так как скрипт (скачиваемый файл) работает с таким наименованием.

При подключении внешнего источника из MS SQL можно использовать название "srcFirstDataBase". Это по желанию. "src" - от слова Source (Источник)

внешние источники данных sql ms скрипт объектная

См. также

Перенос данных из Парус 8 в ЗГУ 3

Зарплата Внешние источники данных Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 8 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

84000 руб.

19.08.2020    22614    19    1    

22

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9304    9    8    

11

Экстрактор данных 1С в BI - выгрузка данных из 1С в BI-аналитику

Внешние источники данных Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование Конфигурации 1cv8 Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.

15.11.2022    13642    12    SQV0    47    

29

Перенос данных из Парус 7.хх в ЗГУ ред.3

Внешние источники данных Зарплата Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 7.хх учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

24000 руб.

24.04.2017    48834    97    163    

86

Перенос данных из Парус 10 (Торнадо) в ЗГУ ред.3 через Excel

Внешние источники данных Загрузка и выгрузка в Excel Зарплата Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате из Парус 10(Торнадо) учреждений через файлы Excel в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ). В принципе, обработка может быть использована для загрузки из файлов Excel, полученных из любых информационных систем.

24000 руб.

16.11.2018    30079    20    31    

21

Загрузка в БГУ из УРМ "Криста"

Внешние источники данных Банковские операции Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия государственного учреждения Россия Бухгалтерский учет Платные (руб)

Обработки для загрузки данных из УРМ "Криста" в бухгалтерию государственного учреждения редакция 2.0. Есть Демо доступ на вкладке Бесплатные файлы на 1 месяц со дня получения демонстрационного ключа регистрации. Поддерживает ПО "Web-исполнение" от НПО "Криста".

4800 руб.

19.06.2013    38492    136    90    

30
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. awk 741 21.01.20 15:27 Сейчас в теме
Ужас, а не статья.... Для DBA слабо, для 1С программиста много. Для кого это написано?
5. Designer1C 448 27.01.20 10:19 Сейчас в теме
(1)Спасибо за первый комментарий в этой публикации !
Благодаря Вашему замечанию я познакомился со значением термина DBA
Понимаю Ваше разочарование от содержания статьи. Она далека от совершенства.
Предполагаю, что перед Вами стоит задача обучить своих подопечных некоторым навыкам по работе с MS SQL.
Действительно, в этом случае моя статья не отвечает Вашему интересу. К моему сожалению.
Интересно, под какую задачу Вы ищете (искали) информацию ?
Возможно, я смог бы написать статью не "Ужас", а "то, что Надо !"
А если уже нашли требуемую информацию, то опубликуйте в новом сообщении ссылочку. Мне, как "Программисту 1С" это очень интересно.
2. Designer1C 448 22.01.20 09:51 Сейчас в теме
Администратор базы данных (DataBase Administrator — DBA) — специалист, управляющий работой базы данных. Обычно обязан­ности DBA подразделяют на основные и дополнительные
3. Designer1C 448 22.01.20 09:52 Сейчас в теме
Основные обязанности DBA :

Установка нового программного обеспечения. Установка новых версий Oracle, приложений и другого программного обеспечения, относящегося к администрированию СУБД. Предусматривает так­же обязательное тестирование устанавливаемых программ перед введением их в рабочую среду.

· Конфигурирование программного и аппаратного обеспечения. В большинстве случаев доступ к настройке программного и аппа­ратного обеспечения имеет только системный администратор, поэтому DBA должен производить установку программ, конфигу­рирование программного и аппаратного обеспечения только со­вместно с системным администратором.

· Обеспечение безопасности. Является одной из основных обя­занностей DBA. Управление безопасностью и администрирование включают в себя: добавление и удаление пользователей, управле­ние квотами, аудит и разрешение проблем безопасности.

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

· Резервное копирование и восстановление системы. Одна из глав­ных обязанностей DBA — постоянно сохранять данные в системе. Чтобы делать это эффективно, необходимо разработать процеду­ру резервного копирования и стратегию восстановления данных. Очень важно периодически тестировать отработанную схему ре­зервного копирования и восстановления данных.

· Процедура постоянного [планового) обслуживания. Обслужива­ние СУБД лучше всего производить рано утром либо по выход­ным дням, чтобы не нарушать работу пользователей. Обслужива­ние включает в себя: архивирование, тестирование и настройку системы. Администратор должен составить календарь планового обслуживания СУБД и довести его до сведения клиентов.

· Локализация неисправностей и восстановление системы после сбоя. Поскольку сбой системы приводит к возможности потери доступа пользователей к своим данным, DBA обязан как можно быстрее восстановить работу системы, т.е. он должен уметь пре­дусмотреть сбой и заранее иметь план восстановления системы после сбоя.

Дополнительные обязанности DBA :

Сводятся, как правило, к оказанию помощи отдельным клиентам и могут включать в себя следующие задачи администрирования :

· Анализ данных. Проводится для того, чтобы дать отдельным разработчикам или пользователям рекомендации по повышению производительности или эффективности хранения данных.

· Предварительная разработка БД. Поскольку DBA знает систе­му «изнутри», он может на предварительной стадии разработки структуры БД указать команде разработчиков на потенциальные проблемы и помочь в увеличении производительности программ.

· Оказание консультаций разработчикам по хранимым SQL-про­цедурам. DBA довольно часто привлекается к разрешению про­блем SQL-кода и разработке (написанию) хранимых процедур, т.е. он должен быть готов стать консультантом для разработчиков и пользователей.

· Разработка производственных стандартов и соглашений по име­нам. Это одна из основных организационных проблем управления. Поскольку в разработке и развертывании приложений могут при­нимать участие несколько различных групп, DBA должен прини­мать активное участие в решении проблемы их соответствия про­изводственным стандартам и соглашениям по именам.

· Документирование среды. DBA должен документировать каж­дый аспект среды СУБД, включая конфигурирование оборудова­ния, обновление и изменение программного обеспечения, воп­росы, связанные с изменением системы и ее параметров, и уметь полностью восстановить ее по документации в случае необходи­мости.

· Планирование нагрузки системы и необходимого объема памяти. Неотъемлемой частью работы DBA является определение необхо­димости приобретения дополнительных серверов, дополнитель­ной дисковой и оперативной памяти в целях удовлетворения воз­растающих потребностей пользователей. Прогнозируя ожидаемую потребность аппаратных средств, администратор обеспечивает надежность работы информационной системы предприятия.
4. Designer1C 448 22.01.20 09:59 Сейчас в теме
Кто такой — DBA?

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

Administrative DBA — Работа по поддержке сервера и обеспечение его работоспособности. Резервирование, защита, установка заплат и SP, настройка репликаций и т.д. А также всё, что касается фактического программного обеспечения сервера.

Development DBA — работы по формированию запросов, хранимых процедур и т.д., которые обеспечивают бизнес-задачи. Такой DBA — эквивалент программиста. Он, прежде всего, пишет T-SQL запросы.

Architect — Design schemas. Строит таблицы, FKs, PKs и т.д. Работа по построению структур, которые встречают бизнес-задачи общего характера. Разработанный таким DBA дизайн используется разработчиками и всеми DBA для поддержки пользовательских приложений.

Data Warehouse DBA. Это новая роль, отвечающая за объединённые данные из множественных источников, в хранилище данных. Вероятно, придется проектировать хранилище, оптимизировать данные хранилища, стандартизировать данные, обрабатывать данные перед загрузкой. В SQL Server, этот DBA использовал бы в основном DTS.

OLAP DBA. Строит многомерные кубы для поддержки задач принятия решений или OLAP систем. Основной язык в SQL Server — это MDX, а не SQL.

Быть DBA (вообще) утомительное занятие. Вы должны планировать развитие базы на будущее, резервировать место, где ваша схема будет размещаться или расширяться. План роста чреват множеством ошибок и просчётов. Эта работа не похожа на программирование с помощью «C» или Visual Basic, когда ответственность ограничивается уровнем пользовательского приложения. Ваши решения затрагивают все данные и имеют далеко идущие последствия. Так как Вы работаете в ориентируемой на массивы данных среде (set-oriented), Вы можете легко допустить ошибку, которая затронет большое количество элементов этих данных. В отличие от класса или структуры, где Вы имеете дело с не большими порциями данных (то есть, один пользователь), единственный SQL запрос может затронуть всех пользователей структуры. Скольких из Вас мучили сомнения при написании delete <имя_таблицы> с предложением where?
Оставьте свое сообщение