====== pears.Base34 ======
Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.
===== Original SQL =====
COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."Base34" IS
{create function Base34
/* Application Maintained Function / Procedure - DO NOT EDIT*/
(in seed integer,in digits smallint)
returns char(20)
begin
declare rv char(20);
declare m integer;
declare sdigits char(34);
-- Where the code must be handled by humans, letters O and I can be confused with zero and one so these are left out by base34
set sdigits='0123456789ABCDEFGHJKLMNPQRSTUVWXYZ';
set rv='';
if((digits > 20) or(digits < 1)) then
set digits=20
end if;
while seed > 0 loop
set m=mod(seed,34);
set rv=substr(sdigits,m+1,1) || rv;
set seed=seed/34
end loop;
while length(rv) < digits loop
set rv='0' || rv
end loop;
return(rv)
end
}