Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
| Name | Data Type | Length | Description |
|---|---|---|---|
| @PARAMETER | xml | -1 |
SQL Script
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE procedure dbo.MG_MS_ITEM_FIND_ASSETS_LIST
@PARAMETER xml=''
---XencX---with encryption
as
SET NOCOUNT ON
declare @xStsnoheader varchar(2),
@xStsno varchar(2),
@xStsdes varchar(100)
set @xStsnoheader='05'
set @xStsno='00';
set @xStsdes='sukses'
declare @XmlSts xml
declare @raw xml
declare @findtext varchar(255),
@rows int
SELECT
@findtext=ltrim(rtrim(isnull(tempTable.item.value('findtext[1]', 'varchar(255)'),''))) ,
@rows=isnull(tempTable.item.value('rows[1]', 'int'),0)
FROM @PARAMETER.nodes('param/field') tempTable(item)
-- CHECK supp_code_old
DECLARE @SQLString nvarchar(2000);
DECLARE @ParmDefinition nvarchar(1000);
SET @findtext= replace(@findtext ,'[', '[[]')
SET @findtext= replace(@findtext ,'''', '''''')
SET @findtext= replace(@findtext ,'%','[%]')
SET @findtext= replace(@findtext ,'_','[_]')
SET @findtext= replace(@findtext ,'*','%')
declare @TOP varchar(100);
declare @xcari varchar(60)
declare @where varchar(1000)
--declare @tp_find_id_int tp_find_id_int
declare @tp_find_id_int table(
id bigint
, name varchar(max)
)
if @rows>0
begin
if (select count(*) from @tp_find_id_int)<@rows
begin
insert into @tp_find_id_int(id, name)
SELECT top (@rows-(select count(*) from @tp_find_id_int)) assets_list_id, assets_number
FROM vw_ms_assets_list
where (assets_number like @findtext + '%')
and len(isnull(assets_number,''))>0
and not exists (
select * from @tp_find_id_int as xfilter
where vw_ms_assets_list.assets_list_id=xfilter.id
)
order by assets_list_id desc, len(isnull(assets_list_id,''))
end
if (select count(*) from @tp_find_id_int)<@rows
begin
insert into @tp_find_id_int(id, name)
SELECT top (@rows-(select count(*) from @tp_find_id_int)) assets_list_id, assets_number
FROM vw_ms_assets_list
where (assets_number like @findtext + '%')
and len(isnull(assets_number,''))>0
and not exists (
select * from @tp_find_id_int as xfilter
where vw_ms_assets_list.assets_list_id=xfilter.id
)
order by assets_number asc, len(isnull(assets_number,''))
end
if (select count(*) from @tp_find_id_int)<@rows
begin
insert into @tp_find_id_int(id, name)
SELECT top (@rows-(select count(*) from @tp_find_id_int)) assets_list_id, assets_number
FROM vw_ms_assets_list
where (assets_list_id like '%' + @findtext + '%')
and len(isnull(assets_list_id,''))>0
and not exists (
select * from @tp_find_id_int as xfilter
where vw_ms_assets_list.assets_list_id=xfilter.id
)
order by assets_list_id desc, len(isnull(assets_list_id,''))
end
if (select count(*) from @tp_find_id_int)<@rows
begin
insert into @tp_find_id_int(id, name)
SELECT top (@rows-(select count(*) from @tp_find_id_int)) assets_list_id, assets_number
FROM vw_ms_assets_list
where (assets_number like '%' + @findtext + '%')
and len(isnull(assets_number,''))>0
and not exists (
select * from @tp_find_id_int as xfilter
where vw_ms_assets_list.assets_list_id=xfilter.id
)
order by assets_number asc, len(isnull(assets_number,''))
end
end
set @raw=(
select
id as rID ,
name as r1
from @tp_find_id_int
for xml path ('xrow'))
SET NOCOUNT OFF
f:
set @XmlSts=(select @xStsnoheader + @xStsno as 'no', @xStsdes as 'des' for xml path('sts'))
select CAST( (select @XmlSts,@raw for xml path ('result')
) as XML) as dt
GO
GO
CREATE procedure dbo.MG_MS_ITEM_FIND_ASSETS_LIST
@PARAMETER xml=''
---XencX---with encryption
as
SET NOCOUNT ON
declare @xStsnoheader varchar(2),
@xStsno varchar(2),
@xStsdes varchar(100)
set @xStsnoheader='05'
set @xStsno='00';
set @xStsdes='sukses'
declare @XmlSts xml
declare @raw xml
declare @findtext varchar(255),
@rows int
SELECT
@findtext=ltrim(rtrim(isnull(tempTable.item.value('findtext[1]', 'varchar(255)'),''))) ,
@rows=isnull(tempTable.item.value('rows[1]', 'int'),0)
FROM @PARAMETER.nodes('param/field') tempTable(item)
-- CHECK supp_code_old
DECLARE @SQLString nvarchar(2000);
DECLARE @ParmDefinition nvarchar(1000);
SET @findtext= replace(@findtext ,'[', '[[]')
SET @findtext= replace(@findtext ,'''', '''''')
SET @findtext= replace(@findtext ,'%','[%]')
SET @findtext= replace(@findtext ,'_','[_]')
SET @findtext= replace(@findtext ,'*','%')
declare @TOP varchar(100);
declare @xcari varchar(60)
declare @where varchar(1000)
--declare @tp_find_id_int tp_find_id_int
declare @tp_find_id_int table(
id bigint
, name varchar(max)
)
if @rows>0
begin
if (select count(*) from @tp_find_id_int)<@rows
begin
insert into @tp_find_id_int(id, name)
SELECT top (@rows-(select count(*) from @tp_find_id_int)) assets_list_id, assets_number
FROM vw_ms_assets_list
where (assets_number like @findtext + '%')
and len(isnull(assets_number,''))>0
and not exists (
select * from @tp_find_id_int as xfilter
where vw_ms_assets_list.assets_list_id=xfilter.id
)
order by assets_list_id desc, len(isnull(assets_list_id,''))
end
if (select count(*) from @tp_find_id_int)<@rows
begin
insert into @tp_find_id_int(id, name)
SELECT top (@rows-(select count(*) from @tp_find_id_int)) assets_list_id, assets_number
FROM vw_ms_assets_list
where (assets_number like @findtext + '%')
and len(isnull(assets_number,''))>0
and not exists (
select * from @tp_find_id_int as xfilter
where vw_ms_assets_list.assets_list_id=xfilter.id
)
order by assets_number asc, len(isnull(assets_number,''))
end
if (select count(*) from @tp_find_id_int)<@rows
begin
insert into @tp_find_id_int(id, name)
SELECT top (@rows-(select count(*) from @tp_find_id_int)) assets_list_id, assets_number
FROM vw_ms_assets_list
where (assets_list_id like '%' + @findtext + '%')
and len(isnull(assets_list_id,''))>0
and not exists (
select * from @tp_find_id_int as xfilter
where vw_ms_assets_list.assets_list_id=xfilter.id
)
order by assets_list_id desc, len(isnull(assets_list_id,''))
end
if (select count(*) from @tp_find_id_int)<@rows
begin
insert into @tp_find_id_int(id, name)
SELECT top (@rows-(select count(*) from @tp_find_id_int)) assets_list_id, assets_number
FROM vw_ms_assets_list
where (assets_number like '%' + @findtext + '%')
and len(isnull(assets_number,''))>0
and not exists (
select * from @tp_find_id_int as xfilter
where vw_ms_assets_list.assets_list_id=xfilter.id
)
order by assets_number asc, len(isnull(assets_number,''))
end
end
set @raw=(
select
id as rID ,
name as r1
from @tp_find_id_int
for xml path ('xrow'))
SET NOCOUNT OFF
f:
set @XmlSts=(select @xStsnoheader + @xStsno as 'no', @xStsdes as 'des' for xml path('sts'))
select CAST( (select @XmlSts,@raw for xml path ('result')
) as XML) as dt
GO
Depends On
1Used By
No items found