Lotsia PLM: Форум по семейству систем PLM/PDM/TDM/ERP/Workflow

Для специалистов по внедрению систем, профессиональных администраторов и пользователей.
Текущее время: 19 ноя 2018, 21:40

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
СообщениеДобавлено: 01 фев 2010, 14:32 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 24 авг 2006, 08:06
Сообщения: 1646
Откуда: 55.745578,37.665825
Благодарил (а): 8 раз.
Поблагодарили: 3 раз.
Юрий, Андрей - не подскажите
нужно работать с системными таблицами Лоции через атрибутивные формы
2 вопроса
1й - есть объект сотрудник - у которого в атрибутах есть информация - отдел тел мыло и т.д. - есть таблица ABUser.empl_id где есть точно такая же информация. Выборки по этой таблице идут быстрее чем по атрибутам - но по атрибутам удобнее редактировать, для юзеров я запретил доступ к адресным книгам
Как через атрибутивную форму, используюя или дублирующие атрибуты или просто запросы в действии - менять данную таблицу ABUser.empl_id?
2й вопрос - часто возникает ситуация когда нужно изменить значение атрибута объекта - например там написано было первый раз КомПания и юзер видя такую ошибку - хочет исправить на Компания - но не тут то было - уникальность значений.... и приходиться админу лезть в значения атрибута и править вручную, а нехота
да и вообще за юзеров неохота работать, да и пускать их к интерфейсу Лоции тоже неохота
как это сделать красиво? в смысле никто не делал? если да - то как?
никто не решал подобные задачи через интуитивно понятное редактирование атрибутивных форм???

ps
с чтением вроде разобрался достаточно - настало время записи :wink: :wink: :wink:

_________________

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



Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 01 фев 2010, 16:13 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 24 авг 2006, 08:06
Сообщения: 1646
Откуда: 55.745578,37.665825
Благодарил (а): 8 раз.
Поблагодарили: 3 раз.
имеется в виду - может есть какие-то родные процедуры Лоции для Udate существующего значения или создания нового
по вопросу 1
Код:
update lsdbo.ABUser set phones='232' where empl_id=72
select * from lsdbo.ABUser
типа записать номер телефона сотруднику с id=72. Эт правильный синтаксис или что-то не учтено?
по вопросу 2 тоже не совсем ясно как изменить значение строкового атрибута вытаскиваемого запросом
Код:
SELECT Coalesce(vv1.value,'')+Coalesce(vv1.value1,'')
    FROM lsdbo.object_reference rw left join lsdbo.object_type tw on rw.type_id=tw.id left join
         lsdbo.attrib_value av1 on rw.id = av1.object_id and av1.attrib_id = 3000000000121 left join
         lsdbo.value_string vv1 on av1.value_id = vv1.id and av1.attrib_id = 3000000000121
  where  rw.type_id = tw.id and rw.id=100004487800000
ведь строковый атрибут состоит из 2х частей???

_________________

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



Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 01 фев 2010, 22:16 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 27 июл 2006, 22:17
Сообщения: 797
Откуда: Москва
Благодарил (а): 11 раз.
Поблагодарили: 12 раз.
Маньяк :)

_________________
"Лучше меньше, да лучше" (C)


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 03 фев 2010, 12:06 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 24 авг 2006, 08:06
Сообщения: 1646
Откуда: 55.745578,37.665825
Благодарил (а): 8 раз.
Поблагодарили: 3 раз.
кстати неплохо получилось с объектом сотрудник
вроде половины атрибутов у него нет - а они есть :wink: :wink: :wink: только в его адресной книге - доступной для форм отчетов действий и т.д. с привязкой через ID юзера :wink: фактически имеем 2 блока данных - физический адрес сотрудника на атрибутах и рабочий адрес юзера на адресной книге, ну там должности и отделы и еще кое что пересекаются, но это не важно - главное при редактировании инфа пишется и туда и сюда... типа вот так
сама процедура заполнения части адресной книги
Код:
ALTER procedure [LSDBO].[Ric_Set_UserAddrBook]
/*записать контактную информацию пользователя в адресную книгу*/
        (@id int,                  --ID пользователя БД
         @department varchar(100)='',    --Отдел 
         @state varchar(50)='',         --Должность 
         @note varchar(200)='',           --Направление 
         @phones varchar(200)='',         --Телефон 
         @email varchar(200)='',       --e-Mail
         @organization varchar(100)=''   --Филиал
         ) as
 Begin
  Begin tran p_upValue
   Update lsdbo.ABUser Set
     email=@email,
     phones=@phones, 
     state=@state, 
     department=@department, 
     note=@note,
     organization=@organization         
   Where empl_id=@id
   if @@Error <> 0 goto ErrorTrap               
   commit tran p_upValue
 return
ErrorTrap:
 rollback tran p_upValue
 return -1
End
отобразить на форме например мыло
Код:
f_execSQLSelect_3 ('select email from lsdbo.ABUser_view where empl_id='+string(abs(a100004060200000)),'','','',10)
прочитать из действия
Код:
email = Set ( f_ExecSQLSelect_2('select email from lsdbo.ABUser_view where empl_id='+string(ID),'','') )
сохранить из действия
Код:
tmp = Set ( 'exec lsdbo.RIC_Set_UserAddrBook '+string(abs(ID))+', '+ StDep+', '+ StDol+', '+ note+', '+ phone+', '+email +', '+filial )
tmp = Set ( f_ExecSQLSelect_3(tmp,'','','cols=decimal(18)',0) )


ps
но вопрос по строковому атрибуту еще актуален :wink: :wink:

_________________

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



Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


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

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB