Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Validations:
Check whether the MNEMONIC already exists in MNEMONIC.SHARE. The table file
MNEMONIC.SHARE should be updated at AFTER.UNAU.WRITE if the
MNEMONIC doesn’t exist.
Redemption Validations:
ON SALE
Value entered should not be less than the
CURR.POSITION value of
SHARE.HOLDING.
9. TRANS.PRICE 16, R Validate against the SHARE.BID.OFFER.
PURCHASE: If the value entered is greater
than the BID.PRICE in
SHARE.BID.OFFER, then generate an
override message.
SALE: If the value entered is less than the
OFFER.PRICE in SHARE.BID.OFFER,
then generate an override message.
If the record for
SHARE.ID.CUSTOMER.ID does not exist
then no override message is created.
10. TRANS.VALUE 16, Transaction value in the share currency.
AMT This should be derived as TRANS.UNITS *
TRANS.PRICE.
11. TRANS.VALUE.LCY 16, This is the transaction value converted to the
AMT local currency. This is a NOINPUT field &
is derived from TRANS.VALUE.
12. BROKER.FEE.TYPE 11, A This is the Fee or charges to be charged on
purchases / sales being input. Must be a
valid code in FT.COMMISSION.TYPE.
This is not a mandatory field. If entered,
then the charges should be calculated based
on the TRANS.VALUE & the subsequent
fields should be populated.
13. BROKER.FEE.AMT 16, This is the fee / charges for the transaction
AMT & is a NOINPUT field.
14. FEE.AMT.LCY 16, This is the local currency equivalent amount
AMT of the fees / charges calculated. This is a
NOINPUT field.
15. NET.TRANS.AMT 16, This is the net transaction amount to be
AMT paid. This is derived from TRANS.VALUE
and total BROKER.FEE.AMT if any. This
is a NOINPUT field.
16. NET.TRANS.AMT.LC 16, This is the net transaction amount in local
Y AMT currency. This is derived from
TRANS.VALUE.LCY and the total
FEE.AMT.LCY, if any. This is a NOINPUT
field.
17. XX.LOCAL.REF 35, A Local Reference Field.
18.. CUST.ACCOUNT 14, Must be an account belonging to the
ACC Customer Number entered in
CUSTOMER.ID.
19. SETTLE.ACCOUNT 14, Must be a valid Account No. Create a
ACC Customer and Account for this purpose.
20. XX.OVERRIDE 35, A This is used to store the Overrides generated
during a transaction and is a NOINPUT
field.
A. On Purchase of Shares:
Read the position record with the CUST.ACC as the key. If the record does not exists, then
create a new record with data mapped as shown below.
B. On Sale of Shares:
On input, update the SHARE.HOLDING file as mentioned.
CURR.POSITION -= TRANS.UNITS
CURR.COST -= TRANS.UNITS*AVG.PRICE
AVG.PRICE = TRANS.VALUE – (TRANS.UNITS*AVG.PRICE)
If the record does not exists in SHARE.HOLDING, then sale of share is not possible.