|
1С, OpenOffice, файл xls с макросами | ☑ | ||
---|---|---|---|---|
0
paderub
25.01.16
✎
10:41
|
Добрый день!
1С:Предприятие 8.2.19.130, Управление торговлей 10.3.13.2 На сервере стоит OpenOffice, но работать нужно с файлами xls. Подключаюсь так: OpenOffice = Новый COMОбъект("com.sun.star.ServiceManager"); Desktop = OpenOffice.createInstance("com.sun.star.frame.Desktop"); scr = Новый COMОбъект("MSScriptControl.ScriptControl"); scr.language = "javascript"; scr.eval("MassivParametrov = new Array()"); MassivParametrov = scr.eval("MassivParametrov"); scr.AddObject("OpenOffice", OpenOffice); scr.eval("MassivParametrov[0]=OpenOffice.Bridge_GetStruct('com.sun.star.beans.PropertyValue')"); scr.eval("MassivParametrov[0].Name='Hidden'"); scr.eval("MassivParametrov[0].Value=true"); Файл = Desktop.LoadComponentFromURL(URLИзИмениФайла(ИмяФайла), "_blank", 0, MassivParametrov); ТекущийЛист = Файл.sheets.getByIndex(0); //Закрытие и сохранение файла файл.unlockControllers(); файл.removeActionLock(); файл.store(); Файл.Close(Истина); Desktop.Terminate(); Это все работает. В файле есть макрос, который нужно выполнить. Нашел такой код: Массив=scr.eval("new Array()"); URLМакроса=scr.Eval("OpenOffice.Bridge_GetStruct('com.sun.star.util.URL')"); URLМакроса.Complete="macro://./Standard."+"Лист1"+"."+"HidenRows()"; Frame = файл.CurrentController.Frame; Dispatcher = Frame.queryDispatch(URLМакроса,"_self",0); dispatcher.Dispatch(URLМакроса,Массив); Ничего не срабатывает. Имя модуля и процедуры указаны правильно. OpenOffice вообще может выполнять макросы MSExcel? |
|||
1
paderub
25.01.16
✎
10:53
|
Сейчас процесс проходит так: есть шаблон заявки поставщику, сотрудник запускает обработка, указывает файл шаблона, файл заполняется, далее открывает его через Excel (на рабочем месте MS Office стоит), нажимает на контрол, который запускает макрос, сохраняет и отправляет вручную поставщику. Хотелось бы полностью это автоматизировать.
|
|||
2
Garykom
гуру
25.01.16
✎
10:57
|
libreoffice может выполнять макросы, но не напрямую готовые из ms office, нужно переводить
http://www.cyberforum.ru/vba/thread633228.html |
|||
3
paderub
25.01.16
✎
10:58
|
(2) Переводить не вариант. Поставщик может поменять шаблон.
|
|||
4
paderub
25.01.16
✎
11:09
|
Какой еще есть вариант работать с файлом xls без установленного офиса, чтобы можно было выполнять макросы?
|
|||
5
Карупян
25.01.16
✎
11:20
|
так вроде оо на каком то уровне поддерживает макросы.
|
|||
6
Карупян
25.01.16
✎
11:21
|
попробуй для начала запустить макрос в самом оо
|
|||
7
Garykom
гуру
25.01.16
✎
11:22
|
(3) (4) для начала нафига они вообще нужны?
|
|||
8
paderub
25.01.16
✎
11:54
|
Поставщик не примет заявку, если она будет не в установленной форме. Макрос скрывает незаполненные строки и еще что-то делает. Его выполнять обязательно
|
|||
9
Garykom
гуру
25.01.16
✎
12:01
|
(8) для начала поменяйте поставщика...
а если серьезно пусть они вам купят офис и все |
|||
10
Карупян
25.01.16
✎
12:04
|
(9) Вот поэтому ты 1сник, а не бизнесмен )))
|
|||
11
Смотрящий
25.01.16
✎
12:06
|
(8) Разобраться что делает макрос; переписать эти операции на 1С.
|
|||
12
Garykom
гуру
25.01.16
✎
12:07
|
(10) гм правильно понял что это мне сказал "бизнесмен", а не не 1С-ник?
|
|||
13
Карупян
25.01.16
✎
12:07
|
(12) Я тоже 1сник, но не учу никого жить )))
|
|||
14
yukon
25.01.16
✎
12:08
|
(10) Зато поставщик бизнесмен прям атбога - так "любить" своих клиентов это прям вершина клиентоориентированности.
|
|||
15
Garykom
гуру
25.01.16
✎
12:08
|
(12)+ с точки зрения бизнеса дешевле купить офис чем поиметь кучу трабл в будущем с этими файликами/макросами/кривыми программерами
|
|||
16
Масянька
25.01.16
✎
12:09
|
(10) Не смешно.
Нормальный (всего лишь - нормальный) поставщик для своих клиентов делает b2b (в гугле ищи). (11) Плюсую. |
|||
17
vmlspb
25.01.16
✎
12:09
|
намучились мы одно время с этим ОО. Случай был похожий, формировать шаблон для поставщика с формулами и с определенным оформлением. В итоге, переписали обработку, теперь делаем через эксель. Много проблем ушло
|
|||
18
yukon
25.01.16
✎
12:13
|
(15) С т.з. бизнеса надо купить офис и искать нормального поставщика, чтобы не "поиметь кучу трабл в будущем с этими файликами/макросами/кривыми программерами".
|
|||
19
Garykom
гуру
25.01.16
✎
12:15
|
(17) криворукие нифига не знающие сотрудники/маркетологи/економисты и прочие которые кроме Ёкселя нифига не знаю и считают его верхом авто/информатизации слегка поднадоели
скажите чем мешает обычный DBF если нет возможности освоить XML|JSON ? или есть много лет https://ru.wikipedia.org/wiki/CommerceML куча b2b сервисов в том числе систем заказа с клиентами, в т.ч. бесплатных/открытых |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |