الموقع العربي الاول للعبة Silkroad Online

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الاسئلة و الاستفسارات لعمل السيرفرات الخاصة (https://silkroad4arab.com/vb/forumdisplay.php?f=226)
-   -   Proplem at academy (https://silkroad4arab.com/vb/showthread.php?t=612857)

Blizzard 08-03-2017 01:48 AM

Proplem at academy
 
انا عندى زابط الوقت و كل حاجه بس مش رادى يعمل ريفرش كل 12 ساعه زاى مانا ظبطه و لما بعمل ريستارت لى السيرفر الناس الى طلعت اكونتات مش راديه تظهر
انا مش عارف العيب فى ايه دلوقتى ياريت حد يحللى المشكله دى

Dev.Klito 08-03-2017 11:14 AM

رد: Proplem at academy
 
اعمل دى و شوف

كود PHP:

USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_TRAINING_CAMP_UPDATEHONORRANK]    Script Date: 3/8/2017 11:13:21 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER PROCEDURE 
[dbo].[_TRAINING_CAMP_UPDATEHONORRANK]
AS
    
SET NOCOUNT ON

    
-- أ€أڈ´أœ ·©أ…· أ…×أ€أŒآ؛أ*أ€» ¼¼أ†أƒأ‡أ‘´أ™.
    DECLARE @
Ranking    INT
    SET 
@Ranking 1

    
DECLARE @CampID    INT
    
DECLARE @Rank    TINYINT

BEGIN TRANSACTION

    
DECLARE RankCursor CURSOR FAST_FORWARD FOR
    
SELECT TOP 50 [IDFROM _TrainingCamp WITH (NOLOCK)
    
WHERE EvaluationPoint >= 10
    ORDER BY EvaluationPoint DESC
LatestEvaluationDate ASC

    
-- أ€أڈ´أœ أ€üأƒ¼ ·©أ…·أ€» ¾أ¸أ€½أ€¸·أژ أ‡¥½أƒأ‡أڈأ€أڑ.
    
UPDATE _TrainingCamp SET Rank 5 WHERE Rank <> 5
    
IF (@@ERROR <> 0)
    
BEGIN
        ROLLBACK TRANSACTION

        DEALLOCATE RankCursor
        
RETURN -1
    END

    
-- ·©أ…· أ…×أ€أŒآ؛أ*µµ أƒأٹ±âأˆ*أ‡أڈأ€أڑ.
    
UPDATE _TrainingCampHonorRank SET CampID nullRank null
    
IF (@@ERROR <> 0)
    
BEGIN
        ROLLBACK TRANSACTION

        DEALLOCATE RankCursor
        
RETURN -1
    END

    OPEN RankCursor
    FETCH NEXT FROM RankCursor INTO 
@CampID
    
WHILE @@FETCH_STATUS 0
    BEGIN
        
IF @Ranking <= 5
        BEGIN
            SET 
@Rank 1
        END
        
ELSE IF @Ranking <= 15
        BEGIN
            SET 
@Rank 2
        END
        
ELSE IF @Ranking <= 30
        BEGIN
            SET 
@Rank 3
        END
        
ELSE
        
BEGIN
            SET 
@Rank 4
        END

        UPDATE _TrainingCamp SET Rank 
= @Rank WHERE [ID] = @CampID    
        
IF (@@ERROR <> OR @@ROWCOUNT 0)
        
BEGIN
            ROLLBACK TRANSACTION
            CLOSE RankCursor
            DEALLOCATE RankCursor

            
RETURN -2
        END
        UPDATE _TrainingCampHonorRank SET CampID 
= @CampIDRank = @Rank WHERE Ranking = @Ranking    
        
IF (@@ERROR <> OR @@ROWCOUNT 0)
        
BEGIN
            ROLLBACK TRANSACTION
            CLOSE RankCursor
            DEALLOCATE RankCursor

            
RETURN -3
        END 
        
        SET 
@Ranking = @Ranking 1

        FETCH NEXT FROM RankCursor INTO 
@CampID
    END

    CLOSE RankCursor
    DEALLOCATE RankCursor

    
-- ¸¶أپأ¶¸·أ€¸·أژ °»½أ…أ‡أ‘ ³¯أ‚¥¸¦ أ€û¾îآ؛¸أ€أڑ!!!
    IF 
EXISTS (SELECT LastUpdateDate FROM _TrainingCampHonorRankUpdateDate)
    
BEGIN
        UPDATE _TrainingCampHonorRankUpdateDate SET LastUpdateDate 
GETDATE()
    
END
    
ELSE
    
BEGIN
        INSERT INTO _TrainingCampHonorRankUpdateDate VALUES 
(GETDATE())
    
END

    
IF (@@ERROR <> OR @@ROWCOUNT 0)
    
BEGIN
        ROLLBACK TRANSACTION
        
RETURN -4
    END

COMMIT TRANSACTION

    SET NOCOUNT OFF

    
RETURN 


Dev.Klito 10-03-2017 03:29 AM

رد: Proplem at academy
 
##


الساعة الآن 01:04 AM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.