12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[PROCE_GetCustomerRecord]') AND type in (N'P', N'PC'))
- DROP PROCEDURE [dbo].[PROCE_GetCustomerRecord]
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[PROCE_GetCustomerRecord]
- (
- @AggregationCustomerFieldsStr varchar(4000) = '*',
- @GroupMembersAndCustomerFieldsStr varchar(4000) = '*',
- @OrderString varchar(2000),
- @WhereString varchar(2000) =N'',
- @PageSize int,
- @PageIndex int = 1 ,
- @TotalRecord int output
- )
- AS
- BEGIN
-
- Declare @AG_TableName nvarchar(2000);
- Declare @GM_TableName nvarchar(2000);
- set @AG_TableName='[tempTB_GroupByAggregationCustomer]'
-
- Declare @GM_SqlString nvarchar(4000);
- set @GM_SqlString='
- DECLARE @TotalCount int
- DECLARE @tabRecord TABLE
- (
- GP_CustomerGroupID NVARCHAR(50) NOT NULL
- )
- insert into @tabRecord exec [dbo].[PROCE_SQL2005PAGECHANGE]
- @TableName = '''+@AG_TableName+''',
- @ReFieldsStr = ''GP_CustomerGroupID'',
- @OrderString = '''+@OrderString+''',
- @WhereString = '''+Replace(@WhereString,'''','''''')+''',
- @PageSize = '+CONVERT(varchar(200), @PageSize)+',
- @PageIndex = '+CONVERT(varchar(200), @PageIndex)+',
- @TotalRecord = @TotalCount OUTPUT
- select '+@GroupMembersAndCustomerFieldsStr+'
- FROM [dbo].[View_CustomerGroupMembersAndErpCustomer]
- where GM_CustomerGroupID in(select [GP_CustomerGroupID] from @tabRecord)
- order by GM_CustomerGroupID asc, GM_ProtagonistCustomer desc, GM_Master desc'
- exec(@GM_SqlString)
- exec [dbo].[PROCE_SQL2005PAGECHANGE]
- @TableName = @AG_TableName,
- @ReFieldsStr = @AggregationCustomerFieldsStr,
- @OrderString = @OrderString,
- @WhereString = @WhereString,
- @PageSize = @PageSize,
- @PageIndex = @PageIndex,
- @TotalRecord = @TotalRecord OUTPUT
- END
- GO
|