Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
SPB_Exchange_Repo
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Amelin Konstantin
SPB_Exchange_Repo
Commits
8a1ed210
Commit
8a1ed210
authored
Apr 06, 2020
by
Amelin Konstantin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix PartyTemplate. "OWN" -> "CLIENTCODE"
parent
ba4ea096
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
162 additions
and
2 deletions
+162
-2
input/Repo Client equity own.xml
+156
-0
src/main/scala/templates/PartyTemplate.scala
+6
-2
No files found.
input/Repo Client equity own.xml
0 → 100644
View file @
8a1ed210
<?xml version="1.0" encoding="windows-1251"?>
<nonpublicExecutionReport
xmlns=
"http://www.fpml.org/FpML-5/recordkeeping"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns:fpmlext=
"http://www.fpml.org/FpML-5/ext"
xmlns:nsdext=
"http://www.fpml.org/FpML-5/recordkeeping/nsd-ext"
fpmlVersion=
"5-4"
xsi:schemaLocation=
"http://www.fpml.org/FpML-5/recordkeeping ../src/main/resources/nsd/fpml-recordkeeping-merged-schema.xsd http://www.fpml.org/FpML-5/recordkeeping/nsd-ext nsd-ext-merged-schema.xsd"
>
<header>
<messageId
messageIdScheme=
"http://repository.nsd.ru/coding-scheme/messageid(nsdrus)"
>
BCSb458cd554d1b4b28a3dbd82dd27c5ca4
</messageId>
<sentBy>
RP0058900001
</sentBy>
<sendTo>
NDC000000000
</sendTo>
<creationTimestamp>
2018-04-05T13:15:06
</creationTimestamp>
<implementationSpecification>
<version>
4.4
</version>
</implementationSpecification>
</header>
<isCorrection>
false
</isCorrection>
<correlationId
correlationIdScheme=
"http://repository.nsd.ru/coding-scheme/correlationId(nsdrus)"
>
[RP0058900001]-[2018]-[BCSb458cd554d1b4b28a3dbd82dd27c5ca4]
</correlationId>
<asOfDate>
2018-04-03
</asOfDate>
<trade
xsi:type=
"nsdext:TradeNsd"
>
<tradeHeader>
<partyTradeIdentifier>
<partyReference
href=
"TradeRepository"
/>
<tradeId>
NONREF
</tradeId>
</partyTradeIdentifier>
<partyTradeIdentifier>
<partyReference
href=
"Party1"
/>
<tradeId>
8093502471
</tradeId>
</partyTradeIdentifier>
<partyTradeIdentifier>
<partyReference
href=
"Party2"
/>
<tradeId>
8093502471
</tradeId>
</partyTradeIdentifier>
<partyTradeIdentifier>
<partyReference
href=
"UTIGeneratingParty"
/>
<tradeId>
253400GRCV94X91GAW80TNGSR8093502471
</tradeId>
</partyTradeIdentifier>
<partyTradeInformation>
<partyReference
href=
"TradeRepository"
/>
<reportingRegime>
<name
reportingRegimeNameScheme=
"http://www.fpml.org/coding-scheme/reporting-regime"
>
RussianFederation
</name>
</reportingRegime>
<nonStandardTerms>
true
</nonStandardTerms>
</partyTradeInformation>
<tradeDate>
2018-04-03
</tradeDate>
</tradeHeader>
<fpmlext:repo
xsi:type=
"nsdext:RepoNsd"
>
<productType
productTypeScheme=
"http://www.fpml.org/coding-scheme/product-taxonomy"
>
Equity:Repo:EquityRepo
</productType>
<productId>
REOFF
</productId>
<fpmlext:fixedRateSchedule>
<initialValue>
0.1675
</initialValue>
</fpmlext:fixedRateSchedule>
<fpmlext:dayCountFraction
dayCountFractionScheme=
"http://www.fpml.org/coding-scheme/day-count-fraction"
>
ACT/365L
</fpmlext:dayCountFraction>
<fpmlext:duration>
Overnight
</fpmlext:duration>
<fpmlext:spotLeg
xsi:type=
"nsdext:RepoTransactionLegNsd"
>
<buyerPartyReference
href=
"Party2"
/>
<sellerPartyReference
href=
"Party1"
/>
<fpmlext:settlementDate>
<adjustableDate>
<unadjustedDate>
2018-04-04
</unadjustedDate>
</adjustableDate>
</fpmlext:settlementDate>
<settlementAmount>
<currency
currencyScheme=
"http://www.fpml.org/ext/iso4217-2001-08-15"
>
RUB
</currency>
<amount>
347625.0000000
</amount>
</settlementAmount>
<fpmlext:collateral
xsi:type=
"nsdext:CollateralValuationNsd"
>
<fpmlext:numberOfUnits>
150
</fpmlext:numberOfUnits>
<fpmlext:unitPrice>
<currency
currencyScheme=
"http://www.fpml.org/ext/iso4217-2001-08-15"
>
RUB
</currency>
<amount>
2317.5000000
</amount>
</fpmlext:unitPrice>
<fpmlext:assetReference
href=
"NL0009805522"
/>
</fpmlext:collateral>
<nsdext:deliveryDate>
<adjustableDate>
<unadjustedDate>
2018-04-04
</unadjustedDate>
</adjustableDate>
</nsdext:deliveryDate>
</fpmlext:spotLeg>
<fpmlext:forwardLeg
xsi:type=
"nsdext:ForwardRepoTransactionLegNsd"
>
<buyerPartyReference
href=
"Party1"
/>
<sellerPartyReference
href=
"Party2"
/>
<fpmlext:settlementDate>
<adjustableDate>
<unadjustedDate>
2018-04-05
</unadjustedDate>
</adjustableDate>
</fpmlext:settlementDate>
<settlementAmount>
<currency
currencyScheme=
"http://www.fpml.org/ext/iso4217-2001-08-15"
>
RUB
</currency>
<amount>
347784.5300000
</amount>
</settlementAmount>
<nsdext:deliveryDate>
<adjustableDate>
<unadjustedDate>
2018-04-05
</unadjustedDate>
</adjustableDate>
</nsdext:deliveryDate>
</fpmlext:forwardLeg>
<equity
id=
"NL0009805522"
>
<instrumentId
instrumentIdScheme=
""
>
NL0009805522
</instrumentId>
</equity>
</fpmlext:repo>
<nsdext:collateral>
<nsdext:marginType>
U
</nsdext:marginType>
<nsdext:collateralForm>
U
</nsdext:collateralForm>
</nsdext:collateral>
<nsdext:nsdSpecificTradeFields>
<nsdext:cleared>
N
</nsdext:cleared>
<nsdext:reconciliationType>
GENF
</nsdext:reconciliationType>
<nsdext:clearSettlementType
clearSettlementTypeScheme=
"http://repository.nsd.ru/coding-scheme/clear-settlement-type"
>
OTC
</nsdext:clearSettlementType>
<nsdext:clearSettlementMethod
clearSettlementMethodScheme=
"http://repository.nsd.ru/coding-scheme/clear-settlement-method"
>
C
</nsdext:clearSettlementMethod>
<nsdext:confirmationMethod>
MXME
</nsdext:confirmationMethod>
<nsdext:automaticExecution>
N
</nsdext:automaticExecution>
<nsdext:partiesAreAffiliated>
Y
</nsdext:partiesAreAffiliated>
<nsdext:endAgreementDate>
2018-04-05
</nsdext:endAgreementDate>
<nsdext:clientDetails>
<nsdext:servicingParty
href=
"Party1"
/>
<nsdext:type>
P
</nsdext:type>
<nsdext:id>
PASS_57_87598732
</nsdext:id>
<nsdext:name>
</nsdext:name>
<nsdext:country
countryScheme=
"http://www.fpml.org/ext/iso3166"
>
RU
</nsdext:country>
</nsdext:clientDetails>
<nsdext:clientDetails>
<nsdext:servicingParty
href=
"Party2"
/>
<nsdext:ownTrade>
true
</nsdext:ownTrade>
</nsdext:clientDetails>
</nsdext:nsdSpecificTradeFields>
</trade>
<party
id=
"TradeRepository"
>
<partyId>
NDC000000000
</partyId>
<partyId>
LEI_253400M18U5TB02TW421
</partyId>
<partyName>
</partyName>
</party>
<party
id=
"Party1"
>
<partyId>
RP0058900001
</partyId>
<partyId>
LEI_253400GRCV94X91GAW80
</partyId>
<partyName>
" "
</partyName>
<classification>
B
</classification>
<country>
RU
</country>
<organizationType>
L
</organizationType>
</party>
<party
id=
"Party2"
>
<partyId>
NONREF
</partyId>
<partyId>
OWN_5408514753
</partyId>
<partyName>
""
</partyName>
<classification>
Other
</classification>
<country>
RU
</country>
<organizationType>
L
</organizationType>
</party>
<party
id=
"Sender"
>
<partyId>
RP0058900001
</partyId>
<partyId>
LEI_253400GRCV94X91GAW80
</partyId>
<partyName>
" "
</partyName>
</party>
<party
id=
"UTIGeneratingParty"
>
<partyId>
RP0058900001
</partyId>
<partyId>
LEI_253400GRCV94X91GAW80
</partyId>
<partyName>
" "
</partyName>
</party>
</nonpublicExecutionReport>
\ No newline at end of file
src/main/scala/templates/PartyTemplate.scala
View file @
8a1ed210
...
...
@@ -14,7 +14,9 @@ abstract class PartyTemplate(source: Node) extends Template(source) {
if
(
partyId0
!=
"NONREF"
)
id
->
{
if
(
id
==
"TradeRepository"
)
(
partyId0
,
msgNotFound
)
else
(
partyId0
,
"CLIENTCODE"
)
}
else
{
val
partyId1
=
get
(
s
\
"partyId"
,
null
,
1
).
mkString
.
filterNot
(
_
.
isWhitespace
).
replace
(
"INN"
,
"ITN"
)
val
partyId1
=
get
(
s
\
"partyId"
,
null
,
1
).
mkString
.
filterNot
(
_
.
isWhitespace
)
.
replace
(
"INN"
,
"ITN"
)
.
replace
(
"OWN"
,
"CLIENTCODE"
)
id
->
(
partyId1
,
partyId1
.
split
(
'_')
.
head
)
}
...
...
@@ -24,7 +26,9 @@ abstract class PartyTemplate(source: Node) extends Template(source) {
for
{
s
<-
source
\\
"trade"
\
"nsdSpecificTradeFields"
\
"clientDetails"
id
=
get
(
s
\
"id"
).
mkString
if
id
!=
msgNotFound
}
yield
{
val
partyId
=
id
.
filterNot
(
_
.
isWhitespace
).
replace
(
"INN"
,
"ITN"
)
val
partyId
=
id
.
filterNot
(
_
.
isWhitespace
)
.
replace
(
"INN"
,
"ITN"
)
.
replace
(
"OWN"
,
"CLIENTCODE"
)
id
->
(
partyId
,
partyId
.
split
(
'_')
.
head
)
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment