Архивирование некоторых файлов средствами 1С #199942


#0 by Impressing3
Добрый день! Вот у меня возник такой вопрос. Мне нужно заархивировать несколько файлов, которые выгружаются из 1С. Что я делаю? Сначала я указываю папку, вызывая диалоговое окно, куда будут сохраняться эти файлы (ну пока допустим так))). Потом производится из запись и я хочу чтобы тут же создавался их архив с определенным названием. Мне тут подсказали (очень благодарен) примерный ход мысли. Вроде можно сделать через функцию КомандаСистемы; Так вот. Сначала я создаю то, что будет в этой строке (подсмотрел еще вот здесь - )... Но почему-то не работает(( Я понимаю, что где-то ошибся, но не могу найти ошибку... Вот строки: Подскажите, пожалуйста, как все-таки это сделать? Заранее спасибо. )
#1 by Impressing3
Да, еще один нюанс. Значение в переменную "Каталог" записывается в процедуре ПриНачалеВыбораЗначения(ЭлементДиалога, ФлагОбработки) И похоже что эта переменная (смотрел в Отладчике, хоть и объявил ее перед всеми процедурами) не берется в данной процедуре, где я хочу выполнить команду архивирования...Вот, еще наверное, нужно как-то вытянуть путь с нужным каталогом, где лежат нужные мне для архивирования файлы. (( И вот как это сделать, также честно говоря не могу сообразить...
#2 by Impressing3
Ну вот, уже вижу глупость. Надо хотя бы Стр = "C:Program FilesWinRARwinrar.exe" + " RAR"+" a -ep "+ СокрЛП(Каталог) + НазваниеАрхива + " " + СокрЛП(Каталог)+"*.*";
#3 by Impressing3
Добрый день еще раз! Помогите, пожалуйста, разобраться с вопросом(
#4 by Морозов Александр
вот смотрю я ярлык 1С: Заметил ковычки?
#5 by Impressing3
Саша, я так понимаю, так будет с первой частью?
#6 by Морозов Александр
ага... А че такое RAR?
#7 by Impressing3
Нууу я вообщем просмотрел файлик rar.txt (который сидит там же где винрар),в котором описываются команды запуска винрара из командной строки с параметрами, ну и вроде надо писать это RAR  прежде команд остальных и параметров. Правильно?(
#8 by Морозов Александр
Стр=""""+C:Program FilesWinRARwinrar.exe"""+" m -ep "+""""+ СокрЛП(Каталог)+НазваниеАрхива+""""+""""+СокрЛП(Каталог)+"*.*"+""""; вот так наверно... если верить Diter'у
#9 by Impressing3
Нуу да, Саша, я понимаю, но как только я начал разбирать значения левых и правых кавычек, то совсем в его коде запутался))))
#10 by Морозов Александр
я сам в них путаюсь...
#11 by Impressing3
Ну окей, допустим что-то подобное...))) Тогда такой вопрос - вот смотри, я выбираю папку куда будут сохраняться изначальные незаархивированные файлы. Это делается в предопределенной процедуре ПриНачалеВыбораЗначения. Вот... там он вводит значение Каталога... а как мне вытянуть это значение и запихать его в мою эту несчастную строку, которая уже в другой процедуре?((
#12 by Морозов Александр
ну ты же на форме элементу присваиваеш значение каталога?
#13 by Impressing3
Вот вообщем что делается)) Процедура ПриНачалеВыбораЗначения(ЭлементДиалога, ФлагОбработки) Т.е. формируется два файлика)) Хм...кстати, а зачем я сделал это в двух полях?((
#14 by Морозов Александр
Лучще сделай на форме еще один реквизит "Каталог" и его выбирай отдельно... Хотя конечно можно и из имени файла выдрать.
#15 by Морозов Александр
а вообще у тебя уже в Файлевыгрузке и каталог прописан  котором архивировать... а вот откуда брать файлы для архива не понятно вообще...
#16 by Impressing3
Саша, окей, спасибо, понял ход твоей мысли.... Нуу насколько я понимаю, там прописал я каталог, куда будут простые файлы еще не архивированные выгружаться... сооттвественно, я бы хотел, чтобы и архив в эту же папку выгружался... вот поэтому в "Стр" пишу ту же переменную... Но он не понимает... потому что СТР в другой процедуре(
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С