smp_check_purchased_item

08/20/2012 14:50 OyunPozitifRappelz#1
[Only registered and activated users can see links. Click Here To Register...]



Please help! :(
08/20/2012 14:55 Arthas2012#2
Quote:
Originally Posted by OyunPozitifRappelz View Post
[Only registered and activated users can see links. Click Here To Register...]



Please help! :(
Enjoy :)

HTML Code:
USE [Telecaster]
GO
/****** Object:  StoredProcedure [dbo].[smp_check_purchased_item]    Script Date: 8/6/2012 7:03:59 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[smp_check_purchased_item]

@IN_ACCOUNT_ID INT,
@IN_SID INT,
@OUT_TOTAL_ITEM_COUNT INT OUTPUT,	/* Total Item Count */
@OUT_NEW_ITEM_COUNT INT OUTPUT,		/* New Item Count (AKA New presents received)*/
@OUT_PREMIUM_TICKET INT OUTPUT,		/* Premium Ticket Flag - 0 = No Pass*/
@OUT_PREMIUM_REST_TIME INT OUTPUT,	/* HV Pass Time Remaining */
@OUT_STAMINA_REGEN_TIME INT OUTPUT	/* Stam Regen Time (Stam Bonus) */

AS
SET NOCOUNT ON

SET @OUT_NEW_ITEM_COUNT = 10 
SET @OUT_STAMINA_REGEN_TIME = 20 

SET @OUT_PREMIUM_TICKET = 0
SET @OUT_PREMIUM_REST_TIME = 0

SELECT @OUT_PREMIUM_TICKET = COUNT(*) from PaidItem WITH (NOLOCK) where taken_account_id = @IN_ACCOUNT_ID and item_code = 910000 and valid_time > GETDATE()

IF @OUT_PREMIUM_TICKET > 0
BEGIN

/* Extend the Pass on first login after it is purchased to grant the user to full time on the pass based on the first login */
UPDATE PaidItem set valid_time = DATEADD(s, DATEDIFF(s, bought_time, GETDATE()), valid_time), taken_time = GETDATE() where taken_account_id = @IN_ACCOUNT_ID AND item_code = 910000 AND taken_time IS NULL

/** Combine passes by invalidating older passes and adding the combined extra time onto the most recently purchased pass **/
DECLARE @VALID_PASS_COUNT INT
SET @VALID_PASS_COUNT = 0

DECLARE @COMBINED_TIME INT
SET @COMBINED_TIME = 0

DECLARE @NEWEST_PASS INT
SET @NEWEST_PASS = -1

-- Check for more than one pass in Item Box.  If there are combine them into one pass.
SELECT @VALID_PASS_COUNT = COUNT(*) FROM PaidItem WHERE taken_account_id = @IN_ACCOUNT_ID AND item_code = 910000 AND valid_time > GETDATE()

IF @VALID_PASS_COUNT > 1
	BEGIN
		-- Get the combined time of all active passes
		SELECT @COMBINED_TIME = SUM(DATEDIFF(s, GETDATE(), valid_time)) from PaidItem where taken_account_id = @IN_ACCOUNT_ID AND item_code = 910000 AND valid_time > GETDATE()
		
		-- Select the most recent pass
		SELECT TOP (1) @NEWEST_PASS = sid from PaidItem where taken_account_id = @IN_ACCOUNT_ID AND item_code = 910000 AND valid_time > GETDATE() ORDER BY bought_time DESC
		
		-- Invalidate all but the most recent pass
		SET ROWCOUNT 1
		WHILE 1=1
		BEGIN
			UPDATE PaidItem set valid_time = GETDATE(), rest_item_count=0 WHERE sid IN ( SELECT TOP 1 sid FROM PaidItem WITH (NOLOCK) WHERE taken_account_id = @IN_ACCOUNT_ID AND item_code = 910000 AND valid_time > GETDATE() AND sid <> @NEWEST_PASS )
			IF @@ROWCOUNT = 0 BREAK
		END
		SET ROWCOUNT 0

		-- Extend the most recent pass by the Combined time - the current time
		UPDATE PaidItem set valid_time = DATEADD(s, @COMBINED_TIME, GETDATE()), rest_item_count=0 WHERE taken_account_id = @IN_ACCOUNT_ID AND item_code = 910000 AND valid_time > GETDATE()AND sid = @NEWEST_PASS
	END
-- end combine passes
	
SELECT @OUT_PREMIUM_REST_TIME = MAX(DATEDIFF(s, GETDATE(), valid_time)) from PaidItem WITH (NOLOCK) where taken_account_id = @IN_ACCOUNT_ID and item_code = 910000 and valid_time > GETDATE()

SELECT @OUT_TOTAL_ITEM_COUNT = COUNT(*) from PaidItem WITH (NOLOCK) where taken_account_id = @IN_ACCOUNT_ID and rest_item_count > 0;
SELECT @OUT_NEW_ITEM_COUNT = COUNT(*) from PaidItem WITH (NOLOCK) where taken_account_id = @IN_ACCOUNT_ID and rest_item_count > 0 and confirmed = 0;

END

RETURN @@ERROR



GO
08/20/2012 19:24 mongreldogg#3
^^
Msg 208, Level 16, State 6, Procedure smp_check_purchased_item, Line 3
Invalid object name 'dbo.smp_check_purchased_item'.

tell plz what is it=)
08/20/2012 19:38 Arthas2012#4
Quote:
Originally Posted by mongreldogg View Post
^^
Msg 208, Level 16, State 6, Procedure smp_check_purchased_item, Line 3
Invalid object name 'dbo.smp_check_purchased_item'.

tell plz what is it=)
umh.. it should work, try to delete the already one you have and be sure it's Telecaster the name of the database (if not change it in the script).
08/20/2012 19:48 gruce#5
edit it -_-
08/20/2012 21:06 mongreldogg#6
Quote:
Originally Posted by Arthas2012 View Post
umh.. it should work, try to delete the already one you have and be sure it's Telecaster the name of the database (if not change it in the script).
db name is Telecaster=)
i'm not so noob=)
and I haven't this object in my DB. And so I have created it thanks=)
Mystical xD
08/20/2012 21:47 gruce#7
Lol @@
08/21/2012 10:28 mongreldogg#8
But have another problem now.

Could not find stored procedure 'dbo.smp_raed_purchase_item_list'
(DB COM ERROR in GS)
08/21/2012 11:38 Arthas2012#9
Quote:
Originally Posted by mongreldogg View Post
But have another problem now.

Could not find stored procedure 'dbo.smp_raed_purchase_item_list'
(DB COM ERROR in GS)
I edited my post, now it works.
08/21/2012 11:43 mongreldogg#10
Quote:
Originally Posted by Arthas2012 View Post
I edited my post, now it works.
Thanks but it doesn't helped me with new error =(
08/21/2012 11:50 Arthas2012#11
Quote:
Originally Posted by mongreldogg View Post
But have another problem now.

Could not find stored procedure 'dbo.smp_raed_purchase_item_list'
(DB COM ERROR in GS)
Quote:
Originally Posted by mongreldogg View Post
Thanks but it doesn't helped me with new error =(
Which error? o_O
08/21/2012 11:57 mongreldogg#12
Quote:
Originally Posted by Arthas2012 View Post
Which error? o_O
The first you quoted is an error that appears in GS when I open cash shop bag.
Not this: smp_check_purchased_item
But this: smp_read_purchase_item_list
08/21/2012 12:03 Arthas2012#13
Quote:
Originally Posted by mongreldogg View Post
The first you quoted is an error that appears in GS when I open cash shop bag.
Not this: smp_check_purchased_item
But this: smp_read_purchase_item_list
come on, today i'm generous :rolleyes:

HTML Code:
USE [Telecaster]
GO
/****** Object:  StoredProcedure [dbo].[smp_read_purchased_item_list]    Script Date: 8/6/2012 7:04:00 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[smp_read_purchased_item_list]

@IN_ACCOUNT_ID          INT
 
AS
SET NOCOUNT ON

-- ¾ئہجإغ ب®ہخ ؟©؛خ¸¦ ¼¼ئأ
UPDATE dbo.PaidItem set confirmed = 1, confirmed_time = GETDATE() WHERE taken_account_id = @IN_ACCOUNT_ID and confirmed = 0;

SELECT  sid,                          -- ID
        account_id,            -- ±¸¸إار °èء¤ ID
        avatar_id,             -- ±¸¸إار ؤ³¸¯ ID        ( -1 ہد°و؟ىب¨اا؟،¼*±¸¸إار°حہس)
        avatar_name,           -- ±¸¸إار ؤ³¸¯ ہج¸§        ( -1 ہد°و؟ىب¨اا؟،¼*±¸¸إار°حہس)
        server_name,                      -- ±¸¸إار ¼*¹ِ ہج¸§
        item_code,             -- ¾ئہجإغؤعµه
        item_count,            -- ±¸¸إار ¾ئہجإغ°¹¼ِ
        rest_item_count,                  -- ³²ہ؛ ¾ئہجإغ °¹¼ِ
        bought_time,           -- ±¸¸إ½أ°£
        valid_time             -- ہ¯ب؟½أ°£( ء¦ار¾ّہ»°و؟ى-12-31 )
               
        FROM dbo.PaidItem WITH (NOLOCK) WHERE taken_account_id = @IN_ACCOUNT_ID and rest_item_count > 0 
        -- The below shows items after they have been taken
        --or sid in ( select sid from dbo.PaidItem WITH(NOLOCK) WHERE taken_account_id =@IN_ACCOUNT_ID and rest_item_count = 0)

RETURN @@ERROR



GO
Delete it before use it (if you already have)


Arthas
08/21/2012 12:28 mongreldogg#14
Quote:
Originally Posted by Arthas2012 View Post
come on, today i'm generous :rolleyes:

HTML Code:
USE [Telecaster]
GO
/****** Object:  StoredProcedure [dbo].[smp_read_purchased_item_list]    Script Date: 8/6/2012 7:04:00 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[smp_read_purchased_item_list]

@IN_ACCOUNT_ID          INT
 
AS
SET NOCOUNT ON

-- ¾ئہجإغ ب®ہخ ؟©؛خ¸¦ ¼¼ئأ
UPDATE dbo.PaidItem set confirmed = 1, confirmed_time = GETDATE() WHERE taken_account_id = @IN_ACCOUNT_ID and confirmed = 0;

SELECT  sid,                          -- ID
        account_id,            -- ±¸¸إار °èء¤ ID
        avatar_id,             -- ±¸¸إار ؤ³¸¯ ID        ( -1 ہد°و؟ىب¨اا؟،¼*±¸¸إار°حہس)
        avatar_name,           -- ±¸¸إار ؤ³¸¯ ہج¸§        ( -1 ہد°و؟ىب¨اا؟،¼*±¸¸إار°حہس)
        server_name,                      -- ±¸¸إار ¼*¹ِ ہج¸§
        item_code,             -- ¾ئہجإغؤعµه
        item_count,            -- ±¸¸إار ¾ئہجإغ°¹¼ِ
        rest_item_count,                  -- ³²ہ؛ ¾ئہجإغ °¹¼ِ
        bought_time,           -- ±¸¸إ½أ°£
        valid_time             -- ہ¯ب؟½أ°£( ء¦ار¾ّہ»°و؟ى-12-31 )
               
        FROM dbo.PaidItem WITH (NOLOCK) WHERE taken_account_id = @IN_ACCOUNT_ID and rest_item_count > 0 
        -- The below shows items after they have been taken
        --or sid in ( select sid from dbo.PaidItem WITH(NOLOCK) WHERE taken_account_id =@IN_ACCOUNT_ID and rest_item_count = 0)

RETURN @@ERROR



GO
Delete it before use it (if you already have)


Arthas
works. thanks man)

Quote:
Originally Posted by Arthas2012 View Post
come on, today i'm generous :rolleyes:

[/html]

Delete it before use it (if you already have)


Arthas
Oh no! Not again!
smp_takeout_commercial_item

=(((
Can you give me fix?)
Yeah i know i know I'm noob but.. Please=)
08/21/2012 12:52 Arthas2012#15
Quote:
Originally Posted by mongreldogg View Post
works. thanks man)



Oh no! Not again!
smp_takeout_commercial_item

=(((
Can you give me fix?)
Yeah i know i know I'm noob but.. Please=)
BTW, in download center there are smp fixes dude... [Only registered and activated users can see links. Click Here To Register...]

and these smp it's really easy to fix..