Share Procedures và Job Ủy Thác Online

Admin

Lính đánh thuê
Staff member
Thấy nhiều người còn thắc mắc và chưa làm được cái ủy thác Online do NBB phải kích hoạt tại web. Nên mình mạo muội share cái này, chỉ là code bừa nếu có sai thì mong Pro chỉ bảo thêm.


Code này sẽ không cần kích hoạt và chỉ tính điểm khi ở trong các làng thôi các bạn nhé.




PHP:
Create PROCEDURE UyThacOnlineAsBeginDeclare@PointUyThac int,@SubUyThac varchar(50)SET @PointUyThac=5                -- So PointUyThac tangSET @SubUyThac='Sub-1'        --Ten Sub cho phep Uy ThacUPDATE CHARACTERSET Point_UyThac = Point_UyThac + @PointUyThacFROM MEMB_STAT JOIN AccountCharacter ON MEMB_STAT.ConnectStat = 1 and MEMB_STAT.ServerName LIKE @SubUyThac and MEMB_STAT.memb___id collate DATABASE_DEFAULT = AccountCharacter.Id collate DATABASE_DEFAULTJOIN Character ON AccountCharacter.GameIDC = Character.Name AND ((Character.MapNumber=0 AND Character.MapNumber=3) OR (Character.MapNumber=0 AND (Character.MapPosX>95 OR Character.MapPosX<175 OR Character.MapPosY>90 OR Character.MapPosY<165)) OR (Character.MapNumber=3 AND (Character.MapPosX>165 OR Character.MapPosX<205 OR Character.MapPosY>85 OR Character.MapPosY<130)))End
-- Script generated on 2/13/2014 7:26 PM-- By: ITFRIEND\Admin-- Server: (local)
BEGIN TRANSACTION              DECLARE @JobID BINARY(16)    DECLARE @ReturnCode INT      SELECT @ReturnCode = 0     IF (SELECT COUNT(*) FROM msdb.dbo.syscategories WHERE name = N'[Uncategorized (Local)]') < 1   EXECUTE msdb.dbo.sp_add_category @name = N'[Uncategorized (Local)]'
  -- Delete the job with the same name (if it exists)  SELECT @JobID = job_id       FROM   msdb.dbo.sysjobs      WHERE (name = N'UTONLINESWEB')         IF (@JobID IS NOT NULL)      BEGIN    -- Check if the job is a multi-server job    IF (EXISTS (SELECT  *               FROM    msdb.dbo.sysjobservers               WHERE   (job_id = @JobID) AND (server_id <> 0)))   BEGIN     -- There is, so abort the script     RAISERROR (N'Unable to import job ''UTONLINESWEB'' since there is already a multi-server job with this name.', 16, 1)     GOTO QuitWithRollback    END   ELSE     -- Delete the [local] job     EXECUTE msdb.dbo.sp_delete_job @job_name = N'UTONLINESWEB'     SELECT @JobID = NULL  END 
BEGIN 
  -- Add the job  EXECUTE @ReturnCode = msdb.dbo.sp_add_job @job_id = @JobID OUTPUT , @job_name = N'UTONLINESWEB', @owner_login_name = N'ITFRIEND\Admin', @description = N'No description available.', @category_name = N'[Uncategorized (Local)]', @enabled = 1, @notify_level_email = 0, @notify_level_page = 0, @notify_level_netsend = 0, @notify_level_eventlog = 2, @delete_level= 0  IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback 
  -- Add the job steps  EXECUTE @ReturnCode = msdb.dbo.sp_add_jobstep @job_id = @JobID, @step_id = 1, @step_name = N'query', @command = N'exec UyThacOnline', @database_name = N'MuOnline', @server = N'', @database_user_name = N'', @subsystem = N'TSQL', @cmdexec_success_code = 0, @flags = 0, @retry_attempts = 0, @retry_interval = 1, @output_file_name = N'', @on_success_step_id = 0, @on_success_action = 1, @on_fail_step_id = 0, @on_fail_action = 2  IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback   EXECUTE @ReturnCode = msdb.dbo.sp_update_job @job_id = @JobID, @start_step_id = 1 
  IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback 
  -- Add the job schedules  EXECUTE @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id = @JobID, @name = N'0h5''', @enabled = 1, @freq_type = 4, @active_start_date = 20140213, @active_start_time = 500, @freq_interval = 1, @freq_subday_type = 4, @freq_subday_interval = 5, @freq_relative_interval = 0, @freq_recurrence_factor = 0, @active_end_date = 99991231, @active_end_time = 235959  IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback 
  -- Add the Target Servers  EXECUTE @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @JobID, @server_name = N'(local)'   IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback 
ENDCOMMIT TRANSACTION          GOTO   EndSave              QuitWithRollback:  IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION EndSave: 

GO
 
Bên trên