Показать сообщение отдельно
Старый 27.04.2011, 13:29   #16  
Sergikrus is offline
Sergikrus
Участник
 
82 / 15 (1) ++
Регистрация: 26.09.2008
Адрес: Tyumen
Значит так :

1) Ошибка:
Сервиса с пространством имен = "http://schemas.microsoft.com/dynamics/2008/01/services" и внешним именем = "InventItemService не существует.

Причина:
в таблице AifService по критерию:

X++:
    select firstonly *
            from aifService
            where aifService.ExternalName == 'InventItemService'
            && aifService.Namespace == 'http://schemas.microsoft.com/dynamics/2008/01/services';
возвращает NULL

Решение: Значение атрибута ExternalName в таблице AifService привёл к значению InventItemService вместо ItemService

2) Ошибка:
Пользователь не авторизован для этой конечной точки.

Причина: так надо

Класс: AifRequestProcessor
X++:
 // Verifies that the current user has access to the service operation
static private void verifyRequestIsAllowed(AifMessage message)
{
    // #48319 - the sourceEndpointUser should always be equal to the currently logged in user.
    if(!isValidUser || ( message.sourceEndpointAxUserId() != curuserid()))
        //User is not authorized for this Endpoint.
        throw error(strfmt('SYS89826'));
}
Решение: Авторизовался в Windows, а затем и в AX 2009 под пользователем axservice

Добавил пользователя к конечной точке:
Нажмите на изображение для увеличения
Название: acess.JPG
Просмотров: 407
Размер:	50.6 Кб
ID:	6814

3) Ошибка:
Политика действий конечной точки не существует.

Причина:
Из 1 Ошибки видно, что имя запрашиваемого сервиса было ItemService вместо InventItemService, то соответственно и Действия называются ItemService.find вместо InventItemService.find

Решение:
Привел значения атрибута Name таблицы AifAction в соответствие к требуемым, тоесть вместо ItemService.find написал InventItemService.find и так далее.