18
Portfolio Overview Reports Flow Charts Rev 20110912 by Daniel Brockman 1 Union Bank

Portfolio Overview Reports Flow Charts Rev 20110912 by Daniel Brockman 1Union Bank

Embed Size (px)

Citation preview

Portfolio Overview ReportsFlow Charts

Rev 20110912 by Daniel Brockman

1Union Bank

Intro• Residential (Resi) Portfolio Overview Reports

– Pro – Product Segments– Reg – Regional Segments– Tra – Special Segments

• HELOC & Other Consumer (HNC) Portfolio Overview Reports– HNCEqu – Equity line of credit Segments– HNCO – Other Consumer loan Segments

• This presentation shows control flow for ResiReg• Other reports have similar flow

2Union Bank

Automated ExecutionGo

autoPortRpt_RES.bat

END

autoPortRptSub_RES.bat

autoPortRptSub_RES.log

A

3Union Bank

autoPortRptSub_RES.bat

autoPortRptSub_RES.batA

autogosas portfrpt3 ResiReg B

autoPortRptFmt ResiReg_rpt.xls C

ResiReg_rpt.xls

rptcopy.batD

Run SAS

Format

Rename Outputs

Resi_Regions_yyyymm.xls

4Union Bank

Principal input

Raw output

Formatted output

RETURN

autogosas.batautogosas portfrpt3

ResiReg B

%surfcity()E

Rptcopy.bat

Run portfrpt3.SAS with SYSPARM=ResiReg

%surfcity(): I.D. dates, inputs, outputs, perform process.

5Union Bank

Residential_tss_

yyyymm

ChargeoffsResiReg_rpt.xls

Raw output

Principal input

RETURN

(autoPortRptSub)

%surfcity(), part 1

%surfcity()E

%movector()

%Choosedsnroot()

Get dates fryyyymm, toyyyymm

I.D. Input data set

6Union Bank

F

%surfcity(), part 2

%copybat()

%promonth()Process inputs, produce outputs

7Union Bank

F Rptcopy.bat

Residential_tss_

yyyymm

ResiReg_rpt.xls

G

Chargeoffs

RETURN

Principal input

%promonth(), part 1

%promonth()

2 Loops: Segments (tabs) & Dates

8Union Bank

G

RETURN

%genyyyymm()generate next yyyymm

(the oldest component of the reporting programs)

Data alpha

Input for yyyymm

alpha

H

Last yyyymm

Last Seg

ment

y

nn

yCharge

offs

I

%promonth(), part 2

%promonth()

9Union Bank

G

RETURN

H

Seg Yyyymm

Data vartopone

alpha

Chargeoffs

I1

%Resimtx()I2

I

J%Resimtx() calculates metrics

%promonth(), part 3

%promonth()

10Union Bank

G

RETURN

H

Seg Yyyymm I

Proc transposeJ

aggvartop

vartopone

Proc append&all_d

Proc export

ResiReg_rpt.xlsRaw output

autoPortRptFmtautoPortRptFmt ResiReg_rpt.xls C

autoResidRpt.xlsm

Formatting

autoResidRpt.xlsm

autostarts Fbin.xlsm formatting macros

11Union Bank

ResiReg_rpt.xls

Resi_Regions_yyyymm.xls

Formatted output

Taskkill /f /t /im excel.exeKill any existing excel process Raw output

Fbin.xlsm

RETURN

K

(autoPortRptSub)

Fbin.xlsm

12Union Bank

ResiReg_rpt.xls

Resi_Regions_yyyymm.xls

RunResidRpt()

Raw output

RETURN

Fbin.xlsmK

L Formatted output

(autoPortRptFmt)

RunResidRpt()

13Union Bank

Formatting the output

RETURN

ResidRptGo()

RunResidRpt()L

Resi_Line_Definitions.xlsm

RT=ReportType()RT=“ResiReg”

SegTags=TabList()Get list of Tabs

Last Seg

ment

n

y PortResidPageFmtM

Format one Segment (tab)

(Fbin.xlsm)

PortResidPageFmt(), part 1

14Union Bank

Insert Column A

Last Row

nn

Format one Segment (tab)PortResidPageFmtM

Key = Cell in Col B

HIGH LOOP

See t_proofing

?Skip=linefmt()

P

Proof=1

Q

y

y

LeaveHIGH LOOPSkip>

0?Skip<

0?Insert blank line

Delete Line

y

y n

n

Linefmt()

15Union Bank

Skip=0

Format one LineSkip=linefmt()M

Stylo=numstilo()Stylo=title, %, $, etc.

Apply format per Stylo & Key

Handle special cases

Skip = skipper()Line-skip signal

RETURN

PortResidPageFmt(), part 2

16Union Bank

Format one Segment (tab)PortResidPageFmtM

HIGH LOOP

Q

LeaveHIGH LOOP

Col A special formatting and

numbering

Last Row

Col B row label =thesaur()

y

n

R

Cols A & B

PortResidPageFmt(), part 3

17Union Bank

Format one Segment (tab)PortResidPageFmtM

HIGH LOOP

Q

LeaveHIGH LOOP R

Cols A & B

nLast Row

Skip or Delete row

Go to Next proofing row

Skip=linefmt()P

y

AGONY LOOP

Set print area

RETURN

(RunResidRpt())

Union Bank 18

The End