DEFINE BAR 5 OF данные PROMPT "Наименование изделий"
ON SELECTION BAR1 OF данные DO FORM V_PROD
ON SELECTION BAR2 OF данные DO FORM PROSM
ON SELECTION BAR3 OF данные DO FORM RED AC
ON SELECTION BAR4 OF данные DO FORM RED AC WITH 2
ON SELECTION BAR5 OF данные DO FORM TOVAR
DEFINE POPUP расчет MARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF расчет PROMPT “” DEFINE BAR 2 OF расчет PROMPT *"* DEFINE BAR 3 OF расчет PROMPT ""
ON SELECTION BAR 1 OF расчет DO FORM RASC1 ON SELECTION BAR 2 OF расчет DO FORM RASC2 ON SELECTION BAR 3 OF расчет DO FORM RASC3
DEFINE POPUP документ MARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF документ PROMPT "Таблица 1" DEFINE BAR 2 OF документ PROMPT "Таблица2" DEFINE BAR 3 OF документ PROMPT "Графики"
ON SELECTION BAR1 OF документ DO DOC1 ON SELECTION BAR2 OF документ DO DOC2 ON SELECTION BAR3 OF документ RUN EXCEL
DEFINE POPUP pac4eTMARGIN RELATIVE SHADOW COLOR SCHEME 4 DEFINE BAR 1 OF расчет PROMPT "Формирование массива" DEFINE BAR 2 OF расчет PROMPT "Очистка БД" DEFINE BAR 3 OF расчет PROMPT "Архивирование БД"
ON SELECTION BAR1 OF расчет DO FOR MODEL ON SELECTION BAR1 OF расчет DO OCHISTKA
ON SELECTION BARl OF расчет DO ARXIV
ON SELECTION PADljrOOuarx OF _MSYSMENU DO EXIT
read events
PROCEDURE EXIT DATABASE CLOSE QUIT
PROCEDURE OCHISTKA
SELEA
DELETE ALL
PACK
SELEB DELETE ALL PACK
SELEC DELETE ALL PACK
SELED DELETE ALL PACK
PROCEDURE ARXIV
RUN ARJ E BD.ARJ
МОДУЛЬ У PROD <ДОБАВИТЬ>
SELEA
APPEND BLANK
REPLACE DATE WITH PI 1,;
NAIM WITH TOVAR.NAIM,;
0TDELWITHP12,;
COST WITH P13,;
SEBWITHP14,;
K0L_V0WITHP14 THISFORM.REFRESHO <OTKA3> RELEASE THISFORM
МОДУЛЬ PROSM
<ВПЕРЕД>
SELEA
IF !EOF()
SKIP
ELSE
GO TOP
ENDIF
THISFORM.REFRESHO
<НАЗАД>
IF !BOF()
SKIP-1
ELSE
GO BOTTOM
ENDIF
THISFORM.REFRESHO
<ПОСЛЕДНЯЯ> GO BOTTOM THISFORM.REFRESHO
<ПЕРВАЯ>
GO TOP
THISFORM.REFRESHO
< ПОИСК>
DO FORM POISK
SELEA LOCATE FOR DATA.=P21 PROSM.REFRESH() RELEASE THISFORM
< ВЫХОД> RELEASE THISFORM
МОДУЛЬ REDAC
<ВПЕРЕД>
SELEA
IF !EOF()
SKIP
ELSE
GO TOP
ENDIF
THISFORM.REFRESHO
<НАЗАД>
IF !BOF()
SKIP-1
ELSE
GO BOTTOM
ENDIF
THISFORM.REFRESHO
<ПОИСК>
DO FORM POISK
SELEA LOCATE FOR DATA.=P21 REDAC.REFRESHO RELEASE THISFORM
< ВЫХОД> RELEASE THISFORM
МОДУЛЬ TOVAR
<ДОБАВИТЬ>
SELEE
APPEND BLANK
REPLACE DATA WITHP31,; NAIM WITH P32,; COST WITH P33,; SEBWITH P34
THISFORM.REFRESHO
<OTKA3> RELEASE THISFORM
МОДУЛЬ RASCI
< РАСЧИТАТЬ>
SELEA
SET FILTER TO DATA=P41
K=0
S1=0
S2=0
S3=0
SCAN
K=K+1
Sl=Sl+COST
S2=S2+SEB S3=S3+KOL_VO ENDSCAN SELEB
LOCATE FOR DATA = P41 IF FOUND() REPLACE COSTl WITH (COSTl+S1)/(K+1),;
SEB1 WITH SEB1+S2,;
KOL_V01 WITHS3+KOL_V01,;
VYR1 WITHVYR1+S1,;
SSEB1 WITH (SEB1+S2)/K+1,;
PRIB1 WITH VYR1-SEB1,;
RENT1 WITHPRIB1/SEB1 ELSE
APPEND BLANK REPLACE DATA WITH P41,;
COSTl WITH(S1)/(K),;
SEB1 WITH S2,;
KOL_V01 WITH S3,;
VYR1 WITH SI,;
SSEB1 WITH (S2)/K,;
PRIB1 WITHVYR1-SEB1,;
RENT1 WITHPRIB1/SEB1 ENDIF SELEA
THISFORM.REFRESH() <0TKA3> RELEASE THISFORM
МОДУЛЬ RASC2
< РАСЧИТАТЬ>
SELEA
SET FILTER TO CMONTH(DATA)=P51
K=0
S1=0
S2=0 S3=0 SCAN
K=K+1 S1=S1+C0ST S2=S2+SEB S3=S3+KOL_VO ENDSCAN SELEC
APPEND BLANK
POK=STR(MONTH(DATA))+STR(YEAR(DATA)) LOCATE FOR MOTH - РОК IF FOUNDO REPLACE COSTl WITH (C0ST1+S1)/(K+1),;
SEB1 WITH SEB1+S2,; KOL_V01 WITHS3+KOL_V01,;
VYR1 WITHVYR1+S1,;
SSEB1 WITH (SEB1+S2)/K+1,;
PRIB1 WITH VYR1-SEB1,;
RENT1 WITHPRIB1/SEB1 ELSE REPLACE MOTH WITH РОК,;
COSTl WITH(S1)/(K),;
SEB1 WITH S2,;
KOL_V01 WITH S3,;
VYR1 WITH SI,;
SSEB1 WITH (S2)/K,;
PRIB1 WITH VYR1-SEB1,;
RENT1 WITHPRIB1/SEB1 ENDIF
SELEA
THISFORM.REFRESHO
<OTKA3>
RELEASE THISFORM
МОДУЛЬ RASC3
< РАСЧИТАТЬ>
SELEA
SET FILTER TO YEAR(DATA)=P61
К=0
S1=0
S2=0
S3=0
SCAN
K=K+1 Sl=Sl+COST S2=S2+SEB S3=S3+KOL_VO ENDSCAN SELED
APPEND BLANK LOCATE FOR YER = STR(P61) IF FOUND() REPLACE COSTl WITH (C0ST1+S1)/(K+1),;
SEB1 WITH SEB1+S2,;
KOL_V01 WITHS3+KOL_V01,;
VYR1 WITHVYR1+S1,;
SSEB1 WITH (SEB1+S2)/K+1,;
PRIB1 WITH VYR1-SEB1,;
RENT1 WITHPRIB1/SEB1 ELSE REPLACE YER WITH STR(P61),;
COSTl WITH(S1)/(K),;
SEB1 WITH S2,;
KOL_V01 WITH S3,;
VYR1 WITH SI,;
SSEB1 WITH (S2)/K,;
PRIB1 WITH VYR1-SEB1,;
RENT1 WITHPRIB1/SEB1