|
Конвертация jpg -> pdf | ☑ | ||
---|---|---|---|---|
0
Oldman06
31.07.20
✎
17:58
|
Есть код который конвертирует массив jpg в pdf в серверном вызове (CentOS):
Функция МассивJPG_в_PDF(МассивФайлов, Адрес = Неопределено) Экспорт РазделительПути = "/"; КаталогВыгрузки = КаталогВременныхФайлов() + "StatementOutput"; КаталогНаДиске = Новый Файл(КаталогВыгрузки); Если КаталогНаДиске.Существует() Тогда Попытка УдалитьФайлы(КаталогВыгрузки, "*.*"); Исключение КонецПопытки; Иначе СоздатьКаталог(КаталогВыгрузки); КонецЕсли; СтрокаКоманды = "convert"; Для х = 0 По МассивФайлов.Количество() - 1 Цикл НомерФайла = х + 1; ИмяФайла = КаталогВыгрузки + РазделительПути + "input" + Строка(НомерФайла) + ".jpg"; ДД = ПолучитьИзВременногоХранилища(МассивФайлов[х]); ДД.Записать(ИмяФайла); СтрокаКоманды = СтрокаКоманды + " input" + Строка(НомерФайла) + ".jpg"; КонецЦикла; СтрокаКоманды = СтрокаКоманды + " " + "result.pdf"; ЗапуститьПриложение(СтрокаКоманды, КаталогВыгрузки, Истина); ДД = Новый ДвоичныеДанные(КаталогВыгрузки + РазделительПути + "result.pdf"); АдресРезультата = ПоместитьВоВременноеХранилище(ДД, Адрес); УдалитьФайлы(КаталогВыгрузки); Возврат АдресРезультата; КонецФункции До сегодняшнего дня работал без проблем. Ничего не менял, на сервере тоже. Сейчас вылетает на строке ДД = Новый ДвоичныеДанные(КаталогВыгрузки + РазделительПути + "result.pdf"); так как не может найти файл. И он действительно не формируется. В логах ничего, запуск команды конвертации в консоли на сервере под пользователем 1С отрабатывает нормально. Куда можно копнуть? |
|||
1
ДенисЧ
31.07.20
✎
18:07
|
Самая интересная сказка от сисадминов и 1сников - "ничего не менялось".
Сисадмины сегодня праздник отмечали? Права поменяли? |
|||
2
Oldman06
31.07.20
✎
18:20
|
Сисадмин, по совместительству, я. И я точно ничего не менял. И дело не в правах: в консоли под пользователем 1с все работает. Пользователи ещё сказали, что эта ошибка и раньше переодически возникала, но потом рассасывалась. Я так подозреваю, она исчезнет после перезапуска службы сервера 1с. Она у меня каждую ночь перезапускается. Сейчас проверить не могу: много пользователей активно работают.
|
|||
3
ДенисЧ
31.07.20
✎
18:40
|
Ну так запиши в ЖР КаталогВыгрузки + РазделительПути + "result.pdf"
И в попытку. А лучше по отдельности... |
|||
4
Garykom
гуру
31.07.20
✎
18:49
|
бага тут СтрокаКоманды = "convert";
пропиши полные пути |
|||
5
Oldman06
31.07.20
✎
19:50
|
(3) Уже делал. Всё правильно. Прикол в том, что этот код то работает, то нет.
|
|||
6
Oldman06
31.07.20
✎
19:51
|
(4) Пробовал. С полными путями та же шняга.
|
|||
7
Timon1405
31.07.20
✎
19:52
|
серверов 1С больше одного?
|
|||
8
Oldman06
31.07.20
✎
20:45
|
(7) Нет, один.
|
|||
9
Garykom
гуру
31.07.20
✎
21:18
|
(6) КодВозврата какой? У ЗапуститьПриложение 4 параметра
ЗапуститьПриложение(<СтрокаКоманды>, <ТекущийКаталог>, <ДождатьсяЗавершения>, <КодВозврата>) |
|||
10
Oldman06
31.07.20
✎
22:23
|
(9) А вот это я как-то упустил ... Забыл, что там четвертый параметр есть. Завтра буду на работе, посмотрю.
|
|||
11
acht
01.08.20
✎
10:28
|
Не будет работать, если исходных файлов больше 1000
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |