المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : طلب صغير اوى


King0fFire
09-03-2013, 01:51 AM
انا عندى ال Pet مفتوح فيه الخمس صفحات
عايز َQuery اخليه صفحه واحده

(مع العلم انى لما اجى انزل ال Pet بعد ما اشتريه اول مره ينزل صفحة واحدة بعد ما ارفعه و انزله تانى يبقى مفتوح الخمس صفحات)

Midget1337
09-03-2013, 02:03 AM
USE [SRO_VT_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewCOS] Script Date: 03/09/2013 01:00:40 ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER PROCEDURE [dbo].[_AddNewCOS]
@OwnerCharID int,
@RefObjID int,
@Level int,
@HP int,
@MP int,
@HGP int,
@KeeperNPC int,
@State int,
@InventorySize int,
@itemID int,
@PickItemConfig tinyint,
@RentEndTime smalldatetime
as

begin tran

declare @COS_ID int
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
-- pet_skill_item (أض¼±ب£)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

declare @MaxInventorySize tinyint
select @MaxInventorySize = InventorySize
from _RefObjCommon, _RefObjChar
where _RefObjCommon.ID = @RefObjID and _RefObjCommon.Link = _RefObjChar.ID

if( @@rowcount = 0 or @MaxInventorySize < @InventorySize )
begin
rollback tran
return -5
end

insert into _CharCOS values (@OwnerCharID, @RefObjID, @HP, @MP, @KeeperNPC, @State, NULL, @Level, 0, @HGP, @PickItemConfig, @RentEndTime)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
set @COS_ID = @@identity
if (@COS_ID = 0 OR @@error <> 0)
begin
rollback tran
return -1
end

--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
-- pet_skill_item (أض¼±ب£)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
if (@MaxInventorySize > 0)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
begin
declare @Slot int
set @Slot = 0
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
-- pet_skill_item (أض¼±ب£)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
while (@Slot < @MaxInventorySize)
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
--@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
begin
insert into _InvCOS values(@COS_ID, @Slot, 0)
if (@@error <> 0)
begin
-- ہخ؛¥إن¸® »‎¼؛ ½ائذ!
rollback tran
return -2
end

set @Slot = @Slot + 1
end
end

/* --´ُ ہج»َ ہج ؤأ·³؟،´آ µ¥ہجإح¸¦ ³ضءِ ¾ت´آ´ظ!
UPDATE _Char SET EngagedCOS = @COS_ID WHERE CharID = @OwnerCharID
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -3
END
*/
if( @itemID <> 0 )
begin
update _Items set Data = @COS_ID where ID64 = @itemID
if( @@error <> 0 or @@rowcount = 0 )
begin
rollback transaction
return -4
end
end

commit tran

return @COS_ID

BomBom
09-03-2013, 02:05 AM
مفتكرش ممكن تلاقى query زى كده