AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX Blogs
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.06.2018, 18:11   #1  
Blog bot is offline
Blog bot
Участник
 
21,165 / 725 (67) +++++++
Регистрация: 28.10.2006
a33ik: Create new HCMWorker (Worker)
Источник: http://daxonline.org/1615-create-new...er-worker.html
==============

protected HcmWorker createWorker(){ DirPersonName dirPersonName; DirPerson dirPerson; HcmWorker newHcmWorker; CompanyInfo companyInfo; HcmPosition hcmPosition; HcmPositionDuration hcmPositionDuration; HcmPositionDetail hcmPositionDetail, fromHcmPositionDetail; FirstName firstName; LastName lastName; ValidFromDateTime startDate; ValidToDateTime endDate; HcmPersonnelNumberId workerId; workerId = 'Worker-01'; firstName = 'Worker First name'; firstName = 'Worker Last name'; startDate = DateTimeUtil::utcNow(); endDate = DateTimeUtil::applyTimeZoneOffset(DateTimeUtil::maxValue(), DateTimeUtil::getUserPreferredTimeZone()); ttsBegin; dirPersonName.FirstName = firstName; dirPersonName.LastName = lastName; companyInfo = CompanyInfo::find(); newHcmWorker = HcmWorker::findByPersonnelNumber(workerId, true); //Hire new Worker if Worker not found if(!newHcmWorker) { fromHcmPositionDetail = HcmPositionDetail::findByPosition(11111111);// default position details to creating a new worker // Create a position with position details and duration hcmPosition.clear(); hcmPosition.initValue(); hcmPosition.PositionId = NumberSeq::newGetNum(NumberSeqReference::findReference(extendedTypeNum(HcmPositionId)), true).num(); hcmPosition.insert(); buf2Buf(fromHcmPositionDetail, hcmPositionDetail); hcmPositionDetail.Position = hcmPosition.RecId; hcmPositionDetail.ValidFrom = startDate; hcmPositionDetail.ValidTo = DateTimeUtil::maxValue(); hcmPositionDetail.insert(); hcmPositionDuration.initValue(); hcmPositionDuration.Position = hcmPosition.RecId; hcmPositionDuration.ValidFrom = startDate; hcmPositionDuration.ValidTo = DateTimeUtil::maxValue(); hcmPositionDuration.insert(); newHcmWorker = HcmWorker::find(HcmWorkerTransition::newHireHcmWorker( dirPersonName, workerId, hcmPosition.RecId, startDate, endDate, startDate, endDate, companyInfo.RecId, HcmEmploymentType::Employee)); } // Updating an existing worker else { // Updating an existing worker DirPersonName if (newHcmWorker) { dirPersonName = DirPersonName::find(newHcmWorker.Person); if(dirPersonName.FirstName != firstName || dirPersonName.LastName != lastName) { dirPersonName.clear(); dirPersonName.FirstName = firstName; dirPersonName.LastName = lastName; dirPerson.initValue(); dirPerson.updateName(dirPersonName); if (dirPerson.validateWrite()) { dirPerson.insert(); dirPersonName.Person = dirPerson.RecId; dirPersonName.ValidFrom = DateTimeUtil::minValue(); dirPersonName.ValidTo = DateTimeUtil::maxValue(); if (dirPersonName.validateWrite()) { dirPersonName.insert(); } } newHcmWorker.Person = dirPerson.RecId; if (newHcmWorker.validateWrite()) { newHcmWorker.update(); } } //Update worker assignment HcmWorkerTransition::newUpdateHcmEmployment( HcmEmployment::findByWorkerLegalEntity(newHcmWorker.RecId, companyInfo.RecId), startDate, endDate); } } ttsCommit;}

Источник: http://daxonline.org/1615-create-new...er-worker.html
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
saurav-nav: NAV 2018 - Lots of New Objects! Blog bot NAV: Blogs 0 04.12.2017 10:11
dynamics-coe: Mass create Worker-User relations in AX 2012 Blog bot DAX Blogs 0 29.06.2016 23:13
atinkerersnotebook: Walkthrough & Tutorial Summary Blog bot DAX Blogs 1 09.09.2013 09:11
a33ik: CRM 4.0 - Create new Organization failed with Exception: System.UnauthorizedAccessException: Access is denied Blog bot Dynamics CRM: Blogs 2 26.08.2011 11:07
wiki.dynamicsbook: Changes Made in Navision Attain 3.60 Blog bot Dynamics CRM: Blogs 0 02.09.2008 13:23
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 08:32.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.