Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Общие вопросы _ Взаимодействие с 1С через COM

Автор: AntonH851 11.11.2010, 23:27

Добрый ...!

Есть ли возможность работать с 1C через ActiveQt?
Попробовал получить данные, но пока получилось только
соединиться с 1с, а дельше ступор....
Нужно получить ссылку на справочник

    QAxObject *act = new QAxObject("V77.Application");

    act->dynamicCall("Initialize(const QVariant&, const QVariant&, const QVariant&)",
                     act->dynamicCall("RMTrade"), "/D C:\\PROGRA~1\\1Cv77\\1SBDB", "no_splash_show");

    QAxObject *sotr = act->querySubObject("Справочник.Сотрудники");


но в результате:
Цитата
QAxBase::dynamicCallHelper: ??????????.??????????: No such property in {63112d80-94f0-11d2-9f39-008048da120f} [unknown]
Candidates are:


в сети нет подобных примеров, получается что Qt не "дружит" с 1С совсем?
Или я чего-то не правильно делаю?

Автор: kwisp 11.11.2010, 23:31

AntonH851,
по-моему там в каждом activeqt классе можно через QString получить документацию.
я так для браузера виндового получал когда webkit не было

Автор: molchanoviv 11.11.2010, 23:35

Скорее всего проблема с кодировкой. думаю что QTextCodec тебе поможет.

Автор: Litkevich Yuriy 11.11.2010, 23:39

Цитата(AntonH851 @ 12.11.2010, 2:27) *
QAxObject *sotr = act->querySubObject("Справочник.Сотрудники");
кодировка этой записи какая?

Автор: AntonH851 12.11.2010, 8:40

Цитата(Litkevich Yuriy @ 11.11.2010, 23:39) *
Цитата(AntonH851 @ 12.11.2010, 2:27) *
QAxObject *sotr = act->querySubObject("Справочник.Сотрудники");
кодировка этой записи какая?


Кодировку устанавливаю:
    QTextCodec::setCodecForTr(QTextCodec::codecForName("Windows-1251"));
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("Windows-1251"));


попробую получить документацию
QString QAxBase::generateDocumentation ()

Автор: Litkevich Yuriy 12.11.2010, 10:05

Цитата(AntonH851 @ 12.11.2010, 12:40) *
Кодировку устанавливаю:
это ты кодек устанавливаешь, а кодировка файла с той строковой константой какая?

Автор: AntonH851 12.11.2010, 11:17

Цитата(Litkevich Yuriy @ 12.11.2010, 10:05) *
Цитата(AntonH851 @ 12.11.2010, 12:40) *
Кодировку устанавливаю:
это ты кодек устанавливаешь, а кодировка файла с той строковой константой какая?


вероятно ANSI
простите за глупый вопрос, но как определить кодировку?

Автор: Litkevich Yuriy 12.11.2010, 11:35

Цитата(AntonH851 @ 12.11.2010, 15:17) *
простите за глупый вопрос, но как определить кодировку?
ну если редактор не позволяет, то можно попробовать - %QTDIR%\examples\tools\codecs
открой этой программой и посмотри при какой кодировке этот файл корректно читается

Автор: kwisp 12.11.2010, 11:43

Цитата(AntonH851 @ 12.11.2010, 11:17) *
простите за глупый вопрос, но как определить кодировку?

если в linux то так можно
enca -L ru <file>

Автор: AntonH851 12.11.2010, 12:44

Цитата(Litkevich Yuriy @ 12.11.2010, 11:35) *
Цитата(AntonH851 @ 12.11.2010, 15:17) *
простите за глупый вопрос, но как определить кодировку?
ну если редактор не позволяет, то можно попробовать - %QTDIR%\examples\tools\codecs
открой этой программой и посмотри при какой кодировке этот файл корректно читается


windows-1251

Автор: Litkevich Yuriy 12.11.2010, 12:58

Цитата(AntonH851 @ 12.11.2010, 2:27) *
Candidates are:
к стати, а какие кандидаты предлагаются?

Автор: AntonH851 12.11.2010, 18:58

Цитата(Litkevich Yuriy @ 12.11.2010, 12:58) *
к стати, а какие кандидаты предлагаются?


в том-то и дело что ни каких


А вто что выдало generateDocumentation()


 doc.html ( 2.28 килобайт ) : 263
 

Автор: Litkevich Yuriy 12.11.2010, 19:57

AntonH851, ну вот кому эта портянка тэгов? сохрани её в html-файл.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)