Рефетека.ру / Страхование

Реферат: База данных страховой компании

(antb)

MEMBER('ANT')
! НАЧАЛЬНАЯ СОРТИРОВКА
S PROCEDURE
M GROUP
M1 REAL,DIM(79,14) !T17
MK REAL,DIM(8,14)
MG REAL,DIM(350,14).

CODE

CLEAR(M)

BUFFER(LIC,0.9)

SET(LIC)

LOOP UNTIL EOF(LIC)

NEXT(LIC)

CLEAR(T17:RECORD)

T17:PNOMBER=LIC:PNOMBER

GET(T17,T17:C)

IF ~ERRORCODE()

M1[LIC:NREGION,1]+=T17:F001/1000 MG[LIC:NCITY,1]+=T17:F001/1000

M1[LIC:NREGION,2]+=T17:F004/1000 MG[LIC:NCITY,2]+=T17:F004/1000

M1[LIC:NREGION,3]+=T17:F010/1000 MG[LIC:NCITY,3]+=T17:F010/1000

IF T17:F018>0

THEN

M1[LIC:NREGION,4]+=T17:F018/1000 MG[LIC:NCITY,4]+=T17:F018/1000

ELSE

IF T17:F020>0

M1[LIC:NREGION,4]-=T17:F020/1000

MG[LIC:NCITY,4]-=T17:F020/1000...

CLEAR(T67:RECORD)

T67:PNOMBER=LIC:PNOMBER

GET(T67,T67:C)

IF ~ERRORCODE()

M1[LIC:NREGION,5]+=T67:A400N/1000

MG[LIC:NCITY,5]+=T67:A400N/1000

M1[LIC:NREGION,6]+=T67:A400K/1000
MG[LIC:NCITY,6]+=T67:A400K/1000 M1[LIC:NREGION,7]+=T67:A495N/1000
MG[LIC:NCITY,7]+=T67:A495N/1000 M1[LIC:NREGION,8]+=T67:A495K/1000
MG[LIC:NCITY,8]+=T67:A495K/1000.

CLEAR(F92:RECORD)

F92:PNOMBER=LIC:PNOMBER

GET(F92,F92:FC)

IF ~ERRORCODE()

M1[LIC:NREGION,9]+=F92:F1/1000 MG[LIC:NCITY,9]+=F92:F1/1000
M1[LIC:NREGION,10]+=F92:F7/1000 MG[LIC:NCITY,10]+=F92:F7/1000
M1[LIC:NREGION,11]+=F92:F10/1000 MG[LIC:NCITY,11]+=F92:F10/1000

IF F92:F19>0

THEN

M1[LIC:NREGION,12]+=F92:F19/1000 MG[LIC:NCITY,12]+=F92:F19/1000

ELSE

IF F92:F21>0

M1[LIC:NREGION,12]-=F92:F21/1000

MG[LIC:NCITY,12]-=F92:F21/1000...

CLEAR(SVV:RECORD)

SVV:PNOM=LIC:PNOMBER

SVV:KZ=2

GET(SVV,SVV:K)

IF ~ERRORCODE()

M1[LIC:NREGION,13]+=SVV:CR2

MG[LIC:NCITY,13]+=SVV:CR2.

CLEAR(DF:RECORD)

DF:PNOMBER=LIC:PNOMBER

GET(DF,DF:C)

IF ~ERRORCODE()

M1[LIC:NREGION,14]+=DF:S750N MG[LIC:NCITY,14]+=DF:S750N.

.

LOOP N#=24 TO 31

TER:KODT=N#

SET(TER:K,TER:K)

LOOP UNTIL EOF(TERR)

NEXT(TERR)

IF TER:KODTN# THEN BREAK.

LOOP M#=1 TO 14 MK[N#-23,M#]+=M1[TER:NREGION,M#]...

LOOP I#=1 TO 8

F:NKUST=I#+23

F:F1=MK[I#,5]

F:F2=MK[I#,6]

F:F3=MK[I#,7]

F:F4=MK[I#,8]

F:F5=MK[I#,12]

F:F6=MK[I#,4]

F:F9=MK[I#,10]

F:F10=MK[I#,2]

F:F11=MK[I#,9]

F:F12=MK[I#,1]

F:F13=MK[I#,11]

F:F14=MK[I#,3]

F:F15=MK[I#,13]

F:F16=MK[I#,14]

ADD(F).

LOOP I#=1 TO 79

F:NKUST=0

F:NREGION=I#

F:F1=M1[I#,5]

F:F2=M1[I#,6]

F:F3=M1[I#,7]

F:F4=M1[I#,8]

F:F5=M1[I#,12]

F:F6=M1[I#,4]

F:F9=M1[I#,10]

F:F10=M1[I#,2]

F:F11=M1[I#,9]

F:F12=M1[I#,1]

F:F13=M1[I#,11]

F:F14=M1[I#,3]

F:F15=M1[I#,13]

F:F16=M1[I#,14]

ADD(F).

LOOP I#=1 TO 350

F:NKUST=0

F:NREGION=0

F:NGOR=I#

F:F1=MG[I#,5]

F:F2=MG[I#,6]

F:F3=MG[I#,7]

F:F4=MG[I#,8]

F:F5=MG[I#,12]

F:F6=MG[I#,4]

F:F9=MG[I#,10]

F:F10=MG[I#,2]

F:F11=MG[I#,9]

F:F12=MG[I#,1]

F:F13=MG[I#,11]

F:F14=MG[I#,3]

F:F15=MG[I#,13]

F:F16=MG[I#,14]

ADD(F).
! PUT(F).
! ----- АНАЛИЗ ПОКАЗАТЕЛЕЙ РАЗВИТИЯ ------
AT2 PROCEDURE
YU DOS,ASCII,NAME('YU.YU')

RECORD
ST STRING(140)..

GROUP,OVER(ST)

STRING(1)
ST2 STRING(32)

STRING(4)
ST3 STRING(@N-_8.2)

STRING(1)
ST4 STRING(@N_10.2)

STRING(1)
ST5 STRING(@N_8.2)

STRING(1)
ST6 STRING(@N_9.2)

STRING(1)
ST7 STRING(@N_8.2)

STRING(1)
ST8 STRING(@N_10.2)

STRING(1)
ST9 STRING(@N-_10.2)

STRING(1)
ST10 STRING(@N_10.2)

STRING(1)
ST11 STRING(@N-_9.2)

STRING(1)
ST12 STRING(@N_8.2)

.
YU1 DOS,ASCII,NAME('YU1.YU')

RECORD
STT STRING(130)..

GROUP,OVER(STT)

STRING(1)
ST02 STRING(32)

STRING(5)
ST13 STRING(@N_8.2)

STRING(3)
ST14 STRING(@N_9.2)

STRING(3)
ST15 STRING(@N_7.2)

STRING(3)
ST16 STRING(@N_9.2)

STRING(3)
ST17 STRING(@N_9.2)

STRING(3)
ST18 STRING(@N_8.2)

STRING(3)
ST19 STRING(@N-_8.2)

STRING(3)
ST20 STRING(@N_9.2)

.
M GROUP
M1 REAL,DIM(79,14) !T17
MK REAL,DIM(8,14)
MG REAL,DIM(350,14).

CODE

PN#=0

CREATE(YU)

ST='АНАЛИЗ ПОКАЗАТЕЛЕЙ РАЗВИТИЯ СТРАХОВЫХ
ОРГАНИЗАЦИЙ'

ST=CENTER(ST)

ADD(YU)

CLEAR(ST)

ST=' млн.руб. '

ADD(YU)
CLEAR(ST) ST='

' ADD(YU)
CLEAR(ST)
ST='¦ ¦ Доход (балансовая ¦ Уставный

¦ Страховые ¦ Доход (балансовая прибыль) в % к ¦'
ADD(YU)
CLEAR(ST)
ST='¦ Наименование ¦ прибыль (убыток) ¦ капитал

¦ взносы

¦'
ADD(YU)
CLEAR(ST)
ST='¦ ¦ ¦

¦ ¦ уставному капиталу ¦ страховым взносам¦'
ADD(YU)
CLEAR(ST)
ST='¦ страховой организации

¦'
ADD(YU)
CLEAR(ST)
ST='¦ ¦ 1994 ¦ 1995 ¦ 1994 ¦
1995 ¦ 1994 ¦ 1995 ¦ 1994 ¦ 1995 ¦ 1992 ¦ 1993 ¦'
ADD(YU)
CLEAR(ST) ST='

'
ADD(YU)
CLEAR(ST)
ST='¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦ 5

¦ 6 ¦ 7 ¦ 8 ¦ 9 ¦ 10 ¦ 11
¦'
ADD(YU)
CLEAR(ST) ST='

'
ADD(YU)
CLEAR(ST)
CREATE(YU1)
STT='АНАЛИЗ ПОКАЗАТЕЛЕЙ РАЗВИТИЯ СТРАХОВЫХ ОРГАНИЗАЦИЙ '
STT=CENTER(STT)
ADD(YU1)
CLEAR(STT)
STT=' (продолжение)'
ADD(YU1)
CLEAR(STT) STT='

'
ADD(YU1)
CLEAR(STT)
STT='¦ ¦ С т р а х о в ы е ¦ Доход от инвес- ¦ Доход от инвест-я страх-х рез-в в % к ¦'
ADD(YU1)
CLEAR(STT)
STT='¦ Наименование ¦ р е з е р в ы ¦ тирования стра- ¦'
ADD(YU1)
CLEAR(STT)
STT='¦ ¦ ¦ ховых резервов ¦ уставному капиталу ¦ страховым взносам ¦'
ADD(YU1)
CLEAR(STT)
STT='¦ страховой организации

¦'
ADD(YU1)
CLEAR(STT)
STT='¦ ¦ 1994 ¦ 1995 ¦ 1994 ¦
1995 ¦ 1994 ¦ 1995 ¦ 1994 ¦ 1995 ¦'
ADD(YU1)
CLEAR(STT) STT='


ADD(YU1)
CLEAR(STT)
STT='¦ 1 ¦ 12 ¦ 13 ¦ 14 ¦
15 ¦ 16 ¦ 17 ¦ 18 ¦ 19 ¦'
ADD(YU1)
CLEAR(STT)STT='
ADD(YU1)
CLEAR(STT)
INS:NTER=0
SET(INS:K1,INS:K1)
LOOP UNTIL EOF(INSP) ! 1
NEXT(INSP)
PN#=0 if ins:nter>23 ! 2
THEN
ST2=CLIP(INS:NAME)&' инспекция'
ST02=CLIP(INS:NAME)&' инспекция'
ELSE
ST2='Инспекция '
ADD(yu)
ST2=INS:NAME
ST02='Инспекция '
ADD(YU1)
ST02=INS:NAME. ! 2
TER:KODT=INS:NTER
SET(TER:K1,TER:K1)
LOOP UNTIL EOF(TERR) ! 3
NEXT(TERR)
IF TER:KODTINS:NTER THEN BREAK.
IF INS:NTER>23 AND PN#=0 ! 4
F:NKUST=INS:NTER
GET(F,F:K1)
IF F:F5>0
ST3=F:F5.
IF F:F6>0
ST4=F:F6.
IF F:F1>0
ST5=F:F1.
IF F:F2>0
ST6=F:F2.
IF F:F11>0
ST7=F:F11.
IF F:F12>0
ST8=F:F12.
IF ST3>0 AND ST5>0
ST9=ST3/ST5*100.
IF ST4>0 AND ST6>0
ST10=ST4/ST6*100.
IF ST3>0 AND ST7>0
ST11=ST3/ST7*100.
IF ST4>0 AND ST8>0
ST12=ST4/ST8*100.
IF F:F3>0
ST13=F:F3.
IF F:F4>0
ST14=F:F4.
IF F:F9>0
ST15=F:F9.
IF F:F10>0
ST16=F:F10.
IF ST15>0 AND ST13>0
ST17=ST15/ST13*100.
IF ST16>0 AND ST14>0
ST18=ST16/ST14*100.
IF ST15>0 AND ST3>0
ST19=ST15/ST3*100.
IF ST16>0 AND ST4>0
ST20=ST16/ST4*100.
PN#=1
ADD(YU)
CLEAR(ST)
ADD(YU1)
CLEAR(STT)
ADD(YU1)
ADD(YU).

! 4
XRE:NREGION=TER:NREGION
SET(XRE:K1,XRE:K1)
LOOP UNTIL EOF(XREG)
! 5
NEXT(XREG)
IF XRE:NREGIONTER:NREGION THEN BREAK.
IF INS:NTER>23
ST2=XRE:IREG.
ST02=ST2
F:NREGION=XRE:NREGION
GET(F,F:K2)
IF F:F5>0
ST3=F:F5.
IF F:F6>0
ST4=F:F6.
IF F:F1>0
ST5=F:F1.
IF F:F2>0
ST6=F:F2.
IF F:F11>0
ST7=F:F11.
IF F:F12>0
ST8=F:F12.
IF ST3>0 AND ST5>0
ST9=ST3/ST5*100.
IF ST4>0 AND ST6>0
ST10=ST4/ST6*100.
IF ST3>0 AND ST7>0
ST11=ST3/ST7*100.
IF ST4>0 AND ST8>0
ST12=ST4/ST8*100.
IF F:F3>0
ST13=F:F3.
IF F:F4>0
ST14=F:F4.
IF F:F9>0
ST15=F:F9.
IF F:F10>0
ST16=F:F10.
IF ST15>0 AND ST13>0 ST17=ST15/ST13*100.
IF ST16>0 AND ST14>0 ST18=ST16/ST14*100.
IF ST15>0 AND ST3>0
ST19=ST15/ST3*100.
IF ST16>0 AND ST4>0
ST20=ST16/ST4*100.
ADD(YU)
CLEAR(ST)
ADD(YU1)
CLEAR(STT)
ADD(YU)
ADD(YU1)
GOR:GOROD=' '
SET(GOR:CGOR,GOR:CGOR)
LOOP UNTIL EOF(GOR) ! 6
NEXT(GOR)
IF GOR:NREGIONXRE:NREGION THEN CYCLE.
F:NGOR=GOR:KG
GET(F,F:K3)
IF F:F5>0
ST3=F:F5.
IF F:F6>0
ST4=F:F6.
IF F:F1>0
ST5=F:F1.
IF F:F2>0
ST6=F:F2.
IF F:F11>0
ST7=F:F11.
IF F:F12>0
ST8=F:F12.
IF ST3>0 AND ST5>0 ST9=ST3/ST5*100.
IF ST4>0 AND ST6>0 ST10=ST4/ST6*100.
IF ST3>0 AND ST7>0 ST11=ST3/ST7*100.
IF ST4>0 AND ST8>0 ST12=ST4/ST8*100.
IF F:F3>0
ST13=F:F3.
IF F:F4>0
ST14=F:F4.
IF F:F9>0
ST15=F:F9.
IF F:F10>0
ST16=F:F10.
IF ST15>0 AND ST13>0
ST17=ST15/ST13*100.
IF ST16>0 AND ST14>0
ST18=ST16/ST14*100.
IF ST15>0 AND ST3>0
ST19=ST15/ST3*100.
IF ST16>0 AND ST14>0
ST20=ST16/ST4*100.
IF ~ST AND ~STT THEN CYCLE.
ST2=GOR:GOROD
ST02=GOR:GOROD
ADD(YU)
CLEAR(ST)
ADD(YU1)
CLEAR(STT)
ADD(YU)
ADD(YU1)
LIC:NREGION=XRE:NREGION
LIC:KNAM=' '
SET(LIC:CNREG,LIC:CNREG)
LOOP UNTIL EOF(LIC)

! 7
NEXT(LIC)
IF LIC:NREGIONXRE:NREGION THEN BREAK.
IF LIC:NCITYGOR:KG THEN CYCLE.
(T67:RECORD)
T67:PNOMBER=LIC:PNOMBER
GET(T67,T67:C)
IF ~ERRORCODE()
IF T67:A400N>0
ST5=T67:A400N/1000.
IF T67:A400K>0
ST6=T67:A400K/1000.
IF T67:A495N>0
ST13=T67:A495N/1000.
IF T67:A495K>0
ST14=T67:A495K/1000..
CLEAR(T17:RECORD)
T17:PNOMBER=LIC:PNOMBER
GET(T17,T17:C)
IF ~ERRORCODE()

! 8
IF T17:F018>0

! 9
THEN
ST4=T17:F018/1000
ELSE
IF T17:F020>0

! 10
ST4=-T17:F020/1000..

! 9, 10
IF T17:F001>0
ST8=T17:F001/1000.
IF T17:F004>0
ST16=T17:F004/1000..

! 8
CLEAR(F92:RECORD)
F92:PNOMBER=LIC:PNOMBER
GET(F92,F92:FC)
IF ~ERRORCODE()

! 11
IF F92:F19>0

THEN

ST3=F92:F19/1000

ELSE

IF F92:F21>0

ST3=-F92:F21/1000..

IF F92:F1>0

ST7=F92:F1/1000.

IF F92:F7>0

ST15=F92:F7/1000..

! 11

IF ST30 AND ST5>0

ST9=ST3/ST5*100.

IF ST4>0 AND ST6>0

ST10=ST4/ST6*100.

IF ST30 AND ST7>0

ST11=ST3/ST7*100.

IF ST4>0 AND ST8>0

ST12=ST4/ST8*100.

IF ST13>0 AND ST15>0

ST17=ST15/ST13*100.

IF ST14>0 AND ST16>0

ST18=ST16/ST14*100.

IF ST15>0 AND ST30

ST19=ST15/ST3*100.

IF ST16>0 AND ST4>0

ST20=ST16/ST4*100.

IF ST OR STT ! 12

PN#+=1

ST2=' '&LIC:KNAM

ST02=' '&LIC:KNAM

ADD(YU)

CLEAR(ST)

ADD(YU1)

CLEAR(STT). ! 12

CLEAR(ST)

CLEAR(STT). ! 7

ADD(YU)

ADD(YU1)... ! 6, 5, 3

. ! 1
! -------- СВЕДЕНИЯ ОБ ИЗМЕНЕНИИ ПОКАЗАТЕЛЕЙ ДЕЯТЕЛЬНОСТИ --------
AT1 PROCEDURE
YU DOS,ASCII,NAME('YU.YU')

RECORD
ST STRING(210)..

GROUP,OVER(ST)

STRING(1)
ST2 STRING(32)

STRING(2)
ST3 STRING(@N_8.1)

STRING(1)
ST4 STRING(@N_9.1)

STRING(1)
ST5 STRING(@N-_9.1)

STRING(1)
ST6 STRING(@N_9.1)

STRING(1)
ST7 STRING(@N_8.1)

STRING(1)
ST8 STRING(@N_9.1)

STRING(1)
ST9 STRING(@N-_9.1)

STRING(1)
ST10 STRING(@N_9.1)

STRING(1)
ST11 STRING(@N_7.1)

STRING(1)
ST12 STRING(@N_9.1)

STRING(1)
ST13 STRING(@N-_10.1)

STRING(1)
ST14 STRING(@N_9.1)

STRING(1)
ST15 STRING(@N_8.1)

STRING(1)
ST16 STRING(@N_10.1)

STRING(1)
ST17 STRING(@N-_11.1)

STRING(1)
ST18 STRING(@N_10.1)

.
T REAL

CODE

PN#=0

CREATE(YU)

ST='СВЕДЕНИЯ ОБ ИЗМЕНЕНИИ ОТДЕЛЬНЫХ ПОКАЗАТЕЛЕЙ ДЕЯТЕЛЬНОСТИ
СТРАХОВЫХ ОРГАНИЗАЦИЙ'

ST=CENTER(ST)

ADD(YU)

CLEAR(ST)

ST='

'

ADD(YU)

CLEAR(ST)

ST='¦ ¦Уставный капитал¦ Изменение размера ¦Страховые резервы ¦ Изменение размера¦ Страховые ¦Прирост
(уменьшение)¦ Страховые выплаты ¦ Прирост( уменьшение)¦'

ADD(YU)

CLEAR(ST)

ST='¦ Наименование ¦(на конец года) ¦уставного капитала ¦ (на конец года) ¦ страховых резервов¦ взносы ¦ поступивших стра- ¦ (на конец года) ¦суммы страховых выплат¦'

ADD(YU)

CLEAR(ST)

ST='¦ ¦ ¦ (+/-
) ¦ ¦ (+/-) ¦ ¦ ховых взносов ¦ ¦ ¦'

ADD(YU)

CLEAR(ST)

ST='¦ страховой oрганизации ________________________
____________________________________________________________________________
____________________________________________________________________________
______________________________ ‘

ADD(YU)

CLEAR(ST)

ST='¦ ¦ 1994 ¦ 1995 ¦ в сумме ¦ в % ¦ 1994 ¦ 1995 ¦ в сумме ¦ в % ¦ 1994 ¦ 1995 ¦ в сумме
¦ в % ¦ 1994 ¦ 1995 ¦ в сумме ¦ в % ¦'

ADD(YU)

CLEAR(ST)

ST='

¦'

ADD(YU)

CLEAR(ST)

ST='¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦
5 ¦ 6 ¦ 7 ¦ 8 ¦ 9 ¦ 10 ¦ 11 ¦ 12
¦ 13 ¦ 14 ¦ 15 ¦ 16 ¦ 17 ¦'

ADD(YU)

CLEAR(ST)

ST='

¦'

ADD(YU)

CLEAR(ST)

INS:NTER=0

SET(INS:K1,INS:K1)

LOOP UNTIL EOF(INSP)

NEXT(INSP)

PN#=0 if ins:nter>23

THEN

ST2=CLIP(INS:NAME)&' инспекция'

ELSE

ST2='Инспекция '

ADD(yu)=INS:NAME.
TER:KODT=INS:NTER
SET(TER:K1,TER:K1)
LOOP UNTIL EOF(TERR)
NEXT(TERR)
IF TER:KODTINS:NTER THEN BREAK.
IF INS:NTER>23 AND PN#=0
F:NKUST=INS:NTER
GET(F,F:K1)
IF F:F1>0
ST3=F:F1.
IF F:F2>0
ST4=F:F2.
IF F:F3>0
ST7=F:F3.
IF F:F4>0
ST8=F:F4.
IF F:F11>0
ST11=F:F11.
IF F:F12>0
ST12=F:F12.
IF ST3 OR ST4
ST5=ST4-ST3.
IF ST3>0 AND ST4>0
ST6=ST4/ST3*100.
IF ST7 OR ST8
ST9=ST8-ST7.
IF ST7>0 AND ST8>0
ST10=ST8/ST7*100.
IF ST12 OR ST11
ST13=ST12-ST11.
IF ST12>0 AND ST11>0
ST14=ST12/ST11*100.
IF F:F13>0
ST15=F:F13.
IF F:F14>0
ST16=F:F14.
IF ST15 OR ST16
ST17=ST16-ST15.
IF ST15>0 AND ST16>0
ST18=ST16/ST15*100.
PN#=1
ADD(YU)
CLEAR(ST)
ADD(YU). XRE:NREGION=TER:NREGION SET(XRE:K1,XRE:K1)
LOOP UNTIL EOF(XREG)
NEXT(XREG)
IF XRE:NREGIONTER:NREGION THEN BREAK.
IF INS:NTER>23
ST2=XRE:IREG.
F:NREGION=XRE:NREGION
GET(F,F:K2)
IF F:F1>0
ST3=F:F1.
IF F:F2>0
ST4=F:F2.
IF F:F3>0
ST7=F:F3.
IF F:F4>0
ST8=F:F4.
IF F:F11>0
ST11=F:F11.
IF F:F12>0
ST12=F:F12.
IF ST3 OR ST4
ST5=ST4-ST3.
IF ST3>0 AND ST4>0
ST6=ST4/ST3*100.
IF ST7 OR ST8
ST9=ST8-ST7.
IF ST7>0 AND ST8>0
ST10=ST8/ST7*100.
IF ST12 OR ST11
ST13=ST12-ST11.
IF ST12>0 AND ST11>0
ST14=ST12/ST11*100.
IF F:F13>0
ST15=F:F13.
IF F:F14>0
ST16=F:F14.
IF ST15 OR ST16
ST17=ST16-ST15.
IF ST15>0 AND ST16>0
ST18=ST16/ST15*100.
ADD(YU)
CLEAR(ST)
GOR:GOROD=' '
SET(GOR:CGOR,GOR:CGOR)
LOOP UNTIL EOF(GOR)
NEXT(GOR)
IF GOR:NREGIONXRE:NREGION THEN CYCLE.
F:NGOR=GOR:KG
GET(F,F:K3)
IF F:F1>0
ST3=F:F1.
IF F:F2>0
ST4=F:F2.
IF F:F3>0
ST7=F:F3.
IF F:F4>0
ST8=F:F4.
IF F:F11>0
ST11=F:F11.
IF F:F12>0
ST12=F:F12.
IF ST3 OR ST4
ST5=ST4-ST3.
IF ST3>0 AND ST4>0
ST6=ST4/ST3*100.
IF ST7 OR ST8
ST9=ST8-ST7.
IF ST7>0 AND ST8>0
ST10=ST8/ST7*100.
IF ST12 OR ST11
ST13=ST12-ST11.
IF ST12>0 AND ST11>0
ST14=ST12/ST11*100.
IF F:F13>0
ST15=F:F13.
IF F:F14>0
ST16=F:F14.
IF ST15 OR ST16
ST17=ST16-ST15.
IF ST15>0 AND ST16>0
ST18=ST16/ST15*100.
IF ~ST THEN CYCLE.
ST2=' '&GOR:GOROD
ADD(YU)
CLEAR(ST)
ADD(YU)
LIC:NREGION=XRE:NREGION
LIC:KNAM=' '
SET(LIC:CNREG,LIC:CNREG)
LOOP UNTIL EOF(LIC)
NEXT(LIC)
IF LIC:NREGIONXRE:NREGION THEN BREAK.
IF LIC:NCITYGOR:KG THEN CYCLE.
CLEAR(T67:RECORD)
T67:PNOMBER=LIC:PNOMBER
GET(T67,T67:C)
IF ERRORCODE() THEN CYCLE.
T=0
IF T67:A400N>=100
ST3=T67:A400N/1000.
IF T67:A400K>=100
ST4=T67:A400K/1000.
T=T67:A400K-T67:A400N
IF T>=100 OR T0 AND ST3>0 THEN ST6=ST4/ST3*100.
IF T67:A495N>=100
ST7=T67:A495N/1000.
IF T67:A495K>=100
T=0
ST8=T67:A495K/1000.
T=T67:A495K-T67:A495N
IF T>=100 OR T0 AND ST7>0 THEN ST10=ST8/ST7*100.
CLEAR(T17:RECORD)
T17:PNOMBER=LIC:PNOMBER
GET(T17,T17:C)
IF T17:F001>=100
ST12=T17:F001/1000.
IF T17:F010>=100
ST16=T17:F010/1000.
CLEAR(F92:RECORD)
F92:PNOMBER=LIC:PNOMBER
GET(F92,F92:FC)
IF F92:F1>=100
ST11=F92:F1/1000.

IF F92:F10>=100
ST15=F92:F10/1000.
T=0
T=T17:F001-F92:F1
IF T>=100 OR T0 AND ST11>0 THEN ST14=ST12/ST11*100.
T=0
T=T17:F010-F92:F10
IF T=100 THEN ST17=T/1000.
T=0
IF ST16>0 AND ST15>0 THEN ST18=ST16/ST15*100.
ST2=' '&LIC:KNAM
ADD(YU)

CLEAR(ST).

CLEAR(ST).

ADD(YU)...

ADD(YU).
! ------ ОБЪЕМ ПОСТУПЛЕНИЙ И ВЫПЛАТ НА 1 РАБОТНИКА -------
AT3 PROCEDURE
YU DOS,ASCII,NAME('YU.YU')

RECORD
ST STRING(150)..

GROUP,OVER(ST)

STRING(1)
ST2 STRING(33)

STRING(2)
ST3 STRING(@N_9.2)

STRING(1)
ST4 STRING(@N_10.2)

STRING(1)
ST5 STRING(@N_9.2)

STRING(2)
ST6 STRING(@N_10.2)

STRING(3)
ST7 STRING(@N_6)

STRING(5)
ST8 STRING(@N_9.2)

STRING(4)
ST9 STRING(@N_8.2)

STRING(4)
ST10 STRING(@N_8.2)

STRING(2)
ST11 STRING(@N_8.2)

STRING(1)
ST12 STRING(@N_8.2)

.
T REAL

CODE

PN#=0

CREATE(YU)

ST='ОБЪЕМ ПОСТУПЛЕНИЙ И ВЫПЛАТ НА 1 РАБОТНИКА СТРАХОВОЙ ОРГАНИЗАЦИИ'

ST=CENTER(ST)

ADD(YU)

CLEAR(ST)

ADD(YU)

CLEAR(ST)

ST='¦

млн.руб. '

¦ Страховые взносы ¦ Страховые выплаты ¦
Среднесписочная

¦ Поступление страховых ¦Страховые выплаты ¦'

ADD(YU)

CLEAR(ST)

ST='¦ Наименование ¦ ¦

¦численность работников¦взносов на 1 работника ¦ на 1 работника ¦'

ADD(YU)

CLEAR(ST)

ST='¦ страховой организации '

¦'

ADD(YU)

CLEAR(ST)

ST='¦ ¦ 1994 ¦ 1995 ¦ 1994
¦ 1995 ¦ 1994 ¦ 1995 ¦ 1994 ¦ 1995 ¦ 1994 ¦
1995 ¦'

ADD(YU)

CLEAR(ST)
ST='¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦ 5
¦ 6 ¦ 7 ¦ 8 ¦ 9 ¦ 10 ¦ 11 ¦'
ADD(YU)
CLEAR(ST) ST='


ADD(YU)
CLEAR(ST)
INS:NTER=0
SET(INS:K1,INS:K1)
LOOP UNTIL EOF(INSP)
NEXT(INSP)
PN#=0 if ins:nter>23
THEN
ST2=CLIP(INS:NAME)&' инспекция'
ELSE
ST2='Инспекция '
ADD(yu)
ST2=INS:NAME.
TER:KODT=INS:NTER
SET(TER:K1,TER:K1)
LOOP UNTIL EOF(TERR)
NEXT(TERR)
IF TER:KODTINS:NTER THEN BREAK.
IF INS:NTER>23 AND PN#=0
F:NKUST=INS:NTER
GET(F,F:K1)
IF F:F11>0
ST3=F:F11.
IF F:F12>0
ST4=F:F12.
IF F:F13>0
ST5=F:F13.
IF F:F14>0
ST6=F:F14.
IF F:F15>0
ST7=F:F15.
IF F:F16>0
ST8=F:F16.
IF ST3>0 AND ST7>0
ST9=ST3/ST7.
IF ST4>0 AND ST8>0
ST10=ST4/ST8.
IF ST5>0 AND ST7>0
ST11=ST5/ST7.
IF ST6>0 AND ST8>0
ST12=ST6/ST8.
PN#=1
ADD(YU)
CLEAR(ST)
ADD(YU).
XRE:NREGION=TER:NREGION
SET(XRE:K1,XRE:K1)
LOOP UNTIL EOF(XREG)
NEXT(XREG)
IF XRE:NREGIONTER:NREGION THEN BREAK.
IF INS:NTER>23
ST2=' '&XRE:IREG.
F:NREGION=XRE:NREGION
GET(F,F:K2)
IF F:F11>0
ST3=F:F11.
IF F:F12>0
ST4=F:F12.
IF F:F13>0
ST5=F:F13.
IF F:F14>0
ST6=F:F14.
IF F:F15>0
ST7=F:F15.
IF F:F16>0
ST8=F:F16.
IF ST3>0 AND ST7>0
ST9=ST3/ST7.
IF ST4>0 AND ST8>0
ST10=ST4/ST8.
IF ST5>0 AND ST7>0
ST11=ST5/ST7.
IF ST6>0 AND ST8>0
ST12=ST6/ST8.
ADD(YU)
CLEAR(ST)
ADD(YU)
CLEAR(ST)
GOR:GOROD=' '
SET(GOR:CGOR,GOR:CGOR)
LOOP UNTIL EOF(GOR)
NEXT(GOR)
IF GOR:NREGIONXRE:NREGION THEN CYCLE.
F:NGOR=GOR:KG
GET(F,F:K3)
IF F:F11>0
ST3=F:F11.
IF F:F12>0
ST4=F:F12.
IF F:F13>0
ST5=F:F13.
IF F:F14>0
ST6=F:F14.
IF F:F15>0
ST7=F:F15.
IF F:F16>0
ST8=F:F16.
IF ST3>0 AND ST7>0
ST9=ST3/ST7.
IF ST4>0 AND ST8>0
ST10=ST4/ST8.
IF ST5>0 AND ST7>0
ST11=ST5/ST7.
IF ST6>0 AND ST8>0
ST12=ST6/ST8.
IF ~ST THEN CYCLE.
ST2=' '&GOR:GOROD
ADD(YU)
CLEAR(ST)
LIC:NREGION=XRE:NREGION
LIC:KNAM=' '
SET(LIC:CNREG,LIC:CNREG)
LOOP UNTIL EOF(LIC)
NEXT(LIC)
IF LIC:NREGIONXRE:NREGION THEN BREAK.
IF LIC:NCITYGOR:KG THEN CYCLE.
CLEAR(F92:RECORD)
F92:PNOMBER=LIC:PNOMBER
GET(F92,F92:FC)
IF F92:F1>100
ST3=F92:F1/1000.
IF F92:F10>100
ST5=F92:F10/1000.
CLEAR(T17:RECORD)
T17:PNOMBER=LIC:PNOMBER
GET(T17,T17:C)
IF T17:F001>100
ST4=T17:F001/1000.
IF T17:F010>100
ST6=T17:F010/1000.
CLEAR(SVV:RECORD)
SVV:PNOM=LIC:PNOMBER
SVV:KZ=2
GET(SVV,SVV:K)
IF SVV:CR2>0
ST7=SVV:CR2.
CLEAR(DF:RECORD)
DF:PNOMBER=LIC:PNOMBER
GET(DF,DF:C)
IF DF:S750N0
ST8=DF:S750N.
IF F92:F1>100 AND SVV:CR20
THEN ST9=F92:F1/SVV:CR2/1000.
IF T17:F001>100 AND DF:S750N0
THEN ST10=T17:F001/DF:S750N/1000.
IF F92:F10>100 AND SVV:CR20
THEN ST11=F92:F10/SVV:CR2/1000.
IF T17:F010>100 AND DF:S750N0
THEN ST12=T17:F010/DF:S750N/1000.

IF ST

PN#+=1

ST2=' '&LIC:KNAM

ADD(YU)

CLEAR(ST).

CLEAR(ST).

ADD(YU)...

ADD(YU).
! ------ ВЫБОРКА ПО УСТАВНОМУ КАПИТАЛУ -------
UK PROCEDURE
YU DOS,ASCII,NAME('YU.YU')

RECORD
ST STRING(56)..

GROUP,OVER(ST)

STRING(1)
ST1 STRING(@N4)

STRING(1)
ST2 STRING(30)

STRING(5)
ST3 STRING(@N_8.2)

.
T REAL

CODE

PN#=0

CREATE(YU)

ST='СПИСОК СТРАХОВЫХ ОРГАНИЗАЦИЙ, ИМЕЮЩИХ УСТАВНЫЙ КАПИТАЛ'

ST=CENTER(ST)

ADD(YU)

CLEAR(ST)
ST='ОТ '&MEM:NG/1000&' ДО '&MEM:VG/1000&' МЛН.РУБ. ЗА '&MEM:GOD&' ГОД'
ST=CENTER(ST)

ADD(YU)

CLEAR(ST)

IF MEM:PR=2

ST=XRE:IREG

ST=CENTER(ST)

ADD(YU)

CLEAR(ST).

ST='

'

ADD(YU)

CLEAR(ST)

ST='¦ ¦ Наименование ¦ Уставный капитал ¦'

ADD(YU)

CLEAR(ST)

ST='¦ N ¦ страховой организации ¦ ¦'

ADD(YU)

CLEAR(ST)

ST='

¦'

ADD(YU)

CLEAR(ST)

ST='¦ 1 ¦ 2 ¦ 3 ¦'

ADD(YU)

CLEAR(ST) ST='

ADD(YU)

CLEAR(ST)

IF MEM:PR=2

THEN

LIC:NREGION=XRE:NREGION

SET(LIC:CNREG,LIC:CNREG)

ELSE

SET(LIC:CLIC,LIC:CLIC).

LOOP UNTIL EOF(LIC)

NEXT(LIC)

IF MEM:PR=2

IF LIC:NREGIONXRE:NREGION THEN BREAK..

T67:PNOMBER=LIC:PNOMBER

GET(T67,T67:C)

IF ~ERRORCODE()

THEN

IF MEM:GOD=1992

THEN

IF T67:A400NMEM:VG THEN CYCLE.

ELSE

IF T67:A400KMEM:VG THEN CYCLE..

PN#+=1

ST1=PN#

ST2=LIC:KNAM

IF MEM:GOD=1992 AND T67:A400N>0 THEN ST3=T67:A400N/1000.

IF MEM:GOD=1993 AND T67:A400K>0 THEN ST3=T67:A400K/1000.

ADD(YU)

CLEAR(ST)..

CLOSE(YU)
! ------ ВЫБОРКА ПО СТРАХОВЫМ ВЗНОСАМ -------
SVZ PROCEDURE
YU DOS,ASCII,NAME('YU.YU')

RECORD
ST STRING(56)..

GROUP,OVER(ST)

STRING(1)
ST1 STRING(@N4)

STRING(1)
ST2 STRING(30)

STRING(5)
ST3 STRING(@N_8.2)

.
T REAL

CODE

PN#=0

CREATE(YU)

ST='СПИСОК СТРАХОВЫХ ОРГАНИЗАЦИЙ, СУММА ПОСТУПЛЕНИЯ '

ST=CENTER(ST)

ADD(YU)

CLEAR(ST)

ST='СТРАХОВЫХ ВЗНОСОВ КОТОРЫХ'

ST=CENTER(ST)

ADD(YU)

CLEAR(ST)
ST='ОТ '&MEM:NG/1000&' ДО '&MEM:VG/1000&' МЛН.РУБ. ЗА '&MEM:GOD&' ГОД'
ST=CENTER(ST)

ADD(YU)

CLEAR(ST)

IF MEM:PR=2

ST=XRE:IREG

ST=CENTER(ST)

ADD(YU)

CLEAR(ST). ST='+------------------------------------------------------
+'

ADD(YU)

CLEAR(ST)

ST='¦ ¦ Наименование ¦ Поступление ¦'

ADD(YU)

CLEAR(ST)

ST='¦ N ¦ страховой организации ¦страховых взносов ¦'

ADD(YU)

CLEAR(ST) ST='+----+------------------------------+------------------
¦'

ADD(YU)

CLEAR(ST)

ST='¦ 1 ¦ 2 ¦ 3 ¦'

ADD(YU)

CLEAR(ST) ST='+----+------------------------------+------------------
¦'

ADD(YU)

CLEAR(ST)

IF MEM:PR=2

THEN

LIC:NREGION=XRE:NREGION

SET(LIC:CNREG,LIC:CNREG)

ELSE

SET(LIC:CLIC,LIC:CLIC).

LOOP UNTIL EOF(LIC)

NEXT(LIC)

IF MEM:PR=2

IF LIC:NREGIONXRE:NREGION THEN BREAK..

IF MEM:GOD=1993

T17:PNOMBER=LIC:PNOMBER

GET(T17,T17:C)

IF ~ERRORCODE()

THEN

IF T17:F001MEM:VG THEN CYCLE.

ELSE

CYCLE..

IF MEM:GOD=1992

F92:PNOMBER=LIC:PNOMBER

GET(F92,F92:FC)

IF ~ERRORCODE()

THEN

IF F92:F1MEM:VG THEN CYCLE.

ELSE

CYCLE..

PN#+=1

ST1=PN#

ST2=LIC:KNAM

IF MEM:GOD=1992 AND F92:F1>0 THEN ST3=F92:F1/1000.

IF MEM:GOD=1993 AND T17:F001>0 THEN
ST3=T17:F001/1000.

ADD(YU)

CLEAR(ST).

CLOSE(YU)
! ------ ВЫБОРКА ПО СТРАХОВЫМ РЕЗЕРВАМ -------
SR PROCEDURE
YU DOS,ASCII,NAME('YU.YU')

RECORD
ST STRING(56)..

GROUP,OVER(ST)

STRING(1)
ST1 STRING(@N4)

STRING(1)
ST2 STRING(30)

STRING(5)
ST3 STRING(@N_8.2)

.
T REAL

CODE

PN#=0

CREATE(YU)
ST='СПИСОК СТРАХОВЫХ ОРГАНИЗАЦИЙ, ИМЕЮЩИХ СТРАХОВЫЕ РЕЗЕРВЫ' ST=CENTER(ST)

ADD(YU)

CLEAR(ST)
ST='ОТ '&MEM:NG/1000&' ДО '&MEM:VG/1000&' МЛН.РУБ. ЗА '&MEM:GOD&' ГОД'
ST=CENTER(ST)

ADD(YU)

CLEAR(ST)

IF MEM:PR=2

ST=XRE:IREG

ST=CENTER(ST)

ADD(YU)
CLEAR(ST). ST='+------------------------------------------------------+'
ADD(YU)

CLEAR(ST)
ST='¦ ¦ Наименование ¦ Страховые резервы¦' ADD(YU)

CLEAR(ST)
ST='¦ N ¦ страховой организации ¦ ¦'
ADD(YU)
CLEAR(ST) ST='+----+------------------------------+------------------¦'
ADD(YU)

CLEAR(ST)
ST='¦ 1 ¦ 2 ¦ 3 ¦'
ADD(YU)
CLEAR(ST) ST='+----+------------------------------+------------------¦'
ADD(YU)

CLEAR(ST)

IF MEM:PR=2

THEN

LIC:NREGION=XRE:NREGION

SET(LIC:CNREG,LIC:CNREG)

ELSE

SET(LIC:CLIC,LIC:CLIC).

LOOP UNTIL EOF(LIC)

NEXT(LIC)

IF MEM:PR=2

IF LIC:NREGIONXRE:NREGION THEN BREAK..

T67:PNOMBER=LIC:PNOMBER

GET(T67,T67:C)

IF ~ERRORCODE()

IF MEM:GOD=1992

THEN

IF T67:A495NMEM:VG THEN CYCLE.

ELSE

IF T67:A495KMEM:VG THEN

CYCLE..

PN#+=1

ST1=PN#

ST2=LIC:KNAM

IF MEM:GOD=1992 AND T67:A495N>0 THEN ST3=T67:A495N/1000.

IF MEM:GOD=1993 AND T67:A495K>0 THEN ST3=T67:A495K/1000. ADD(YU)

CLEAR(ST)..

CLOSE(YU)
! ------ ВЫБОРКА ПО СТРАХОВЫМ ВЫПЛАТАМ -------
SVP PROCEDURE
YU DOS,ASCII,NAME('YU.YU')

RECORD
ST STRING(56)..

GROUP,OVER(ST)

STRING(1)
ST1 STRING(@N4)

STRING(1)
ST2 STRING(30)

STRING(5)
ST3 STRING(@N_8.2)

.
T REAL

CODE

PN#=0

CREATE(YU)
ST='СПИСОК СТРАХОВЫХ ОРГАНИЗАЦИЙ, ИМЕЮЩИХ СТРАХОВЫЕ ВЫПЛАТЫ'

ST=CENTER(ST)

ADD(YU)

CLEAR(ST)
ST='ОТ '&MEM:NG/1000&' ДО '&MEM:VG/1000&' МЛН.РУБ. ЗА '&MEM:GOD&' ГОД'
ST=CENTER(ST)

ADD(YU)

CLEAR(ST)

IF MEM:PR=2

ST=XRE:IREG

ST=CENTER(ST)

ADD(YU)

CLEAR(ST). ST='+----------------------------------------------------
+'

ADD(YU)

CLEAR(ST)

ST='¦ ¦ Наименование ¦ Страховые выплаты¦'

ADD(YU)

CLEAR(ST)

ST='¦ N ¦ страховой организации ¦ ¦'

ADD(YU)

CLEAR(ST) ST='+----+------------------------------+-----------------
¦'

ADD(YU)

CLEAR(ST)

ST='¦ 1 ¦ 2 ¦ 3 ¦'

ADD(YU)

CLEAR(ST) ST='+----+------------------------------+-----------------
¦'

ADD(YU)

CLEAR(ST)

IF MEM:PR=2

THEN

LIC:NREGION=XRE:NREGION

SET(LIC:CNREG,LIC:CNREG)

ELSE

SET(LIC:CLIC,LIC:CLIC).

LOOP UNTIL EOF(LIC)

NEXT(LIC)

IF MEM:PR=2

IF LIC:NREGIONXRE:NREGION THEN BREAK..

IF MEM:GOD=1993

T17:PNOMBER=LIC:PNOMBER

GET(T17,T17:C)

IF ~ERRORCODE()

THEN

IF T17:F010MEM:VG THEN CYCLE.

ELSE

CYCLE..

IF MEM:GOD=1992

F92:PNOMBER=LIC:PNOMBER

GET(F92,F92:FC)

IF ~ERRORCODE()

THEN

IF F92:F10MEM:VG THEN CYCLE.

ELSE CYCLE..

PN#+=1

ST1=PN#

ST2=LIC:KNAM

IF MEM:GOD=1992 AND F92:F10>0 THEN ST3=F92:F10/1000.

IF MEM:GOD=1993 AND T17:F010>0 THEN ST3=T17:F010/1000. ADD(YU)

CLEAR(ST).

CLOSE(YU)

CLEAR(ST)


Рефетека ру refoteka@gmail.com