Имя: Пароль:
1C
 
v8 + v7 ищется компонента сетевого обмена или что-то типа файлсистемватчер
0 trdm
 
15.08.17
17:03
Задача конвертировать mxl в pdf, mxl формируется в v7, выбрал конвертер 1C:v8, просто открывается таблица и сохраняется в pdf.
Снегоклюй будет стоять на сервере, mxl будет загружаться в папку и из нее же будет забираться pdf.

Нужна ВК что-бы оповестить v8 о том, что есть файло.
Либо посредством сетевого взаимодействия, либо что-то типа
https://doc.qt.io/qt-4.8/qfilesystemwatcher.html - оповещение о состоянии ФС.
Подскажите?
1 trdm
 
15.08.17
17:04
Только без .Net
Компонента на с++ или дельфи.
2 mehfk
 
15.08.17
17:09
Восьмерка только конвертит mxl в pdf? Yoksel-не обойтись?
3 mehfk
 
15.08.17
17:11
А так, я бы 8-ные веб-сервисы вызывал из 7-ки.
4 trdm
 
15.08.17
17:15
(2) > Восьмерка только конвертит mxl в pdf? Yoksel-не обойтись?

Он картинки делает и пихает их в pdf и управление масштабом там нет.
Плохие pdf-ки получаются.
5 trdm
 
15.08.17
17:16
(3) Это значить веб-сервер надо поднимать?
Перерасход по памяти. Не кошерно.
6 Вафель
 
15.08.17
17:18
А 8 юзать для сохранения в пдф кошерно?
7 trdm
 
15.08.17
17:19
(6) А хрен-ли один сеанс на серваке погонять. 100 мб оператива - не жалко.
8 trdm
 
15.08.17
17:20
Остальные пути геморойнее.
9 mehfk
 
15.08.17
17:43
Были какие-то ВК для 7-ки, которые MSMQ используют.

Но это такой гемор...
10 Злопчинский
 
15.08.17
17:47
(4) ..и есть проблемы с разбиением на страницы...
11 trdm
 
15.08.17
18:13
(10) именно.

Легче в восьмерке написать:

Функция ОбработатьФайл( псИмяФайла, псИмяФайлаПдф )
    вФайл2 = новый Файл(псИмяФайлаПдф);
    ЗначВозврата = Истина;
    Если не вФайл2.Существует() Тогда        
        вТабла = новый ТабличныйДокумент;
        вТабла.Прочитать( псИмяФайла );
        вТабла.АвтоМасштаб = Истина;
        вТабла.Записать(псИмяФайлаПдф, ТипФайлаТабличногоДокумента.PDF);    
    КонецЕсли;
    Возврат вФайл2.Существует();
КонецФункции



Функция ЗапускКонвертера() Экспорт
    ЗначВозврата = Истина;
    вКаталог = новый Файл(глКаталогИБКонвертации);
    вМассивФайлов = НайтиФайлы(глКаталогИБКонвертации,"*.mxl",Ложь);
    Для каждого вФайл Из вМассивФайлов Цикл
        
        Сообщить("ЗапускКонвертера: " + вФайл);        
        вПдфИмя = вФайл.Путь+вФайл.ИмяБезРасширения+".pdf";
        вФайл2 = новый Файл(вПдфИмя);
        ОбработатьФайл(вФайл.ПолноеИмя,вПдфИмя);
    КонецЦикла;
    
    Возврат ЗначВозврата;
КонецФункции
12 trdm
 
15.08.17
18:15
только хочется избежать ненужного чтения каталога и сократить время ожидания конвертации.
13 Garykom
 
гуру
15.08.17
18:17
(0) 1. Поставь готовый виртуальный PDF-принтер (PDFCreator, doPDF etc)
2. Сделай свой виртуальный PDF-принтер (https://habrahabr.ru/post/322322/)
14 Garykom
 
гуру
15.08.17
18:21
(13)+ Оба варианта умеют запускать прогу при "печати" - можно информировать 1С через обработку внешних событий или просто фоновое/регламентное 1С8
15 Garykom
 
гуру
15.08.17
18:22
Но веб-сервис поднять на 8-ке и юзать его из 77 самое кошерное.
16 trdm
 
15.08.17
18:23
(14) Мне бы поменьше гемороя с установками программ по юзерским компам. И более бесшовное преобразование.
Юзеров то немало. Не хочу бегать по ним и что-то ставить.
17 trdm
 
15.08.17
18:25
(15) пока не умею.
18 trdm
 
15.08.17
18:27
Кстати, как удалить файл в 8-ке?
что-то кроме удалитьФайлы(,) не вижу метода.
19 Garykom
 
гуру
15.08.17
18:30
(16) Виртуальный сетевой принтер поставить и расшарить?

На пользовательских компах его устанавливать не обязательно, можно просто записывать файлы по сетевому пути "\\имя_компа\имя_принтера"
20 Garykom
 
гуру
15.08.17
18:32
21 PloAl
 
15.08.17
18:45
Без ВК с помощью wmi можно сделать.
22 trdm
 
15.08.17
18:48
(21) сеть или каталоги?
23 mistеr
 
15.08.17
19:18
(16) По-моемуЮ с PDF принтером геморроя будет меньше, чем с твоей серверной печатью. Например, твоя схема сломается, когда пользователи захотят настраивать параметры печати.
24 v77
 
15.08.17
19:19
Я бы молча вк написал и не выдумывал ничо.
25 trdm
 
15.08.17
19:32
Уточню.
Мне нужно конвертировать в pdf для того, что-бы отсылать по почте. Т.е. от нажатия на кнопку "Печать" с конвертиком до появления интерфейса заполнения тела письма не должно быть ни задержек, ни диалогов.
26 Смотрящий
 
15.08.17
19:36
PDFCreator
27 trdm
 
15.08.17
19:42
(26) Окно вылазит.
28 Смотрящий
 
15.08.17
20:01
1. давится в настройках
2. оно вылазит если какой то параметр переданный ему пустой или непонятен
29 Злопчинский
 
15.08.17
20:52
Как говорил наш начальник курса: "ищутся только собаки! " ;-)
Основная теорема систематики: Новые системы плодят новые проблемы.