Как распечатать openoffice #372275


#0 by wms
Делаю: ScriptControl = Новый COMОбъект("MSScriptControl.ScriptControl"); Как расспечатать лист?
#1 by wms
ап
#2 by Александр_Тверь
апну, вдруг кто знает. интересно же
#3 by wms
Нашел вот кусок кода, как его на 1С переделать? Пока не соображаю
#4 by Fragster
На яндексе забанили? Печать документа   Последняя процедура в этом разделе – процедура вывода на печать текущего документа (листинг 9). const Bounds:array[1..2] of integer = (0,0);   В данном случае мы передаем на печать необходимое количество копий (iNumCopies). Для меня именно это было критично, хотя есть и другие параметры печати, которые можно задавать точно таким же образом. Например, свойство Pages:string - определяет страницы для печати, формат ввода такой: ' 1-9,11,15-20'; или свойство FileName:string – определяет файл, в который производится печать.
#5 by wms
спасибо конечно, но чем это лучше ? копипастить все умеют. Как это на 1С реализовать? суть вопроса ведь в этом.
#6 by wms
апну еще не понятно как в 1С эти две строки переписать: чтобы вставить в : Document.print(VariantArray);
#7 by Fragster
т.е. скопипастил, но не посмотрел, что? вот тебе то же из твоего примера: так понятнее? а то, что некоторые программисты не могут код из одного языка в другой переделать - то это проблемы тех программистов...
#8 by Fragster
+ а остальные свойства, если что, так: ....
#9 by Ковычки
не всегда все так просто (про программистов) да и использование диспача, это проблемма с головой у программистов ООо
#10 by Fragster
диспач используют только суровые челябинские программисты, остальные используют Document.print(VariantArray);
#11 by Ковычки
примерно
#12 by wms
делал примерно так. Еще попробовал, так : не получается - ошибки не выдает, но и не печатает
#13 by Ковычки
в восьмерке вообще нафих обертка ненужна в ней есть коммассив и тип вариант, но дело не в том. смотри мой код, он красивше... да и никто лучче меня ничего не предложит в связке ООо и адинес, ибо я есмь начало !
#14 by Fragster
а область печати то там есть? ну, и Лист.Print(...) попробовать можно
#15 by Ковычки
+ вот тут ты прав... чо хоть печатаем то ?
#16 by wms
Лист.Print(...) пробовал Область обязательно задавать? Мне два листа надо распечатать, открываю файл - эксель шаблон, его меняю Все ок. Два режима в одном открывается в другом сразу на принтер надо - тут и засада Надо как то к листу привязаться, а метода принт у него то и нету...
#17 by wms
апну еще завтра снова попробую
#18 by Ковычки
com.sun.star.table.CellRangeAddress и setPrintAreas
#19 by Ковычки
а чо, апать, я и так знаю как... тебеж сказал, что я самый крутой по ооо, круче только яйца, выше только звезды
#20 by wms
и куда это совать? понятно, все знают, все спецы и все это делали, тока кода 1С ни у кого почему то нет.
#21 by smaharbA
не свисти, код 1с есть и он у меня и у Ковычек... он правдо плагиатор, а я есмь начало всего ООо в 1С
#22 by wms
щас я сделаю сам, опубликую и буду "я есмь начало всего ООо в 1С "  :), а вы тока виртуально
#23 by smaharbA
извини, но не будешь... ибо лучче чем моя тебе не сделать и не разобраться с ооо
#24 by smaharbA
+ и внимательно изучи код в - откудова он взялся...
#25 by wms
скопипастил у спецов ""я есмь начало всего ООо в 1С"
#26 by smaharbA
Все еще кипятишь ? Счас спрашивай спецов как выбрать нужный диапазон и надо ли ? и для каждой ли сборки это нужно ... А надо было просто смиренно просить у немного снизойти до вашей низости... (код не полон, но рабочий) И еще спроси у своих спецов где они накопали
#27 by Fragster
*олигофрены ;)
#28 by smaharbA
это кому как ))
#29 by Fragster
отжиг! в мемориз!
#30 by wms
"(код не полон, но рабочий) " код для 7.7 а тема, товарищь для 8-ки (!!!)  а перевести не так просто например    СпПарам.ДобавитьЗначение(Скрипт.eval(СтрПарам)); - не прокатывает. типы не те а для 8-ки слабо?
#31 by wms
не СпПарам.ДобавитьЗначение(Скрипт.eval(СтрПарам)); - не прокатывает. типы не те а СпПарам.Добавить(Скрипт.eval(СтрПарам)); - не прокатывает. типы не те
#32 by wms
"И еще спроси у своих спецов где они накопали " этот код для 1С 8-ки и он работает. туда надо добавить несколько строк для печати листа(диапазона) и все, а не копипастить страницы не рабочего текста
#33 by smaharbA
ты с кем споришь ? ты подумал ? а код в восьмерке будет гораздо просче чем и еще раз спроси у кого брал где он его взял, и где взял тот у кого он взял...
#34 by smaharbA
все пипец... больше ниче делать по ооо не стану... а то видите ли код у них рабочий... Я ТОГДА БЫЛ ПЬЯНЫЙ !
#35 by wms
вот полностью рабочий код, изменил только название процедуры, вставил параметры  и Document.print(Массив); - не печатает.
#36 by wms
т.е. в этот код добавил только scr.eval("Массив[1]=OpenOffice.Bridge_GetStruct('com.sun.star.beans.PropertyValue')"); не печетает. Что я не так делаю?
#37 by smaharbA
Первое - требую признания моя как "Есмь начало!"
#38 by wms
да будет тебе признание. если проблему решишь
#39 by smaharbA
мене уже и так есть признание, требую твоего смиренния... ладно Второе - выкинь скрипт используй восьмерку знаю только по картинкам ))) третье - твой код (но выкинь скрипт и используй пункт "Второе"
#40 by smaharbA
#41 by smaharbA
Пля, ошибсо... мене позволительно !
#42 by wms
Ошибка при вызове метода контекста (Eval): Произошла исключительная ситуация (Ошибка выполнения Microsoft JScript): Объект не поддерживает это свойство или метод по причине: Произошла исключительная ситуация (Ошибка выполнения Microsoft JScript): Объект не поддерживает это свойство или метод
#43 by smaharbA
Короче, разбирайся сам, а то ошибок наделаю, потом будешь тыкать - "типоТупой"... Потратил на тебя свое дорогое время блин, забирай и восхваляй мой моск... (но пункт "Второе" почитай на сон грядущий и многа думай)
#44 by smaharbA
Все. Работай
#45 by smaharbA
Все. Работай и наслаждайся щасьем.
#46 by wms
спасибо за код, но... наслаждаться не получается. Не печатает. Но, решение проблемы уже совсем близко. Нет уже времни дальше копать. Короче. У меня в файле экселя два листа. Активным при открытии установлен второй лист. Мы в пробуем печатать первый лист. Не печатает. Но, если я в отладчике перед   Document.print(ПараметрыПечати); в открытом файле делаю активным первый лист , то после   Document.print(ПараметрыПечати); печатает, правда только несколько колонок, но с настройками поиграться думаю будет все печатать. Короче надо как то программно активным необходимый лист делать перед
#47 by smaharbA
работает, и в коде что надо то и активизировать можно, и активизировано (есть но, ненадо скрытым офис запускать для некоторых принтеров, и правильно еще, в параметрах печати указывать еще и принтер)
#48 by smaharbA
Еще раз ты ведешь беседу с Самим Создателем, и еще осмеливаешься перечить ?! ... Дальше думай сам, или пусть жуют тебе спецы давшие код в )))
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С