Мир Знаний

База данных страховой компании (стр. 1 из 11)

(antb)


MEMBER('ANT')

!НАЧАЛЬНАЯСОРТИРОВКА

SPROCEDURE

MGROUP

M1REAL,DIM(79,14) !T17

MKREAL,DIM(8,14)

MGREAL,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/1000MG[LIC:NCITY,1]+=T17:F001/1000 M1[LIC:NREGION,2]+=T17:F004/1000MG[LIC:NCITY,2]+=T17:F004/1000 M1[LIC:NREGION,3]+=T17:F010/1000MG[LIC:NCITY,3]+=T17:F010/1000

IF T17:F018>0

THEN

M1[LIC:NREGION,4]+=T17:F018/1000MG[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/1000MG[LIC:NCITY,6]+=T67:A400K/1000 M1[LIC:NREGION,7]+=T67:A495N/1000MG[LIC:NCITY,7]+=T67:A495N/1000 M1[LIC:NREGION,8]+=T67:A495K/1000MG[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/1000MG[LIC:NCITY,9]+=F92:F1/1000 M1[LIC:NREGION,10]+=F92:F7/1000MG[LIC:NCITY,10]+=F92:F7/1000 M1[LIC:NREGION,11]+=F92:F10/1000MG[LIC:NCITY,11]+=F92:F10/1000

IF F92:F19>0

THEN

M1[LIC:NREGION,12]+=F92:F19/1000MG[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:S750NMG[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).

! ----- АНАЛИЗПОКАЗАТЕЛЕЙРАЗВИТИЯ ------

AT2PROCEDURE

YUDOS,ASCII,NAME('YU.YU')

RECORD

STSTRING(140)..

GROUP,OVER(ST)

STRING(1)

ST2STRING(32)

STRING(4)

ST3STRING(@N-_8.2)

STRING(1)

ST4STRING(@N_10.2)

STRING(1)

ST5STRING(@N_8.2)

STRING(1)

ST6STRING(@N_9.2)

STRING(1)

ST7STRING(@N_8.2)

STRING(1)

ST8STRING(@N_10.2)

STRING(1)

ST9STRING(@N-_10.2)

STRING(1)

ST10STRING(@N_10.2)

STRING(1)

ST11STRING(@N-_9.2)

STRING(1)

ST12STRING(@N_8.2)

.

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

RECORD

STTSTRING(130)..

GROUP,OVER(STT)

STRING(1)

ST02STRING(32)

STRING(5)

ST13STRING(@N_8.2)

STRING(3)

ST14STRING(@N_9.2)

STRING(3)

ST15STRING(@N_7.2)

STRING(3)

ST16STRING(@N_9.2)

STRING(3)

ST17STRING(@N_9.2)

STRING(3)

ST18STRING(@N_8.2)

STRING(3)

ST19STRING(@N-_8.2)

STRING(3)

ST20STRING(@N_9.2)

.

MGROUP

M1REAL,DIM(79,14) !T17

MKREAL,DIM(8,14)

MGREAL,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

!-------- СВЕДЕНИЯОБ ИЗМЕНЕНИИПОКАЗАТЕЛЕЙДЕЯТЕЛЬНОСТИ--------

AT1PROCEDURE

YUDOS,ASCII,NAME('YU.YU')

RECORD

STSTRING(210)..

GROUP,OVER(ST)

STRING(1)

ST2STRING(32)

STRING(2)

ST3STRING(@N_8.1)

STRING(1)

ST4STRING(@N_9.1)

STRING(1)

ST5STRING(@N-_9.1)

STRING(1)

ST6STRING(@N_9.1)

STRING(1)

ST7STRING(@N_8.1)

STRING(1)

ST8STRING(@N_9.1)

STRING(1)

ST9STRING(@N-_9.1)

STRING(1)

ST10STRING(@N_9.1)

STRING(1)

ST11STRING(@N_7.1)

STRING(1)

ST12STRING(@N_9.1)

STRING(1)

ST13STRING(@N-_10.1)

STRING(1)

ST14STRING(@N_9.1)

STRING(1)

ST15STRING(@N_8.1)

STRING(1)

ST16STRING(@N_10.1)

STRING(1)

ST17STRING(@N-_11.1)

STRING(1)

ST18STRING(@N_10.1)

.

TREAL

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 T

T=0

IF ST4>0 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 T

T=0

IF ST8>0 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 T

T=0

IF ST12>0 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 РАБОТНИКА-------

AT3PROCEDURE

YUDOS,ASCII,NAME('YU.YU')

RECORD

STSTRING(150)..

GROUP,OVER(ST)

STRING(1)

ST2STRING(33)

STRING(2)

ST3STRING(@N_9.2)

STRING(1)

ST4STRING(@N_10.2)

STRING(1)

ST5STRING(@N_9.2)

STRING(2)

ST6STRING(@N_10.2)

STRING(3)

ST7STRING(@N_6)

STRING(5)

ST8STRING(@N_9.2)

STRING(4)

ST9STRING(@N_8.2)

STRING(4)

ST10STRING(@N_8.2)

STRING(2)

ST11STRING(@N_8.2)

STRING(1)

ST12STRING(@N_8.2)

.

TREAL

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).

!------ ВЫБОРКАПО УСТАВНОМУКАПИТАЛУ -------

UKPROCEDURE

YUDOS,ASCII,NAME('YU.YU')

RECORD

STSTRING(56)..

GROUP,OVER(ST)

STRING(1)

ST1STRING(@N4)

STRING(1)

ST2STRING(30)

STRING(5)

ST3STRING(@N_8.2)

.

TREAL

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 THENCYCLE.

ELSE

IF T67:A400KMEM:VG THENCYCLE..

PN#+=1

ST1=PN#

ST2=LIC:KNAM

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

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

ADD(YU)

CLEAR(ST)..

CLOSE(YU)

!------ ВЫБОРКАПО СТРАХОВЫМВЗНОСАМ -------

SVZPROCEDURE

YUDOS,ASCII,NAME('YU.YU')

RECORD

STSTRING(56)..

GROUP,OVER(ST)

STRING(1)

ST1STRING(@N4)

STRING(1)

ST2STRING(30)

STRING(5)

ST3STRING(@N_8.2)

.

TREAL

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:VGTHEN CYCLE.

ELSE

CYCLE..

PN#+=1

ST1=PN#

ST2=LIC:KNAM

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

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

ADD(YU)

CLEAR(ST).

CLOSE(YU)

!------ ВЫБОРКАПО СТРАХОВЫМРЕЗЕРВАМ -------

SRPROCEDURE

YUDOS,ASCII,NAME('YU.YU')

RECORD

STSTRING(56)..

GROUP,OVER(ST)

STRING(1)

ST1STRING(@N4)

STRING(1)

ST2STRING(30)

STRING(5)

ST3STRING(@N_8.2)

.

TREAL

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 THENST3=T67:A495N/1000.

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

CLEAR(ST)..

CLOSE(YU)

!------ ВЫБОРКАПО СТРАХОВЫМВЫПЛАТАМ -------

SVPPROCEDURE

YUDOS,ASCII,NAME('YU.YU')

RECORD

STSTRING(56)..

GROUP,OVER(ST)

STRING(1)

ST1STRING(@N4)

STRING(1)

ST2STRING(30)

STRING(5)

ST3STRING(@N_8.2)

.

TREAL

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 THENCYCLE.

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 THENST3=T17:F010/1000. ADD(YU)

CLEAR(ST).

CLOSE(YU)

CLEAR(ST)



Overview

Sheet1
Sheet2

Sheet 1: Sheet1

6.2 Финансовые данные баланса


1993 1994 1995 1996 1997
Доход (тыс.руб)
От эмитентов
50000 102000 195000 487500 878906


От акционеров
2500 3198 3656 3656 2637


От других
0 0 0 0 0


Всего
52500 105188 491156 491156 881543









Расход (тыс.руб)
Заработная плата
30000 39000 51000 89100


Помещения
10000 30000 40000 60000 127875


Оборудование
5000 3909 7727 12273 90000


Налоги
3000 3900 5100 8910 14091


Другое
2000 4007 7568 18711 12788


Всего
50000 82816 111395 188993 33583









Прибыль (тыс.руб)


2500 22371 87261 302163 603207

Sheet 2: Sheet2

6.3 Критерии эффективности функционирования











1993 1994 1995 1996 1997
Финансовые
Доход на 1
5250000 6187500 7640625 9445313 10753906
показатели
эмитента





эффективности









Доход на 1
5833 7563 9551 11514 14940


операцию







Доход на 1
955 1238 1528 1802 2290


акционера







Расход на 1
5000000 4871543 4284428 3634489 3711147


эмитента







Расход на 1
5556 5954 5356 4430 4717


операцию







Доля прибыли
5% 21% 44% 62% 68%









Рабочие
Эмитентов на 1
0,91 1,31 1,53 1,93 2,42
(операционные)
служащего





показатели









Акционеров на 1
5000 6538 7647 10093 12419


служащего







Операций на 1
12 11 12 13 16


оператора на 1







день







Операций на 1
0,34 0,16 0,16 0,16 0,15


акционера






ANT PROGRAM

INCLUDE('STD_KEYS.CLA')

INCLUDE('CTL_KEYS.CLA')

INCLUDE('ALT_KEYS.CLA')

INCLUDE('SHF_KEYS.CLA')


REJECT_KEY EQUATE(CTRL_ESC)

ACCEPT_KEY EQUATE(CTRL_ENTER)

TRUE EQUATE(1)

FALSE EQUATE(0)


MAP

PROC(G_OPENFILES)

PROC(G_OPENFILES2)

MODULE('ANT1')

PROC(GBO1)

.

MODULE('ANT2')

PROC(R)

.

MODULE('ANT3')

PROC(REG)

.

MODULE('ANT4')

PROC(MEN2)

.

MODULE('ANT5')

PROC(MEN4)

.

MODULE('ANT6')

PROC(MEN5)

.

MODULE('ANT7')

PROC(MBO)

.

MODULE('ANT8')

PROC(GBO)

.

MODULE('ANTB')

PROC(AT1)

PROC(AT2)

PROC(AT3)

PROC(UK)

PROC(SVZ)

PROC(SR)

PROC(SVP)

PROC(S)

.

.

EJECT('FILE LAYOUTS')

T17 FILE,PRE(T17),CREATE,RECLAIM

OWNER('NPRN.K01'),ENCRYPT

C KEY(T17:PNOMBER),DUP,NOCASE,OPT

RECORD RECORD

PNOMBER LONG !”ˆ€‘Ž‚›……‡“‹œ’€’›

F001 REAL

F002 REAL

F003 REAL

F004 REAL

F005 REAL

F006 REAL

F007 REAL

F008 REAL

F009 REAL

F010 REAL

F011 REAL

F012 REAL

F013 REAL

F014 REAL

F015 REAL

F016 REAL

F017 REAL

F018 REAL

F019 REAL

F020 REAL

F021 REAL

. .


T67 FILE,PRE(T67),CREATE,RECLAIM

OWNER('NPRN.K01'),ENCRYPT

C KEY(T67:PNOMBER),DUP,NOCASE,OPT

RECORD RECORD

PNOMBER LONG !€‘‘ˆ‚€‹€‘€

A400N REAL !1гбв ў­л©д®­¤

A400K REAL

A410N REAL !2१Ґаў­л©д®­¤

A410K REAL

A420N REAL !3

A420K REAL

A430N REAL !4

A430K REAL

A440N REAL !5

A440K REAL

A450N REAL !6

A450K REAL

A460N REAL !7

A460K REAL

A470N REAL !8

A470K REAL

A471N REAL !9

A471K REAL

A472N REAL !10

A472K REAL

A480N REAL !11

A480K REAL

A485N REAL !12

A485K REAL

A490N REAL !13

A490K REAL

A491N REAL !14

A491K REAL

A492N REAL !15

A492K REAL

A493N REAL !16

A493K REAL

A494N REAL !17

A494K REAL

A495N REAL !18

A495K REAL

A500N REAL !19

A500K REAL

A510N REAL !20

A510K REAL

A520N REAL !21

A520K REAL

A600N REAL !22

A600K REAL

A620N REAL !23

A620K REAL

A650N REAL !24

A650K REAL

A660N REAL !25

A660K REAL

A670N REAL !26

A670K REAL

A680N REAL !27

A680K REAL

A690N REAL !28

A690K REAL

A700N REAL !29

A700K REAL

A710N REAL !30

A710K REAL

A712N REAL !31

A712K REAL

A730N REAL !32

A730K REAL

A740N REAL !33

A740K REAL

A750N REAL !34

A750K REAL

A760N REAL !35

A760K REAL

A770N REAL !36

A770K REAL

A780N REAL !37

A780K REAL

. .


DF FILE,PRE(DF),CREATE,RECLAIM

OWNER('NPRN.K01'),ENCRYPT

C KEY(DF:PNOMBER),DUP,NOCASE,OPT

RECORD RECORD

PNOMBER SHORT

S010N REAL !1

S010P REAL

S010I REAL

S010K REAL

S020N REAL !2

S020P REAL

S020I REAL

S020K REAL

S030N REAL !3 д®­¤­ Є®Ї«Ґ­Ёп

S030P REAL

S030I REAL

S030K REAL

S031N REAL !4

S031P REAL

S031I REAL

S031K REAL

S032N REAL !5

S032P REAL

S032I REAL

S032K REAL

S033N REAL !6

S033P REAL

S033I REAL

S033K REAL

S034N REAL !7

S034P REAL

S034I REAL

S034K REAL

S035N REAL !8

S035P REAL

S035I REAL

S035K REAL

S036N REAL !9

S036P REAL

S036I REAL

S036K REAL

S037N REAL !10

S037P REAL

S037I REAL

S037K REAL

S038N REAL !11

S038P REAL

S038I REAL

S038K REAL

S039N REAL !12

S039P REAL

S039I REAL

S039K REAL

S040N REAL !13 д®­¤Ї®вॡ«Ґ­Ёп

S040P REAL

S040I REAL

S040K REAL

S041N REAL !14

S041P REAL

S041I REAL

S041K REAL

S042N REAL !15

S042P REAL

S042I REAL

S042K REAL

S043N REAL !16

S043P REAL

S043I REAL

S043K REAL

S044N REAL !17

S044P REAL

S044I REAL

S044K REAL

S045N REAL !18

S045P REAL

S045I REAL

S045K REAL

S046N REAL !19

S046P REAL

S046I REAL

S046K REAL

S047N REAL !20

S047P REAL

S047I REAL

S047K REAL

S050N REAL !21

S050P REAL

S050I REAL

S050K REAL

S060N REAL !22

S060P REAL

S060I REAL

S060K REAL

S070N REAL !23

S070P REAL

S070I REAL

S070K REAL

S071N REAL !24

S071P REAL

S071I REAL

S071K REAL

S072N REAL !25

S072P REAL

S072I REAL

S072K REAL

S073N REAL !26

S073P REAL

S073I REAL

S073K REAL

S074N REAL !27

S074P REAL

S074I REAL

S074K REAL

S075N REAL !28

S075P REAL

S075I REAL

S075K REAL

S080N REAL !29

S080P REAL

S080I REAL

S080K REAL

S090N REAL !30

S090P REAL

S090I REAL

S090K REAL

S210N REAL !31

S210P REAL

S210I REAL

S210K REAL

S211N REAL !32

S211P REAL

S211I REAL

S211K REAL

S220N REAL !33

S220P REAL

S220I REAL

S220K REAL

S221N REAL !34

S221P REAL

S221I REAL

S221K REAL

S230N REAL !35

S230P REAL

S230I REAL

S230K REAL

S231N REAL !36

S231P REAL

S231I REAL

S231K REAL

S240N REAL !37

S240P REAL

S240I REAL

S240K REAL

S241N REAL !38

S241P REAL

S241I REAL

S241K REAL

S250N REAL !39

S250P REAL

S250I REAL

S250K REAL

S251N REAL !40

S251P REAL

S251I REAL

S251K REAL

S310N REAL !41Єа вЄ®ба®з­ п

S310P REAL

S310I REAL

S310K REAL

S320N REAL !42¤®«Ј®ба®з­ п

S320P REAL

S320I REAL

S320K REAL

S330N REAL !43Єа вЄ®ба®з­ п

S330P REAL

S330I REAL

S330K REAL

S340N REAL !44¤®«Ј®ба®з­ п

S340P REAL

S340I REAL

S340K REAL

S350N REAL !45Ї®«г祭­лҐ

S350P REAL

S350I REAL

S350K REAL

S360N REAL !46ўл¤ ­­лҐ

S360P REAL

S360I REAL

S360K REAL

R410N REAL !47 ­Ґ¬ в ЄвЁўл

R410P REAL

R410I REAL

R410K REAL

R420N REAL !48

R420P REAL

R420I REAL

R420K REAL

R430N REAL !49

R430P REAL

R430I REAL

R430K REAL

R440N REAL !50

R440P REAL

R440I REAL

R440K REAL

S500N REAL !51 ‡¤ ­Ёп

S500P REAL

S500I REAL

S500K REAL

S501N REAL !52‘®®а㦥­Ёп

S501P REAL

S501I REAL

S501K REAL

S502N REAL !53ҐаҐ¤ в®з­лҐгбва®©бвў 

S502P REAL

S502I REAL

S502K REAL

S503N REAL !54 Œ иЁ­лЁ ®Ў®а㤮ў ­ЁҐ

S503P REAL

S503I REAL

S503K REAL

S504N REAL !55’а ­бЇ®ав­лҐб।бвў 

S504P REAL

S504I REAL

S504K REAL

S505N REAL !56Ё­ўҐ­в ам

S505P REAL

S505I REAL

S505K REAL

S506N REAL !57  Ў®зЁ©бЄ®в

S506P REAL

S506I REAL

S506K REAL

S507N REAL !58தгЄвЁў­л©бЄ®в

S507P REAL

S507I REAL

S507K REAL

S508N REAL !59Œ­®Ј®«­в­ЁҐ­ б ¦¤Ґ­Ёп

S508P REAL

S508I REAL

S508K REAL

S509N REAL !60

S509P REAL

S509I REAL

S509K REAL

S510N REAL !61

S510P REAL

S510I REAL

S510K REAL

S511N REAL !62Їа®Ё§ў®¤б⢥­­лҐ

S511P REAL

S511I REAL

S511K REAL

S512N REAL !63­ҐЇа®Ё§ў®¤б⢥­­лҐ

S512P REAL

S512I REAL

S512K REAL

S520N REAL !64

S520P REAL

S520I REAL

S520K REAL

S530N REAL !65

S530P REAL

S530I REAL

S530K REAL

S540N REAL !66

S540P REAL

S540I REAL

S540K REAL

S610N REAL !67

S610P REAL

S610I REAL

S610K REAL

S620N REAL !68

S620P REAL

S620I REAL

S620K REAL

S630N REAL !69

S630P REAL

S630I REAL

S630K REAL

S640N REAL !70

S640P REAL

S640I REAL

S640K REAL

S650N REAL !71

S650P REAL

S650I REAL

S650K REAL

S710N REAL !72

S710P REAL

S710I REAL

S710K REAL

S720N REAL !73

S720P REAL

S720I REAL

S720K REAL

S730N REAL !74

S730P REAL

S730I REAL

S730K REAL

S740N REAL !75

S740P REAL

S740I REAL

S740K REAL

S750N REAL !76

S750P REAL

S750I REAL

S750K REAL

S760N REAL !77

S760P REAL

S760I REAL

S760K REAL

S761N REAL !78

S761P REAL

S761I REAL

S761K REAL

S762N REAL !79

S762P REAL

S762I REAL

S762K REAL

S763N REAL !80

S763P REAL

S763I REAL

S763K REAL

S810N REAL !81

S810P REAL

S810I REAL

S810K REAL

S811N REAL !82

S811P REAL

S811I REAL

S811K REAL

S812N REAL !83

S812P REAL

S812I REAL

S812K REAL

S813N REAL !84

S813P REAL

S813I REAL

S813K REAL

S814N REAL !85

S814P REAL

S814I REAL

S814K REAL

S820N REAL !86аЁў«ҐзҐ­­лҐб।бвў -ўбҐЈ®

S820P REAL

S820I REAL

S820K REAL

S821N REAL !87 ЄаҐ¤ЁвлЎ ­Є®ў

S821P REAL

S821I REAL

S821K REAL

S822N REAL !88

S822P REAL

S822I REAL

S822K REAL

S823N REAL !89

S823P REAL

S823I REAL

S823K REAL

S824N REAL !90 Ё§Ўо¤¦Ґв 

S824P REAL

S824I REAL

S824K REAL

S825N REAL !91 Ё§ў­ҐЎо¤¦Ґв­лед®­¤®ў

S825P REAL

S825I REAL

S825K REAL

S826N REAL !92

S826P REAL

S826I REAL

S826K REAL

S830N REAL !93

S830P REAL

S830I REAL

S830K REAL

S910N REAL !94

S910P REAL

S910I REAL

S910K REAL

S920N REAL !95

S920P REAL

S920I REAL

S920K REAL

S930N REAL !96

S930P REAL

S930I REAL

S930K REAL

S940N REAL !97

S940P REAL

S940I REAL

S940K REAL

S950N REAL !98

S950P REAL

S950I REAL

S950K REAL

S960N REAL !99

S960P REAL

S960I REAL

S960K REAL

S970N REAL !100

S970P REAL

S970I REAL

S970K REAL

S980N REAL !101

S980P REAL

S980I REAL

S980K REAL

S990N REAL !102

S990P REAL

S990I REAL

S990K REAL

R110N REAL !103бЇа ўЄЁ д®а¬л5

R110P REAL

R110I REAL

R110K REAL

R120N REAL !104

R120P REAL

R120I REAL

R120K REAL

R130N REAL !105

R130P REAL

R130I REAL

R130K REAL

R140N REAL !106

R140P REAL

R140I REAL

R140K REAL

R150N REAL !107

R150P REAL

R150I REAL

R150K REAL

. .


SVV FILE,NAME('D:\LICEN\SVV'),PRE(SVV)

K KEY(SVV:PNOM,SVV:KZ),DUP,NOCASE,OPT

RECORD RECORD

PNOM SHORT

LC SHORT

MN STRING(1)

VP STRING(1)

PR REAL

KZ REAL

PSV1 REAL

PSV2 REAL

LS1 REAL

LS2 REAL

SG1 REAL

SG2 REAL

GBG1 REAL

GBG2 REAL

GMG1 REAL

GMG2 REAL

SNS1 REAL

SNS2 REAL

MS1 REAL

MS2 REAL

DLS1 REAL

DLS2 REAL

IS1 REAL

IS2 REAL

SIG1 REAL

SIG2 REAL

SGR1 REAL

SGR2 REAL

SRK1 REAL

SRK2 REAL

SIS1 REAL

SIS2 REAL

SO1 REAL

SO2 REAL

SST1 REAL

SST2 REAL

SNK1 REAL

SNK2 REAL

PSO1 REAL

PSO2 REAL

OS1 REAL

OS2 REAL

CR1 REAL

CR2 REAL

. .


F92 FILE,NAME('D:\LICEN\F92'),PRE(F92),CREATE,RECLAIM

FC KEY(F92:PNOMBER),DUP,NOCASE,OPT

RECORD RECORD

PNOMBER LONG

F1 REAL

F2 REAL

F3 REAL

F4 REAL

F5 REAL

F6 REAL

F7 REAL

F8 REAL

F9 REAL

F10 REAL

F11 REAL

F12 REAL

F13 REAL

F14 REAL

F15 REAL

F16 REAL

F17 REAL

F18 REAL

F19 REAL

F20 REAL

F21 REAL

F22 REAL

. .


LIC FILE,PRE(LIC),CREATE,RECLAIM

CLIC KEY(LIC:KNAM),DUP,NOCASE,OPT

CREG KEY(LIC:IREGION,LIC:KNAM),DUP,NOCASE,OPT

CPN1 KEY(LIC:PNOMBER),DUP,NOCASE,OPT

CNREG KEY(LIC:NREGION,LIC:KNAM),DUP,NOCASE,OPT

CNLIC KEY(LIC:NOMLIC),DUP,NOCASE,OPT

RECORD RECORD

KNAM STRING(30)!Єа вЄ®Ґ Ё¬пЄ®¬Ї ­ЁЁ

PNOMBER LONG!Їа®Ја ¬¬­л©­®¬Ґа

NOMLIC LONG !­®¬Ґа«ЁжҐ­§ЁЁ

KV STRING(1) !Š’Žўл¤лў « «ЁжҐ­§Ёо

NREGION LONG !­®¬ҐаॣЁ®­ 

IREGION STRING(30) !Ё¬пॣЁ®­ 

NCITY LONG

ICITY STRING(25)

ADRESS STRING(40)! ¤аҐб Є®¬Ї ­ЁЁ

ADRESS1 STRING(40)! ¤аҐб Є®¬Ї ­ЁЁ(2з)

FADRESS STRING(40)!Ї®зв®ўл©  ¤аҐб

FADRESS1 STRING(40)!Ї®зв®ўл©  ¤аҐб

FNAME STRING(40)!Ї®«­®Ґ Ё¬п Є®¬Ї ­ЁЁ

ISPOLNIT STRING(15)!ˆ‘Ž‹ˆ’…‹œ

FNAME1 STRING(40)!Ї®«­®Ґ Ё¬п Є®¬Ї ­ЁЁ(2з)

TELEPHON STRING(40)!⥫Ґд®­л Є®¬Ї ­ЁЁ

VIDORG STRING(50) !ўЁ¤®аЈ ­Ё§ жЁЁ

VIDORG1 STRING(50) !ўЁ¤®аЈ ­Ё§ жЁЁ(2з.)

UFOND REAL !гбв ў­®©д®­¤

DATAR STRING(@d6) !¤ в аҐЈЁбва жЁЁ

VHODN LONG !ўе®¤пйЁ©­®¬Ґа

DPOST STRING(@d6) !¤ в Ї®бвгЇ«Ґ­Ёп¤®Єг¬Ґ­в®ў

REZRAS STRING(22)!१г«мв ва бᬮв७Ёп

DUZ STRING(10)

PRINAD STRING(4)!Ј®«®ў­ п ®аЈ ­Ё§ жЁп

NPRIN LONG !Їа.­®¬Ґа Ј®«®ў­®©®аЈ ­Ё§ жЁ

NREISTR LONG

KVMR STRING(60)

DMR STRING(@d6)

SANK STRING(30)

DSANC STRING(10)

INCAP STRING(3)

. .


XREG FILE,PRE(XRE),CREATE,RECLAIM

K KEY(XRE:NREG),NOCASE,OPT

K1 KEY(XRE:NREGION),NOCASE,OPT

RECORD RECORD

NREG SHORT

IREG STRING(35)

NREGION SHORT

. .


GOR FILE,NAME('D:\LICEN\GOR'),PRE(GOR)

CGOR KEY(GOR:GOROD),DUP,NOCASE,OPT

RECORD RECORD

KG LONG

NREGION LONG

GOROD STRING(25)

. .


INSP FILE,NAME('D:\LICEN\INSP'),PRE(INS),CREATE,RECLAIM

K KEY(INS:NAME),DUP,NOCASE,OPT

K1 KEY(INS:NTER),DUP,NOCASE,OPT

RECORD RECORD

NAME STRING(30)

NTER SHORT

. .


TERR FILE,NAME('D:\LICEN\TERR'),PRE(TER),CREATE,RECLAIM

CREG KEY(TER:IREGION),DUP,NOCASE,OPT

CNREG KEY(TER:NREGION),DUP,NOCASE,OPT

K KEY(TER:KODT),DUP,NOCASE,OPT

K1 KEY(TER:KODT,TER:IREGION),DUP,NOCASE,OPT

RECORD RECORD

NAMT STRING(30)

KODT LONG

NREGION LONG

IREGION STRING(30)

. .


F FILE,PRE(F),CREATE,RECLAIM

K1 KEY(F:NKUST),DUP,NOCASE,OPT

K2 KEY(F:NREGION),DUP,NOCASE,OPT

K3 KEY(F:NGOR),DUP,NOCASE,OPT

RECORD RECORD

NKUST SHORT

NREGION SHORT

NGOR SHORT

F1 REAL !t67:a400n

F2 REAL !t67:a400k

F3 REAL !t67:a495n

F4 REAL !t67:a495K

F5 REAL !f92:f19

F6 REAL !t17:f018

F7 REAL !f92:f21

F8 REAL !t17:f020

F9 REAL !f92:f7

F10 REAL !t17:f004

F11 REAL !f92:f1

F12 REAL !t17:f001

F13 REAL !f92:f10

F14 REAL !t17:f010

F15 REAL !svv:cr2

F16 REAL !df:s750n

. .


EJECT('GLOBAL MEMORYVARIABLES')

ACTION SHORT !0 =NO ACTION

!1 = ADD RECORD

!2 = CHANGE RECORD

!3 = DELETE RECORD

!4 = LOOKUP FIELD

GROUP,PRE(MEM)

MESSAGE STRING(30)!Global Message Area

PAGE SHORT!Report Page Number

LINE SHORT!Report Line Number

DEVICE STRING(30)!Report Device Name

NR SHORT

NG REAL

VG REAL

GOD SHORT

PR SHORT

.


EJECT('CODE SECTION')

CODE

SETHUE(7,0) !SETWHITE ON BLACK

BLANK ! AND BLANK

G_OPENFILES !OPEN ORCREATE FILES

SETHUE() ! THESCREEN

GBO

RETURN !EXIT TO DOS


G_OPENFILES PROCEDURE!OPEN FILES & CHECK FOR ERROR

CODE

G_OPENFILES2(T17)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(T67)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(DF) !CALLOPEN FILE PROCEDURE

G_OPENFILES2(SVV)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(F92)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(LIC)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(XREG)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(GOR)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(INSP)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(TERR)!CALL OPEN FILE PROCEDURE

G_OPENFILES2(F) !CALLOPEN FILE PROCEDURE

BLANK !BLANK THESCREEN


G_OPENFILES2PROCEDURE(G_FILE) !OPEN EACH FILE & CHECK ERROR

G_FILE EXTERNAL,FILE

FILE_NAME STRING(64)


CODE

FILE_NAME = NAME(G_FILE)

SHOW(25,1,CENTER('OPENINGFILE: ' & CLIP(FILE_NAME),80)) !DISPLAY FILE NAME

OPEN(G_FILE) !OPENTHE FILE

IF ERROR() !OPENRETURNED AN ERROR

CASE ERRORCODE() !CHECK FOR SPECIFIC ERROR

OF 46 ! KEYS NEEDTO BE REQUILT

SETHUE(0,7) ! BLACK ON WHITE

SHOW(25,1,CENTER('REBUILDINGKEY FILES FOR ' & CLIP(FILE_NAME),80))

BUILD(G_FILE) ! CALL THE BUILD PROCEDURE

IF ERROR() ! ONUNNEXPECTED ERROR

LOOP ! STOP EXECUTION

STOP('Cannot Build ' &FILE_NAME & ' - Error: ' & ERROR())

.

.

SETHUE(7,0) ! WHITE ON BLACK

BLANK(25,1,1,80) ! BLANK THE MESSAGE

OF 2 !IF NOT FOUND,

CREATE(G_FILE) !CREATE

IF ERROR() !STOPON UNNEXPECTED ERROR

LOOP

STOP('Cannot Create ' &FILE_NAME & ' - Error: ' & ERROR())

. .

OF 73 ! MEMO FILENOT FOUND

LOOP ! STOPEXECUTION

STOP('Cannot Open Memo Filefor ' & FILE_NAME & ERROR())

.

ELSE ! ANY OTHERERROR

LOOP ! STOPEXECUTION

STOP('Cannot Open ' &FILE_NAME & ' - Error: ' & ERROR())

.

. .


(ant1)


MEMBER('ANT')

GBO1PROCEDURE

SCREENSCREENPRE(SCR),WINDOW(12,73),AT(6,6),HUE(15,5)

ROW(2,24) PAINT(1,21),HUE(11,5)

ROW(11,22) PAINT(1,31),HUE(30,1)

ROW(1,1)STRING('+-{71}+')

ROW(2,1)REPEAT(10);STRING('¦¦').

ROW(12,1) STRING('+-{71}+')

ROW(2,24) STRING('аналитическиетаблицы')ROW(11,30)

STRING('начальнаясортировка')

COL(25) STRING('F2 -')

ENTRY,USE(?FIRST_FIELD)

ENTRY,USE(?PRE_MENU)

MENU,USE(MENU_FIELD"),REQ

ROW(4,5)STRING('1. веденияоб измененииотдельных ' |

& 'показателейдеятельности')

ROW(5,5)STRING('2. анализпоказателейразвития ' |

& 'страховыхорганизаций')

ROW(6,5)STRING('3. объемпоступленийи выплат на1 ' |

& 'работникастраховойорганизации')

..

EJECT

CODE

OPEN(SCREEN)!OPEN THE MENUSCREEN

SETCURSOR!TURN OFF ANYCURSOR

MENU_FIELD" = ''!STARTMENU WITH FIRST ITEM

LOOP!LOOP UNTIL USEREXITS

ALERT!TURNOFF ALL ALERTED KEYS

ALERT(REJECT_KEY)!ALERTSCREEN REJECT KEY

ALERT(ACCEPT_KEY)!ALERTSCREEN ACCEPT KEY

ALERT(F2_KEY)!ALERT HOT KEY

ACCEPT!READA FIELD OR MENU CHOICE

IF KEYCODE() = F2_KEY!ONHOT KEY

UPDATE(?)! RETRIEVEFIELD

SAVACTN# = ACTION! SAVEACTION

S! CALL HOT KEYPROCEDURE

ACTION = SAVACTN#! RESTORE ACTION

SELECT(?)! DO SAME FIELDAGAIN

CYCLE! AND LOOP AGAIN

.

IF KEYCODE() = REJECT_KEY THENRETURN. !RETURN ON SCREEN REJECT

IF KEYCODE() = ACCEPT_KEY!ONSCREEN ACCEPT KEY

UPDATE! MOVE ALL FIELDSFROM SCREEN

SELECT(?)! START WITHCURRENT FIELD

SELECT! EDIT ALLFIELDS

CYCLE! GO TO TOP OFLOOP

.!

CASE FIELD()!JUMP TO FIELDEDIT ROUTINE

OF ?FIRST_FIELD!FROM THEFIRST FIELD

IF KEYCODE() = ESC_KEY THENRETURN.! RETURN ON ESC KEY

OF ?PRE_MENU !PRE MENU FIELD CONDITION

IF KEYCODE() = ESC_KEY! BACKING UP?

SELECT(?-1)! SELECTPREVIOUS FIELD

ELSE! GOING FORWARD

SELECT(?+1)! SELECTMENU FIELD

.

OF ?MENU_FIELD"!FROMTHE MENU FIELD

EXECUTE CHOICE()! CALLTHE SELECTED PROCEDURE

AT1!

AT2!

AT3!

. . .



(ant2)


MEMBER('ANT')

R PROCEDURE


SCREEN SCREEN PRE(SCR),WINDOW(1,3),AT(9,77),HUE(0,2)

ENTRY,USE(?FIRST_FIELD)

ROW(1,1) ENTRY,USE(MEM:NR)

NR COL(1) STRING(@n3),HUE(7,7)

ENTRY,USE(?LAST_FIELD)

.


EJECT

CODE

OPEN(SCREEN) !OPEN THESCREEN

SETCURSOR !TURN OFF ANYCURSOR

DISPLAY !DISPLAY THEFIELDS

LOOP !LOOP THRU ALL THEFIELDS

SCR:NR = MEM:NR

ALERT !RESET ALERTEDKEYS

ALERT(ACCEPT_KEY) !ALERTSCREEN ACCEPT KEY

ALERT(REJECT_KEY) !ALERTSCREEN REJECT KEY

ACCEPT !READ A FIELD

IF KEYCODE() = REJECT_KEYTHEN RETURN. !RETURN ON SCREEN REJECT KEY


IF KEYCODE() = ACCEPT_KEY !ON SCREEN ACCEPT KEY

UPDATE ! MOVE ALLFIELDS FROM SCREEN

SELECT(?) ! STARTWITH CURRENT FIELD

SELECT ! EDIT ALLFIELDS

CYCLE ! GO TO TOP OFLOOP

. !


CASE FIELD() !JUMP TOFIELD EDIT ROUTINE

OF ?FIRST_FIELD !FROM THEFIRST FIELD

IF KEYCODE() = ESC_KEY THENRETURN. ! RETURN ON ESC KEY


OF ?MEM:NR

XRE:NREGION = MEM:NR!MOVE RELATED FIELDS

GET(XREG,XRE:K1) !READTHE RECORD

ACTION# = ACTION !SAVEACTION

ACTION = 4 !REQUESTTABLE LOOKUP

REG !CALL LOOKUPPROCEDURE

IF ACTION !NOSELECTION WAS MADE

SELECT(?MEM:NR-1) ! BACK UPONE FIELD

ACTION = ACTION# ! RESTOREACTION

CYCLE ! GO TO TOP OF LOOP

.

SCR:NR = XRE:NREGION!DISPLAY LOOKUP FIELD

MEM:NR = XRE:NREGION!MOVE LOOKUP FIELD

DISPLAY(?MEM:NR) !ANDDISPLAY IT

ACTION = ACTION#!RESTORE ACTION

MEN2


OF ?LAST_FIELD !FROM THELAST FIELD

ACTION = 0 ! SETACTION TO COMPLETE

RETURN ! AND RETURNTO CALLER

. .


(ant3)


MEMBER('ANT')

REGPROCEDURE

SCREENSCREENPRE(SCR),WINDOW(25,39),AT(1,42),HUE(8,7)

ROW(2,9)PAINT(1,19),HUE(0,7)

ROW(1,1)STRING('+-{37}+')

ROW(2,1)REPEAT(2);STRING('¦¦').

ROW(4,1)STRING('¦')

ROW(5,1)REPEAT(20);STRING('¦¦').

ROW(25,1) STRING('+-{37}+')

ROW(2,12) STRING('выберитерегион')ROW(4,39) STRING('¦')

ENTRY,USE(?FIRST_FIELD)

ENTRY,USE(?PRE_POINT)REPEAT(21),EVERY(1),INDEX(NDX)

COL(2) POINT(1,37),USE(?POINT),ESC(?-1)

IREGCOL(3) STRING(35)

..

NDXBYTE!REPEAT INDEX FORPOINT AREA

ROWBYTE!ACTUAL ROW OF SCROLLAREA

COLBYTE!ACTUAL COLUMN OFSCROLL AREA

COUNTBYTE(21)!NUMBER OF ITEMSTO SCROLL

ROWSBYTE(21)!NUMBER OF ROWSTO SCROLL

COLSBYTE(37)!NUMBER OFCOLUMNS TO SCROLL

FOUNDBYTE!RECORD FOUND FLAG

NEWPTRLONG!POINTER TO NEWRECORD

TABLETABLE,PRE(TBL)!TABLE OFRECORD DATA

PTRLONG! POINTER TO FILERECORD

IREGSTRING(35)

NREGSHORT

.

EJECT

CODE

ACTION# = ACTION!SAVE ACTION

OPEN(SCREEN)!OPEN THESCREEN

SETCURSOR!TURN OFF ANYCURSOR

TBL:PTR = 1!START AT TABLEENTRY

NDX = 1!PUT SELECTOR BAR ONTOP ITEM

ROW = ROW(?POINT)!REMEMBERTOP ROW AND

COL = COL(?POINT)!LEFTCOLUMN OF SCROLL AREA

RECORDS# = TRUE!INITIALIZERECORDS FLAG

CACHE(XRE:K,.25)!CACHE KEYFILE

IF ACTION = 4! TABLELOOKUP REQUEST

NEWPTR = POINTER(XREG)! SETPOINTER TO RECORD

IF NOT NEWPTR! RECORD NOTPASSED TO TABLE

SET(XRE:K,XRE:K)! POSITION TO CLOSEST RECORD

NEXT(XREG)! READ RECORD

NEWPTR = POINTER(XREG)! SET POINTER

.

DO FIND_RECORD! POSITIONFILE

ELSE

NDX = 1 ! PUT SELECTOR BARON TOP ITEM

DO FIRST_PAGE! BUILD MEMORYTABLE OF KEYS

.

RECORDS# = TRUE! ASSUMETHERE ARE RECORDS

LOOP!LOOP UNTIL USER EXITS

ACTION = ACTION#!RESTOREACTION

ALERT!RESET ALERTED KEYS

ALERT(REJECT_KEY)!ALERTSCREEN REJECT KEY

ALERT(ACCEPT_KEY)!ALERTSCREEN ACCEPT KEY

ACCEPT!READ A FIELD

IF KEYCODE() = REJECT_KEY THENBREAK. !RETURN ON SCREEN REJECT KEY

IF KEYCODE() = ACCEPT_KEY |!ON SCREEN ACCEPT KEY

AND FIELD() ?POINT !BUT NOT ON THE POINT FIELD

UPDATE ! MOVE ALL FIELDS FROM SCREEN

SELECT(?) ! START WITH CURRENT FIELD

SELECT ! EDIT ALL FIELDS

CYCLE ! GO TO TOP OF LOOP

.

CASE FIELD()!JUMP TO FIELD EDITROUTINE

OF ?FIRST_FIELD !FROM THE FIRST FIELD

IF KEYCODE() = ESC_KEY | ! RETURN ON ESC KEY

OR RECORDS# = FALSEб ! OR NO RECORDS

BREAK !EXIT PROCEDURE

.

OF ?PRE_POINT!PRE POINT FIELDCONDITION

IF KEYCODE() = ESC_KEY! BACKING UP?

SELECT(?-1) !SELECT PREVIOUS FIELD

ELSE ! GOING FORWARD

SELECT(?POINT) !SELECT MENU FIELD

.

OF ?POINT !PROCESS THE POINT FIELD

IF RECORDS(TABLE) = 0 !IF THERE ARE NO RECORDS

CLEAR(XRE:RECORD) ! CLEAR RECORD AREA

ACTION = 1 ! SET ACTION TO ADD

GET(XREG,0) ! CLEAR PENDING RECORD

NEWPTR = POINTER(XREG) !SET POINTER TO NEW RECORD

DO FIRST_PAGE ! DISPLAY THE FIRST PAGE

IF RECORDS(TABLE) = 0 ! IF THERE AREN'T ANY RECORDS

RECORDS# = FALSE !INDICATE NO RECORDS

SELECT(?PRE_POINT-1) !SELECT THE PRIOR FIELD

.

CYCLE !AND LOOP AGAIN

.

CASE KEYCODE() !PROCESS THE KEYSTROKE

OF INS_KEY !INS KEY

CLEAR(XRE:RECORD) ! CLEAR RECORD AREA

ACTION = 1 ! SET ACTION TO ADD

GET(XREG,0) ! CLEAR PENDING RECORD

IF ~ACTION ! IF RECORD WAS ADDED

NEWPTR = POINTER(XREG) !SET POINTER TO NEW RECORD

DO FIND_RECORD !POSITION IN FILE

.

OF ENTER_KEY !ENTER KEY

OROF ACCEPT_KEY !CTRL-ENTER KEY

DO GET_RECORD ! GET THE SELECTED RECORD

IF ACTION = 4 AND KEYCODE() =ENTER_KEY !IF THIS IS A LOOKUP REQUEST

ACTION = 0 !SET ACTION TO COMPLETE

BREAK !AND RETURN TO CALLER

.

IF ~ERROR() ! IF RECORD IS STILL THERE

ACTION = 2 !SET ACTION TO CHANGE

IF ACTION THEN CYCLE. !IF SUCCESSFUL RE-DISPLAY

.

NEWPTR = POINTER(XREG) !SET POINTER TO NEW RECORD

DO FIND_RECORD !POSITION IN FILE

OF DEL_KEY !DEL KEY

DO GET_RECORD ! READ THE SELECTED RECORD

IF ~ERROR() ! IF RECORD IS STILL THERE

ACTION = 3 !SET ACTION TO DELETE

IF ~ACTION !IF SUCCESSFUL

N# = NDX ! SAVE POINT INDEX

DO SAME_PAGE ! RE-DISPLAY

NDX = N# ! RESTORE POINT INDEX

..

OF DOWN_KEY !DOWN ARROW KEY

DO SET_NEXT ! POINT TO NEXT RECORD

DO FILL_NEXT ! FILL A TABLE ENTRY

IF FOUND ! FOUND A NEW RECORD

SCROLL(ROW,COL,ROWS,COLS,ROWS(?POINT)) ! SCROLL THE SCREEN UP

GET(TABLE,RECORDS(TABLE))! GETRECORD FROM TABLE

DO FILL_SCREEN! DISPLAYON SCREEN

.

OF PGDN_KEY!PAGE DOWN KEY

DO SET_NEXT! POINT TO NEXTRECORD

DO NEXT_PAGE! DISPLAY THENEXT PAGE

OF CTRL_PGDN!CTRL-PAGE DOWNKEY

DO LAST_PAGE! DISPLAY THELAST PAGE

NDX = RECORDS(TABLE)! POSITION POINT BAR

OF UP_KEY!UP ARROW KEY

DO SET_PREV! POINT TOPREVIOUS RECORD

DO FILL_PREV! FILL A TABLEENTRY

IF FOUND! FOUND A NEWRECORD

SCROLL(ROW,COL,ROWS,COLS,-(ROWS(?POINT))) ! SCROLL THESCREEN DOWN

GET(TABLE,1) ! GET RECORD FROM TABLE

DO FILL_SCREEN! DISPLAYON SCREEN

.

OF PGUP_KEY!PAGE UP KEY

DO SET_PREV! POINT TOPREVIOUS RECORD

DO PREV_PAGE! DISPLAY THEPREVIOUS PAGE

OF CTRL_PGUP!CTRL-PAGE UP

DO FIRST_PAGE! DISPLAY THEFIRST PAGE

NDX = 1! POSITION POINTBAR

...

FREE(TABLE)!FREE MEMORY TABLE

FREE(XRE:K)!FREE CACHE

RETURN!AND RETURN TO CALLER

SAME_PAGE ROUTINE!DISPLAY THESAME PAGE

GET(TABLE,1)! GET THE FIRSTTABLE ENTRY

DO FILL_RECORD! FILL IN THERECORD

SET(XRE:K,XRE:K,TBL:PTR)! POSITION FILE

FREE(TABLE)! EMPTY THE TABLE

DO NEXT_PAGE! DISPLAY A FULLPAGE

FIRST_PAGE ROUTINE!DISPLAYFIRST PAGE

FREE(TABLE)! EMPTY THE TABLE

CLEAR(XRE:RECORD,-1)! CLEARRECORD TO LOW VALUES

CLEAR(TBL:PTR)! ZERO RECORDPOINTER

SET(XRE:K)! POINT TO FIRSTRECORD

LOOP NDX = 1 TO COUNT! FILLUP THE TABLE

DO FILL_NEXT! FILL A TABLEENTRY

IF NOT FOUND THEN BREAK.! GET OUT IF NO RECORD

.

NDX = 1! SET TO TOP OFTABLE

DO SHOW_PAGE! DISPLAY THEPAGE

LAST_PAGE ROUTINE!DISPLAY LASTPAGE

NDX# = NDX! SAVE SELECTORPOSITION

FREE(TABLE)! EMPTY THE TABLE

CLEAR(XRE:RECORD,1)! CLEARRECORD TO HIGH VALUES

CLEAR(TBL:PTR,1)! CLEAR PTRTO HIGH VALUE

SET(XRE:K)! POINT TO FIRSTRECORD

LOOP NDX = COUNT TO 1 BY -1! FILL UP THE TABLE

DO FILL_PREV! FILL A TABLEENTRY

IF NOT FOUND THEN BREAK.! GET OUT IF NO RECORD

.! END OF LOOP

NDX = NDX#! RESTORE SELECTORPOSITION

DO SHOW_PAGE! DISPLAY THEPAGE

FIND_RECORD ROUTINE!POSITION TOSPECIFIC RECORD

SET(XRE:K,XRE:K,NEWPTR)!POSITIONFILE

IF NEWPTR = 0!NEWPTR NOT SET

NEXT(XREG)! READ NEXT RECORD

NEWPTR = POINTER(XREG)! SETNEWPTR

SKIP(XREG,-1)! BACK UP TODISPLAY RECORD

.

FREE(TABLE)! CLEAR THE RECORD

DO NEXT_PAGE! DISPLAY A PAGE

NEXT_PAGE ROUTINE!DISPLAY NEXTPAGE

SAVECNT# = RECORDS(TABLE)! SAVE RECORD COUNT

LOOP COUNT TIMES! FILL UP THETABLE

DO FILL_NEXT!FILL A TABLEENTRY

IF NOT FOUND!IF NONE ARELEFT

IF NOT SAVECNT#! IFREBUILDING TABLE

DO LAST_PAGE! FILL INRECORDS

EXIT! EXIT OUT OFROUTINE

.

BREAK!EXIT LOOP

..

DO SHOW_PAGE! DISPLAY THEPAGE

SET_NEXT ROUTINE!POINT TO THENEXT PAGE

GET(TABLE,RECORDS(TABLE))! GET THE LAST TABLE ENTRY

DO FILL_RECORD! FILL IN THERECORD

SET(XRE:K,XRE:K,TBL:PTR)! POSITION FILE

NEXT(XREG)! READ THE CURRENTRECORD

FILL_NEXT ROUTINE!FILL NEXTTABLE ENTRY

FOUND = FALSE! ASSUME RECORDNOT FOUND

LOOP UNTIL EOF(XREG)! LOOPUNTIL END OF FILE

NEXT(XREG)!READ THE NEXTRECORD

FOUND = TRUE!SET RECORDFOUND

DO FILL_TABLE!FILL IN THETABLE ENTRY

ADD(TABLE)!ADD LAST TABLEENTRY

GET(TABLE,RECORDS(TABLE)-COUNT)!GETANY OVERFLOW RECORD

DELETE(TABLE)!AND DELETE IT

EXIT!RETURN TO CALLER

.

PREV_PAGE ROUTINE!DISPLAYPREVIOUS PAGE

LOOP COUNT TIMES! FILL UP THETABLE

DO FILL_PREV!FILL A TABLEENTRY

IF NOT FOUND THEN BREAK.!GETOUT IF NO RECORD

.

DO SHOW_PAGE! DISPLAY THEPAGE

SET_PREV ROUTINE!POINT TOPREVIOUS PAGE

GET(TABLE,1)! GET THE FIRSTTABLE ENTRY

DO FILL_RECORD! FILL IN THERECORD

SET(XRE:K,XRE:K,TBL:PTR)! POSITION FILE

PREVIOUS(XREG)! READ THECURRENT RECORD

FILL_PREV ROUTINE!FILL PREVIOUSTABLE ENTRY

FOUND = FALSE! ASSUME RECORDNOT FOUND

LOOP UNTIL BOF(XREG)! LOOPUNTIL BEGINNING OF FILE

PREVIOUS(XREG)!READ THEPREVIOUS RECORD

FOUND = TRUESET RECORD FOUND

DO FILL_TABLE!FILL IN THETABLE ENTRY

ADD(TABLE,1)!ADD FIRST TABLEENTRY

GET(TABLE,COUNT+1)!GET ANYOVERFLOW RECORD

DELETE(TABLE)!AND DELETE IT

EXIT !RETURN TO CALLER

.

SHOW_PAGE ROUTINE!DISPLAY THEPAGE

NDX# = NDX! SAVE SCREEN INDEX

LOOP NDX = 1 TORECORDS(TABLE)! LOOP THRU THE TABLE

GET(TABLE,NDX)!GET A TABLEENTRY

DO FILL_SCREENAND DISPLAY IT

IF TBL:PTR = NEWPTR!SETINDEX FOR NEW RECORD

NDX# = NDX!POINT TO CORRECTRECORD

..

LOOP WHILE NDX

BLANK(ROW(?POINT),COL(?POINT),ROWS(?POINT),COLS(?POINT))!BLANKA LINE

NDX += 1! INCREMENT NDX

.

NDX = NDX#! RESTORE SCREENINDEX

NEWPTR = 0! CLEAR NEW RECORDPOINTER

CLEAR(XRE:RECORD)! CLEARRECORD AREA

FILL_TABLE ROUTINE!MOVE FILE TOTABLE

TBL:IREG = XRE:IREG

TBL:NREG = XRE:NREG

TBL:PTR = POINTER(XREG)! SAVERECORD POINTER

FILL_RECORD ROUTINE!MOVE TABLETO FILE

XRE:NREG = TBL:NREG

FILL_SCREEN ROUTINE!MOVE TABLETO SCREEN

SCR:IREG = TBL:IREG

GET_RECORD ROUTINE!GET SELECTEDRECORD

GET(TABLE,NDX)! GET TABLEENTRY

GET(XREG,TBL:PTR)! GET THERECORD



(ant4)


MEMBER('ANT')

MEN2PROCEDURE

SCREENSCREENPRE(SCR),WINDOW(6,25),AT(9,27),HUE(5,3)

ROW(1,1)STRING('+-{23}+')

ROW(2,1)REPEAT(4);STRING('¦¦').

ROW(6,1)STRING('+-{23}+')

ROW(2,7)STRING('выберитегод')

ENTRY,USE(?FIRST_FIELD)ENTRY,USE(?PRE_MENU) MENU,USE(MENU_FIELD"),REQ

ROW(4,8) STRING('1. 1992год')

ROW(5,8) STRING('2. 1993год')

..

EJECT

CODE

OPEN(SCREEN)!OPEN THE MENUSCREEN

SETCURSOR!TURN OFF ANY CURSOR

MENU_FIELD" = ''!STARTMENU WITH FIRST ITEM

IF CHOICE()=1 THEN MEM:PR=1 ELSEMEM:PR=2.!CALL SETUP PROCEDURE

LOOP!LOOP UNTIL USER EXITS

ALERT!TURN OFF ALL ALERTEDKEYS

ALERT(REJECT_KEY)!ALERTSCREEN REJECT KEY

ALERT(ACCEPT_KEY)!ALERTSCREEN ACCEPT KEY

ACCEPT!READ A FIELD OR MENUCHOICE

IF KEYCODE() = REJECT_KEY THENRETURN.!RETURN ON SCREEN REJECT

IF KEYCODE() = ACCEPT_KEY!ONSCREEN ACCEPT KEY

UPDATE! MOVE ALL FIELDSFROM SCREEN

SELECT(?)! START WITHCURRENT FIELD

SELECT! EDIT ALL FIELDS

CYCLE! GO TO TOP OF LOOP

.!

CASE FIELD()!JUMP TO FIELDEDIT ROUTINE

OF ?FIRST_FIELD!FROM THEFIRST FIELD

IF KEYCODE() = ESC_KEY THENRETURN.! RETURN ON ESC KEY

OF ?PRE_MENU!PRE MENU FIELDCONDITION

IF KEYCODE() = ESC_KEY! BACKING UP?

SELECT(?-1)! SELECTPREVIOUS FIELD

ELSE! GOING FORWARD

SELECT(?+1)! SELECT MENUFIELD

.

OF ?MENU_FIELD"!FROM THEMENU FIELD

EXECUTE CHOICE()! CALL THESELECTED PROCEDURE

MEN4!

MEN4!

...



(ant5)


MEMBER('ANT')

MEN4PROCEDURE

SCREENSCREENPRE(SCR),WINDOW(10,36),AT(6,23),HUE(5,3)

ROW(1,1)STRING('+-{34}+')

ROW(2,1)REPEAT(3),EVERY(3);STRING('¦¦').

ROW(3,1)STRING('¦ведитеграницы¦')

ROW(4,1)STRING('¦втысруб¦')

ROW(6,1)STRING('¦минимальную¦')

ROW(7,1)STRING('¦максимальную¦')

ROW(9,1)STRING('¦¦')

ROW(10,1) STRING('+-{34}+')

ROW(4,13) STRING('(')

COL(19) STRING('.')

COL(23) STRING('.)')

ENTRY,USE(?FIRST_FIELD)

ROW(6,19)ENTRY(@n_9),USE(MEM:NG),NUM,INS,HUE(0,3)rOW(7,19) ENTRY(@n_9),USE(MEM:VG),NUM,INS,HUE(0,3)

ENTRY,USE(?LAST_FIELD)

.

EJECT

CODE

OPEN(SCREEN)!OPENTHE SCREEN

SETCURSOR!TURNOFF ANY CURSOR

ifchoice()=1 then mem:god=1992 else mem:god=1993.!CALL SETUP PROCEDURE

DISPLAY!DISPLAYTHE FIELDS

LOOP!LOOPTHRU ALL THE FIELDS

ALERT!RESETALERTED KEYS

ALERT(ACCEPT_KEY)!ALERTSCREEN ACCEPT KEY

ALERT(REJECT_KEY)!ALERTSCREEN REJECT KEY

ACCEPT!READA FIELD

IFKEYCODE() = REJECT_KEY THEN RETURN. !RETURN ON SCREEN REJECT KEY

IFKEYCODE() = ACCEPT_KEY!ON SCREEN ACCEPT KEY

UPDATE! MOVE ALL FIELDS FROM SCREEN

SELECT(?)! START WITH CURRENT FIELD

SELECT! EDIT ALL FIELDS

CYCLE! GO TO TOP OF LOOP

.!

CASEFIELD()!JUMP TO FIELD EDIT ROUTINE

OF?FIRST_FIELD!FROM THE FIRST FIELD

IFKEYCODE() = ESC_KEY THEN RETURN.! RETURN ON ESC KEY

OF?MEM:VG

MEN5

OF?LAST_FIELD!FROM THE LAST FIELD

ACTION= 0! SET ACTION TO COMPLETE

RETURN! AND RETURN TO CALLER

..



(ant6)


MEMBER('ANT')

MEN5PROCEDURE

SCREENSCREENPRE(SCR),WINDOW(8,31),AT(7,24),HUE(6,7)

ROW(1,1)STRING('+-{29}+')

ROW(2,1)REPEAT(6);STRING('¦¦').

ROW(8,1)STRING('+-{29}+')

ENTRY,USE(?FIRST_FIELD)ENTRY,USE(?PRE_MENU) MENU,USE(MENU_FIELD"),REQ

ROW(3,6) STRING('1.уставныйкапитал'),HUE(6,7)

ROW(4,6) STRING('2.страховыевзносы'),HUE(6,7)

ROW(5,6) STRING('3.страховыерезервы'),HUE(6,7)

ROW(6,6) STRING('4.страховыевыплаты'),HUE(6,7)

..

EJECT

CODE

OPEN(SCREEN)!OPEN THE MENUSCREEN

SETCURSOR!TURN OFF ANYCURSOR

MENU_FIELD" = ''!STARTMENU WITH FIRST ITEM

LOOP!LOOP UNTIL USER EXITS

ALERT!TURN OFF ALL ALERTEDKEYS

ALERT(REJECT_KEY)!ALERTSCREEN REJECT KEY

ALERT(ACCEPT_KEY)!ALERTSCREEN ACCEPT KEY

ACCEPT!READ A FIELD OR MENUCHOICE

IF KEYCODE() = REJECT_KEY THENRETURN.!RETURN ON SCREEN REJECT

IF KEYCODE() = ACCEPT_KEY!ONSCREEN ACCEPT KEY

UPDATE! MOVE ALL FIELDSFROM SCREEN

SELECT(?)! START WITHCURRENT FIELD

SELECT! EDIT ALL FIELDS

CYCLE! GO TO TOP OF LOOP

.!

CASE FIELD()!JUMP TO FIELDEDIT ROUTINE

OF ?FIRST_FIELD!FROM THEFIRST FIELD

IF KEYCODE() = ESC_KEY THENRETURN.! RETURN ON ESC KEY

OF ?PRE_MENU!PRE MENU FIELDCONDITION

IF KEYCODE() = ESC_KEY! BACKING UP?

SELECT(?-1)! SELECTPREVIOUS FIELD

ELSE! GOING FORWARD

SELECT(?+1)! SELECTMENU FIELD

.

OF ?MENU_FIELD"!FROMTHE MENU FIELD

EXECUTE CHOICE()! CALL THESELECTED PROCEDURE

UK!

SVZ!

SR!

SVP!

...



MEMBER('ANT')

MBOPROCEDURE

SCREENSCREENPRE(SCR),WINDOW(6,32),AT(8,22),HUE(15,1)

ROW(2,10) PAINT(1,17),HUE(14,1)

ROW(1,1)STRING('+-{30}+')

ROW(2,1)REPEAT(4);STRING('¦¦').

ROW(6,1)STRING('+-{30}+')

ROW(2,10)STRING('получениеданных')ENTRY,USE(?FIRST_FIELD)

ENTRY,USE(?PRE_MENU)MENU,USE(MENU_FIELD"),REQ

ROW(4,5) STRING('1. по РоссийскойФедерации')

ROW(5,5) STRING('2. по региону')

..

EJECT

CODE

OPEN(SCREEN)!OPENTHE MENU SCREEN

SETCURSOR!TURNOFF ANY CURSOR

MENU_FIELD"= ''!START MENU WITH FIRST ITEM

LOOP!LOOPUNTIL USER EXITS

ALERT!TURNOFF ALL ALERTED KEYS

ALERT(REJECT_KEY)!ALERTSCREEN REJECT KEY

ALERT(ACCEPT_KEY)!ALERTSCREEN ACCEPT KEY

ACCEPT!READA FIELD OR MENU CHOICE

IFKEYCODE() = REJECT_KEY THEN RETURN.!RETURN ON SCREEN REJECT

IFKEYCODE() = ACCEPT_KEY!ON SCREEN ACCEPT KEY

UPDATE! MOVE ALL FIELDS FROM SCREEN

SELECT(?)! START WITH CURRENT FIELD

SELECT! EDIT ALL FIELDS

CYCLE! GO TO TOP OF LOOP

.!

CASEFIELD()!JUMP TO FIELD EDIT ROUTINE

OF?FIRST_FIELD!FROM THE FIRST FIELD

IFKEYCODE() = ESC_KEY THEN RETURN.! RETURN ON ESC KEY

OF?PRE_MENU!PRE MENU FIELD CONDITION

IFKEYCODE() = ESC_KEY! BACKING UP?

SELECT(?-1)! SELECT PREVIOUS FIELD

ELSE! GOING FORWARD

SELECT(?+1)! SELECT MENU FIELD

.

OF?MENU_FIELD"!FROM THE MENU FIELD

EXECUTECHOICE()! CALL THE SELECTED PROCEDURE

MEN2!

R!

...



(ant8)


MEMBER('ANT')

GBOPROCEDURE

SCREENSCREENPRE(SCR),WINDOW(6,38),AT(6,19),HUE(11,5)

ROW(1,1)STRING('+-{36}+')

ROW(2,1)REPEAT(4);STRING('¦¦').

ROW(6,1)STRING('+-{36}+')

ENTRY,USE(?FIRST_FIELD)ENTRY,USE(?PRE_MENU) MENU,USE(MENU_FIELD"),REQ

ROW(3,8) STRING('1.аналитическиетаблицы')

ROW(4,8) STRING('2.cписки позапросу')

..

EJECT

CODE

OPEN(SCREEN)!OPEN THE MENUSCREEN

SETCURSOR!TURN OFF ANYCURSOR

MENU_FIELD" = ''!STARTMENU WITH FIRST ITEM

LOOP!LOOP UNTIL USER EXITS

ALERT!TURN OFF ALL ALERTEDKEYS

ALERT(REJECT_KEY)!ALERTSCREEN REJECT KEY

ALERT(ACCEPT_KEY)!ALERTSCREEN ACCEPT KEY

ACCEPT!READ A FIELD OR MENUCHOICE

IF KEYCODE() = REJECT_KEY THENRETURN.!RETURN ON SCREEN REJECT

IF KEYCODE() = ACCEPT_KEY!ONSCREEN ACCEPT KEY

UPDATE! MOVE ALL FIELDSFROM SCREEN

SELECT(?)! START WITHCURRENT FIELD

SELECT! EDIT ALL FIELDS

CYCLE! GO TO TOP OF LOOP

.!

CASE FIELD()!JUMP TO FIELDEDIT ROUTINE

OF ?FIRST_FIELD!FROM THEFIRST FIELD

IF KEYCODE() = ESC_KEY THENRETURN.! RETURN ON ESC KEY

OF ?PRE_MENU!PRE MENU FIELDCONDITION

IF KEYCODE() = ESC_KEY! BACKING UP?

SELECT(?-1)! SELECTPREVIOUS FIELD

ELSE! GOING FORWARD

SELECT(?+1)! SELECTMENU FIELD

.

OF ?MENU_FIELD"!FROMTHE MENU FIELD

EXECUTE CHOICE()! CALL THESELECTED PROCEDURE

GBO1!

MBO!

...



6. ОРГАНИЗАЦИЯРАЗРАБОТКИСИСТЕМЫ СБОРАИНФОРМАЦИИИ АНАЛИЗАДЕЯТЕЛЬНОСТИИ ОПРЕДЕЛЕНИЕЗАТРАТ НА РАЗРАБОТКУДАННОЙ СИСТЕМЫ.


6.1 Организационнаячасть.


Целью созданиясистемы являетсяавтоматизацияпроцесса обработкиинформациидля деятельностистраховойкомпании.

Система позволяет:

  • сократитьвремя обработкинеобходимойинформациипо страховыморганизациям;

  • оперативнополучать сведенияо динамикеэкономическихпараметровстраховыхорганизаций;

  • эффективноработатьнепрограммирующемупрофессионалув предметнойобласти, получаявсю необходимуюинформациюмаксимальнооперативно.


Порядок выполненияразработки.


Шифр

события

Содержание

события

Шифр

работы

Содержание

работы

Трудоем-кость

Число

исполнит.

Продолжитель-

ностьработы

1 Началоразработки 1-2

Разработка

ТЗ

6 2 3
2 ТЗразработано 2-3

Разработкаструктурыпрограммы

(дляDESIGNER)

2 1 2
3

Структура

разработана

3-4


3-5


Разработка

алгоритма

программы

выводааналитичес-койтаблицы

Написаниепрограммы наDESIGNER

6


6

2


2

3


3

4 Алгоритмразработан 4-6

Написаниепрограммы

выводааналитичес-койтаблицы

6 2 3
5 Программана DESIGNER написана 5-7 Сборкасистемы 2 1 2
6 Программавывода таблицынаписана 6-7 Сборкасистемы 2 1 2
7 Системасобрана 7-8

Отладка

системы

4 2 2
8

Система

отлажена

8-9 Тестирова-ние 2 2 1
9 Системаоттестиро-вана 9-10 Исправле-ниеошибок 4 2 2
10 Ошибкиисправленыокончаниеработы




















ФИЛИАЛЫ ПО

РЕГИОНАМ


























GBO(Menu)
GBO2(Menu)
GBO1(Menu)
S (Other) (ANTB.CLA)
AT1(Other) (ANTB.CLA)
AT2(Other) (ANTB.CLA)
AT3(Other) (ANTB.CLA)
SVREG(Menu)
SVREG1(Other) (ATB.CLA)
SVREG2(Other) (ATB.CLA)
SVREG3(Other) (ATB.CLA)
SVINS(Menu)
SVINS1(Other) (ATB.CLA)
SVINS2(Other) (ATB.CLA)
SVINS3(Other) (ATB.CLA)
MBO (Menu)
MEN2 (Menu)