smarter rebarcoder
authorJason Etheridge <jason@esilibrary.com>
Mon, 23 Mar 2009 02:53:18 +0000 (02:53 +0000)
committerJason Etheridge <jason@esilibrary.com>
Mon, 23 Mar 2009 02:53:18 +0000 (02:53 +0000)
sql/base/base.sql

index 1bb2265..c7e5864 100644 (file)
@@ -185,8 +185,10 @@ CREATE OR REPLACE FUNCTION migration_tools.rebarcode (o TEXT, t BIGINT) RETURNS
     DECLARE
         n TEXT := o;
     BEGIN
-        IF o ~ E'^\\d+$' THEN
-            n = o::INT + t;
+        IF o ~ E'^\\d+$' AND o !~ E'^0' THEN
+            IF o::BIGINT < t THEN
+                n = o::BIGINT + t;
+            END IF;
         END IF;
 
         RETURN n;