project BLF > class Session > method GetFile
Description
Read any file on the business server and return it as a BLOB
Parameters
icFileName | input | character | |
omFile | output | memptr | |
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
BLF
program code (program1/session.p)
if vlLoginFailed
then do:
<M-2 run SetMessage
(input #T-3'You are not logged in.':100(28)T-3# (icMessage),
input '' (icArguments),
input '' (icFieldName),
input '' (icFieldValue),
input 'D':U (icType),
input 2 (iiSeverity),
input '' (icRowid),
input 'BLF-404':U (icFcMsgNumber),
input '' (icFcExplanation),
input '' (icFcIdentification),
input '' (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in Session>
assign oiReturnStatus = -5.
return.
end.
file-info:file-name = icFileName.
if file-info:file-type = ?
or file-info:file-type begins "D"
then do:
<M-80 run SetMessage
(input #T-27'File not found: $1.':100(17)T-27# (icMessage),
input icFileName (icArguments),
input '' (icFieldName),
input '' (icFieldValue),
input 'D' (icType),
input 3 (iiSeverity),
input '' (icRowid),
input 'blf-191111':U (icFcMsgNumber),
input '' (icFcExplanation),
input '' (icFcIdentification),
input '' (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in Session>
oiReturnStatus = -3.
return.
end.
copy-lob from file file-info:full-pathname to omFile no-error.
if error-status:error
then do:
assign oiReturnStatus = -1.
do viA = 1 to error-status:num-messages:
<M-1 run SetMessage
(input error-status:get-message(viA) (icMessage),
input '' (icArguments),
input '' (icFieldName),
input '' (icFieldValue),
input 'E' (icType),
input 3 (iiSeverity),
input '' (icRowid),
input 'BLF-403':U (icFcMsgNumber),
input '' (icFcExplanation),
input '' (icFcIdentification),
input '' (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in Session>
end.
return.
end.