Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

There may be a requirement to shut off accruals for a security or position in Eagle Accounting for market or operational reasons. The most common drivers are going into default, being priced dirty in the market, or having an unsupported accrual calculation.

...

This document describes a local workaround that can be implemented to add Debt Default Periods automatically during security creation when the security is created simply by setting Default Indicator (1551) = Yes. The process works when the security is set up via automation with a message or manually in Issue Viewer.

Assumptions

This process will create two Debt Default Periods with:

  • Add Periods Based On (1256) = Security

  • Accounting Basis (21) null

    While this field is required in the panel for security-level records, it is not required on the underlying event and testing confirms accruals are successfully suppressed when it is left null

    : one with USTAX and one with GAAP

  • Default Type (1551) = Income

...

Securities created in Reference Data Center will not invoke this process.

Implementation

...

Task 1: Copy Create Debt Default Period Panel to Lookups Folder

The Create Debt Default Period panel (pan-adefaulttype.htm) has logic to change the Event Type (55) between ADD_POS_DEFAULT and ADD_SEC_DEFAULT depending on whether a position-level or security-level record is being added. However, the default Submessage in the panel’s Global Properties, which is also the default Event Type, is ADD_POS_DEFAULT.

...

  1. Open Web Panel Designer

  2. Navigate to eagle > star > reference > Debt Default Periods

  3. Right-click Add Debt Default Periods/Inhibit Earnings and select Copy

  4. Navigate to eagle > star > LOOKUPS

  5. Right-click LOOKUPS and select Paste as

  6. Name the panel pan-adefaulttype-sec.htm

  7. Open the panel and change to Overlay edit mode

  8. Click Global Properties…

  9. Change Submessage to ADD_SEC_DEFAULT and click OK

  10. You will receive a message asking if you want to change the default value for tag 55

  11. Click Yes

  12. Save your changes

Task 2: Copy List Debt Default Period Panel to Lookups Folder

Repeat the procedure from Task 1 above except:

  • In Step 3, right-click List Debt Default Periods/Inhibit Earnings and select Copy

...

  • In Step 6, name the panel pan-ldefaulttype-sec.htm

Task 3: Update Panel for Adding Multi-Leg Swaps

Once we have a panel that can create the appropriate records when called as a lookup, we can add the logic to call that panel from the Multiple Leg Swap panel (pan-addsecmastermultilegswap.htm). There are also tweaks to allow Default Indicator (1551) and Default Date (10142) to be set independently on each leg when creating a swap manually via Issue Viewer. Currently the values are entered on the contract and then propagated down to the legs.

  1. Open Web Panel Designer

  2. Navigate to eagle > star > reference > Add/List Issue

  3. Open Multiple Leg Swap and change to Overlay edit mode

  4. Click the …LISTBOX tab

  5. Under the Link ID column, locate 3931i

  6. In the first Script section, remove L1551 and L10142 from the “Before” line below

    1. Before: IF :4590: != "C" THEN SET(L14,L1432,L38,L1551,L10142,L3997,L3998);

    2. After: IF :4590: != "C" THEN SET(L14,L1432,L38,L3997,L3998);

  7. Under the Link ID column, locate 1551i

  8. Comment out the whole existing Script section:

    Code Block
    1551i	!Script	
    1551i	!Defentry	:1551:
    1551i	!class	global
    1551i	!Text	Loop(:vi:, :0:1551:, :0:1551:) [
    1551i	!Text	Loop(:vl:, :0:1551:, :0:1551:) [
    1551i	!Text	IF Not(IsEmpty(:vi:)) AND :vi:!=:vl: THEN FORCE(:vl:,:vi:)
    1551i	!Text	];
    1551i	!Text	];
    1551i	!End	

    Add this new Script section before the one we just commented out:

    Code Block1551i Script 1551i Defentry :1551: 1551i Text IF :1551: = "Y" AND :68: != "" THEN ASSIGN(:10142:,:68:); 1551i End
  9. Copy and paste the code from the 1551i section of the Multiple Leg Swap tab of the attached

    View file
    nameCreate Security Debt Default Periods Automatically - New Code.xlsx
    spreadsheet before the Script we just commented out

  10. Under the Link ID column, locate 10142i, which should immediately follow 1551i

  11. Comment out this the whole section:

    Code Block
    10142i	!Script	
    10142i	!Defentry	:10142:
    10142i	!class	global
    10142i	!Text	Loop(:vi:, :0:10142:, :0:10142:) [
    10142i	!Text	Loop(:vl:, :0:10142:, :0:10142:) [
    10142i	!Text	IF Not(IsEmpty(:vi:)) AND :vi:!=:vl: THEN FORCE(:vl:,:vi:)
    10142i	!Text	];
    10142i	!Text	];
    10142i	!End	
  12. Under the Link ID column, locate 7705i

  13. Copy and paste the code from the 7705i section of the Multiple Leg Swap tab of the attached

    View file
    nameCreate Security Debt Default Periods Automatically - New Code.xlsx
    pageAdd Security Debt Default Periods Automatically
    spaceIE
    spreadsheet to the end

  14. Save your changes

...

Task 4: Update Panel for Editing Multi-Leg Swaps

There are separate panels for adding and editing multi-leg swaps. If we want to be able to invoke this process for existing securities, we need to apply similar changes to Edit Multiple Leg Swap (pan-editsecmastermultilegswap.htm).

  1. Open Web Panel Designer

  2. Navigate to eagle > star > reference > Add/List Issue

  3. Open Edit Multiple Leg Swap and change to Overlay edit mode

  4. Click the …LISTBOX tab

  5. Under the Link ID column, locate 3931i

  6. In the fifth Script section, remove L1551 and L10142 from the “Before” line below

    1. Before: IF (RefRow(:vThisRef:)!=1) THEN SET(L14,L1432,L38,L1551,L10142,L3997,L3998);

    2. After: IF (RefRow(:vThisRef:)!=1) THEN SET(L14,L1432,L38,L3997,L3998);

    Complete items 7-11 from Step 2 above for this panel
  7. Under the Link ID column, locate 7705i 1551i

  8. Comment out the whole existing Script section:

    Code Block
    1551i	!Script	
    1551i	!Defentry	:1551:
    1551i	!class	global
    1551i	!Text	Loop(:vi:, :0:1551:, :0:1551:) [
    1551i	!Text	Loop(:vl:, :0:1551:, :0:1551:) [
    1551i	!Text	IF Not(IsEmpty(:vi:)) AND :vi:!=:vl: THEN FORCE(:vl:,:vi:)
    1551i	!Text	];
    1551i	!Text	];
    1551i	!End	
  9. Copy and paste the code from the 1551i section of the Edit Multiple Leg Swap tab of the attached

    View file
    nameCreate Security Debt Default Periods Automatically - New Code.xlsxpageAdd
    spreadsheet before the Script we just commented out

  10. Under the Link ID column, locate 10142i, which should immediately follow 1551i

  11. Comment out the whole section:

    Code Block
    10142i	!Script	
    10142i	!Defentry	:10142:
    10142i	!class	global
    10142i	!Text	Loop(:vi:, :0:10142:, :0:10142:) [
    10142i	!Text	Loop(:vl:, :0:10142:, :0:10142:) [
    10142i	!Text	IF Not(IsEmpty(:vi:)) AND :vi:!=:vl: THEN FORCE(:vl:,:vi:)
    10142i	!Text	];
    10142i	!Text	];
    10142i	!End	
  12. Under the Link ID column, locate 7705i

  13. Copy and paste the code from the 7705i section of the Edit Multiple Leg Swap tab of the attached

    View file
    nameCreate Security Debt Default Periods Automatically spaceIE- New Code.xlsx
    spreadsheet to the end

  14. Save your changes