Как разорвать все связи объекта в действии Party

Здесь обсуждаем систему TDM/PDM/Workflow Lotsia PDM PLUS (PartY PLUS).
Аватара пользователя
Александр
Активный участник
Сообщения: 1652
Зарегистрирован: 24 авг 2006, 08:06
Используемое ПО: Lotsia PDM PLUS
Откуда: 55.745578,37.665825

Как разорвать все связи объекта в действии Party

Сообщение Александр »

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

Может есть какой SQL запрос который быстро решает эту проблему?

Конечно я могу воспользоваться своей внутренней адресацией - пробежаться по объектам проверить и ликвидировать связь, но объекты могут быть разные (тип), их может быть много да и вообще лень все делать через Лоцию, хотелось бы что-то на уровне SQL
Допустим
- найти все связи через SQL
- в действии порвать их
- в действии или в SQL привязаться к корзине

Никто не автоматизировал это дело в действиях??

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный

Аватара пользователя
Alexey
Активный участник
Сообщения: 123
Зарегистрирован: 21 окт 2005, 15:49
Откуда: Белоруссия, Минск
Контактная информация:

Сообщение Alexey »

Александр, посмотри последнюю настройку Лоции для проектной организации, там вроде есть все что Вам нужно. Единственный нюанс, я пробовал и некоторые связи у меня не порвались... но это может и я перемудрил. А так там все как заказано и действия Лоции и привязка к корзине и даже столь любимый Вами SQL. Если не имеется такой настройки то я могу скинуть все действия... кстати там есть еще и более менее автоматизированная процедура очистки все той же корзины. Если не подойдет и придумается свой какой то метод то буду рад, если поделитесь.
- А деньги?
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным
Аватара пользователя
Старик Крупский
Активный участник
Сообщения: 803
Зарегистрирован: 27 июл 2006, 22:17
Откуда: Москва

Сообщение Старик Крупский »

В последней настройке ОРД вроде тоже что-то подобное есть
Анна Я.
Новый участник
Сообщения: 4
Зарегистрирован: 27 сен 2007, 12:01
Контактная информация:

Сообщение Анна Я. »

select *
from lsdbo.tree_link_view tl--или from lsdbo.tree_link tl
where
tl.parent_id=100000363400046--здесь пишется в действии переменная в формате ~''+ПЕРЕМЕННАЯ+'~'
or
tl.link_id=100000363400046--тоже самое. тип связи не указываю..., выбираю все. этот запрос не пробовала в действии.надеюсь, задачу правильно поняла


дальше пример из реального действия
шаги
1)
var_numbers = Set ( f_ExecSQLSelect_2('select obj.id from lsdbo.object_reference_view obj where obj.type_id=100000810500000 and exists (select * from lsdbo.attrib_value_view a join lsdbo.value_string_view v on v.id=a.value_id where obj.id=a.object_id and a.attrib_id=806602448400000 and v.value=~''+var_cypher+'~' ) ','',';') )
var_numbers = Set ( Var_numbers + ';' )
//проверяем дальше:нашлось что-то или нет
GoTo ( if(var_numbers=';','DS','8') )
2)//если есть, выделяем id 1 объекта (функция выбирает все одной строкой)
var_ID = Set ( number( mid (Var_numbers , 1,pos(Var_numbers , ';', 1)-1) ) )
var_numbers = Set ( mid (Var_numbers , pos(Var_numbers , ';', 1)+1, len(Var_numbers )) )
3) далее уже по id ищем объект и делаем с ним, что хотим.
4)следующий шаг цикла(GoTo('1)')) //Удачи
Анна Я.
Новый участник
Сообщения: 4
Зарегистрирован: 27 сен 2007, 12:01
Контактная информация:

Сообщение Анна Я. »

на 4) шаге GoTo('2)') :oops:
Аватара пользователя
Александр
Активный участник
Сообщения: 1652
Зарегистрирован: 24 авг 2006, 08:06
Используемое ПО: Lotsia PDM PLUS
Откуда: 55.745578,37.665825

Сообщение Александр »

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

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный

Аватара пользователя
Старик Крупский
Активный участник
Сообщения: 803
Зарегистрирован: 27 июл 2006, 22:17
Откуда: Москва

Сообщение Старик Крупский »

А ты уже делал заяву?
Аватара пользователя
Александр
Активный участник
Сообщения: 1652
Зарегистрирован: 24 авг 2006, 08:06
Используемое ПО: Lotsia PDM PLUS
Откуда: 55.745578,37.665825

Сообщение Александр »

делал, http://www.lplm.ru/phpBB2/viewtopic.php?t=296 но Лоция возражала что то на счет работы с общей подборкой, я правда не совсем понял их доводы, на мой взгляд все довольно прозрачно, есть подборки есть права а дальше все как обычно :wink:

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный

gali
Активный участник
Сообщения: 285
Зарегистрирован: 27 мар 2007, 07:43

Сообщение gali »

Я тоже дошла до корзины, и меня гложат (или гложут?) сомнения. Признаюсь, что настройки баз (типа ОРД) еще не исследовала на этот предмет.
Вопрос такой.
Объект один и тот же может находится в разных проектах у разных юзеров. Одному юзеру он стал не нужен, но не факт, что не нужен остальным. По идее, в этом случае нужно удалить только эту единственную связь. А в админском действии надо проверять наличие других связей. Если их нет, на удаление.

Но. Что если объект ДОЛЖЕН быть удален, независимо от наличия других связей, например, какой-то ошибочный?
Аватара пользователя
Disillusioned
Активный участник
Сообщения: 420
Зарегистрирован: 15 июл 2004, 15:12
Используемое ПО: Lotsia PDM PLUS
Откуда: Подольск
Контактная информация:

Сообщение Disillusioned »

В действии после удаления связи вызываем Update() и потом проверяем наличие родителей у удаленного объекта. Если их нет (родителей), в корзину его.
gali
Активный участник
Сообщения: 285
Зарегистрирован: 27 мар 2007, 07:43

Сообщение gali »

это понятно. Я немного о другом.

Как разрулить две вышеописанные ситуации?
Юзеру безразлично, он нажал "в корзину", дальше его не касается. Как мне в действии разобраться: надо ли убивать все связи и удалять объект напрочь, или удалить всего лишь удалить одну связь?

Например, такая гипотетическая ситуация. Пользователь создал документ, переслал его другому пользователю для совместной работы или использования. В какой-то момент одному из них документ стал не нужен, а другому нужен очень. Должна быть удалена одна единственная связь с родительским объектом у пользователя, который нажимает кнопку удаления. Остальные связи должны остаться.

Ситуация другая. Зарегистрировали входящее письмо. Оно попало в папки "входящая корреспонденция", "клиент_Вася", "договор №ХХХ" и пр. Выяснилось, что зарегистрировано оно ошибочно (например, повторно). Надо удалить. В этом случае должны быть удалены все связи и объект помещен в подборку на удаление.

Как мне в действии разобраться с этими двумя пограничными моментами?
Аватара пользователя
Александр
Активный участник
Сообщения: 1652
Зарегистрирован: 24 авг 2006, 08:06
Используемое ПО: Lotsia PDM PLUS
Откуда: 55.745578,37.665825

Сообщение Александр »

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

про вторую ситуацию ничего сказать не могу - мы не используем внутренний messenger

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный

gali
Активный участник
Сообщения: 285
Зарегистрирован: 27 мар 2007, 07:43

Сообщение gali »

ну, Александр, это ты сейчас сказал! пусть сам думает !!!
Я ломаю голову, как объяснить юзеру, какой выбрать способ сохранения объекта в своих папках: ссылку, перемещение или копирования - и не нахожу решения, а ты предлагаешь отдать им на откуп вопрос удаления.
Хотя... в регламентированных процедурах я могу задавать некий параметр, по которому все связи будут удаляться без вопросов. а в остальных наверное ничего больше не остается, как спрашивать...

спасибо[/quote]
Аватара пользователя
Александр
Активный участник
Сообщения: 1652
Зарегистрирован: 24 авг 2006, 08:06
Используемое ПО: Lotsia PDM PLUS
Откуда: 55.745578,37.665825

Сообщение Александр »

gali не ломай голову - спрашивай - но спрашивай так чтобы юзеру было приятно - например как у нас - мы рисуем красивую форму с вопросом - пускаем музыку - пока юзер размышляет - рисуем ему смайлики и т.д. вобщем и ему приятно и нам тоже неплохо - вот например что мы говорим когда не указан пол человека
Изображение
и музыку главное- саунд трек какой нибудь в тему :wink: :wink: :wink:

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный

gali
Активный участник
Сообщения: 285
Зарегистрирован: 27 мар 2007, 07:43

Сообщение gali »

классно!!! надо взять на вооружение. Жалко, у нас такой вольный стиль не пройдет (не тот контингент), но потихоньку, шаг за шагом можно растопить вечную мерзлоту.
да, и... не умею я делать такие красивые картинки :)
могу день пыхтеть над фомой, все прилизывать, выравнивать. Потом смотрю у юзера, а там! текст не помещается, цветовая гамма хоть стреляйся
:)
резюме: попробую спрашивать
Ответить