- JuridicalINN(10) ИНН Организации
- TabNum(OrganicNumber)(10) Табельный номер сотрудника
- Empl_Name(100) ФИН сотрудника полностью
- Department(OrganizationUnit)(100) подразделение
- Title(100) должность
- DateBegin(10) далее поля по потребности
- DisMissed(10)
- BirthDate(10)
- Status(10)
- Summa(20)
Чистая SQL-база для хранения данных готова… Её можно будет читать из других программ, например, для синхронизации данных…
Осталось заполнить её актуальными данными сотрудников…
Открываем нашу базу 1с:ЗУП 2.5 (все базы по очереди, если их много).
Запускаем предлагаемую обработку. После открытия обработки появляется окно с вопросом про необходимость отладки (отвечаем = выбрать организацию).
И настраиваем форму, где прописываем имя сервера и имя только что созданной базы (а также имя пользователя и пароль) для хранения актуальных данных сотрудников всех необходимых организаций.
Также можно прописать адреса эл.почты для рассылки уведомлений о выгрузке.
Для тестирования жмём кнопки на форме, соответствующие этапам обработки:
Проверка = подключение к базе
Заполнить = заполнить данные для визуального контроля в таблицу на форме
Выгрузить = очистить в базе данные по Организации (по совпадению ИНН) и заполнить свежими данными
Отправить уведомление = отправить по эл. почте письмо о результатах выгрузки
Если работа обработки устраивает, то сохраняем настройки стандартной кнопкой сохранения настроек.
С этими настройками далее и будет работать автоматически запускаемый сеанс в 1с:ЗУП.
Запуск сеанса можно организовать через Планировщик заданий («C:Program Files1cv828.2.19.80in1cv8.exe»)
с параметрами (ENTERPRISE /S»ИмяСервераИмяБазы» /N»ИмяПользователя1С» /P»Пароль1С» /Execute «E:Обработки1С82ВыгрузкаСотровИзЗУП_82.epf»).
В автоматическом режиме, когда сеанс запускается по расписанию, после открытия обработки появляется окно с вопросом про необходимость отладки.
Если не последует реакции на вопрос (20 сек), то производится выгрузка данных по сотрудникам (по актуальным организациям),
рассылка отчёта и закрытие обработки и сеанса (вручную можно кнопками повторить эти же операции).
В процедуре ПроверкаНажатие() записана строка коннекта к SQL-базе, которую при необходимости можно поправить:
(0), Может еще отдельную базу для хранения отработанного времени в разрезе его видов создать?
В каких таких случаях?
(1) TMV, у нас на предприятии из актуальной базы сотрудников синхронизируется информация для интернет-портала, адресной книги, торговых баз на Аксапте, бухгалтерских баз… да мало ли где могут понадобиться актуальные данные о сотрудниках…
Я могу ошибаться, но искать местонахождение данных чтением из базы ЗУП — весьма заморочно… Тогда как средствами 1С легко выгрузить значения нужных реквизитов по Сотруднику или ФизЛицу… А внешнее подключение к базе ЗУП ради получения табельного номера сотрудника — слишком затратное по времени мероприятие… ИМХО…
(1) TMV,
Добавлю — у нас несколько баз ЗУП, в каждой от 2-х до 5-ти организаций…
Поэтому потребность в общем хранилище данных о сотрудниках всех организаций — очевидное удобство…
В этом случае вопрос получения данных о сотрудниках — есть простое чтение из SQL-базы нужных нам данных с отбором по ИНН нужной организации (или с отбором по ИНН + ФИО, для печати Авансового отчёта из 1С:БП, например)…