main() { int db, begno, endno; cycle(db) { puts(0,0, "Processing record " + str(docno(db))); if (len(db->BEGINDOCNO) > 0) { begno = FindNum(db->BEGINDOCNO); if (len(db->ENDDOCNO) > 0) endno = FindNum(db->ENDDOCNO); else endno = begno; NUM_PAGES = endno - begno + 1; } } } FindNum(text string) { char textnum[60], i; textnum = string; /* Loop backwards */ for (i = len(textnum) - 1; i >= 0; i = i - 1) if (isdigit(textnum[i]) == 0) break; i = i + 1; if (i >= 0) textnum = substr(textnum, i+1); else textnum = string; if (len(textnum) > 9) textnum = substr(textnum, len(textnum) - 8, 9); return(num(textnum)); }