Show / Hide Table of Contents

Маппирование 001.007.org - Контрагент

Адаптер Идентификатор Роль
ERP ERP_01 Источник
EAM EAM_01 Приемник

Источник ERP

Сопоставление с сущностями ИС адаптера ERP

Основная Сущность ИС Отслеживать операции Полное наименование Отключено
True KATORG Создание;Изменение;Удаление Galaktika.ESB.Adapter.Atlantis.Api.KATORG False

KATORG

Сопоставление

Сопоставление свойств org в ERP_01.KATORG

Свойство приложения Тип свойства приложения Свойство модели Тип свойства модели Не используется
CODE Свойство code Свойство False
SHORTNAME Свойство name Свойство False
NAME Свойство full_name Свойство False
UNN Свойство inn Свойство False
OKPO Свойство okpo Свойство False
OGRN Свойство ogrn Свойство False
CORPOIN Свойство is_part_of_corp Свойство False

Условие публикации

  
// Если операция удаления
if (OperationType == Galaktika.ESB.Contract.TypeStorageOperation.Delete)
{
  LogService.Info("Публикация удаления (D---1): org");
  return true;
}

// Если операция создания или изменения

// Проверка на существование объекта
if (AppEntity == null)
{
  LogService.Error("Условие публикации (D---1): org => AppEntity == null");
  return false;
}

// Публикация
if ((AppEntity.CODE != null) && (AppEntity.CODE.Length > 0))
{
  LogService.Info("Публикация (D---1): org => NREC = {0}", AppEntity.NREC);
  return true;
}

После сопоставления

  
LogService.Info("После сопоставления (B): org");
 
// Сессия ESB
ISession Session = context.GetSession(true);

// Получение значения для атрибута «Организации группы»
var prms_avs = new Dictionary<string, object>();
prms_avs.Add("tableName", "KatOrg");
prms_avs.Add("nrec", AppEntity.NREC);
prms_avs.Add("attrName", "Организации группы");
prms_avs.Add("fieldName", "VComp");
prms_avs.Add("info", 0);

var org_gr_Nrec = restier.ExecuteOperation("GetAttrValue", prms_avs).Result.Cast<System.String>().FirstOrDefault();

if (!String.IsNullOrEmpty(org_gr_Nrec))
{
  var org_gr = restier.GetAppEntityByKey<Galaktika.ESB.Adapter.Atlantis.Api.SPKAU>(Session, org_gr_Nrec, true);
 
  if (org_gr != null)
  {
    var org_gr_mainEntityId = locator.GetMainEntityTypeId(typeof(#currentModelNS#.org_gr));
    var org_gr_appEntityId = locator.GetAppEntityTypeId(parameters.AdapterId, typeof(Galaktika.ESB.Adapter.Atlantis.Api.SPKAU));
    var org_gr_mainEntityKey = locator.GetMainEntityKey(org_gr_appEntityId, org_gr.NREC.ToString(), org_gr_mainEntityId);
 
    MainEntity.org_gr_id = org_gr_mainEntityKey;
  }
}

LogService.Info("После сопоставления (E): org");

Генерация мастер-ключа

  
LogService.Info("Генератор мастер-ключа (B): org => {0}", AppEntity.CODE);
  
bool res = true;

if (res)
{
  return AppEntity.CODE;
}

Приемник EAM

Сопоставление с сущностями ИС адаптера EAM

Основная Сущность ИС Отслеживать операции Полное наименование Отключено
True Контрагент Не задано PromAktiv.Core.CD.Module.Контрагент False

Контрагент

Сопоставление

Сопоставление свойств org в EAM_01.Контрагент

Свойство приложения Тип свойства приложения Свойство модели Тип свойства модели Не используется
ExternalID Свойство object_id Свойство False
Код Свойство code Свойство False
Наименование Свойство full_name Свойство False
TaxpayerIdentificationNumber Свойство inn Свойство False
IsPartOfCorporation Свойство is_part_of_corp Свойство False

После сопоставления

  
LogService.Info("После сопоставления (B): org");

// Установка статуса объекта
AppEntity.СтатусОбъекта = Xafari.BC.StatusTypes.Published;

LogService.Info("После сопоставления (E): org");
  • Improve this Doc
In This Article
Back to top Все права защищены (C) 1994-2022 ООО Топ Софт.