/** $VER: Version 0.04 (18 Feb 1999), by Thorsten Willert
*/
;SIGNAL ON ERROR;SIGNAL ON SYNTAX;PARSE ARG In,Out,Data .;IF In="INFO" THEN;DO;RETURN 0","1","0","1;END;ELSE;DO;CALL OPEN(InDatei,In,'R');CALL OPEN(OutDatei,Out,'W');CALL StemRead( Data||'.data','data.');DO WHILE ~EOF(InDatei);i=0;Zeile=READLN(InDatei);DO i=0 TO data.count;Sp=0;Tag='';PARSE VAR data.i Tag","Brt","Ert","Sp;IF INDEX(Tag,'*') ~=0 THEN ITERATE;IF Sp='' THEN ITERATE;IF Brt=1 THEN rt1='0A'X;ELSE rt1='';IF Ert=1 THEN rt2='0A'X;ELSE rt2='';Spc=COPIES(' ',Sp);Zeile=REPLACE(Zeile,Tag,rt1||Spc||Tag||rt2);Zeile=REPLACE(Zeile,UPPER(Tag),rt1||Spc||UPPER(Tag)||rt2);Zeile=REPLACE(Zeile,'0A'X '0A'X,'0A'X);Zeile=REPLACE(Zeile,'0A'X'0A'X,'0A'X);END;CALL WRITELN(OutDatei,Zeile);END;CALL CLOSE(InDatei);CALL CLOSE(OutDatei);RETURN 1;END;RETURN 0;REPLACE:PROCEDURE;PARSE ARG src,old,new;str='';DO WHILE '' ~=src;loc=POS(old,src);PARSE VAR src sub (old) src;str=str||sub;IF loc ~=0 THEN str=str||new;END;RETURN str;ERROR:;SYNTAX:;RETURN RC","SIGL