Общие поля свойтва пользователя для документов

Автор as1234, 14 апреля 2012, 23:16

0 Пользователи и 1 гость просматривают эту тему.

as1234


Hasim

Часть ошибок связана с тем, что при переносе строк после знака подчеркивания "_" стоит пробел "_ " (ошибка!). Пробел нужно убрать.
Другие ошибки связаны с непонятным для меня (и для Basic'a) свойством oProps.[Info 1] ???
Откуда вы взяли этот макрос?

Hasim

Обрезанный макрос без ошибок.
Sub GetDocumentProperties
   Dim oProps
   Dim oDocProps
   Dim s$
   Dim i As Integer
   Dim prop
   oDocProps = ThisComponent.getDocumentProperties()
   s = s & "Author = " & oDocProps.Author & CHR$(10) & _
       "AutoLoadSecs = " & oDocProps.AutoloadSecs & CHR$(10) & _
       "AutoLoadURL = " & oDocProps.AutoloadURL & CHR$(10) & _
       "CreationDate = " & DateSTructToString(oDocProps.CreationDate) & _
       CHR$(10) & _
       "Default Target = " & oDocProps.DefaultTarget & CHR$(10) & _
       "Description = " & oDocProps.Description & CHR$(10) & _
       "EditingCycles = " & oDocProps.EditingCycles & CHR$(10) & _
       "EditingDuration = " & oDocProps.EditingDuration & CHR$(10) & _
       "Generator = " & oDocProps.Generator & CHR$(10) & _
       "Language = (" & oDocProps.Language.Country & ", " & _
       oDocProps.Language.Language & ", " & _
       oDocProps.Language.Variant & ")" & CHR$(10) & _
       "ModificationDate = " & _
       DateSTructToString(oDocProps.ModificationDate) & CHR$(10) & _
       "ModifiedBy = " & oDocProps.ModifiedBy & CHR$(10) & _
       "PrintDate = " & DateSTructToString(oDocProps.PrintDate) & _
       CHR$(10) & _
       "PrintedBy = " & oDocProps.PrintedBy & CHR$(10) & _
       "Subject = " & oDocProps.Subject & CHR$(10) & _
       "TemplateDate = " & _
       DateSTructToString(oDocProps.TemplateDate) & CHR$(10) & _
       "TemplateName" & oDocProps.TemplateName & CHR$(10) & _
       "TemplateURL" & oDocProps.TemplateURL & CHR$(10) & _
       "Title = " & oDocProps.Title & CHR$(10) & _
       ""
   
         MsgBox s

End Sub



[вложение удалено Администратором]

as1234

#33
Написал по моей теме на зарубежном форуме , мне его скинул Питоньяк . Он как раз должен был решить мою проблему  , но вот только разобраться в нем чтобы работало как надо не могу . В крации суть - из одного документа перекинуть значения свойств пользователя в другой документ .

По поводу [Info 1]  - Он мне ответил - "You need to get the document properties as shown in the macro above from both document and then assign values from one to the other."

Hasim

Цитата: as1234 от 30 мая 2012, 22:44
По поводу [Info 1]  - Он мне ответил - "You need to get the document properties as shown in the macro above from both document and then assign values from one to the other."
Почитал вашу переписку с Питоньяком.
Changing user's properties in the documents with a macro

Питоньяк не имел в виду [Info 1]. Он писал про свойства документа, т.е. про то, что в обрезанном мной макросе.

[Info 1] относится к UserDefinedProperties (свойствам, определяемым пользователем), но это чисто символическое обозначение, которое требует расшифровки.

as1234

Это печалька вообщем , а мне то как раз и нужны UserDefinedProperties , видать несостыковочка вышла )) а я уже воодушевился :D

Hasim

Не понял про печальку. Ведь всё нужное уже было описано.
Изменение полей в свойствах документа
Ошибка в макросе

Что вы хотите конкретно? Даже не описывайте словами, а приложите образец того, что вам нужно, сделанный вручную, даже картинками.
А то мы все друг друга не понимаем, наверное.

as1234

Вот примерная последовательность действий ! Не могу решить вопрос со 2м пунктом

[вложение удалено Администратором]

Hasim

Как я понял.

1. Имеется главный (ведущий, управляющий) файл - файл.odt - тот который на вашей картинке.
2. Есть файлы шаблонов (ОД.ott, ПЗ.ott, С.ott, СМ.ott), хранящиеся по пути C:/tmp/Шаблоны.
(PS. Сделайте образцы этих файлов и приложите, чтобы было о чем конкретно говорить.)

Ваш пункт 2 непонятен.
Какие в исходных шаблонах поля (и их значения)? Те, что на вашей картинке? Т.е., в каждом шаблоне Имя поля - из столбца Обозначение(ХХХ), а Значение этого поля - из столбца Название(ZZZ) или НАОБОРОТ?
Поля в шаблоне меняются на взятые из той таблицы, которая на вашем рисунке, или из какой-то другой?
(Если из той, что на рисунке, то почему сразу не забить эти значения в шаблоны и не менять ничего потом?)
(РPS. Сделайте образцы всех файлов с заполненными полями и приложите, чтобы видеть, где какие поля и как заполнены изначально.)

Вот пока такая куча вопросов из-за отсутствия конкретных файлов для предметного разговора.
(Дальше ещё будут вопросы, но уже другие.)

as1234

#39
Значения полей будут довольно часто изменяться в основм файле (файл.odt) поэтому в шаблоны значения не забиваю . Можно конечно это все в ручную вбивать из главного Ctrl+C и в шаблон Ctrl+V но хотелось чтобы это делалось как то само , автоматически .

Пока что 2 поля ,  чтобы не путаться в них и разобраться , чтобы настроить процесс , а так полей в приделах 10-15 ( Имя директора , разработал , организация , адрес , директор отдела , инженер , "кому" и тп и тп )

З.ы. вот и подумал если поля в обоих документах сделать общими то и значение поля  из дного документа будет отображаться в другом ))

[вложение удалено Администратором]

Hasim

#40
Начнем по порядку. Что нужно сделать.
1. При нажатии кнопки "Ореn" прочитать данные из этой строки (20120301-СС.ОД, Общие данные, ОД) таблицы в 3 какие-то переменные, т.е. добавить в код макроса о1 код, выполняющий эти действия.
Значения этих переменных потом будут вставлены в поля шаблона ОД.
Попробуйте сделать это самостоятельно (честно, не хочется делать всё за вас).

PS. Я считаю, что не следует всякие новые вводимые свойства пользователя присваивать самому файлу файл.odt. Достаточно вводить их только в таблицу. Я бы вообще вместо файл.odt (Writer) пользовался файл.ods (Calc). В Calc проще доступ к ячейкам таблицы и на разных листах можно хранить разные наборы свойств в одной книге..

as1234

Проще сказать чем сделать  ;D

Спасибо за стоящие советы !!!!

Nick222

Большая просьба - исправьте ошибку в названии темы (свойСтва) - тема не находится поиском...
Xubuntu 21.04, LibreOffice 7.2.*