Нашел пример скрипта на github-е, сделал свой. И вдруг внезапно по точке учета, которая даже не на автоопросе и по которой не должно быть данных - выводятся данные. Что я делаю неправильно?
$url = “замазано”
Создаем прокси класс для работы со службой
$webservice = New-WebServiceProxy -uri $url
Устанавливаем куки-контейнер, необходим для авторизации пользователя
Спасибо за обновление, но при выполнении
$response3 = $webservice.GetMeasurePointConsumption($mp.id, $startDate, $endDate, [LersWebserviceNamespace.DeviceDataType]::Day.value__)
возникает ошибка:
Невозможно найти тип [LersWebserviceNamespace.DeviceDataType]: убедитесь в том, что сборка, содержащая этот тип, загружена.
D: empБезИмени1.ps1:30 знак:126
Я так понимаю, что выражение [LersWebserviceNamespace.DeviceDataType]::Day.value__ должно возвращать значение 64, как указано в этой дкументации.
Возможно, у вас этот код работает, потому что у вас установлен lers framework, и где-то в скрипте подключен модуль. У меня же на компьютере код не работает, хотя установлен клиент ЛЭРС - та же ошибка. Видимо, нужно что-то подключить.
Я проверил - метод GetMeasurePointConsumption работает с указанием последнего параметра в виде строкового значения.
Исправьте документацию.
Мы проверили работоспособность скрипта на машине, на которой не установлен ЛЭРС УЧЕТ. Все прекрасно работает.
Предложенный вами вариант тоже работает. Скорее всего в PowerShell происходит автоматическая подстановка значения элемента перечисления по его имени.
Документация не требует каких либо исправлений, так как в ней все написано верно. По факту функция GetMeasurePointConsumption принимает значение элемента перечисления.
Данная ошибка вызвана скорее всего тем, что вы не указали пространство имен “LersWebserviceNamespace” при инициализации $webservice. Посмотрите внимательно обновленный пример. Лучше всего скопируйте его полностью и проверьте его работоспособность.
У нас на форуме существует правило: один вопрос - одна тема. Создайте, пожалуйста, отдельную тему по данному вопросу.