autECLFieldList.count возвращает 1, а не количество полей на экране - PullRequest
0 голосов
/ 15 января 2019

AutEclFieldList.Count возвращает 1 вместо количества полей на экране.Это происходит на сессии коллег.В моем собственном сеансе я получаю число 122, которое кажется правильным по сумме меток и полей данных.

У нас обоих версия 12.0 с 20170427 S - 12.0.2.0 Я уже установил для моего HostCodePage значение «500 Belgium MNCS», как у него, но он все еще работает на моем компьютере.

Ясравнивая настройки мэйнфреймов 2 сеансов, но не могу найти вещи, которые имеют значение.

[PCOMM SCRIPT HEADER]
LANGUAGE=VBSCRIPT
DESCRIPTION=
[PCOMM SCRIPT SOURCE]

Dim NumFields
Dim TextStr
Dim autECLPSObj
Dim autECLConnList
Dim ObjCtrlC

Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")

autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
autECLPSObj.autECLFieldList.Refresh
NumFields = autECLPSObj.autECLFieldList.Count

MsgBox "Numfields : " & NumFields

1 Ответ

0 голосов
/ 15 января 2019

Не эксперт по Объектам автоматизации библиотеки классов IBM Host Access , но просто просматривает документацию, которую он предлагает;

Из Класс autECLConnList в Документация по объектам автоматизации библиотеки классов доступа к хосту


Обновить

Метод Refresh получает снимок всех запущенных соединений.

Примечание:

Вы должны вызвать этот метод перед доступом к коллекции autECLConnList, чтобы убедиться, что у вас есть текущие данные.

Приведенный выше код не вызывает Refresh() для коллекции autECLConnList, поэтому для другого сеанса может потребоваться обновить соединения. Предложить добавление;

autECLConnList.Refresh

сразу после;

Set autECLConnList = CreateObject("PCOMM.autECLConnList")
...