Parameters
| iiExpenseNoteYear | input | integer | |
| oiExpenseNoteNumber | output | integer | |
| icExpenseNoteRowID | input | character | |
| oiReturnStatus | output | integer | Return status of the method. |
Internal usage
unused
program code (program3/bexpensenote.p)
/* ================================================================= */
/* Reserve a number for this sheet. */
/* This number will be released again by housekeeping if the */
/* transaction was not committed by then. */
/* ================================================================= */
assign vhFcComponent = ?.
<M-2 run GetNumber
(input viCompanyId (iiCompanyId),
input iiExpenseNoteYear (iiNumbrYear),
input 'EXPNOTE':U (icNumbrType),
output oiExpenseNoteNumber (oiNumber),
input viFcCurrentInstanceId (iiInstanceId),
input vcFcComponentName (icClassName),
output viFcReturnSuper (oiReturnStatus)) in BNumber>
if viFcReturnSuper <> 0
then do:
assign vcMessage = trim(subst(#T-4'The systen cannot retrieve the expense note number (error number: &1).':255(1899)t-4#, string(viFcReturnSuper))).
<M-3 run SetMessage (input vcMessage (icMessage),
input '':U (icArguments),
input '':U (icFieldName),
input '':U (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input '':U (icRowid),
input 'QADFIN-2383':U (icFcMsgNumber),
input '' (icFcExplanation),
input '' (icFcIdentification),
input '' (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BExpenseNote>
end.
if viFcReturnSuper < 0 or (viFcReturnSuper > 0 and oiReturnStatus = 0)
then assign oiReturnStatus = viFcReturnSuper.
if oiReturnStatus < 0
then return.
find first tExpNote where tExpNote.tc_Rowid = icExpenseNoteRowID no-error.
if available tExpNote
then do:
/* ================================================================= */
/* Release previously reserved number. */
/* ================================================================= */
if tExpNote.ExpNoteNumber <> 0
then do:
assign vhFcComponent = ?.
<M-1 run ReleaseNumber
(input viCompanyId (iiCompanyId),
input tExpNote.ExpNoteYear (iiNumbrYear),
input 'EXPNOTE':U (icNumbrType),
input tExpNote.ExpNoteNumber (iiNumbr),
input viFcCurrentInstanceId (iiInstanceId),
input vcFcComponentName (icClassName),
output viFcReturnSuper (oiReturnStatus)) in BNumber>
if viFcReturnSuper < 0 or (viFcReturnSuper > 0 and oiReturnStatus = 0)
then assign oiReturnStatus = viFcReturnSuper.
end.
assign tExpNote.ExpNoteYear = iiExpenseNoteYear
tExpNote.ExpNoteNumber = oiExpenseNoteNumber.
if tExpNote.tc_Status = "":U
then tExpNote.tc_Status = "C":U.
end.
if oiReturnStatus < 0
then return.