|
Список принтеров в Linux
| ☑ |
0
spiller26
13.02.18
✎
10:00
|
Есть консольная команда, которая выводит список принтеров в системе
lpstat -p -d
НачатьЗапускПриложения
ЗапуститьПриложение
Что использовать для возврата выводимого списка в 1с?
|
|
1
Волшебник
модератор
13.02.18
✎
10:01
|
КомандаСистемы("lpstat -p -d > output.txt")
|
|
2
spiller26
13.02.18
✎
10:17
|
(1) Всё получилось
ТекстДокумента = новый ТекстовыйДокумент;
ВременныйТексДокумент = ПолучитьИмяВременногоФайла();
КомандаСистемы("lpstat -p -d > " + ВременныйТексДокумент);
Sleep(2);
ТекстДокумента.Прочитать(ВременныйТексДокумент);
ИзвлеченныйТекст = ТекстДокумента.ПолучитьТекст();
УдалитьФайлы(ВременныйТексДокумент);
//СтрокаКонсольнойКоманды = "lpoptions -o pagesize=EnvDL -o inputslot=MF1";
//ЗапуститьПриложение(СтрокаКонсольнойКоманды);
ТД = ПечатьНаСервере("DL");
//задержка
Процедура Sleep(Сек) Экспорт
Нач=ТекущаяДата();
Пока ТекущаяДата() - Нач < Сек Цикл
КонецЦикла;
КонецПроцедуры
|
|
3
arsik
гуру
13.02.18
✎
10:33
|
(2) Зачем Sleep(Сек)
сделай сразу в команде
КомандаСистемы("lpstat -p -d > " + ВременныйТексДокумент+"; sleep 2");
|
|
4
spiller26
13.02.18
✎
10:35
|
(3) не знал что так можно. Спасибо.
|
|
5
Волшебник
модератор
13.02.18
✎
10:36
|
Нужно ещё добавить Попытка...Исключение. Мало ли что пойдёт не так.
|
|
6
arsik
гуру
13.02.18
✎
10:38
|
(4) А, не. Я ошибся. Не делай так.
|
|
7
spiller26
13.02.18
✎
10:40
|
(5) Это понятно
(3) так лучше будет "lpstat -p -d && sleep 2"
|
|
8
arsik
гуру
13.02.18
✎
10:53
|
(7) Не. У тебя так пауза внутри КомандаСистемы будет. А она вроде как раз не ждет завершения. Тебе паузу на уровне 1С нужно все таки делать
|
|
9
spiller26
13.02.18
✎
10:53
|
Просто печать конвертов на принтер, по крайней мере, Kyocera, через одно место. Вот такой вот изврат.
1. Сначала определяем какой по умолчанию
2. Переопределяем параметры
"lpadmin -p NamePrinter -o media=EnvDL -o inputslot=MF1"
3. После печати возвращаем стандартные параметры.
|
|
10
arsik
гуру
13.02.18
✎
10:57
|
(8) Ошибся. КомандаСистемы - ждет завершения. Так что пауза совсем бессмыслена.
|
|
11
spiller26
13.02.18
✎
10:59
|
(10) Пока уберу задержку, при тестировании выявиться.
|
|