8.х Проблема с открытием файла

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Юра, 7 апр 2011.

  1. TopicStarter Overlay
    Юра
    Offline

    Юра Опытный в 1С

    Регистрация:
    6 апр 2011
    Сообщения:
    108
    Симпатии:
    2
    Баллы:
    29
    Здравствуйте.
    У меня следующая ситуация: есть форма, на ней две кнопки.
    код первой:
    Код:
    Процедура СохранитьНажатие(Элемент)
    
    КлючУникальности = Новый УникальныйИдентификатор;
    
    ДиалогВыбораФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    ДиалогВыбораФайла.Фильтр = "pdf (*.pdf)|*.pdf"; 
    ДиалогВыбораФайла.Заголовок = "Выберите файл";
    ДиалогВыбораФайла.ИндексФильтра = 0;
    
    Если ДиалогВыбораФайла.Выбрать() Тогда
    КопироватьФайл(ДиалогВыбораФайла.ПолноеИмяФайла+ "\",  
    "C:\Documents and Settings\Admin\Мои документы\InfoBase2\Doc\"+ КлючУникальности +".pdf" );
    
    ЭлементыФормы.ИмяФайла.значение = КлючУникальности;
    
    КонецЕсли;
    
    КонецПроцедуры
    
    
    код второй:
    Код:
    ЗапуститьПриложение (ИмяФайла + ".pdf" , "C:\Documents and Settings\Admin\Мои документы\InfoBase2\Doc\");
    
    
    проблема в том что, при нажатии второй кнопки вылетает ошибка, то что не удалось найти файл, Имя файла берётся из поля ввода ИмяФайла после нажатия первой кнопки...
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    уберите ".pdf" а то у вас скорее всего масло-масляное. Если в поле ввода pdf нет то тогда
    Код:
    СокрЛП(ИмяФайла) + ".pdf" 
    
    
  3. TopicStarter Overlay
    Юра
    Offline

    Юра Опытный в 1С

    Регистрация:
    6 апр 2011
    Сообщения:
    108
    Симпатии:
    2
    Баллы:
    29

    Если я вас правильно понял, то надо во второй кнопке написать так.
    Код:
    ЗапуститьПриложение (СокрЛП(ИмяФайла)+ ".pdf" , "C:\Documents and Settings\Admin\Мои документы\InfoBase2\Doc\");
    
    
    Чёт не работает так, может я чего не так понял...
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Попробуйте заменить на КомандаСистемы()
  5. TopicStarter Overlay
    Юра
    Offline

    Юра Опытный в 1С

    Регистрация:
    6 апр 2011
    Сообщения:
    108
    Симпатии:
    2
    Баллы:
    29
    У меня такой вопрос, можно ли обновить содержимое папки после нажатия кнопки? А то я сделал ПроверятьСуществованиеФайла вместо открытия, пишет что файла нету...
  6. TopicStarter Overlay
    Юра
    Offline

    Юра Опытный в 1С

    Регистрация:
    6 апр 2011
    Сообщения:
    108
    Симпатии:
    2
    Баллы:
    29
    маленькая поправка =)
    У меня такой вопрос, можно ли обновить содержимое папки после нажатия первой кнопки? А то я сделал ПроверятьСуществованиеФайла вместо открытия, пишет что файла нету...
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Вообще-то 1с тут вооще не причем.. все рулится средствами Windows
  8. TopicStarter Overlay
    Юра
    Offline

    Юра Опытный в 1С

    Регистрация:
    6 апр 2011
    Сообщения:
    108
    Симпатии:
    2
    Баллы:
    29
    Интересно, почему Windows тогда не видят файл.. :angry:
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Где именно? В диалоге выбора файла или где?
  10. TopicStarter Overlay
    Юра
    Offline

    Юра Опытный в 1С

    Регистрация:
    6 апр 2011
    Сообщения:
    108
    Симпатии:
    2
    Баллы:
    29
    ну вот например
    Код:
    ЗапуститьПриложение ("C:\Program Files\Foxit Reader\FoxitReader.exe " + ИмяФайла+ ".pdf", "C:\Documents and Settings\Admin\Мои документы\InfoBase2\Doc\");
    
    
    FoxitReade запускается, и выдаёт ошибку, то что файл открыть не удалось, так как он не обнаружен

    а если использовать КомандаСистемы() то видно что окно DOS открывается, но сразу закрывается..

    Если указать файл который уже был создан, то всё работает.
    Код:
    КомандаСистемы("C:\Program Files\Foxit Reader\FoxitReader.exe 27bb6158-d6fd-4d8f-a22a-616eb990cc41.pdf" , "C:\Documents and Settings\Admin\Мои документы\InfoBase2\Doc\");
    
    
    Вот это работает нормально.
  11. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Смотрите в отладчике ИмяФайла Возможно наличие лишних пробелов....
    Сделайте так
    Код:
    +СокрЛП(ИмяФайла)+
    
    
  12. TopicStarter Overlay
    Юра
    Offline

    Юра Опытный в 1С

    Регистрация:
    6 апр 2011
    Сообщения:
    108
    Симпатии:
    2
    Баллы:
    29
    просмотрел в отладчике, имя без лишних пробелов и если просто написать ИмяФайла и если СокрЛП(ИмяФайла), но в кавычках, так и должно быть? А то я ужё чёт сильно туплю.
  13. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Кавычки в параметрах запуска нужны если в имени есть пробелы (иначе воспринимается как разные параметры)
  14. TopicStarter Overlay
    Юра
    Offline

    Юра Опытный в 1С

    Регистрация:
    6 апр 2011
    Сообщения:
    108
    Симпатии:
    2
    Баллы:
    29
    Я имел в виду, когда навожу на ИмяФайла, всплывает окно с именем, вот это имя в кавычках.

Поделиться этой страницей