Перейти к публикации

API effectivity


Рекомендованные сообщения

Нужно проставить применяемость на статус на ITK. Есть функция WSOM_status_remove_effectivity() по удалению применяемости. Не могу найти по добавлению..

Ссылка на сообщение
Поделиться на других сайтах


Для установки эфективитей  на голый статус необходимо

1. Эфективити сначала создать WSOM_effectivity_create_empty

2. Сохранить статус и созданую эфективити с помощью AOM_save

3. Ввести в применимость то что нам надо, например для ввода дат в применимость использовать WSOM_eff_set_date_range или WSOM_eff_set_dates

4. Сохранить статус и созданую эфективити с помощью AOM_save

5. Перекреститься 3 раза и плюнуть через плечо

Ссылка на сообщение
Поделиться на других сайтах

Для установки эфективитей  на голый статус необходимо

1. Эфективити сначала создать WSOM_effectivity_create_empty

2. Сохранить статус и созданую эфективити с помощью AOM_save

3. Ввести в применимость то что нам надо, например для ввода дат в применимость использовать WSOM_eff_set_date_range или WSOM_eff_set_dates

4. Сохранить статус и созданую эфективити с помощью AOM_save

5. Перекреститься 3 раза и плюнуть через плечо

Спасибо за ответ. Сама применяемость уже есть. Разделяемая, создана вручную. Статус на объекте уже висит. То есть мне нужно "навесить" готовую применяемость на готовый статус. В Вашей последовательности я не вижу, где к статусу добавляется применяемость.

Ссылка на сообщение
Поделиться на других сайтах

остался еще вопрос по применяемости. Нужно на джаве создать применяемость на статус. есть функция

TcEffectivityService.createReleaseStatusEffectivity(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8).

У меня в джава-доке ее нет. Кто-то может сказать, какие ей нужно передавать параметры?

Ссылка на сообщение
Поделиться на других сайтах

применяемость на статус,на яве:





TCComponentItem end_item = null;
TCComponentEffectivity effectivity = null;
	                 
TCComponentEffectivityType eff_type = (TCComponentEffectivityType)session.getTypeComponent("Effectivity");

	                  
rel_status.lock();
	                  
TCComponentEffectivity effectivities[] = rel_status.getEffectivities();
	                  
    if (effectivities.length > 0)
    {
             effectivity = effectivities[0];

             end_item = effectivity.askEndItem();
             if (eff_type.isProtected(rel_status, effectivity) == true)
                    eff_type.setProtection(rel_status, effectivity, false);

             eff_type.removeFromReleaseStatus(rel_status, effectivity);

              eff_type.createFromUnits(rel_status, end_item, unit_range);
              eff_type.setProtection(rel_status,rel_status.getEffectivities()[0], true);

                rel_status.save();
                rel_status.unlock();
     }
     else if(effectivities.length == 0)
     {
        TCComponentItemType item_type = (TCComponentItemType)session.getTypeComponent("Item");
        TCComponentItem the_end_item = (TCComponentItem)item_type.find("end_item");

        eff_type.createFromUnits(rel_status, the_end_item, unit_range);
        eff_type.setProtection(rel_status,rel_status.getEffectivities()[0], true);

        rel_status.save();
        rel_status.unlock();
     }

применяемость ITK:

 

WSOM_effectivity_create(release_status_tag,end_item,&effectivity);

AOM_save(effectivity);
AOM_unlock(effectivity);

AOM_lock(release_status_tag);
AOM_lock(effectivity);

WSOM_eff_set_unit_range(release_status_tag,effectivity,"10-50",false);

AOM_save(effectivity);
AOM_save(release_status_tag);
AOM_unlock(effectivity);
AOM_unlock(release_status_tag);
 

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

Спасибо за такой развернутый ответ.

Но на itk Вы всё-таки создаете применяемость. Таким образом всё получается, но меня интересует использование разделяемой применяемости, т.е. один раз когда-то ее создали ручками, а потом навешиваем на статус уже готовую применяемость.

Ссылка на сообщение
Поделиться на других сайтах
  • 7 лет спустя...

Вопрос по ITK,

 

для того чтобы создать применяемость пользуюсь

WSOM_effectivity_create(release_status_tag,end_item,&effectivity);

как получить end_item

на сколько я понимаю

WSOM_eff_ask_end_item - считать существующий

WSOM_eff_set_end_item здесь уже нужно иметь  end_item

на данный момент сделал следующим образом, 

ITK__convert_uid_to_tag("R6ed8jVA4ChQJC", &endItem);

указал UID определенного конечного объекта

все получилось

не хотелось бы на вход подавать UID обработчика или прямо в код писать UID

 

 

 

 

 

Изменено пользователем nbg
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...