Views [dbo].[usm_vw_request_status]
Properties
PropertyValue
ANSI Nulls OnYes
Quoted Identifier OnYes
Created11:14:49 AM Tuesday, March 30, 2010
Last Modified11:14:49 AM Tuesday, March 30, 2010
Columns
Name
request_status_id
request_id_char
request_id
subscription_detail_id_char
subscription_detail_id
status
status_date
user_id
status_old
submitted_date
approval_date
fulfilled_date
completed_date
fulfillment_cancelled_date
enter_current_state_at
approval_time
fulfilled_time
completed_time
duration_in_current_state
Permissions
TypeActionOwning Principal
GrantSelectusmgroup
SQL Script
create view usm_vw_request_status as
select
    request_status_id,
    cast(request_id as varchar) as request_id_char,
    request_id,
    cast(subscription_detail_id as varchar) as subscription_detail_id_char,
    subscription_detail_id,
    status,
    status_date,
    user_id,
    status_old,
    (select max(status_date) from usm_request_status Submitted where status = 200 and Submitted.subscription_detail_id is null and Submitted.request_id=urs.request_id) as submitted_date,
    (select max(status_date) from usm_request_status Approval where status = 999    and Approval.subscription_detail_id is null and Approval.request_id = urs.request_id) as approval_date,
    (select max(status_date) from usm_request_status Fulfilled where status = 2000 and Fulfilled.subscription_detail_id is null and Fulfilled.request_id=urs.request_id) as fulfilled_date,
    (select max(status_date) from usm_request_status Completed where status = 2 and Completed.subscription_detail_id is null and Completed.request_id=urs.request_id) as completed_date,
    (select max(status_date) from usm_request_status Fulfillment_Cancelled where    status = 1999 and Fulfillment_Cancelled.subscription_detail_id is null and Fulfillment_Cancelled.request_id=urs.request_id) as fulfillment_cancelled_date,
    (select max(status_date) from usm_request_status Current_State,usm_request ur where ur.request_id = Current_State.request_id and ur.status=Current_State.status and Current_State.status_old <> 4000 and Current_State.subscription_detail_id is null and Current_State.request_id=urs.request_id) as enter_current_state_at,
    Datediff(s,(select max(status_date) from usm_request_status Submitted where status = 200 and Submitted.subscription_detail_id is null and Submitted.request_id=urs.request_id),(select max(status_date) from usm_request_status Approval where status = 999 and Approval.subscription_detail_id is null and Approval.request_id = urs.request_id)) as approval_time,
    Datediff(s,(select max(status_date) from usm_request_status Approval where status = 999 and Approval.subscription_detail_id is null and Approval.request_id=urs.request_id),(select max(status_date) from usm_request_status Fulfilled where status = 2000 and Fulfilled.subscription_detail_id is null and Fulfilled.request_id = urs.request_id)) as fulfilled_time,
    Datediff(s,(select max(status_date) from usm_request_status Submitted where status = 200 and Submitted.subscription_detail_id is null and Submitted.request_id=urs.request_id),(select max(status_date) from usm_request_status Completed where status = 2 and Completed.subscription_detail_id is null and Completed.request_id = urs.request_id)) as completed_time,
    Datediff(d,(select max(status_date) from usm_request_status Current_State,usm_request ur where ur.request_id = Current_State.request_id and ur.status=Current_State.status and Current_State.status_old <> 4000 and Current_State.subscription_detail_id is null and Current_State.request_id=urs.request_id),getdate()) - ((dbo.usm_fn_get_request_holdtime((select distinct ur.request_id from usm_request_status Current_State,usm_request ur where ur.request_id = Current_State.request_id and ur.status=Current_State.status and Current_State.status_old <> 4000 and Current_State.subscription_detail_id is null and Current_State.request_id=urs.request_id),-1,(select distinct ur.status from usm_request_status Current_State,usm_request ur where ur.request_id = Current_State.request_id and ur.status=Current_State.status and Current_State.status_old <> 4000 and Current_State.subscription_detail_id is null and Current_State.request_id=urs.request_id)))/86400) as duration_in_current_state
from usm_request_status urs
GO
GRANT SELECT ON  [dbo].[usm_vw_request_status] TO [usmgroup]
GO
Uses