Description
This procedure creates log record about startup of merging of two shared set.
Parameters
| icMasterSharedSet | input | character | |
| icRedundantSharedSet | input | character | |
| oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program6/bsharedsetmergelog.p)
/* =================================================================================================== */
/* Method : LogStartMerge */
/* Desc : This procedure creates log record about startup of merging of two shared set. */
/* --------------------------------------------------------------------------------------------------- */
/* Params: (I) MasterSharedSet Code of master shared set */
/* (I) RedundantSharedSet Code of redundant shared set */
/* =================================================================================================== */
assign oiReturnStatus = -98.
/* =================================================================================================== */
/* Normalize input parameters */
/* =================================================================================================== */
if icMasterSharedSet = '':U then assign icMasterSharedSet = ?.
if icRedundantSharedSet = '':U then assign icRedundantSharedSet = ?.
/* =================================================================================================== */
/* Validate input parameters */
/* =================================================================================================== */
if icMasterSharedSet = ? or
icRedundantSharedSet = ?
then do:
assign vcMessage = #T-1'You have not entered all the mandatory values.':255(63250)t-1#
vcContext = 'MasterSharedSet=&1|RedundantSharedSet=&2':U
vcContext = substitute(vcContext, icMasterSharedSet, icRedundantSharedSet)
vcContext = replace(vcContext, '|':U, chr(2)).
<M-2 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input '':U (icFieldName),
input '':U (icFieldValue),
input 'S':U (icType),
input 3 (iiSeverity),
input '':U (icRowid),
input 'QadFin-6608':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input vcContext (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BSharedSetMergeLog>
assign oiReturnStatus = -1.
return.
end.
/* =================================================================================================== */
/* Pre validation - it is not allowed to have any not finished merge when new one is starting */
/* =================================================================================================== */
<Q-3 assign vlFcQueryRecordsAvailable = SharedSetMergeLogByFinished (NoCache)
(input false, (IsFinished)) in BSharedSetMergeLog >
if vlFcQueryRecordsAvailable <> false
then do:
assign vcMessage = #T-5'A shared set merge is currently under way. You can only begin a new merge when the previous merge has finished successfully or the correct database has been backed up.':255(63907)t-5#.
<M-4 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-6609':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BSharedSetMergeLog>
assign oiReturnStatus = -1.
return.
end.
/* =================================================================================================== */
/* Create new record */
/* =================================================================================================== */
<M-6 run AddDetailLine
(input 'SharedSetMergeLog' (icTable),
input '':U (icParentRowid),
output viFcReturnSuper (oiReturnStatus)) in BSharedSetMergeLog>
if viFcReturnSuper <> 0 then assign oiReturnStatus = viFcReturnSuper.
if viFcReturnSuper < 0 then return.
assign tSharedSetMergeLog.SharedSetMergeLogMaster = icMasterSharedSet
tSharedSetMergeLog.SharedSetMergeLogRedundant = icRedundantSharedSet
tSharedSetMergeLog.SharedSetMergeLogIsFinish = false
tSharedSetMergeLog.SharedSetMergeLogStartDate = today
tSharedSetMergeLog.SharedSetMergeLogStartTime = time.
/* =================================================================================================== */
/* Save data to database */
/* =================================================================================================== */
<M-7 run ValidateBC
(output viFcReturnSuper (oiReturnStatus)) in BSharedSetMergeLog>
if viFcReturnSuper <> 0 then assign oiReturnStatus = viFcReturnSuper.
if viFcReturnSuper < 0 then return.
<M-8 run AdditionalUpdates
(output viFcReturnSuper (oiReturnStatus)) in BSharedSetMergeLog>
if viFcReturnSuper <> 0 then assign oiReturnStatus = viFcReturnSuper.
if viFcReturnSuper < 0 then return.
/* =================================================================================================== */
/* Return */
/* =================================================================================================== */
if oiReturnStatus = -98 then assign oiReturnStatus = 0.