þa‹Rþdþwÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ m Z<þhý oZþ nSystem-wide$TITLE ('GRiDServer Copy AdminLog Function') $COMPACT OPTIMIZE(3) CopyLog: DO; /*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& & & This module is called by FHP Manager to & copy the AdminLog to a user-accessible device & &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*/ $SAVE NOLIST $INCLUDE (``Incs`PlmLits.Inc~Text~) $INCLUDE (``Incs`OsPlmProcs.Inc~Text~) $INCLUDE (``Incs`OsPlmTypes.Inc~Text~) $INCLUDE (``IncsServer`RemoteFormsProcs.Plm.Inc~Text~) $RESTORE LIST /* Copy Admin Log */ CopyAdminLog : PROCEDURE CLEAN; /* This procedure to be completed */ DCL logPath (*) BYTE DATA (27,'`b`LogFiles`AdminLog~Text~'); DCL CopyPath (*) BYTE DATA (43,'`b`MessageSubjects`LogFiles`AdminLog~Text~'); DCL logConn WORD; DCL copyConn WORD; DCL logBuffer (512) BYTE; DCL error WORD; DCL readCount WORD; logConn = OsAttach (@logPath, oldFile, @(0,0), readAccess, @error); IF error = 0 THEN copyConn = OsAttach (@CopyPath, newFile, @(0,0), writeAccess, @error); IF error = 0 THEN CALL OsOpen (logConn, 1, @error); IF error = 0 THEN CALL OsOpen (copyConn, 1, @error); $CODE readCount = 1; $NOCODE DO WHILE (readCount <> 0) AND (error = 0); readCount = OsRead (logConn, @logBuffer, 512, @error); IF error = 0 THEN CALL OsWrite (copyConn, @logBuffer, readCount, @error); END; CALL OsDetach (logConn, @error); CALL OsDetach (copyConn, @error); END; END CopyLog;