Веб-API Acumatica и пользователь сайта загружены с сообщением — вы вышли из системы из-за превышения количества пользователей в системе

У меня возникла проблема с загрузкой с веб-сайта Acumatica (пробная версия V5.2) всякий раз, когда код веб-API запускается для синхронизации данных, отображающих сообщение «Вы вышли из системы из-за превышения количества пользователей в системе». хотя я реализовал код выхода из веб-API.

Я не хотел бы загружаться с Acumatica и ранее задавал вопрос Как выйти из системы пользователя Acumatica Web Api?. Вот где я получил код для выхода. Но это определенно не работает правильно в моей пробной версии.

Поэтому я думаю, что с моим кодом что-то не так, и если это так, мне может понадобиться помощь в его выяснении.

Этапы репликации: перед запуском приведенного ниже примера кода войдите в пробную версию Acumatica. После запуска вы будете загружены из Acumatica, говоря, что вы превысили лимит двух пользователей.

Приведенный ниже пример кода просто входит в систему, ищет продавца по идентификатору, а затем выходит из системы. Делает это дважды.

Пример кода:

class Program
{
    static AcumaticaApiWS.Screen context = null;
    static string contextUrl = "http://localhost/Soap/WEBAPI.asmx";
    static string screenUrl = "http://localhost/Soap/.asmx";
    static string userName = "USERNAME";
    static string passWord = "PASSWORD";

    static void Main( string[] args )
    {
        LogIn();
        DoWork("Test1");
        LogOut();

        LogIn();
        DoWork("Test2");
        LogOut();
    }

    static void LogIn()
    {
        Program.context = new AcumaticaApiWS.Screen();
        Program.context.CookieContainer = new System.Net.CookieContainer();
        Program.context.AllowAutoRedirect = true;
        Program.context.EnableDecompression = true;
        Program.context.Timeout = int.MaxValue;
        Program.context.Url = Program.contextUrl;
        AcumaticaApiWS.LoginResult result = context.Login( Program.userName, Program.passWord );
        Program.context.SetLocaleName( System.Globalization.CultureInfo.CurrentCulture.Name );
    }

    static void LogOut()
    {
        AcumaticaScreenWS.Screen screen = new AcumaticaScreenWS.Screen();
        Program.context.Url = Program.screenUrl;
        screen.Url = Program.screenUrl;
        screen.CookieContainer = Program.context.CookieContainer;
        screen.Logout();
        Program.context = null;
    }

    static void DoWork( string salesPersonId )
    {
        String[][] AR205000data = null;

        AcumaticaApiWS.AR205000Content AR205000 = Program.context.AR205000GetSchema();
        Program.context.AR205000Clear();

        AR205000data = Program.context.AR205000Export
        (
            new AcumaticaApiWS.Command[]
            {
                AR205000.SalespersonInfo.ServiceCommands.EverySalespersonID,
                AR205000.SalespersonInfo.SalespersonID,
                AR205000.SalespersonInfo.Name
            },
            new AcumaticaApiWS.Filter[]
            {
                new AcumaticaApiWS.Filter
                {
                    Field = new AcumaticaApiWS.Field() {
                            FieldName = AR205000.SalespersonInfo.SalespersonID.FieldName,
                            ObjectName = AR205000.SalespersonInfo.SalespersonID.ObjectName
                    },
                    Condition = AcumaticaApiWS.FilterCondition.Equals,
                    Value = salesPersonId
                }
            },
            0, false, false
        );

        if( AR205000data.Length > 0 )
        {
            Console.WriteLine( AR205000data[0][0] + " " + AR205000data[0][1] );
        }
        else
        {
            Console.WriteLine( "'" + salesPersonId + "' not found." );
        }
    }
}

Спасибо за вашу помощь!


person John K.    schedule 24.09.2015    source источник
comment
Мы занимаемся расследованием — у нас были сообщения о похожей проблеме с лицензионными версиями, и ваш образец лучше всего помогает нам воспроизвести проблему. Спасибо.   -  person Gabriel    schedule 25.09.2015
comment
Мы нашли ошибку - она ​​будет исправлена ​​в следующих обновлениях 5.2/4.2. Если вам срочно нужно исправление, пожалуйста, напишите мне по электронной почте.   -  person Gabriel    schedule 25.09.2015
comment
Хорошо знать. Спасибо!   -  person John K.    schedule 25.09.2015