Продвинутый курс. Занятие №6
Приступайте к шестому занятию продвинутого курса.
ps. На этой странице не нужно отчитываться о выполнении ДЗ.
Приступайте к шестому занятию продвинутого курса.
ps. На этой странице не нужно отчитываться о выполнении ДЗ.
Не на той странице отчиталась, решения задания не видно :(.
Дублируйте на нужную страницу
Доброго дня. Ход решения д/з №6:
1. Создала внешнюю обработку “УтилитаАдминистрирования”. На форму поместила кнопки: “СинтаксическийКонтроль”,”ВыгрузитьИБ”,
“ТестированиеИИсправлениеИБ”.
2.Привожу модуль формы обработки:
Процедура СинтаксическийКонтроль(Команда)
ПутьКБазе=стрзаменить(стрзаменить(СтрокаСоединенияИнформационнойБазы(),"File=",""), ";","");
Строка="C:\Program Files\1cv82\common\1cestart.exe designer /f "+ПутьКБазе+" /n Администратор"+" /CheckModules
-ThinClient -WebClient -Server -ExternalConnection -ThickClientOrdinaryApplication"+"/DumpResult
""C:\Римма\ДЗ_6\result1c_синтаксис.txt""";
ЗавершитьРаботуСистемы(ложь);
ЗапуститьПриложение(Строка);
КонецПроцедуры
&НаКлиенте
Процедура ВыгрузитьИБ(Команда)
ПутьКБазе=стрзаменить(стрзаменить(СтрокаСоединенияИнформационнойБазы(),"File=",""), ";","");
Строка="C:\Program Files\1cv82\common\1cestart.exe designer /f "+ПутьКБазе+" /n Администратор"+" /dumpib
C:/Римма/ДЗ_6/ДЗ6.dt""";
ЗавершитьРаботуСистемы(ложь);
ЗапуститьПриложение(Строка);
КонецПроцедуры
&НаКлиенте
Процедура ТестированиеИИсправлениеИБ(Команда)
ПутьКБазе=стрзаменить(стрзаменить(СтрокаСоединенияИнформационнойБазы(),"File=",""), ";","");
Строка="C:\Program Files\1cv82\common\1cestart.exe designer /f "+ПутьКБазе+" /n Администратор"+" /IBCheckAndRepair
-LogAndRefsIntegrity"+"/DumpResult ""C:\Римма\ДЗ_6\result1c_тестирование.txt""";
ЗавершитьРаботуСистемы(ложь);
ЗапуститьПриложение(Строка);
КонецПроцедуры
&НаСервереБезКонтекста
Функция ПроверкаМонопольности()
Попытка
УстановитьМонопольныйРежим(Истина);
возврат Истина
Исключение
Возврат Ложь
КонецПопытки;
КонецФункции
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Если ПроверкаМонопольности()=ложь Тогда
Сообщить("Для выполнения обработки необходим монопольный режим!");
КонецЕсли;
КонецПроцедуры
3.Проверить клиент-серверный вариант работы не удалось, но в этом случае добавилось бы условие при определении пути к базе:
ФайловыйВариант = Истина;
Иначе
ФайловыйВариант = Ложь;
ПозицияРазделителя = Найти(СтрокаСоединенияИнформационнойБазы(),";");
ИмяКластера= Сред(СтрокаСоединенияИнформационнойБазы(),7, ПозицияРазделителя-8);
ИмяИнформационнойБазы =
Сред(СтрокаСоединенияИнформационнойБазы(),ПозицияРазделителя+5,СтрДлина(СтрокаСоединенияИнформационнойБазы())-ПозицияРаздели
теля-5);
ИмяИнформационнойБазы=СтрЗаменить(ИмяИнформационнойБазы,"""","");
КонецЕсли;
4. в итоге база выгружается.Результат синтаксического контроля и тестирования ИБ сохраняется в текстовый файл в следующем
виде: 0 – успешно, 1 – неудачно, 101 – в данных имеются ошибки.
Здравствуйте. RIMMA, отчет принят.