AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 23.09.2005, 11:05   #1  
AlterEgo is offline
AlterEgo
Участник
 
7 / 10 (1) +
Регистрация: 13.01.2005
Адрес: Донецк
Angry COM / MS Office / CustomDocumentProperties
Доброго всем!
Для вывода в Word'е одного значения во многих местах решил использовать "пользовательские свойства" документа, а в местах вывода разместить поля (fields) с указанием на это свойство,
В класс ComWordDocument_RU добавил метод

public void setCustomProperty(str _name, anytype _value)
{
COM comProperties;
COM comProperty;

comProperties = m_comDocument.CustomDocumentProperties();
comProperty = comProperties.Item(_name);
comProperty.value(_value);
}
но при вызове в строке comProperties.Item(_name) получаем ошибку - в Вариантный тип, позвращенный методом COM-объекта не поддерживается.
Есть ли выход?
Старый 23.09.2005, 11:18   #2  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,275 / 3476 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Есть. Вместо comProperty.value(_value); надо вызывать comProperty.value(COMVariant::createFromStr(_value)); если _value - строка, comProperty.value(COMVariant::createFromInt(_value)); если _value - целое и т.д.
Класс COMVariant лежит в \System Documentation\Classes\
Для Item(_name) надо сделать тоже самое (COMVariant::createFromStr(Name)) ибо у метода Item в VB аргумент имеет тип Variant
__________________
Возможно сделать все. Вопрос времени
Старый 23.09.2005, 11:28   #3  
AlterEgo is offline
AlterEgo
Участник
 
7 / 10 (1) +
Регистрация: 13.01.2005
Адрес: Донецк
Цитата:
Изначально опубликовано sukhanchik
.......Есть. Вместо comProperty.value(_value); надо вызывать comProperty.........
Повторюсь процедура НЕ ДОХОДИТ до присваивания значения - всё вылетает вот здесь
comProperty = comProperties.Item(_name);
с ошибкой, указаной в первом постинге
Старый 23.09.2005, 11:51   #4  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,275 / 3476 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Для Item(_name) надо сделать тоже самое (COMVariant::createFromStr(Name)) ибо у метода Item в VB аргумент имеет тип Variant
Ну просто мой пост надо читать с конца
__________________
Возможно сделать все. Вопрос времени
Старый 23.09.2005, 12:07   #5  
AlterEgo is offline
AlterEgo
Участник
 
7 / 10 (1) +
Регистрация: 13.01.2005
Адрес: Донецк
Цитата:
Изначально опубликовано sukhanchik

Ну просто мой пост надо читать с конца
И то верно... , но вот как ни крути - а ошибка не в вызове функции, а в возвращенном типе данных..
ЗЫ. Ваше вариант тоже попробовал - "нет никакой разницы" (с) Дося...
Старый 23.09.2005, 12:18   #6  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,275 / 3476 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
т.е. если вызвать просто comProperties.Item(_name); (без присваивания) - то ошибки не возникнет?
Может конечно действительно есть траблы в вызове именно пользовательских свойств...
Или же может попробовать сразу:
m_comDocument.MyProperty() - т.е. использовать свойство напрямую. VB не позволяет конечно.... Это в общем - идеи ..
Сам - каюсь - не проверял
__________________
Возможно сделать все. Вопрос времени
Старый 23.09.2005, 15:22   #7  
AlterEgo is offline
AlterEgo
Участник
 
7 / 10 (1) +
Регистрация: 13.01.2005
Адрес: Донецк
Ну что ж спасибо за диалог
Буду копать дальше....
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
AX UK: Environmental Sustainability on MS.com Blog bot DAX Blogs 0 10.01.2009 01:08
axStart: Office Com Integration Blog bot DAX Blogs 0 21.12.2007 04:11
AX UK: Microsoft Dynamics Client for MS Office & Sharepoint Server Blog bot DAX Blogs 0 12.04.2007 16:10

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:20.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.