Понимаю что в некотором роде это повтор уже существующей темы, но предлагаю вести разговор немного в другом ключе... "Не надо так уж прямо делиться скриптами". Смысл вот в чем, каждый кому не лень, скидывает сюда в виде списка решенные задачи с помощью SQL скриптов... в итоге имеем некий список, что у кого есть в той или иной форме... Далее если кого что заинтересовало может обратиться уже к конкретному человеку и вести с ним беседу...
А может данный список кого то просто натолкнет на идею решения своей задачи...
Своим скриптом для подсчета сумм по условиям я уже поделился... так что следующий ход за Вами господа....
SQL скрипты и решенные задачи....
- Alexey
- Активный участник
- Сообщения: 123
- Зарегистрирован: 21 окт 2005, 15:49
- Откуда: Белоруссия, Минск
- Контактная информация:
SQL скрипты и решенные задачи....
- А деньги?
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным
- Anderyt
- Активный участник
- Сообщения: 777
- Зарегистрирован: 15 июл 2004, 13:15
- Используемое ПО: Lotsia PDM PLUS
- Откуда: Тюмень
- Контактная информация:
ух ты... а давайте попробуем, на самом деле 
итак.
ЗАДАЧА:
в действии над объектами понять, есть ли запущенные работы по текущему объекту. На основе этого действие уже будет принимать решение, разрешать запускать какие либо работы по этому объекту или нет.
РЕШЕНИЕ:
получаем строку, содержащую названия работ, запущенных по текущему объекту, но пока незавершенных. при этом работы, которые находятся на последнем этапе (то есть процесс практически закончен - юзер только кнопку ОК не нажал) в эту строку не попадают. и затем уже стандартными функциями редактора действий
настраиваем логику работы.
SQL-запрос:
смысл переменной a_Object понятен, поясню остальные.
Var_P и Var_OBJ - строковые переменные, в которых записано 'P' и 'OBJ' соответственно
Var_map_state - строковая переменная, содержит 'B' (то есть "Не завершена"
Var_map_node_name - строковая переменная, содержит 'Окончание работы'
пришлось делать строковые переменные, так как я не смог быстро понять, как вставлять строку в текст запроса

итак.
ЗАДАЧА:
в действии над объектами понять, есть ли запущенные работы по текущему объекту. На основе этого действие уже будет принимать решение, разрешать запускать какие либо работы по этому объекту или нет.
РЕШЕНИЕ:
получаем строку, содержащую названия работ, запущенных по текущему объекту, но пока незавершенных. при этом работы, которые находятся на последнем этапе (то есть процесс практически закончен - юзер только кнопку ОК не нажал) в эту строку не попадают. и затем уже стандартными функциями редактора действий
Код: Выделить всё
GoTo ( if((var_temp_str not like '%внешнее согласование%'), 'Марка_next2', 'Марка_err2') )
или
GoTo ( if((var_temp_str not like '%окончательное согласование%'), 'Марка_next3', 'Марка_err3') )
SQL-запрос:
Код: Выделить всё
var_temp_str = Set ( f_ExecSQLSelect_2('
select maps.description
from
lsdbo.wf_maps_view maps
where
id in
( SELECT DISTINCT lsdbo.wf_mail_v.map_id
FROM
lsdbo.wf_attachments_view
, lsdbo.wf_mail_docs_v
, lsdbo.wf_mail_v
WHERE
lsdbo.wf_attachments_view.id = lsdbo.wf_mail_docs_v.attachment_id
and
lsdbo.wf_mail_docs_v.mail_id = lsdbo.wf_mail_v.id
and
lsdbo.wf_mail_v.map_id is not NULL
and
lsdbo.wf_attachments_view.app_id = ~'' + Var_P + '~'
and
lsdbo.wf_attachments_view.object_id = ~''+ Var_OBJ + '~'
and
lsdbo.wf_attachments_view.doc_id = ~''+string(a_Object)+'~')
and
maps.state = ~''+Var_map_state+'~'
and
maps.id not in
(select pos.map_id
from lsdbo.wf_map_cur_pos_v pos
, lsdbo.wf_map_nodes_view nodes
where pos.map_object_id = nodes.map_object_id
and
nodes.text =~''+var_map_node_name+ '~')',
'',''))
Var_P и Var_OBJ - строковые переменные, в которых записано 'P' и 'OBJ' соответственно
Var_map_state - строковая переменная, содержит 'B' (то есть "Не завершена"
Var_map_node_name - строковая переменная, содержит 'Окончание работы'
пришлось делать строковые переменные, так как я не смог быстро понять, как вставлять строку в текст запроса

лучше день потерять, потом за пять минут долететь!