42 lines
814 B
SQL
42 lines
814 B
SQL
DELIMITER $$
|
|
CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`nextShelvingCodeMake`()
|
|
BEGIN
|
|
|
|
DECLARE newShelving VARCHAR(3);
|
|
DECLARE vCode VARCHAR(3);
|
|
|
|
SELECT MAX(code) INTO vCode
|
|
FROM vn.shelving
|
|
WHERE isPrinted = FALSE;
|
|
|
|
SET @a1 := ASCII(MID(vCode,1,1));
|
|
SET @a2 := ASCII(MID(vCode,2,1));
|
|
SET @a3 := ASCII(MID(vCode,3,1)) + 1;
|
|
|
|
IF @a3 > 90 THEN
|
|
|
|
SET @a3 = 65;
|
|
SET @a2 = @a2 + 1;
|
|
|
|
IF @a2 > 90 THEN
|
|
|
|
SET @a2 = 65;
|
|
SET @a1 = @a1 + 1;
|
|
|
|
IF @a1 > 90 THEN
|
|
|
|
SET @a1 = 65;
|
|
|
|
END IF;
|
|
|
|
END IF;
|
|
|
|
END IF;
|
|
|
|
SET newShelving = CHAR(@a1,@a2,@a3 USING utf8);
|
|
|
|
INSERT INTO vn.shelving(code) VALUES(newShelving);
|
|
|
|
END$$
|
|
DELIMITER ;
|