[РЕШЕНО] Не выводится год даты в переменную

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Samouchka, 2 апр 2015.

  1. TopicStarter Overlay
    Samouchka
    Offline

    Samouchka Опытный в 1С

    Регистрация:
    20 мар 2013
    Сообщения:
    214
    Симпатии:
    1
    Баллы:
    29
    Всем здравствуйте. В следующем коде не выводится год в переменную "НазваниеФайла". Происходит следующее: в таблице заголовок правильный - Заявка 7 от 02.04.15. При печати таблицы в пдф файл имя файла неправильное - Заявка 7 от 02.04. Это приводит к дальнейшей ошибке:
    При попытке присоединить файл произошла ошибка : Файл "C:\Documents and Settings\User\Рабочий стол\Заявка 7 от 02.04.15.pdf" не найден.
    В данном коде ещё конечно выходит что отправка письма опережает печать, но сделать 2 процедуры и 2 кнопки для отправки письма и для выгруза в пдф - дело не хитрое. Вот код. Подскажите, пожалуйста, что не так:

    Код:
    Перем НазваниеФайла;
    
    Процедура Печать()
        НазваниеФайла="Заявка "+СокрЛП(НомерДок)+" от "+ДатаДок;
        Если ПодписьПечать=1 Тогда
            Таб = СоздатьОбъект("Таблица");
            Таб.ИсходнаяТаблица("ЗаявкаПоставщикуПодпись");
            Таб.ВывестиСекцию("Верх");
            ВыбратьСтроки();
            Пока ПолучитьСтроку()=1 Цикл
                Таб.ВывестиСекцию("Строка");
            КонецЦикла;
            Таб.ВывестиСекцию("Низ");
            Таб.Опции(0,0,0,0);
            Таб.ПараметрыСтраницы(1,,,20,20,25,25,13,13,1,,);
            Таб.ТолькоПросмотр(1);
            Таб.Показать(НазваниеФайла,"");
        КонецЕсли;
       
        Если ПодписьПечать=0 Тогда
            Таб = СоздатьОбъект("Таблица");
            Таб.ИсходнаяТаблица("ЗаявкаПоставщику");
            Таб.ВывестиСекцию("Верх");
            ВыбратьСтроки();
            Пока ПолучитьСтроку()=1 Цикл
                Таб.ВывестиСекцию("Строка");
            КонецЦикла;
            Таб.ВывестиСекцию("Низ");
            Таб.Опции(0,0,0,0);
            Таб.ПараметрыСтраницы(1,,,20,20,25,25,13,13,1,,);
            Таб.ТолькоПросмотр(1);
            Таб.Показать(НазваниеФайла,"");
        КонецЕсли;
    КонецПроцедуры
    
    Процедура ОтправитьЗаявку()
        Форма.Обновить();
        Записать();
       
        ПутьКФайлу="";
        ЗаявкаОтправлена=1;
        ДатаОтправкиЗаявки=ТекущаяДата();
        //Сохраним файл в Экселе
        Печать();
        ВыборОтчет=СокрЛП(Константа.КаталогФайловЭлПочты);
        //НазваниеФайла="Заявка "+СокрЛП(НомерДок)+" от "+ДатаДок;//+".xls";
       
        ВыбКаталОтчета=ФС.ВыбратьФайл(1,НазваниеФайла,ВыборОтчет,"Сохранение файла",,".xls",);
        Если ВыбКаталОтчета=1 Тогда
            ПутьКФайлу=ВыборОтчет+НазваниеФайла+".pdf";
    
            //Таб.Записать(ПутьКФайлу,1);
           
            //сохранение в ПДФ файл
            Таб.ПараметрыСтраницы(,,,,,,,,,,,"Bullzip PDF Printer");
            Таб.Напечатать(0);
           
            //непосредственная отправка сообщения
            //загрузка компоненты v7plus
            Если ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"v7plus.dll") <> 1 Тогда
                   Предупреждение("Компонента v7plus.dll не найдена!");
                   Возврат; //прервать выполнение процедуры
            КонецЕсли;
               Попытка
            Почта = СоздатьОбъект("AddIn.V7Mail");
            Исключение
            Предупреждение("Не удалось создать объект Addin.V7Mail!");
            КонецПопытки;
    
            Попытка
            Почта.Подключиться();
            Почта.НовоеСообщение();
       
            Если ПустаяСтрока(Получатель1)=0 Тогда
                Почта.ДобавитьАдрес(СокрЛП(Получатель1.Имейл));
            КонецЕсли;
            Если ПустаяСтрока(Получатель2)=0 Тогда
                Почта.ДобавитьАдрес(СокрЛП(Получатель2.Имейл));
            КонецЕсли;
            Если ПустаяСтрока(Получатель3)=0 Тогда
                Почта.ДобавитьАдрес(СокрЛП(Получатель3.Имейл));
            КонецЕсли;
            Если ПустаяСтрока(Получатель4)=0 Тогда
                Почта.ДобавитьАдрес(СокрЛП(Получатель4.Имейл));
            КонецЕсли;
            Если ПустаяСтрока(Получатель5)=0 Тогда
                Почта.ДобавитьАдрес(СокрЛП(Получатель5.Имейл));
            КонецЕсли;
            Почта.ДобавитьФайл(ПутьКФайлу);
    
            Почта.Заголовок="Заявка";
            Почта.Текст="Направляем Вам заявку (файл во вложении)";
            Почта.Послать(1);
            Исключение
            Предупреждение("Неудачная попытка! Отправка письма по эл. почте не произведена!");
            КонецПопытки;
        КонецЕсли;
    КонецПроцедуры
  2. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.438
    Симпатии:
    373
    Баллы:
    104
    ну а расширение за вас сосед писать будет?
    при данном сохранении у вас ".15" года уходит в расширение
    у вас же в коде есть аналогичный момент
    Код:
    //НазваниеФайла="Заявка "+СокрЛП(НомерДок)+" от "+ДатаДок;//+".xls";
    и согласно ему нужно так
    Код:
    НазваниеФайла="Заявка "+СокрЛП(НомерДок)+" от "+ДатаДок+".pdf";
  3. TopicStarter Overlay
    Samouchka
    Offline

    Samouchka Опытный в 1С

    Регистрация:
    20 мар 2013
    Сообщения:
    214
    Симпатии:
    1
    Баллы:
    29
    Вот она где собака зарыта. Всем спасибо!

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