project QadFinancials > class BCInvoice > method CalcBarcodeCheckDigit
Description
Calculate Check Digit from barcode(optical) number - used in creation of manual bank reference code
Parameters
icCode | input | character | |
ocCheckDigit | output | character | |
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program1/bcinvoice.p)
assign
vcTransCode = ""
viCharLen = LENGTH(icCode,"CHARACTER").
do viCounter = 1 to viCharLen - 1:
vcTransCode = vcTransCode + string((int(SUBSTRING(icCode,
viCharLen - viCounter,1,"CHARACTER")) *
int(SUBSTRING(vcMultLst,viCounter,1,"CHARACTER")))).
end.
assign
viTransInt = 0
viCharLen = LENGTH(vcTransCode,"CHARACTER").
do viCounter = 1 to viCharLen:
viTransInt = viTransInt + int(SUBSTRING(vcTransCode,viCounter,1,"CHARACTER")).
end.
viResto = viTransInt modulo 10.
viCheckDigit = 10 - viResto.
if viCheckDigit > 9 then
viCheckDigit = 0.
ocCheckDigit = string(viCheckDigit).