-- Шаблон создан мастером бланков
-- 07.11.2005 11:12:32
--
БланкСШаблоном "Импорт настроек картотек";

Func Dot2Path (Mark:S; FS:S):S; --переводит относительный путь .. в абсолютный
var p1,p2:s;
 if not Pos("..",FS)=0:
    p1=BlankFileName("ВЕРСИЯ"); --пробуем получить абсолютный путь к бланку STD_RPO должен находиться на 4 слэш с конца
    p2=Up(ExtractWord(WordsCount(p1,"\")-3,p1,"\")); --сам STD_RPO
    p1=ExtractWords(1,WordsCount(p1,"\")-4,p1,"\")+"\"; --берем путь без STD_RPO
    p2=SubStr(FS,Pos(p2,Up(FS)),255);
    if ExistFile(p1+p2+Mark): FS=p1+p2; else FS=""; fi;
    if FS="":
       if ExistFile("\\"+p1+p2+Mark): FS="\\"+p1+p2; else FS=""; fi;
    fi;
 fi;
 ^FS;
end;


Proc НастрКарт (Mark:S; FS:S; FT:S; Force:L);
var Ver:S;
var F:I;
var Flag:L;
var tmp:S;
 tmp=Раб.Бюджет2005.Контроль2Слэш(FS+Mark);
 if not ExistFile(tmp): Exit; fi;
 F=TextFileOpenRead(tmp);
 Try
  Try
   if not TextFileEndOfFile(F): Ver=TextFileReadln(F); fi;
  Except
   Exit;
  end;
 Finally
  TextFileClose(F);
 end;
 --
 Flag=True;
 tmp=Раб.Бюджет2005.Контроль2Слэш(FT+Mark);
 if ExistFile(tmp):
    F=TextFileOpenRead(tmp);
    Try
     Try
      if not TextFileEndOfFile(F): Flag=not (Ver=TextFileReadln(F)); fi;
     Except
     end;
    Finally
     TextFileClose(F);
    end;
 fi;
 --
 if Flag or Force:
    Try
     FS=Dot2Path(Mark,FS);
     if not FS="":
        CopyFile(Раб.Бюджет2005.Контроль2Слэш(FS+"*.bro"),Раб.Бюджет2005.Контроль2Слэш(FT));
        CopyFile(Раб.Бюджет2005.Контроль2Слэш(FS+"*.ver"),Раб.Бюджет2005.Контроль2Слэш(FT));
     fi;
    Except
    end;
 fi;
end;

Proc btnВосстановить_OnClick(Sender: String);
 НастрКарт("bro.ver",PlanVar("Общие")+"\Картотеки\",PlanVar("LocalData")+"\Картотеки\",True); --Стандартные настройки
 НастрКарт("bro_.ver",PlanVar("Бух")+"\Картотеки_\",PlanVar("LocalData")+"\Картотеки\",True); --Пользовательские настройки
 Message("Стандарные настройки картотек успешно восстановлены");
end;


Proc btnЗакрыть_OnClick(Sender: String);
 Close;
end;


Конец
