/* search FDR database */ signal on syntax trace o cgi = 'FINDBROW'; vers = '1.2'; errto = 'STMK@VM.MARIST.EDU' e1 = time('R') cmdstat1 = fdrstats() /* vtime ttime reads writes sios */ 'REXX FDRHTTP' cgi vers collection = getvar('COLLECTION') CELLFORM = 'COLLECTION_NAME;100-JUNK;2-TITLE;255-', 'JUNK;2-DESCRIPTION;32767' /* CELLFORM = 'BOX;10-JUNK;2-TITLE;255-', 'STARTDAY;2-STARTMO;10-STARTYR;4-ENDDAY;2-ENDMO;10-' , 'ENDYR;4-COLLECTION_NAME;50' */ collection = translate(collection) collection = fdresc(collection) sel = "SELECT " , "collection_name, title, description" , "from FDR.FINDAID where" , "translate(COLLECTION_NAME) = '"collection"'" 'OUTPUT' '' "CALLPIPE (name findbrow03 end ?) sql noind release" sel , "| c: count lines " , "| rexx stempros "CELLFORM"%&%FINDBROW" , "| change /\// |*: " , "?" , "c: | var num" If rc <> 0 then signal sqlerr 'OUTPUT

' num ' matches returned.' /*%include fdrsuff */ /* suffix */ e2 = time('R') 'REXX FDRCLEAN' cmdstat1 e1 e2 'OUTPUT ' exit 0 getvar: arg sub . v = symbol('form.sub.1') If v = 'VAR' then return form.sub.1 else return '' sqlerr: errrc = rc errsigl = sigl errtxt = 'SQL error' 'CALLPIPE (name sqlerr) SQLCODES | VAR cgi_sqlcodes' If errrc = -900 then address command 'CP IPL' signal errcleanup Error: errrc = rc signal off error 'OUTPUT' 'Error' , 'Sorry, ' cgi ' has' , 'experienced a serious error.' , 'If the error persists, contact ' , 'Error Report' errsigl = sigl errtxt = errortext(errrc) signal errcleanup Syntax: errrc = rc signal off syntax 'OUTPUT' 'Error' , 'Sorry, ' cgi ' has' , 'experienced a serious syntax error.' , 'If the error persists, contact ' , 'Error Report' errsigl = sigl errcleanup: signal off error signal off syntax srcline = sourceline(errsigl) 'OUTPUT' "" "OUTPUT" '' DumpIt: address command 'EXEC FDRCDUMP'