Копирование сотрудников из ЗиК в Бухгалтерию



Подключается как внешняя печатная форма справочника "Сотрудники", соединяется с базой ЗиК через OLE, находит сотрудника по части ФИО и переносит выбранного сотрудника в базу Бухгалтерии.

У нас на предприятии до сих пор используется 1с Предприятие 7.7 конфигурации Зарплата и кадры и Бухгалтерия. Бухгалтерам захотелось копировать элементы справочника «Сотрудники» из Зарплаты и кадры в Бухгалтерию выборочно, при этом особо не заморачиваясь с поиском оного.

Конфигурацию менять было не желательно, поэтому я написал внешнюю обработку, которую подключал как внешнюю печатную форму в форму списка справочника «Сотрудники». 

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

В результате будет перенесен один сотрудник из ЗиК в Бухгалтерию, без особых усилий и изменений в конфигурации.

Проверено на Бухгалтерии 7.7.515 и ЗиК 7.7.296. Связь с базой ЗиК через OLE. Обе базы на SQL.  

9 Comments

  1. Арчибальд

    Оказывается, пол Сергея Безрукова — женский 😮

    Reply
  2. Denizzz

    😀 😀 😀

    Reply
  3. ApocalypseNTC

    Ну вот так базу у нас ведут кадры 🙂

    Reply
  4. Культурный

    Учитывая, что последний релиз ЗиК 297, а Бухгалтерии 515 проверялась обработка на Зик 296 и Бух 515?

    Reply
  5. ApocalypseNTC

    Действительно ошибка вышла. Исправил.

    Reply
  6. galkael

    У меня вылетела ошибка:

    СпрСотрудники.Подразделение = глЗначениеПоУмолчанию<<?>>(«ОсновноеПодразделение»);

    {D:20100608PNOVEXTFORMSПОИСКПОЗИК.ERT(129)}: Функция не обнаружена (глЗначениеПоУмолчанию)

    Релиз ЗиК 296

    Reply
  7. ApocalypseNTC

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

    В первых же строках кода:

    //Подключаемся к базе данных ЗиК

    V7 = СоздатьОбъект(«V77S.Application»);

    Пользователь = «ИмяПользователяЗиК»;

    Пароль = «ПарольПользователяЗиК»;

    Попытка

    Если V7.Initialize(V7.RMTrade, «/d» + СокрЛП(«ПутьДоБазыЗиК») + » /N» + СокрЛП(Пользователь) + » /P» + СокрЛП(Пароль), «NO_SPLASH_SHOW») = 0 Тогда

    Предупреждение(«Ошибка подключения»);

    Возврат;

    КонецЕсли;

    Исключение

    Сообщить(«Не удалось подключиться к базе данных зарплата и кадры. Обратитесь за помощью в службу технической поддержки или попробуйте еще раз.»);

    КонецПопытки;

    Отредактировано ApocalypseNTC 24.06.2010 08:10

    Reply
  8. galkael

    V7 = СоздатьОбъект(«V77S.Application»);

    {D:BO20100215B021202EXTFORMSПОИСКПОЗИК.ERT(6)}: Неудачная попытка создания объекта (V77S.Application)

    Reply
  9. mvd2

    очень нужная обработка, рекомендую

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *