* IN.PORT.STATUS.CACHE ; retourne un cache de port.status si on est en phase sb.login *----------------------------------------------------------------------- * Mise en oeuvre * RUN INBASIC.UV IN.PORT.STATUS.CACHE INSTALL *----------------------------------------------------------------------- * SYSTEM(9001) équivat à * 38C:\INTEGRIX\UVDB\SB+\INBASIC.UV.O/IN.PORT.STATUS.CACHE80x7a * 28C:\INTEGRIX\UVDB\SB+.DEFN\DM.O/SB.EXECUTE80x558 * 18C:\INTEGRIX\UVDB\SB+.DEFN\DM.O/SB.LOGIN80x739e *----------------------------------------------------------------------- * EFV 2021/01/27 CREATE *----------------------------------------------------------------------- EQU CACHE$ID TO 'PORT.STATUS.CACHE' BEGIN CASE *----------------------------------------------------------------------- * si demande d'install 'ici' CASE @SENTENCE[7] = 'INSTALL' CRT 'Install' EXECUTE 'COPYI FROM VOC PORT.STATUS,:PORT.STATUS' CAPTURING RIEN EXECUTE 'CATALOG INBASIC.UV IN.PORT.STATUS.CACHE' CAPTURING RIEN EXECUTE 'COPYI FROM VOC IN.PORT.STATUS.CACHE,PORT.STATUS OVERWRITING' CAPTURING RIEN EXECUTE 'PORT.STATUS CACHE.REFRESH' *----------------------------------------------------------------------- * si demande de refresh de la cache CASE @SENTENCE = 'PORT.STATUS CACHE.REFRESH' CRT 'Refresh PORT.STATUS cache' LOOP EXECUTE ':PORT.STATUS' CAPTURING CAPT RETURNING RETNO WHILE RETNO DO SLEEP 5 REPEAT OPEN 'INPPP' TO F THEN WRITE CAPT ON F,CACHE$ID END *----------------------------------------------------------------------- * si demande de port.status par le sb.login CASE @SENTENCE = 'PORT.STATUS' AND SYSTEM(9001)<3,2>[8] = 'SB.LOGIN' OPEN 'INPPP' TO F THEN READ BUF FROM F, CACHE$ID THEN LOOP REMOVE L FROM BUF SETTING X PRINT L WHILE X DO REPEAT END END *----------------------------------------------------------------------- * sinon --- on montre port.status CASE 1 CHAIN ':':@SENTENCE END CASE