ГОСТ Р ИСО 10303-203-2003
rcsult_itcms :■= | J;
ncw.chcckjtcms :■ chcckcdjtems * item:
ncxl_itcms:» QUERY ( z <* bagjo_$ei(USEDIN(item.‘ ’)) | ((
‘CONFIG_CONTROL_DESIGN.REPRESENTATIONJTEM ’ IN TYPEOF(z)) OR (
’CONFIGJTONTROL.DESIGN.FOUNDEDJTEM ’ IN TYPEOF(z))) );
IF SIZEOF(ncxtJtems) > 0 THEN
REPEAT i1TO HIINDEX(ncxt Jtcms) BY I;
IF NOT (ncxtjtcmsfi] IN ncw_chcck_items) THEN
rcsultjtems := rcsultjtemsnext Jtems|i| + usingjtems(
ncxt_itcms[i), newchcckJtcm s);
E N D JF;
END REPEAT ;
ENDJF:
RETURN (resultJtcms) :
END_FUNOTION: - - usingjtems
FUNCTION using_rcprcsentations (item: foundedjtem.selcct
) : SET OF representation;
LOCAL
results: SET OF representation;
intcnnediatcjlcms; SET OF founded_itcm_sclcct:
result Jxig: BAG OF representation;
END_LOCAL ;
results1 |;
resull_bag :« USEDIN (item,
’CONFlG_CONTROLJ)ESIGN.REPRESENTATION.ITEMS’);
IF SIZEOF (resultJxtg) > 0 THEN
REPEAT i :- 1 TO HIINDEX <rcsull_bag) BY 1:
results :• results + result_bag|i);
END_REPEAT :
EN D JF;
intcrmediatc_itcms :=* using_itcms( item. | |);
IF SIZEOF (inlcrmediatc itcms) > 0 THEN
REPEAT i :** I TO HIINDEX (intermediate_items) BY I;
rcsult_bag :=■USEDIN (intcrmediatcjtcms |i|.
‘CONFIG_CONTROL_DESIGN.REPRESENTATION.ITEMS’) ;
IF SIZEOF (rcsult_bag) > 0 THEN
REPEAT j1 TO HIINDEX (result Jxtg) BY 1;
results := results + result bag [»:
END_REPEAT ;
END_IF;
END.REPEAT :
E N D JF ;
RETURN (results) ;
END_FUNCT1QN; - - using_represcntations
FUNCTION valid_calcndar_date (date: ealendardate): LOGICAL:
IF NOT ((1 <** date.dav.eomponcnt) AND (date.day_componcnt <■ 31))
THEN RETURN (FALSE);
ENDJF;
CASE datc.month.componcnt OF
4 :RETURN((I <= date.day.component) AND (date.
day_componcnt <=■30));
6 :RETURN((I О date.day.component) AND (date,
dav.componcnt <» 30));
9 :RETURN((! <« datc.day.componcnt) AND (date,
day.componcnt <= 30));
II:RETURN» I <•»■dalc.day.componcnt) AND (date.
day.componcnt <= 30»;
2BEGIN
203