About meProfessional.
15 years in the software industry.Currently working for Goodville Mutual (regional insurance carrier).10+ years of Java enterprise.RPGLE for 3 years.Software architect.
Open Source.
RPGParser -- ANTLR parser for the RPG language.CFLint -- linter/code analyzer for ColdFusion.
Personal.
Live in rural Vermont.Married with 4 children.Enjoy the outdoors and working with my hands.
2 / 44
Overview1. Introduction2. Graphviz3. Why Graphviz?4. Terminology5. Basic Syntax6. Prettying it up a bit7. Diagrams from SQL data8. Automated Diagrams with QDSPPGMREF9. SQL ER Diagrams
10. Wrap up
3 / 44
Emergent DocumentationFrom a discussion on Agile documentation:
How can meaningful documentation be produced for our systems?
Can diagrams be generated automatically?I want to avoid actually drawing them.
It's the information I don't know that I needto see the most.
Data/Table relationships.Program call relationships.
4 / 44
Graphviz"Graphviz is open source graph visualization software. Graphvisualization is a way of representing structural information asdiagrams of abstract graphs and networks."
Example:
digraph{ NEUG -> NHMUG; NEUG -> VTMUG; }
5 / 44
Why Graphviz?
1. It's free to use - Eclipse Public License
2. Plain text source
3. Human readable.
4. System generated.
5. You can't 'fix' the output - only the input.
6 / 44
Terminology
Graph
a diagram representing a system of connections or interrelations among twoor more things
Node/vertex
a point at which lines or pathways intersect or branch; a central or connectingpoint.
Edge
a set of two vertices, or an ordered pair of vertices (directed graph)
7 / 44
Basic SyntaxGraphviz specifies diagrams in the DOT language, a simple human readablespecification.
Undirected graph graph{ A -- B; A -- C; }
Directed graph digraph{ A -> B; A -> C; }
8 / 44
Basic Syntax - Top level
Some graph level attributes digraph{ label="My Sample Graph"; rankdir="LR"; A -> B; A -> C; }
A few other useful ones
labelloc="t"; -- put label at topfontname = "arial";fontsize = 16;ordering="out"; -- order by the outs
10 / 44
Basic Syntax - Edges
Some graph edge attributes digraph{ rankdir="LR"; A -> B [label="AtoB"]; A -> C [arrowhead="crow"]; C-> D [color="red"]; }
11 / 44
Basic Syntax - Edges
Universal graph edge attributes digraph{ rankdir="LR"; edge [ color="blue"; dir="back"; arrowhead="odiamond"; ] A -> B ; A -> C ; C -> D ; }
12 / 44
Basic Syntax - Nodes
Some graph node attributes digraph{ A -> B; A -> C; C -> D; A [label="A Node";style=filled; fillcolor="ivory2"]; B [label="BNode"; shape="diamond"]; C [shape="record"; label="{C|CNode|{Lft|Rgt}}"] }
13 / 44
Basic Syntax - Nodes
Universal graph node attributes digraph{ node[ gradientangle=300 style="filled,rounded" fillcolor="#bebeef:#fefeff" shape="record" ] A -> B; A -> C; C -> D; B [label="BNode"; shape="diamond"]; }
14 / 44
A
B
C D
Prettying it up a bitUse a bit of 'boiler plate' code.
digraph{ rankdir="LR"; edge [ ] node[ gradientangle=300 style="filled,rounded" fillcolor="#bebeef:#fefeff" shape="record" ] // Put your edges here // Put your nodes and labels here. }
15 / 44
Syntax - Complex Nodes"Record" nodes can have internal sections.
digraph{ node[ style="rounded" shape="record" ] A [label="A | A-Node"]; B [label="{{B}|{B-Node}}"]; C [label="{{C}|{C-Node | etc}}"];}
A ANodeB
BNode
C
CNode etc
16 / 44
Syntax - URLsThis is available in the svg, postscript, map outputs only.
URL can be specified on edges and nodes.
digraph{ node[ style="rounded" shape="record" ] NEUGC [label="NEUGC", URL="http://neugc.org/"];}
digraph{ node[ style="rounded" shape="record" ] Johnson -> Boston [label="Drive", URL="https://www.google.com/maps/dir/Johnson,+VT/Boston,+MA"];}
17 / 44
Graphviz OutputGraphviz is capable of producing a variety of outputs:
1. PNG2. JPG3. PDF4. SVG5. others..
SVG
SVG images and their behaviors are defined in XML text files.
Searchable.Scalable (zoomable).Interactive.Linkable.Scriptable (javascript).
18 / 44
digraph{ node[ gradientangle=300 style="filled,rounded" fillcolor="#bebeef:#fefeff" shape="record" ] A ‐> B; A ‐> C; C ‐> D; B [label="BNode"; shape="diamond"]; }
Generating Structured DataThe DOT language is relatively easy to generate.
No proprietary binary data.Plain text.
Could you generate this from a program?
or, from the database?
19 / 44
Diagrams from SQL data
SQL
DB2 is excellent at handling structured data.
select from_node, to_node from node_table;
Recursive queries.
As of v6, DB2 supports recursive table expressions.
Hierarchial queries.
As of v7r1, it handles hierarchial data even better.
20 / 44
Diagrams from SQL dataLet's look at some hierarchial data
ID Name ParentId1 NEUGC 02 VTMUG 13 NHMUG 14 Skip Marchesani - President 25 Tom Bottiggi - VP 46 David Rouleau - Treasurer 47 Bob Ferris - Secretary 48 Paul Rogers - President 39 Doug Davie - VP 810 Joyce Pittman - Treasurer 8
21 / 44
Diagrams from SQL data` create table orgs ( id int, name varchar(50), parent int );
insert into orgs values (1,'NEUGC', 0); insert into orgs values (2,'VTMUG', 1); insert into orgs values (3,'NHMUG', 1); insert into orgs values (4,'Skip Marchesani - President', 2); insert into orgs values (5,'Tom Bottiggi - VP', 4); insert into orgs values (6,'David Rouleau - Treasurer', 4); insert into orgs values (7,'Bob Ferris - Secretary', 4); insert into orgs values (8,'Paul Rogers - President', 3); insert into orgs values (9,'Doug Davie - VP', 8); insert into orgs values (10,'Joyce Pittman - Treasurer', 8);
22 / 44
Hierarchial queriesreference
Select id, Name, parent From orgs Start with name = 'NEUGC' Connect By prior id = parent;
ID Name Parent1 NEUGC 02 VTMUG 13 NHMUG 14 Skip Marchesani - President 25 Tom Bottiggi - VP 46 David Rouleau - Treasurer 47 Bob Ferris - Secretary 48 Paul Rogers - President 39 Doug Davie - VP 810 Joyce Pittman - Treasurer 8
23 / 44
Hierarchial queriesSelect (Select Name From orgs a where a.id = orgs.parent) "parentName", parent, id, Name From orgs Start with name = 'NEUGC' Connect By prior id = parent;
ParentName Parent ID Name- 0 1 NEUGCNEUGC 1 3 NHMUGNHMUG 3 8 Paul Rogers - PresidentPaul Rogers - President 8 10 Joyce Pittman - TreasurerPaul Rogers - President 8 9 Doug Davie - VPNEUGC 1 2 VTMUG... ...
24 / 44
Diagrams from SQL Datawith nodes as (Select (Select Name From orgs a where a.id = orgs.parent) ParentName,parent, id, Name From orgs Start with name = 'NEUGC' Connect By prior id = parent) select '"' || ParentName || '" -> "' || name||'";' Diagram from nodeswhere parentname is not null;
Diagram"NEUGC" -> "NHMUG";"NHMUG" -> "Paul Rogers - President";"Paul Rogers - President" -> "Joyce Pittman - Treasurer";"Paul Rogers - President" -> "Doug Davie - VP";"NEUGC" -> "VTMUG";"VTMUG" -> "Skip Marchesani - President";"Skip Marchesani - President" -> "Bob Ferris - Secretary";
25 / 44
Diagrams from SQL DataFlatten the rows with XMLAGG(). See more.
with nodes as ( Select (Select Name From orgs a where a.id = orgs.parent) ParentName, parent, id, Name From orgs Start with name = 'NEUGC' Connect By prior id = parent ) select 'digraph{' || chr(10) || REPLACE( REPLACE( xmlserialize(xmlagg(xmltext( '"' || ParentName || '" -> "' || name||'";' || chr(10) )) as VARCHAR(1024)) ,'"','"') ,'>','>') || chr(10) || '}' as Diagram from nodes where parentname is not null;
26 / 44
Diagrams from SQL DataIn GraphViz
digraph { "NEUGC" -> "NHMUG"; "NHMUG" -> "Paul Rogers - President"; "Paul Rogers - President" -> "Joyce Pittman - Treasurer"; "Paul Rogers - President" -> "Doug Davie - VP"; "NEUGC" -> "VTMUG"; "VTMUG" -> "Skip Marchesani - President"; "Skip Marchesani - President" -> "Bob Ferris - Secretary"; "Skip Marchesani - President" -> "David Rouleau - Treasurer"; "Skip Marchesani - President" -> "Tom Bottiggi - VP"; }
27 / 44
Automated Diagrams -Command lineGenerate your diagram images from a script.
Graphviz2.38\bin\dot.exe -Tsvg ${filename}.dot -o ${filename}.svg
Input - Text files with .dot extensionOutput - Use SVG.
29 / 44
Automated Diagrams
What tools do you already have access tothat describe relationships on the iseries?
30 / 44
Automated Diagrams
What tools do you already have access tothat describe relationships on the iseries?
Relationship between programs?
31 / 44
Automated Diagrams
What tools do you already have access tothat describe relationships on the iseries?
Relationship between programs?
Relationship between tables?
32 / 44
Automated Diagrams
What tools do you already have access tothat describe relationships on the iseries?
Relationship between programs?
DSPPGMREF
Relationship between tables?
DSPDBR / QSYS2.SYSVIEWDEPS
33 / 44
DSPPGMREFProgram cross reference. (Poor man's Hawkeye/PathFinder)
DSPPGMREF PGM(*ALL/*ALL) OUTPUT(*OUTFILE) OUTFILE(MYLIB/QDSPPGMREF)
With one command, you can dump all the known program relationships onthe system into a single SQL table that you can query.
This includes program calls, and tables that are accessed via nativeoperations.
34 / 44
An example from the wild
IVR_LOAD Diagram Program call tree
IVM_CTLR
Ctlr for Insurance Verification process (FIRSt)
IVR_LOAD
Load FIRST Data
PPLT708VNAMSTRPPPT708PPPT708PPPT785PPPT785PPPT708PPPT708NAMSTRPPPT707IVP_SJ01IVL_FP01IVL_SJ01IVP_NP01NAMSTRIVL_ALLIVP_VR01IVP_PR01IVL_LATEST
IVP...
IVP_FP01IVP_SJ01
IVR_FR01
Generate IVS FR01 Financial Institution Record
NAMSTRPPPT708PPPT708PPPT785PPPT785PPL902BANALT220BANAPT120NAPT120NAPT101NAPT101NAP105NAP105
IVL_FR01_PIVP_PR01
IVP_FR01
MSR306JAVA
Address components using jgeocoder
MSRSQLUTIL
IVR_NP01
Generate IVS NP01 Policy Header Record
IVL_NP01 IVP_NP01
IVR_VR01
Generate IVS VR01 Vehicle Record
IVL_VR01NAMSTRPPPT708PPPT708
IVP_VR01
THROWCATCH
IVR_PR01
Generate IVS PR01 Building or Item Record
IVL_PR01_AIVL_PR01_PPPP915
IVP_COVTYP
IVP_PR01
37 / 44
SQL Entity Relationshipdiagrams?
You can pull a lot of information about your data tables from DB2 itself.Maybe you have the entity relationships documented elsewhere. SYNON /CA 2E?
38 / 44
SYSCAT Diagramcreate view v_orgs as select * from orgs;
create or replace view vtmug_org as Select * From v_orgs Start with name = 'VTMUG' Connect By prior id = parent;
select view_name,object_name from qsys2.SYSVIEWDEP Start with VIEW_NAME= 'VTMUG_ORG' Connect By prior objecT_name = view_name;
39 / 44
VTMUG_ORG V_ORGS ORGS
SYSCAT Diagramselect view_name || '->' || object_name from qsys2.SYSVIEWDEPStart with VIEW_NAME= 'VTMUG_ORG' Connect By prior objecT_name = view_name;
Graphviz:
digraph{ rankdir="LR"; edge [ ] node[ gradientangle=300 style="filled,rounded" fillcolor="#bebeef:#fefeff" shape="record" ] VTMUG_ORG->V_ORGS V_ORGS->ORGS }
40 / 44
IVL_PR01_A
NAMSTR
PPPT708
PPL902BA
PPP904
ISOVIN
PPP902
A real world exampleIVL_PR01_A->NAMSTR IVL_PR01_A->PPPT708 IVL_PR01_A->PPL902BA PPL902BA->PPP902 PPL902BA->PPPT708 IVL_PR01_A->PPP904 IVL_PR01_A->ISOVIN
41 / 44
Another example from thewild
Claims Sys tem TablesAs of 20150128
CLPT006Cl ai m
J6CLTP Type of cl ai m ( 1)J6CLM# Cl ai m nbr ( 6,0)
J6CLCD Cl ai m adj us t er code ( 3)J6SSEX Subr o/ sal vage expect ed ( 1)J6REAS Ot her r eason t o di ar y ( 1)J6NREI Not i f y r ei nsur er ( 1)J6CLOP Dat e cl ai m opened ( 6,0)J6CLCL Dat e cl ai m cl osed ( 6,0)J6CATD Cat as t r ophe dat e ( 6,0)J6CATC Cat as t r ophe code ( 2,0)J6CATS Cat as t r ophe s t at e ( 2)J6CSLS Cause of l os s ( 2)J6LLOC Locat i on of l os s ( 18)J6LSDS Descr i pt i on of l os s ( 70)J6CLMS Cl ai m St at us ( 1)J6LSTM Ti m e of l os s ( 6,0)
CLPT002Addt l descr i pt i on of l os s
J9CLTP Type of cl ai m ( 1)J9CLM# Cl ai m nbr ( 6,0)
J9LSDS Descr i pt i on of l os s ( 70)J9BNSX Sal vage expect ed ( 1)
1: n
n: 1
CLPT003Agent s t at us r epor t
KACLTP Type of cl ai m ( 1)KACLM# Cl ai m nbr ( 6,0)
KALSTD Las t r epor t dat e ( 6,0)
1: n
n: 1
CLPT010Cl ai m di ar y
KBCLTP Type of cl ai m ( 1)KBCLM# Cl ai m nbr ( 6,0)KBCLCD Cl ai m adj us t er code ( 3)
KBDIDT Di ar y dat e ( 6,0)
1: n
n: 1
CLPT029Ref er ence cl ai m num ber
KCCLTP Type of cl ai m ( 1)KCCLM# Cl ai m nbr ( 6,0)
KCRFTP Ref er ence Type of cl ai m ( 1)KCRFCL Ref er ence Cl ai m nbr ( 6,0)
1: n
n: 1
CLPT017Cl ai m pr or at a r ei n i nf o
KDCLTP Type of cl ai m ( 1)KDCLM# Cl ai m nbr ( 6,0)KDPRS# Pr oper t y r i sk num ber ( 3,0)
KDRI SK Tot al r i sk am ount ( 7,0)KDRETE Ret ent i on am ount ( 7,0)
1: n
n: 1
CLPT030Rei n r ecover y hi s t or y
KECLTP Type of cl ai m ( 1)KECLM# Cl ai m nbr ( 6,0)
KEBAMT Am ount bi l l ed ( 9,2)KERVDT Dat e r ecover ed ( 6,0)KERCAM Am ount r ecover ed ( 9,2)KEDTBP Dat e bi l l pr i nt ed ( 6,0)
1: n
n: 1
CLPT035Subr ogee i nf or m at i on
KFCLTP Type of cl ai m ( 1)KFCLM# Cl ai m nbr ( 6,0)KFTN99 For m 1099 s t at us ( 1)KFPP# Payee/ payor num ber ( 9,0)
KFBAMT Am ount bi l l ed ( 9,2)KFRCAM Am ount r ecover ed ( 9,2)
1: n
n: 1
CLPT016Cl ai m pol i cy i nf or m at i on
KGCLTP Type of cl ai m ( 1)KGCLM# Cl ai m nbr ( 6,0)KGPLNO Pol i cy Num ber ( 6)
KGF2CD Nam s t r pol i cy t ype ( 2)KGBPCD Pol i cy s t at e ( 2)KGPLAG Pol i cy agent ( 2)KGLSDT Loss dat e ( 6,0)KGPLNM Pol i cy nam e ( 22)KGAXTX I NSURED LAST NAME ALPHA C ( 15)KGBQST I NSURED FI RST I NI TI AL ( 1)KGCADD Al l ow cover age addi t i ons ( 1)KGPDCD Pol i cy dat e code ( 3,0)KGMYCD Pol i cy t er r i t or y ( 3)KGQYST Repor t i ng bur eau ( 4)
1: n
n: 1
CLPT021Cl ai m ant
KHCLTP Type of cl ai m ( 1)KHCLM# Cl ai m nbr ( 6,0)KHCMT# Cl ai m ant num ber ( 2,0)
KHCLNM Cl ai m ant l as t nam e ( 35)KHCLFN Cl ai m ant f i r s t nam e ( 15)KHSTBL Seat bel t ( 1)KHINXC I ndex car d pr i nt ed ( 1)KHUNCV Unused ext r a cover age ( 5,0)KHDLTD Del et ed ( 1)KHFATL Fat al i t y ( 1)KHPLNO Pol i cy Num ber ( 6)
1: n
n: 1
CLPT019Cl ai m t r ansact i ons i n DW
KPCLTP Type of cl ai m ( 1)KPCLM# Cl ai m nbr ( 6,0)
KPCLPC Cl ai m pr oces s code ( 1)
1: n
n: 1
CLPT031Rei n r epor t com m ent s exc
KVCLTP Type of cl ai m ( 1)KVCLM# Cl ai m nbr ( 6,0)KVRPL# Repor t l i ne num ber ( 3,0)
KVCMMT Repor t com m ent s ( 70)
1: n
n: 1
CLPT032Rei n r epor t dat a exces s
KWRPTT Type of r epor t ( 1)KWCLTP Type of cl ai m ( 1)KWCLM# Cl ai m nbr ( 6,0)KWBLDT Dat e bi l l ed ( 6,0)
KWRETE Ret ent i on am ount ( 7,0)KWRA92 Tot al r eser ve am ount ( 9,2)KWLA92 Tot al l os s am ount ( 9,2)KWEX92 Tot al expense am ount ( 9,2)KWLMTO Li m i t per occur r ence ( 7,0)KWBAMT Am ount bi l l ed ( 9,2)KWTCVG Type of cover age ( 1)KWTRTE Tr eat y ef f ect i ve dat e ( 6,0)KWREST Rei n r epor t pr i nt ed ( 1)
1: n
n: 1
CLPT012Cl ai m i n sui t pr i nt
KZCLTP Type of cl ai m ( 1)KZCLM# Cl ai m nbr ( 6,0)
KZCMT# Cl ai m ant num ber ( 2,0)KZCLMN Cl ai m ant nam e ( 41)KZCLCD Cl ai m adj us t er code ( 3)KZPLNO Pol i cy Num ber ( 6)KZA9CD Pol i cy t ype ( 2)KZCLCV Cl ai m cover age nam e ( 10)KZCOVX Cover age ext ens i on ( 3)KZI TEM I t em num ber ( 3,0)KZBPCD Pol i cy s t at e ( 2)KZPLAG Pol i cy agent ( 2)KZLSDT Loss dat e ( 6,0)
1: n
n: 1
CLPT045Cl ai m r ei nsur ance r eser ve
LQCLTP Type of cl ai m ( 1)LQCLM# Cl ai m nbr ( 6,0)LQTCVG Type of cover age ( 1)
LQRA92 Tot al r eser ve am ount ( 9,2)LQSPNB Rei nsur ance r eser ve am t ( 9,2)
1: n
n: 1
CLPT048Cl ai m ant s t at us r epor t
DECLTP Type of cl ai m ( 1)DECLM# Cl ai m nbr ( 6,0)
DELSTD Las t r epor t dat e ( 6,0)
1: n
n: 1
CLPT011Cl ai m di ar y pr i nt
KYCLTP Type of cl ai m ( 1)KYCLM# Cl ai m nbr ( 6,0)KYCLCD Cl ai m adj us t er code ( 3)
KYLSIN Loss i ncur r ed ( 9,2)KYRSAM Reser ve am ount ( 9,2)
1: n
n: 1
CLPT008Cl ai m aut o i nf or m at i on
KJCLTP Type of cl ai m ( 1)KJCLM# Cl ai m nbr ( 6,0)KJPLNO Pol i cy Num ber ( 6)
KJ I PTX Vehi cl e year ( 4)KJVEH# Vehi cl e num ber at r ( 2)KJ I QTX Vehi cl e m ake ( 4)KJ I RTX Vehi cl e m odel ( 2)KJSNUM Ser i al num ber ( 17)KJOPNM Oper at or nam e ( 30)KJOPDT Oper at or bi r t hdat e ( 6,0)KJACCS Acci dent s t at e ( 2)KJCI TN Pol i ce ci t at i on ( 50)KJVDAM I nsur ed vehi cl e dam age ( 15)KJ I LI A I nsur ed % l i abi l i t y ( 3)KJTI ER Ti er ( 1)
1: n
n: 1
CLPT014Cl ai m pol i cy cover age
KKCLTP Type of cl ai m ( 1)KKCLM# Cl ai m nbr ( 6,0)KKPLNO Pol i cy Num ber ( 6)KKA9CD Pol i cy t ype ( 2)KKCLCV Cl ai m cover age nam e ( 10)KKCOVX Cover age ext ens i on ( 3)KKI TEM I t em num ber ( 3,0)
KKLMTA Li m i t ( at r ) ( 7,0)KKDEDA Deduct i bl e ( at r ) ( 5,0)KKCLSA Cl as s ( at r ) ( 6)KKTCVG Type of cover age ( 1)
1: n
n: 1
CLPT046St at i s t i cal Aut o
LRCLTP Type of cl ai m ( 1)LRCLM# Cl ai m nbr ( 6,0)LRPLNO Pol i cy Num ber ( 6)
LRNJCD Aut o no f aul t / FPB codes ( 4)LRR5ST Aut o pr ef er r ed di scount ( 1)
1: n
n: 1
CLPT022Cl ai m ant ext ens i on
KI CLTP Type of cl ai m ( 1)KI CLM# Cl ai m nbr ( 6,0)KI CMT# Cl ai m ant num ber ( 2,0)
KI BRDT Bi r t hdat e ( 6,0)KI OCUP Occupat i on ( 20)KI SEX Sex ( 1)KI LAGE Age on l os s dat e ( 3,0)KIMCRS MCRS num ber ( 7,0)
1: n
n: 1
CLPT025FPB subm i ss i on
KNCLTP Type of cl ai m ( 1)KNCLM# Cl ai m nbr ( 6,0)KNCMT# Cl ai m ant num ber ( 2,0)KNFPB# FPB subm i ss i on num ber ( 3,0)
KNTN99 For m 1099 s t at us ( 1)KNPP# Payee/ payor num ber ( 9,0)KNBAMT Am ount bi l l ed ( 9,2)KNSRVD Dat e of s er vi ce ( 20)KNSBDT Subm i t dat e ( 6,0)KNPRDT MCRS pr oces s dat e ( 6,0)KNADAC Addt l act i on l i ne ( 1)KNAC60 Act i on 60 ( 60)
1: n
n: 1
CLPT033Reser ve s t at us
KQCLTP Type of cl ai m ( 1)KQCLM# Cl ai m nbr ( 6,0)KQCMT# Cl ai m ant num ber ( 2,0)KQCLCV Cl ai m cover age nam e ( 10)KQI TEM I t em num ber ( 3,0)KQCOVX Cover age ext ens i on ( 3)
KQLMTA Li m i t ( at r ) ( 7,0)KQDEDA Deduct i bl e ( at r ) ( 5,0)KQCLSA Cl as s ( at r ) ( 6)KQRSST Reser ve s t at us ( 6)KQRSAM Reser ve am ount ( 9,2)KQDGRS Di r ect gr os s pai d ( 9,2)KQDGEX Di r ect gr os s expense ( 9,2)KQRODT Dat e r eser ve opened ( 6,0)KQRSCL Dat e r eser ve cl osed ( 6,0)KQXCOV Ext r a cover age used ( 5,0)KQLAPD Li m i t am ount pai d ( 9,2)KQRECV Rei n r cover ed/ r cover abl e ( 9,2)KQXTRT Tr eat y t ype ( 1)KQSUI T I n sui t ( 1)KQTCVG Type of cover age ( 1)
1: n
n: 1
CLPT013Cl ai m i ndex car d
KTCLTP Type of cl ai m ( 1)KTCLM# Cl ai m nbr ( 6,0)KTCMT# Cl ai m ant num ber ( 2,0)
KTCADR Cl ai m ant addr es s ( 41)KTSSNB Soci al s ecur i t y num ber ( 9,0)KTI NJT I nj ur y t ype ( 3)KTI NJY Al l edged i nj ur i es ( 45)KTDRNM Doct or nam e ( 40)KTDRAD Doct or addr es s ( 47)KTATNM At t or ney nam e ( 40)KTATAD At t or ney addr es s ( 47)KTI NXC I ndex car d pr i nt ed ( 1)KTR0ST I ndex dr af t pr i nt ed ( 1)KTCI TY Ci t y ( 25)KTZI P Zi p code ( 5)KTSTTE St at e code ( 2)KTLCDR Locat i on descr i pt i on ( 50)
1: n
n: 1
CLPT028Cl ai m ant t or t opt i on
NPCLTP Type of cl ai m ( 1)NPCLM# Cl ai m nbr ( 6,0)NPCMT# Cl ai m ant num ber ( 2,0)
NPTORT Tor t t ype ( 2)NPDMTX Com pany nam e ( 50)NPCLCD Cl ai m adj us t er code ( 3)NPTYST Ser i ous i nj ur y ( 1)
1: n
n: 1
CLPT007Cl ai m aut o di spl ay l i m i t
KLCLTP Type of cl ai m ( 1)KLCLM# Cl ai m nbr ( 6,0)KLPLNO Pol i cy Num ber ( 6)KLA9CD Pol i cy t ype ( 2)KLCLCV Cl ai m cover age nam e ( 10)KLCOVX Cover age ext ens i on ( 3)KLI TEM I t em num ber ( 3,0)
KLBMCD Li m i t or Deduct i bl e ( 10)KLLMTO Li m i t per occur r ence ( 7,0)
1: n
n: 1
CLPT015Cl ai m pol i cy cover age ext
KMCLTP Type of cl ai m ( 1)KMCLM# Cl ai m nbr ( 6,0)KMPLNO Pol i cy Num ber ( 6)KMA9CD Pol i cy t ype ( 2)KMCLCV Cl ai m cover age nam e ( 10)KMCOVX Cover age ext ens i on ( 3)KMI TEM I t em num ber ( 3,0)
KMDS65 Descr i pt i on 65 ( 65)
1: n
n: 1
CLPT037St at i s t i cal Cr i m e cov
K3CLTP Type of cl ai m ( 1)K3CLM# Cl ai m nbr ( 6,0)K3PLNO Pol i cy Num ber ( 6)K3A9CD Pol i cy t ype ( 2)K3CLCV Cl ai m cover age nam e ( 10)K3COVX Cover age ext ens i on ( 3)K3I TEM I t em num ber ( 3,0)
K3CTY Count y ( 3)K3PRTD Pr ot ect i ve devi ce ( 1)K3CVC2 Cover age code ( 2) ( 2)K3MOCC MI I occupancy ( 2)K3MGRD MI I gr ade ( 1)K3RSK# Ri sk num ber ( 1)K3DDAM Deduct i bl e am ount code ( 1)K3DDTP Deduct i bl e t ype ( 1)K3OINS Ot her i nsur ance code ( 1)
1: n
n: 1
CLPT038St at i s t i cal Far m owner s
K4CLTP Type of cl ai m ( 1)K4CLM# Cl ai m nbr ( 6,0)K4PLNO Pol i cy Num ber ( 6)K4A9CD Pol i cy t ype ( 2)K4CLCV Cl ai m cover age nam e ( 10)K4COVX Cover age ext ens i on ( 3)K4I TEM I t em num ber ( 3,0)
K4CTY Count y ( 3)K4RSK# Ri sk num ber ( 1)K4PROT Pr ot ect i on code ( 1)K4CSTR Cons t r uct i on code ( 1)K4OINS Ot her i nsur ance code ( 1)K4RSTP Ri sk t ype ( 1)K4FORM Pol i cy f or m ( 2)K4FOSU Occupancy code ( 1)K4MOCC MI I occupancy ( 2)K4MGRD MI I gr ade ( 1)K4DDAM Deduct i bl e am ount code ( 1)K4DDTP Deduct i bl e t ype ( 1)
1: n
n: 1
CLPT039St at i s t i cal Fi r e cov
K5CLTP Type of cl ai m ( 1)K5CLM# Cl ai m nbr ( 6,0)K5PLNO Pol i cy Num ber ( 6)K5A9CD Pol i cy t ype ( 2)K5CLCV Cl ai m cover age nam e ( 10)K5COVX Cover age ext ens i on ( 3)K5I TEM I t em num ber ( 3,0)
K5CTY Count y ( 3)K5RSK# Ri sk num ber ( 1)K5PROT Pr ot ect i on code ( 1)K5CSTR Cons t r uct i on code ( 1)K5OINS Ot her i nsur ance code ( 1)K5DDAM Deduct i bl e am ount code ( 1)K5DDTP Deduct i bl e t ype ( 1)K5CVC1 Cover age code ( 1) ( 1)K5FORM Pol i cy f or m ( 2)K5MOCC MI I occupancy ( 2)K5MGRD MI I gr ade ( 1)K5OCSU Occupancy/ s i ze/ use ( 2)
1: n
n: 1
CLPT040St at i s t i cal GL cov
K6CLTP Type of cl ai m ( 1)K6CLM# Cl ai m nbr ( 6,0)K6PLNO Pol i cy Num ber ( 6)K6A9CD Pol i cy t ype ( 2)K6CLCV Cl ai m cover age nam e ( 10)K6COVX Cover age ext ens i on ( 3)K6I TEM I t em num ber ( 3,0)
K6CTY Count y ( 3)K6SCTY Sub count y ( 1)K6ALMC Annual agg l i m i t code ( 2)
1: n
n: 1
CLPT041St at i s t i cal Gl as s cov
K7CLTP Type of cl ai m ( 1)K7CLM# Cl ai m nbr ( 6,0)K7PLNO Pol i cy Num ber ( 6)K7A9CD Pol i cy t ype ( 2)K7CLCV Cl ai m cover age nam e ( 10)K7COVX Cover age ext ens i on ( 3)K7I TEM I t em num ber ( 3,0)
K7CTY Count y ( 3)K7RSK# Ri sk num ber ( 1)K7GSSB Gl as s subl i ne ( 2)K7OINS Ot her i nsur ance code ( 1)K7MOCC MI I occupancy ( 2)K7MGRD MI I gr ade ( 1)K7DDAM Deduct i bl e am ount code ( 1)K7DDTP Deduct i bl e t ype ( 1)
1: n
n: 1
CLPT042St at i s t i cal Hom eowner
K8CLTP Type of cl ai m ( 1)K8CLM# Cl ai m nbr ( 6,0)K8PLNO Pol i cy Num ber ( 6)K8A9CD Pol i cy t ype ( 2)K8CLCV Cl ai m cover age nam e ( 10)K8COVX Cover age ext ens i on ( 3)K8I TEM I t em num ber ( 3,0)
K8CTY Count y ( 3)K8SCTY Sub count y ( 1)K8PROT Pr ot ect i on code ( 1)K8CSTR Cons t r uct i on code ( 1)K8CONY Cons t r uct i on/ m anuf ac year ( 2)K8DDAM Deduct i bl e am ount code ( 1)K8DDTP Deduct i bl e t ype ( 1)K8FORM Pol i cy f or m ( 2)K8ZI P Zi p code ( 5)K8FOSU Occupancy code ( 1)
1: n
n: 1
CLPT043St at i s t i cal IM cov
K9CLTP Type of cl ai m ( 1)K9CLM# Cl ai m nbr ( 6,0)K9PLNO Pol i cy Num ber ( 6)K9A9CD Pol i cy t ype ( 2)K9CLCV Cl ai m cover age nam e ( 10)K9COVX Cover age ext ens i on ( 3)K9I TEM I t em num ber ( 3,0)
K9CTY Count y ( 3)K9RSK# Ri sk num ber ( 1)K9OINS Ot her i nsur ance code ( 1)K9DDAM Deduct i bl e am ount code ( 1)K9DDTP Deduct i bl e t ype ( 1)K9MOCC MI I occupancy ( 2)K9MGRD MI I gr ade ( 1)
1: n
n: 1
CLPT044St at i s t i cal Mobi l e hom e
LACLTP Type of cl ai m ( 1)LACLM# Cl ai m nbr ( 6,0)LAPLNO Pol i cy Num ber ( 6)LAA9CD Pol i cy t ype ( 2)LACLCV Cl ai m cover age nam e ( 10)LACOVX Cover age ext ens i on ( 3)LAI TEM I t em num ber ( 3,0)
LACTY Count y ( 3)LASCTY Sub count y ( 1)LAPROT Pr ot ect i on code ( 1)LATI EC Ti edown code ( 1)LACONY Cons t r uct i on/ m anuf ac year ( 2)LADDAM Deduct i bl e am ount code ( 1)LADDTP Deduct i bl e t ype ( 1)LAFORM Pol i cy f or m ( 2)LAFOSU Occupancy code ( 1)
1: n
n: 1
CLPT026FPB subm addt l act i on
KOCLTP Type of cl ai m ( 1)KOCLM# Cl ai m nbr ( 6,0)KOCMT# Cl ai m ant num ber ( 2,0)KOFPB# FPB subm i ss i on num ber ( 3,0)KOACT# Act i on l i ne num ber ( 3,0)
KOAC60 Act i on 60 ( 60)
1: n
n: 1
CLPT034Reser ve t r ansact i on
KRCLTP Type of cl ai m ( 1)KRCLM# Cl ai m nbr ( 6,0)KRCMT# Cl ai m ant num ber ( 2,0)KRCLCV Cl ai m cover age nam e ( 10)KRCOVX Cover age ext ens i on ( 3)KRI TEM I t em num ber ( 3,0)KRRSV# Reser ve t r ansact i on nbr ( 3,0)
KRCHGA Am ount of change ( 7,0)KRTDTE Tr ansact i on dat e ( 6,0)KRRSVT Reser ve t r ansact i on t ype ( 2)
1: n
n: 1
CLPT004Cash t r ansact i on
KSCLTP Type of cl ai m ( 1)KSCLM# Cl ai m nbr ( 6,0)KSCMT# Cl ai m ant num ber ( 2,0)KSCLCV Cl ai m cover age nam e ( 10)KSCOVX Cover age ext ens i on ( 3)KSI TEM I t em num ber ( 3,0)KSCSH# Cash t r ansact i on num ber ( 3,0)
KSTRTP Type of t r ansact i on ( 1)KSCHK# Check num ber ( 6)KSTDTE Tr ansact i on dat e ( 6,0)KSTRNA Tr ansact i on am ount ( 9,2)KSACCT Account ( 2)KSCRTR Ref t r ans t ype ( cash/ r es ) ( 1)KSTRN# Ref t r ansact i on seq nbr ( 3,0)KSGCCD Ledger code ( cl ai m s ) ( 4)
1: n
n: 1
CLPT020Cl ai m wor ksheet pr i nt
K0CLTP Type of cl ai m ( 1)K0CLM# Cl ai m nbr ( 6,0)K0CMT# Cl ai m ant num ber ( 2,0)K0CLCV Cl ai m cover age nam e ( 10)K0COVX Cover age ext ens i on ( 3)K0I TEM I t em num ber ( 3,0)K0CRTR Ref t r ans t ype ( cash/ r es ) ( 1)K0SQ## Sequence ( 3,0)K0DTTR Dat e of t r ansact i on ( 6,0)
K0TRNA Tr ansact i on am ount ( 9,2)K0TRDS Tr ansact i on descr i pt i on ( 14)K0TN99 For m 1099 s t at us ( 1)K0PP# Payee/ payor num ber ( 9,0)K0SRVD Dat e of s er vi ce ( 20)
1: n
n: 1
CLPT023Fat al i t i es pr i nt
K1CLTP Type of cl ai m ( 1)K1CLM# Cl ai m nbr ( 6,0)K1CMT# Cl ai m ant num ber ( 2,0)K1CLCV Cl ai m cover age nam e ( 10)K1COVX Cover age ext ens i on ( 3)K1I TEM I t em num ber ( 3,0)
K1CLCD Cl ai m adj us t er code ( 3)K1PLNM Pol i cy nam e ( 22)K1BPCD Pol i cy s t at e ( 2)K1PLAG Pol i cy agent ( 2)K1LSDT Loss dat e ( 6,0)K1CLMN Cl ai m ant nam e ( 41)
1: n
n: 1
CLPT036Tr ansact i on audi t pr i nt
K2ACCT Account ( 2)K2CLTP Type of cl ai m ( 1)K2CLM# Cl ai m nbr ( 6,0)K2CMT# Cl ai m ant num ber ( 2,0)K2CLCV Cl ai m cover age nam e ( 10)K2COVX Cover age ext ens i on ( 3)K2I TEM I t em num ber ( 3,0)K2CRTR Ref t r ans t ype ( cash/ r es ) ( 1)K2SQNO Sequence num ber ( 5,0)
K2CLCD Cl ai m adj us t er code ( 3)K2PLNO Pol i cy Num ber ( 6)K2A9CD Pol i cy t ype ( 2)K2SFNB I t em num ber 15440 ( 3,0)K2BPCD Pol i cy s t at e ( 2)K2PLAG Pol i cy agent ( 2)K2TRTP Type of t r ansact i on ( 1)K2CHK# Check num ber ( 6)K2LSDT Loss dat e ( 6,0)K2TRNA Tr ansact i on am ount ( 9,2)K2RSAM Reser ve am ount ( 9,2)K2PPNM Payee/ payor nam e ( 45)K2PLNM Pol i cy nam e ( 22)
1: n
n: 1
CLPT076Cl ai m t r ansact i on hi s t or y
APCLTP Type of cl ai m ( 1)APCLM# Cl ai m nbr ( 6,0)APCMT# Cl ai m ant num ber ( 2,0)APCLCV Cl ai m cover age nam e ( 10)APCOVX Cover age ext ens i on ( 3)API TEM I t em num ber ( 3,0)APCSH# Cash t r ansact i on num ber ( 3,0)APTRTP Type of t r ansact i on ( 1)APCHK# Check num ber ( 6)
APTDTE Tr ansact i on dat e ( 6,0)APTRNA Tr ansact i on am ount ( 9,2)APACCT Account ( 2)APRSVT Reser ve t r ansact i on t ype ( 2)APPPNM Payee/ payor nam e ( 45)
1: n
n: 1
CLPT024FPB cash t r ansact i on
KUCLTP Type of cl ai m ( 1)KUCLM# Cl ai m nbr ( 6,0)KUCMT# Cl ai m ant num ber ( 2,0)KUCLCV Cl ai m cover age nam e ( 10)KUCOVX Cover age ext ens i on ( 3)KUI TEM I t em num ber ( 3,0)KUCSH# Cash t r ansact i on num ber ( 3,0)KUFPB# FPB subm i ss i on num ber ( 3,0)
1: n
n: 1
CLPT009Cl ai m check pr i nt
KXCLTP Type of cl ai m ( 1)KXCLM# Cl ai m nbr ( 6,0)KXCMT# Cl ai m ant num ber ( 2,0)KXCLCV Cl ai m cover age nam e ( 10)KXCOVX Cover age ext ens i on ( 3)KXI TEM I t em num ber ( 3,0)KXCSH# Cash t r ansact i on num ber ( 3,0)
KXTRTP Type of t r ansact i on ( 1)KXCHK# Check num ber ( 6)KXACCT Account ( 2)KXPLNO Pol i cy Num ber ( 6)KXCLCD Cl ai m adj us t er code ( 3)KXPLNM Pol i cy nam e ( 22)KXF2CD Nam s t r pol i cy t ype ( 2)KXBPCD Pol i cy s t at e ( 2)KXPLAG Pol i cy agent ( 2)KXENNB Check dat e ( 6,0)KXCLMN Cl ai m ant nam e ( 41)KXPYDS Paym ent descr i pt i on ( 17)KXLSDT Loss dat e ( 6,0)KXCKCV Check cover age desc ( 41)KXGCCD Ledger code ( cl ai m s ) ( 4)KXTRNA Tr ansact i on am ount ( 9,2)KXPPNM Payee/ payor nam e ( 45)KXCKN1 Check not e 1 ( 45)KXCKN2 Check not e 2 ( 45)KXCKN3 Check not e 3 ( 45)KXPPA1 Payee/ payor addr es s 1 ( 45)KXPPA2 Payee/ payor addr es s 2 ( 45)KXPDCD Pol i cy dat e code ( 3,0)KXADDR Addr es s ( 45)KXB0TX Payee addr es s l i ne 1 ( 45)
1: n
n: 1
43 / 44