DROP PROCEDURE IF EXISTS `CALCREFEREE`; delimiter ;; CREATE PROCEDURE `CALCREFEREE`(IN `PBONUSID` VARCHAR ( 50 ), OUT `PNEWBONUSID` VARCHAR ( 50 )) BEGIN DECLARE MUSERID, MBONUSID VARCHAR ( 50 ); DECLARE MUSERTYPE INT; /*SET MUSERID := PBONUSID; OUTER_LABEL : WHILE ( ISNULL( MBONUSID )) DO SELECT INTRODUCER_ID INTO MUSERID FROM AR_BS_BONUS_103_CALC_NET T WHERE T.USER_ID = MUSERID; IF ( MUSERID = 0 ) THEN SET PNEWBONUSID := NULL; LEAVE OUTER_LABEL; END IF; SELECT USER_TYPE INTO MUSERTYPE FROM AR_BS_BONUS_103_CALC_NET T WHERE T.USER_ID = MUSERID; IF ( MUSERTYPE >= 30 ) THEN SET PNEWBONUSID := MUSERID; LEAVE OUTER_LABEL; END IF; END WHILE;*/ SELECT INTRODUCER_ID30 INTO PNEWBONUSID FROM AR_BS_BONUS_103_CALC_NET WHERE USER_ID = PBONUSID; END ;;