Глава 23. Импорт справочников
В этой главе мы расскажем о средствах импорта справочников аналитик и свойств счетов.
23.1 Зачем нужен импорт справочников аналитик
Во многих организациях при обработке учётной информации используется большое количество классификаторов или перечней. Например, в организации могут применяться классификаторы и перечни для статей затрат, доходов, товаров, видов продукции, контрагентов, договоров, сотрудников, проектов, регионов, центров финансовой ответственности и т.д. Эти классификаторы и перечни обычно используются в системах первичного и бухгалтерского учёта. Нередко эти классификаторы и перечни имеют большой объём и интенсивно обновляются.
Часто те же самые классификаторы и перечни целесообразно использовать и в ФинГраде, чтобы представлять финансовую информацию в нужных разрезах. Обычно эти классификаторы и перечни представляются в ФинГраде как справочники соответствующих аналитик. Например, в ФинГраде могут быть аналитики Статья затрат, Статья доходов, Товар, Вид продукции, Контрагент, Договор, Сотрудник, Проект, Регион, ЦФО и т.д.
Информация в справочники аналитик ФинГрада попадает при импорте проводок, а также может быть введена в справочники вручную, как это описано в главе 9. Справочники аналитик. Однако зачастую этого недостаточно, и нужна автоматическая синхронизация справочников ФинГрада с аналогичными справочниками (классификаторами, перечнями) систем бухгалтерского, первичного, оперативного и прочего учёта.
Причины для этого следующие:
- повторный ручной ввод данных в справочники ФинГрада трудоёмок и неизбежно сопряжён с ошибками, которые трудно выявлять и устранять;
- автоматический ввод значений справочников при импорте проводок в ФинГрад выполняется только после совершения соответствующих хозяйственных операций. Часто требуется, чтобы в ФинГраде значения аналитики можно было использовать и до совершения каких-либо хозяйственных операций с этой аналитикой. Например, чтобы ввести бюджет по новому договору или выявить договоры, по которым не производилось никаких хозяйственных операций;
- при импорте проводок в справочники аналитик ФинГрада добавляются только значения основной колонки аналитики, а все прочие колонки справочника аналитики остаются незаполненными.
Поэтому ФинГрад имеет средства импорта справочников, которые лишены этих недостатков. Эти же средства можно использовать для импорта свойств счетов.
23.2 Диалоговое окно "Импорт справочников"
Для импорта справочников аналитик и свойств счетов выберите на главном экране ФинГрада раздел Импорт справочников. Откроется новая вкладка Импорт справочников:

Здесь отображаются источники для импорта справочников аналитик и свойств счетов. Если Вы не делали импорт справочников ранее, список будет пустым.
Колонки списка источников импорта. Для каждого источника импорта в списке указаны следующие данные:
| Колонка | Значение |
|---|---|
| Имя источника данных | Условное название источника импорта |
| Аналитика | Название аналитики, по которой происходит импорт |
| Тип импорта | Analytic - импорт значений аналитики. AccountProperty - импорт свойств счетов. ExcelBook - импорт данных из таблиц Excel. AnalyticFrom1C8X - импорт аналитик из баз данных 1С |
Панель управления импорта справочников. С помощью нижеперечисленных кнопок на панели управления Вы можете выполнить следующие действия:
| Кнопка | Действие |
|---|---|
| Добавить источник для импорта справочника аналитики или свойств счетов | |
| Редактировать свойства текущего (выделенного в списке) источника импорта | |
| Удалить из списка текущий (выделенный в списке) источник импорта. Вы всегда можете увидеть удаленные строки, включив режим Показать скрытые. Если нажать на скрытый источник, появится кнопка Используйте её, если нужно вернуть удаленный источник в список | |
| Настроить соответствие колонок, включить или отключить колонки перед импортом | |
| Импортировать данные из текущего (выделенного в списке) источника | |
| Открывает вкладку с журналом операций по импорту справочников |
Переключатель Показать скрытые в правом верхнем углу вкладки позволяет отобразить скрытые источники импорта.
23.3 Выполнение импорта
Когда источник для импорта справочника аналитики или свойства счетов создан и настроен, импорт выполняется следующим образом:
- Выберите во вкладке
Импорт справочников источник импорта.
- Нажмите на кнопку
Импортировать.
В качестве примера рассмотрим импорт справочника аналитики Контрагент из таблицы Excel. Проведем следующий порядок действий:
-
Выберем среди источников данных строку Контрагенты. Это название импорта мы задали ранее, когда добавляли источник данных.

-
Убедимся, что колонки в источнике соответствуют колонкам аналитики. Для этого нажмем на кнопку
Настроить импорт. Откроется вкладка настройки импорта:

-
Здесь можно указать, какие из колонок не импортировать. Для этого снимите галочку напротив их названия. Чтобы избежать ошибок при импорте, проверьте соответствие колонок. Если колонка в источнике не соответствует колонке аналитики в справочнике, просто перетяните её мышью в нужную строчку.
-
Нажмем на кнопку
Импортировать. ФинГрад начнёт импорт и после окончания оповестит о результате:

-
Посмотрим на результаты импорта, нажав на кнопку Открыть справочник:

ФинГрад заполнил справочник аналитики Контрагент, добавив туда импортируемое количество строк.
-
Поскольку никаких действий со справочником нам совершать не надо, выйдем из него, нажав на кнопку
.
23.4 Задание нового источника для импорта из произвольной базы данных
Рассмотрим импорт справочников на примере получения данных из произвольной базы данных:
-
Нажмём на кнопку Новый во вкладке Импорт справочников. В выпадающем меню выберем строку Из произвольной базы данных:

-
Откроется диалоговое окно настроек Импорт справочников из произвольной БД:
примечаниеЗначки
и
сообщают или предупреждают об ошибках заполнения полей.
-
Заполняем поля:
- Параметры БД, Логин и Пароль - эти параметры заполняются так же, как при импорте из SQL баз данных (см. п. 20.1 Добавление источника для импорта данных);
- Аналитика - выберите, в какую аналитику импортировать значения;
- Название импорта - условное имя источника данных. Имена, назначенные разным источникам данных, не должны совпадать.
-
В поле Запрос к БД составляем запрос к базе данных.
При импорте значений аналитик этот SQL-запрос обычно имеет вид:
SELECT
Выражение AS имя-аналитики,
Выражение1 AS имя-колонки-аналитики-1,
…
ВыражениеN AS имя-колонки-аналитики-N
FROM таблицаЗдесь:
имя-аналитики- это название аналитики, значения которой импортируются;имя-колонки-аналитики1- названия колонок этой аналитики;Выражение,Выражение1, …ВыражениеN- выражения языка SQL, задающие значения для аналитики и для колонок этой аналитики;таблица- выражение языка SQL, задающее таблицу, из которой делается выборка значений.
Если в именах аналитик и колонок имеются пробелы, дефисы или иные специальные символы, то эти имена в SQL-запросе надо заключать в квадратные скобки.
Например, для импорта наименований контрагентов из другой базы данных ФинГрада можно использовать запрос:
SELECT stringValue as [Контрагент]
FROM ListFieldValues
WHERE analiticFK = 45При импорте свойств счетов SQL-запрос имеет следующий вид:
SELECT
Выражение1 AS [счет],
Выражение2 AS [свойство],
FROM таблицаЗдесь:
Выражение1- выражение языка SQL, задающее имя счёта, для которого будет установлено свойство;Выражение2- выражение языка SQL, задающее значение свойства для этого счёта;таблица- выражение языка SQL, задающее таблицу, из которой делается выборка значений.
-
После того как все поля будут заполнены, нажимаем последовательно на кнопки Проверить подключение к БД, Проверить запрос к БД и на кнопку
ОК:

Если в параметрах запроса была сделана ошибка, то после нажатия на кнопку Проверить запрос к БД ФинГрад выдаст системное сообщение об ошибке, например, такого плана:
Следует исправить ошибку в запросе и снова сделать все проверки, после чего нажать на кнопку
ОК. -
Диалоговое окно Импорт справочников из произвольной БД будет закрыто, и ФинГрад автоматически откроет вкладку с настройками созданного импорта:

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

Если же в параметрах импорта были ошибки, то ФинГрад выведет сообщение об ошибке, например, представленное на рисунке:
В этом случае исправьте ошибки в параметрах импорта, а затем снова запустите импорт.
-
Для просмотра импортированных значений в справочнике нажмите на кнопку Открыть справочник, расположенную под кнопкой
Импортировать в правом верхнем углу вкладки:

Откроется новая вкладка со справочником аналитики, куда был произведен импорт новых значений.
Если хотите выйти из параметров импорта, нажмите на кнопку
Закрыть в левом верхнем углу вкладки.
-
После настройки параметров импорта во вкладке Импорт справочников появится новая строка с созданным источником импорта:

При повторном проведении импорта из того же источника данных ФинГрад не импортирует уже импортированные значения (загружаются только данные, добавленные после первого импорта). Таким образом ФинГрад автоматически предотвращает дублирование уже внесенных в базу данных значений.
23.5 Импорт из 1С
Импортировать из 1С напрямую в ФинГрад можно за несколько простых шагов. Покажем данную процедуру на примере импорта контрагентов из 1С:
-
Во вкладке Импорт справочников нажмите на кнопку Новый. В выпадающем меню выберите строку Из 1С 8.*:

-
Откроется диалоговое окно Импорт справочников из 1С с параметрами источника импорта:

- База данных 1С - выберите из списка название базы данных 1С, из которой хотите импортировать контрагентов;
- Логин 1С - введите имя учётной записи, используемой для доступа к данным 1С;
- Пароль - введите пароль к выбранной учётной записи 1С;
- Название импорта - задайте условное имя источника данных. Имена разных источников данных не должны совпадать.

Чтобы проверить соединение с базой данных, нажмите на кнопку Тест. Если ошибок нет и соединение успешно установлено, на кнопке Тест появится зеленая галочка. После этого можно сохранять параметры нажатием на кнопку
ОК.примечаниеЕсли включить переключатель Удалять, то значения целевого справочника будут удалены, если они не пришли при импорте из источника данных.
Если включить переключатель Восстанавливать, то удалённые значения справочника будут восстановлены, если они пришли при импорте из источника данных.
-
Диалоговое окно Импорт справочников из 1С будет закрыто, и ФинГрад автоматически откроет вкладку с настройками созданного импорта:

Вкладка настроек импорта разделена на две основных области:
- слева представлен перечень аналитик для импорта из настроенного источника данных;
- справа - перечень колонок аналитик выбранного нами справочника аналитики, куда и будут импортироваться значения из справочника 1С, а также выбор тех колонок аналитики, которые нужно импортировать в ФинГрад.
Необходимо выполнить следующие действия:
- в строке поиска по названию (с левой стороны вкладки, над перечнем импортируемых аналитик источника) введите наименование аналитики (в нашем примере это Контрагенты) либо найдите аналитику вручную, кликните мышью по данной строке;
- выберите аналитику, для которой будет импортироваться справочник - для нашего примера это Контрагент. Для этого в правой области напротив графы Аналитика кликните по ссылке Выберите аналитику. В открывшемся диалоговом окне Выбор аналитики найдите аналитику Контрагент и нажмите на кнопку Выбрать либо щелкните два раза мышью по выбранной строке;

-
если какие-либо колонки в источнике не соответствует колонкам справочника, просто перетяните их в нужные строчки;
-
поставьте галочки в тех колонках, которые нужно импортировать, и снимите их там, где импорт не нужен;

-
нажмите на кнопку
Импортировать.

-
ФинГрад завершит импорт и сообщит о результате отчетом о выполненном импорте:
-
Вы можете нажать на кнопку Открыть справочник и посмотреть справочник с добавленными контрагентами:

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

23.6 Импорт справочников из Excel
В ФинГраде есть инструмент импорта справочников из таблиц Excel. С его помощью можно быстро заполнять справочники аналитик с любым количеством столбцов и строк. Рассмотрим, как это сделать, на следующем примере:
-
Во вкладке Импорт справочников нажмите на кнопку Новый. В выпадающем меню выберите строку Из Excel:

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

Нажмите на кнопку
ОК.примечаниеЕсли включить переключатель Удалять, то значения целевого справочника будут удалены, если они не пришли при импорте из источника данных.
Если включить переключатель Восстанавливать, то удалённые значения справочника будут восстановлены, если они пришли при импорте из источника данных.
-
Диалоговое окно Импорт справочников из Excel будет закрыто, и ФинГрад автоматически откроет вкладку с настройками созданного импорта:

- укажите лист, на котором хранятся исходные данные (если листов несколько);
- выберите аналитику, для которой будет импортироваться справочник. Для этого в правой области напротив графы Аналитика кликните по ссылке Выберите аналитику. В открывшемся диалоговом окне Выбор аналитики найдите нужную аналитику и нажмите на кнопку Выбрать либо щелкните два раза мышью по выбранной строке;
- если какие-либо колонки в источнике не соответствует колонкам справочника, просто перетяните их в нужные строчки;
- поставьте галочки в тех колонках, которые нужно импортировать, и снимите их там, где импорт не нужен;
- нажмите на кнопку
Импортировать.

-
ФинГрад завершит импорт и сообщит о результате отчетом о выполненном импорте внизу вкладки:

-
Нажмите на кнопку Открыть справочник, чтобы посмотреть справочник с загруженными значениями. Видно, что все отмеченные нами колонки аналитики Товары заполнены значениями:

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

1. Заголовки полей (столбцов) с точками в названии и пробелами в начале или конце названия импортироваться не будут. Если в файле-источнике есть такие заголовки полей, переименуйте их перед импортом.
2. Данные в таблице Excel должны располагаться на листе, и первый столбец должен быть непустым.
3. Для работы импорта из Excel нужен драйвер Microsoft Access Database версии 12 или 15. Если он не установлен на Вашем компьютере, во время импорта ФинГрад покажет сообщение об ошибке:
В этом случае скачайте драйвер, установите его и повторите импорт.
4. При повторном проведении импорта из того же источника данных ФинГрад не импортирует уже импортированные значения (загружаются только данные, добавленные после первого импорта). Таким образом ФинГрад автоматически предотвращает дублирование уже внесенных в базу данных значений.
23.7 Импорт справочников в пакетном режиме
ФинГрад может выполнять импорт справочников и свойств счетов не только с помощью инструмента Импорт справочников, но и в пакетном режиме - из командной строки. Так же, как он умеет выполнять импорт проводок из баз данных 1С или SQL-баз данных. Это позволяет автоматически, по заданному расписанию, осуществлять синхронизацию справочников ФинГрада со справочниками 1С, других бухгалтерских программ или иных учётных программ.
В одном задании (в файле с перечнем источников импорта) для запуска импорта в пакетном режиме можно указывать "вперемешку" источники данных для импорта из проводок базы данных 1С (см. главу 18. Импорт в ФинГрад из 1С), для импорта из регистров базы данных 1С (см. главу 19. Импорт данных из регистров 1С), для импорта из SQL баз данных и Microsoft Excel (см. главу 20. Импорт из произвольных баз данных, XML-файлов и Microsoft Excel), для импорта справочников аналитик и свойств счетов.