Дозагрузка кадровых документов в ЗУП 3.1 из ЗУП 2.5 в интерактивном режиме (загрузка в документы списком)

11.09.18

Интеграция - Перенос данных 1C

При переходе с ЗУП 2.5 на ЗУП 3.1, иногда по тем или иным причинам требуется ручной перенос кадровых документов за период. Это помощник ручного создания кадровых документов в ЗУП 3.1, который пытается по максимуму заполнить открываемую форму данными из ЗУП 2.5 (через COM-соединение), попутно создает сотрудников и физлиц, если их нет. Основано на публикации rilmir https://infostart.ru/public/793479/ , которое было местами переписано заново, почищено, отлажено, и все равно там еще есть что переделать и оптимизировать, и которое в свою очередь было когда то чьим-то еще творением, видимо для более глобальных целей.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Дозагрузка кадровых документов в ЗУП 3.1 из ЗУП 2.5 в интерактивном режиме, версия 2.1
.epf 81,33Kb ver:2.1
192
192 Скачать (1 SM) Купить за 1 850 руб.

Это помощник ручного создания кадровых документов в ЗУП 3.1, который пытается по максимум заполнить открываемую форму данными из ЗУП 2.5 (через COM-соединение), попутно создает сотрудников и физлиц, если их нет.
Основано на публикации rilmir //infostart.ru/public/793479/

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

Протестирована на Зарплата и управление персоналом КОРП, редакция 3.1 (3.1.6.54)  и Зарплата и управление персоналом КОРП, редакция 2.5 (2.5.133.1) .
Должно работать и на не КОРП версиях.

Некоторые рекомендации и замечания:

- Если в базах используется РЛС, то пользователь 3.1 с РЛС, использующий данную обработку, например кадровик из филиала, должен подключаться к базе 2.5 под аналогичным кадровиком филиала с таким же ограничениями на просмотр документов и сотрудников (у последнего должна быть в правах включена галочка Внешнее соединение). Т.е. не прописывать подключение под администратором в филиалах :)

- Перед переносом документов желательно должно быть заведено Штатное расписание. Подразделения, должности, графики не переносятся этой обработкой. Физлица и Сотрудники создаются, причем при переносе документа любого типа, но нужно все равно проверить перенесенные данные. Например, перенос адреса хоть и улучшен, но номер квартиры так и не открывается в полях адресного классификатора.

- Можно использовать теперь отбор переносимого по виду документов (флажки).

- Тип документа 3.1, в который будет переносится документ 2.5 и который заполняется автоматически при нажатии на кнопку "Прочитать", можно отредактировать вручную, если вы считаете, что должен быть например КадровоеПеремещениеСписком, а не ИзменениеГрафикаСписком.

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

- Теперь можно переносить отпуска, не только в документ Отпуск, но и помимо ОтпускаСотрудников в ОтпускБезСохраненияОплаты и ОтпускБезСохраненияОплатыСотрудников. Без сохранения оплаты определяется в запросе по документам следующим образом (максимум по всей табличной части РаботникиОрганизации документа в ЗУП 2.5)

|МАКСИМУМ(ВЫБОР КОГДА ОтпускаОрганизацийРаботникиОрганизации.ПричинаОтсутствия = ЗНАЧЕНИЕ(Перечисление.ПричиныОтсутствияНаРаботеВОрганизации.ОтпускБезСохраненияЗарплаты) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК ЭтоОтпускБезСохраненияЗарплаты,

- Хоть и были использованы некоторые процедуры формы при изменении тех или иных реквизитов. Но в кадровом переводе списком, возможно нужно иногда заходить в строку по сотруднику, в открывшемся окне (там все перенесено) включать выключать какую-нибудь галочку, чтобы при возврате в строке появлялась запись типа "изменен график работы" и т.п.

- Есть возможность переноса нетиповых добавленных в конфигураторе дополнительных реквизитов (например, флажков) из 2.5 в типовой механизм Дополнительных реквизитов, заводимых в режиме Предприятия в 3.1. Оставлено в обработке закомментированным для примера, подробнее описано здесь //infostart.ru/public/901654/ 

- Мне требовались только кадровые Приемы (списками), Перемещения (списками) и Увольнения (без списков), все остальное тоже переделано для загрузки в документы списками и работает, но оно меньше тестировались. Увольнение списком сделано только базово, без начислений (у одиночного Увольнения расчет начислений в 3.1 был сделан еще предыдущим автором) Заполнение больничного прежнее, без начислений, исправлена выдаваемая ранее ошибка при прочтении: "{ВнешняяОбработка.РаботаСКадрами_из_ЗУП25.МодульОбъекта(1270)}: Значение не является значением объектного типа (Пустая) Если НС.Ссылка.Пустая() И НЕ НС.Сотрудник.Пустая() Тогда" 

- В моей рабочей базе коды начислений в 2.5 и 3.1 унифицированы и в целом совпадают. Для типовой оставлен такой вариант с кодами начислений для приема и перемещений:

//Не будем переносить районный коэффициент
Если СокрЛП(КодНачисления) = "00070" ИЛИ СокрЛП(ОснНачисление.ВидРасчета.Description) = "Районный коэффициент" Тогда
  Продолжить;
КонецЕсли;

//добавить нужные доплаты при приеме при необходимости
Если СокрЛП(ОснНачисление.ВидРасчета.Description) = "Месячная премия" Тогда
  КодНачисления = "ПРЕМП";
ИначеЕсли СокрЛП(КодНачисления) = "00001" Тогда
  КодНачисления = "ОКЛ";
ИначеЕсли СокрЛП(КодНачисления) = "00002" Тогда
  КодНачисления = "ОКЛЧС";
ИначеЕсли СокрЛП(КодНачисления) = "00003" Тогда
  КодНачисления = "ТРФЧС";
КонецЕсли;
				
СтруктураНачисленийСотрудника.Вставить("ОснНачисление" + СокрЛП(а), ПланыВидовРасчета.Начисления.НайтиПоКоду(КодНачисления));

и такой поиск для отпусков, командировок и больничных:

//начисления ищем по кодам для типовой, учебный и дополнительный ежегодный - попытка найти по имени, нужно поправить на наименование или код в базе
ПричинаОтсутствияТам = БазаТам.String(РаботникОрганизации.ПричинаОтсутствия);
Если ПричинаОтсутствияТам = "Отпуск ежегодный" Тогда
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпуска" + СокрЛП(к), Справочники.ВидыОтпусков.Основной);
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпускаНачисление" + СокрЛП(к), ПланыВидовРасчета.Начисления.НайтиПоКоду("ОТ")); //Отпуск основной
ИначеЕсли ПричинаОтсутствияТам = "Отпуск учебный" Тогда
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпуска" + СокрЛП(к), Справочники.ВидыОтпусков.ОтпускУчебный);
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпускаНачисление" + СокрЛП(к), ПланыВидовРасчета.Начисления.НайтиПоНаименованию("Учебный отпуск")); //Учебный отпуск 
ИначеЕсли ПричинаОтсутствияТам = "Отпуск учебный неоплачиваемый" Тогда
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпуска" + СокрЛП(к), Справочники.ВидыОтпусков.ОтпускБезОплатыУчебный);
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпускаНачисление" + СокрЛП(к), ПланыВидовРасчета.Начисления.НайтиПоКоду("ОТПУД")); //Дополнительный учебный отпуск без оплаты
ИначеЕсли ПричинаОтсутствияТам = "Отпуск без сохранения заработной платы" Тогда
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпуска" + СокрЛП(к), Справочники.ВидыОтпусков.ОтпускБезОплатыПоТКРФ);
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпускаНачисление" + СокрЛП(к), ПланыВидовРасчета.Начисления.НайтиПоКоду("ОТПДО")); //Отпуск за свой счет
Иначе
  РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидОтпуска" + СокрЛП(к), Справочники.ВидыОтпусков.ПустаяСсылка());
КонецЕсли;
//для типовой
РеквизитыДокумента25.Вставить("РаботникиОрганизацииВидРасчетаНачисление" + СокрЛП(к), ПланыВидовРасчета.Начисления.НайтиПоКоду("КОМНД")); //Командировка
//для типовой по коду
РеквизитыДокумента25.Вставить("ВидРасчета", ПланыВидовРасчета.Начисления.НайтиПоКоду("БЛН")); //Больничный
РеквизитыДокумента25.Вставить("ВидРасчетаЗаСчетРаботодателя", ПланыВидовРасчета.Начисления.НайтиПоКоду("БЛРДТ")); //Оплата больничного листа за счет работодателя
	
РеквизитыДокумента25.Вставить("ДоплачиватьДоПолногоСреднегоЗаработка", ТекДокументТам.ДоплачиватьДоПолногоСреднегоЗаработка);
//попытка найти по наименованию, поправить на наименование из рабочей базы
РеквизитыДокумента25.Вставить("ВидРасчетаДоплаты", ПланыВидовРасчета.Начисления.НайтиПоНаименованию("Доплата до среднего заработка")); //Доплата до среднего заработка

Нужно поменять на свое, если требуется.

 

Отличия от версии 1.1 rilmir ( //infostart.ru/public/793479/ )

взято из своих же комментариев, описанные замечания исправлены.

- пришлось полностью переписать прочтение доков в таблицу, ибо все множилось зачем-то по одному и тому же документу, лишние реквизиты в запросе...
- сделаны маленькие полезняшки с отбором по типу загружаемого, с визуальным просмотром таб номеров сотрудников до и после (чтоб можно было визуально понять, например, найден точно он или он-совместитель), добавлено отображение списка сотрудников в документе 2.5 для информации. отображение комментария документов.
- полностью переписаны процедуры заполнения реквизитов документов в структуры для загрузки, с учетом того, что они могут потом использоваться для загрузки в документы списком. в том числе и начисления записываются не для одного, а всех сотрудников с возможностью потом найти чье именно.
- сделана загрузка в документы-списки, в том числе с попыткой определять, когда данные подходят для ИзменениеГрафикаСписком, ОтпускБезСохраненияОплаты и ОтпускБезСохраненияОплатыСотрудников, написана загрузка для них.
- подкорректировано дозаполнение формы в документах по одному сотруднику, типа расчета итогового ФОТ в Приеме на работу после загрузки начислений
- добавлено перенос действий Установить, Отменить и т.п. для начислений в Кадровых перемещениях, ибо переносилось все независимо от источника с предопределенным действием Установить.
- исправлены "Объект не найден" на СтрНайти(СокрЛП(НС.Ссылка),"Объект не")>0 Тогда,
именно так СокрЛП обрезает не найденную ссылку
- исправлена ошибка во всех процедурах ПолучитьРеквизиты...() :
        1. для сотрудников стояла ГУИД_Организация
        2. не надо продолжать сотрудников искать по наименованию, если код, т.е. табельный номер у них уже не равен. если такой найдется, то это он же совместитель или уволенный ранее

ГУИД_Сотрудник = БазаТам.String(РаботникОрганизации.Сотрудник.УникальныйИдентификатор());
Если СокрЛП(ГУИД_Организация) <> "00000000-0000-0000-0000-000000000000" Тогда // ПустаяСсылка
  Сотрудник = Справочники.Сотрудники.ПолучитьСсылку(Новый УникальныйИдентификатор(ГУИД_Сотрудник));
  Если СтрНайти(СокрЛП(Сотрудник), "Объект не") Тогда
    Сотрудник = Справочники.Сотрудники.НайтиПоКоду(СокрП(РаботникОрганизации.Сотрудник.Code));
    //не надо так, это другой сотрудник - он же уже уволенный или совместитель
    //Если НЕ ЗначениеЗаполнено(Сотрудник) Тогда
    // Сотрудник = Справочники.Сотрудники.НайтиПоНаименованию(СокрЛП(РаботникОрганизации.Сотрудник.Description));
    //КонецЕсли; 
  КонецЕсли;
Иначе
  Сотрудник = Справочники.Сотрудники.ПустаяСсылка();
КонецЕсли;

- сделан поиск физлица в первую очередь по ИНН

- ошибка в загрузке физ лиц, если физлицо не военнообязанное, то ВДЗКом.ОтношениеКВоинскомуУчету - пустая ссылка в базе 2.5 и индекс по ней получить нельзя, вылетает на этой строке:

ОтношениеКВоинскомуУчетуТам = СокрЛП(БазаТам.String(ВДЗКом.ОтношениеКВоинскомуУчету));
Ном = "";
Ном = БазаТам.Перечисления.ОтношениеКВоинскомуУчету.Индекс(ВДЗКом.ОтношениеКВоинскомуУчету);

- не нужно создавать физлицо по умолчанию вместе с сотрудником, если сотрудник не найден, часто оно есть, хоть и с другим GUID и вот его как-то стоит поискать по наименованию еще дополнительно. а так дубли плодятся в базе, а по внутренним совместителям с разными физлицами потом еще и НДФЛ не соберете, если не проверите и оставите как загрузилось

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

- добавлен перенос Группы доступа физлица (очень важно для тех кто работает в филиалах с ограничением на просмотр физлиц), заполнение регистра сведений ФИО физлиц последними сведениями.

- при приеме и перемещении в начислениях районный коэффициент не нужно тянуть в табличную часть 3.1 из 2.5

- исправлена ошибка при прочтении больничного: "{ВнешняяОбработка.РаботаСКадрами_из_ЗУП25.МодульОбъекта(1270)}: Значение не является значением объектного типа (Пустая)
Если НС.Ссылка.Пустая() И НЕ НС.Сотрудник.Пустая() Тогда"

- добавлен перенос номера и даты трудового договора  при Приеме на работу

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

Переход ЗУП 2.5 ЗУП 3.1 перенос данных перенос документов перенос физлиц интерактивное заполнение формы COM-соединение

См. также

SALE! 10%

Перенос данных 1C Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

55778 50200 руб.

04.08.2015    167081    338    278    

376

SALE! 15%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

26280 руб.

12.06.2017    142207    802    297    

423

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.236.x) и БП 3.0 (3.0.164.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    24335    172    51    

131

Зарплата Регламентированный учет и отчетность Кадровый учет Обновление 1С Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Зарплата и Управление Персоналом 2.5 Бухгалтерский учет Налоговый учет Управленческий учет Акцизы ЕНВД ЕСН Земельный налог ИП, ПБОЮЛ, КФХ Налог на имущество Налог на прибыль НДС НДФЛ ФОМС, ЕФС Транспортный налог УСН ПСН (патентная система налогообложения) Платные (руб)

Обновления для конфигураций: КА 1.1; ЗУП 2.5; БУХ 2.0; КА 1.1 Комплексная автоматизация торговли алкогольной продукцией; КА 1.1 Комплексный учет сельскохозяйственного предприятия

27900 руб.

01.04.2020    147695    651    362    

236

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.19.x).

35000 руб.

23.07.2020    51878    229    71    

187

SALE! 10%

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

48278 43450 руб.

25.02.2015    171422    304    257    

381

SALE! 10%

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

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 47800 руб.

03.12.2020    36855    95    66    

92

Перенос данных 1C Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ ФОМС, ЕФС Платные (руб)

Обработки для быстрого перехода с конфигураций «КАМИН:Расчет заработной платы 3.0», «КАМИН:Зарплата для бизнеса 4.0» и «КАМИН:Зарплата 5.0» на конфигурацию «Зарплата и управление персоналом» версии 3.1.

12000 руб.

25.09.2016    81011    315    250    

267
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. васисубатор 68 13.09.18 17:02 Сейчас в теме
Полезная вещь в наше смутное время переносов. Только физлиц я обычно ищу в первую очередь по СНИЛС - ИНН не у всех есть
2. bugtester 605 14.09.18 04:13 Сейчас в теме
(1) Работаете с ортодоктально религиозными людьми?)
В наше смутное время пенсионных реформ, скоро и СНИЛС может стать ненужным
3. васисубатор 68 14.09.18 12:47 Сейчас в теме
Его дают уже детям, используют для авторизации на госуслугах, ... в отличие от бесовского ИНН :)
4. nia72 27.11.18 17:01 Сейчас в теме
Так и не понял - обработка работоспособная?
5. bugtester 605 28.11.18 04:15 Сейчас в теме
(4) работоспособная, но не без огрехов. допилить там тоже есть что. но поменьше, чем в изначальной ссылке
6. nia72 28.11.18 08:17 Сейчас в теме
Да, очень даже работоспособная. за что автору большой респект и уважуха! Допилил в части поступлений. А именно - корректный ввод вида занятости для создаваемого сотрудника в документах приема, по документу ПриемНаРаботуСписком изменил расшифровку и отображение ставки, чтобы не заходить в каждую строку и не перекнопывать ФОТ или количество ставок. Остальное надеюсь сегодня доделать и приспособить для массовой загрузки документов по каждому сотруднику в хронологии кадровых движений.
7. FReIM 9 12.12.18 12:28 Сейчас в теме
Добрый день.
Есть ли обновление обработки под версию ЗУПа 3.1.8.185? Платформу используем 8.3.13.1644.
8. bugtester 605 13.12.18 04:37 Сейчас в теме
(7) нет, использовалась единично, нужды на последующих релизах не было.
вы нашли что-то, что на 3.1.8.185 перестало работать?
9. vin_lucy 5 13.12.18 06:28 Сейчас в теме
На 3.1.8.185 - Приемы на работу, отпуска - работает. (другое пока не проверяли).
Очень облегчает жизнь. Спасибо.
10. FReIM 9 13.12.18 10:40 Сейчас в теме
(8) Приём, перевод, увольнение, отпуск, отпуск без сохранения, больничный загрузились
При создании командировки появилась ошибка на картинке.

ЗУП КОРП 3.1.8.185. Платформа 8.3.13.1644. Все документы, которые к загрузке, типовые.
Прикрепленные файлы:
11. snogl 31.01.19 10:59 Сейчас в теме
Добрый день! Подскажите...
Необходимо выгрузить все из ЗУП (базовая), редакция 2.5 (2.5.130.2) в ЗУП (базовая), редакция 3.1 (3.1.8.246).
Данная обработка для этой цели подойдет ?
14. bugtester 605 27.06.19 05:01 Сейчас в теме
(11) не проверял, но шанс есть, в любом случае можно взять за основу для правки кода под себя
12. victor_k 95 21.06.19 07:37 Сейчас в теме
как то сложно

ГУИД_Сотрудник = БазаТам.String(РаботникОрганизации.Сотрудник.УникальныйИдентификатор());
Если СокрЛП(ГУИД_Организация) <> "00000000-0000-0000-0000-000000000000" Тогда // ПустаяСсылка

должно сработать

РаботникОрганизации.Сотрудник.Пустая()
или
БазаТам.ЗначениеЗаполнено(РаботникОрганизации.Сотрудник)
13. bugtester 605 27.06.19 04:57 Сейчас в теме
(12) это оставленный код из изначальной публикации rilmir.
"Основано на публикации rilmir https://infostart.ru/public/793479/ , которое было местами переписано заново, почищено, отлажено, и все равно там еще есть что переделать и оптимизировать"
Не помню почему оставлен, возможно потому что действительно не срабатывало Пустая() или ЗначениеЗаполнено(), возможно потому что этот мелкий блок кода работает - пусть работает
15. Tanis 23.12.19 13:40 Сейчас в теме
Добрый день!

Скачал обработку, пытаюсь протестить для запуска в боевой.
Но первая ошибка

?(ЗначениеЗаполнено(НС.Сотрудник), НС.Сотрудник.Код, "") --- НС.Сотрудник идет как строка и кода там естественно нет....

Или здесь прикреплена более старая версия обработки? (без изменений)

Спасибо!
16. bugtester 605 24.12.19 04:59 Сейчас в теме
(15)
?(ЗначениеЗаполнено(НС.Сотрудник), НС.Сотрудник.Код, "")


Добрый день!
Нет, прикреплена не старая обработка. Код в этом случае рабочий.

Попробовал открыть на последних релизах и нажать Прочитать например Приемы на работу - ошибки не было.


Колонка Сотрудник табличной части ТаблицаДокументовЗУП25 (НС - строка этой ТЧ) имеет составной тип: СправочникСсылка.Сотрудники, Строка.
Из запроса поле Сотрудник заполнятся либо ссылкой на сотрудника, либо пустой строкой "" - если по каким-то причинам сотрудник не взялся из 2.5 (почти невозможный случай, может если база битая, не знаю), либо строкой "Список сотрудников" - если документ будет переходить в ПриемНаРаботуСписком:

|	ВЫБОР 
		|		КОГДА ВТДанные.КоличествоСотрудников > 1 
		|			ТОГДА ""Список сотрудников""
		|		ИНАЧЕ ЕстьNULL(ВТДанные.Сотрудник, """")
		|	КОНЕЦ КАК Сотрудник,


Если Сотрудник = "Список сотрудников", то код выше ?(ЗначениеЗаполнено(НС.Сотрудник), НС.Сотрудник.Код, "") не будет выполняться по условию куска кода ниже, соответственно ошибку не вызовет.
Если маловероятный случай Сотрудник = "", то код выше ?(ЗначениеЗаполнено(НС.Сотрудник), НС.Сотрудник.Код, "") также не должен переходить к ветке НС.Сотрудник.Код.
Выясняйте, что у вас в Сотруднике находится.


Если ВыборкаДокументШапка.Сотрудник = "Список сотрудников" Тогда
		    НС.Сотрудник = ВыборкаДокументШапка.Сотрудник;
			НС.Сотрудник25 = ВыборкаДокументШапка.КраткийСоставДокумента;
		Иначе
			НС.Сотрудник = ВыборкаДокументШапка.Сотрудник.Description;
			ГУИД_Сотрудник = БазаТам.String(ВыборкаДокументШапка.Сотрудник.УникальныйИдентификатор());
			Если СокрЛП(ГУИД_Сотрудник) <> "00000000-0000-0000-0000-000000000000" Тогда // ПустаяСсылка
				НС.Сотрудник = Справочники.Сотрудники.ПолучитьСсылку(Новый УникальныйИдентификатор(ГУИД_Сотрудник));
				Если СтрНайти(СокрЛП(НС.Сотрудник),"Объект не")>0 Тогда
					НС.Сотрудник = Справочники.Сотрудники.НайтиПоКоду(СокрП(ВыборкаДокументШапка.Сотрудник.Code));
					//Если НЕ ЗначениеЗаполнено(НС.Сотрудник) Тогда
					//    НС.Сотрудник = Справочники.Сотрудники.НайтиПоНаименованию(СокрЛП(ВыборкаДокументШапка.Сотрудник.Description));
					//КонецЕсли; 
				КонецЕсли;
			Иначе
				НС.Сотрудник = Справочники.Сотрудники.ПустаяСсылка();
			КонецЕсли;
			
			НС.ТабНомер = ?(ЗначениеЗаполнено(НС.Сотрудник), НС.Сотрудник.Код, "");
			НС.Сотрудник25 = ВыборкаДокументШапка.Сотрудник.Description;
			НС.ТабНомер25 = ВыборкаДокументШапка.Сотрудник.Code;
		КонецЕсли;
Показать
17. Tanis 24.12.19 08:55 Сейчас в теме
(16) Доброе утро!

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

Сорян...
18. semenoof 19.11.20 01:46 Сейчас в теме
Не подскажите будет ли работать ваша обработка для переноса кадровых документов из КА1.1 в КА 2.4? Не могли бы вы поделиться этой обработкой со мной для проверки: 5438995собакаgmail.com. Спасибо.
19. semenoof 20.11.20 21:31 Сейчас в теме
Друзья, напишите плиз, будет ли работать данная обработка на актуальных версиях КА 1.1 и КА 2.4?
20. semenoof 20.11.20 23:50 Сейчас в теме
Эх...не нашел ответа. Скачал. Завтра буду тестировать на своей базе.
21. semenoof 23.11.20 13:17 Сейчас в теме
Пытаюсь соединиться с базой КА1.1 из КА 2.4 - сразу получил ошибку:
Метод объекта не обнаружен (Connect)
23. Никс 10 23.12.20 18:50 Сейчас в теме
(21) это com connector не установлен
22. semenoof 23.11.20 19:31 Сейчас в теме
Поставил обе базы на локальный компьтер:
-2147221005 (0х800401F3). Недопустимая строка с указанием класса.
Можно как-нибудь исправить эти ошибки?
На моих базах - не работает обработка.
Оставьте свое сообщение