Как интегрировать SAP Business One DI Server с JAVA

Мы пытаемся интегрировать SAP Business One DI Server с JAVA. Проверены справочные документы в SDK для DI Server, но они доступны только для .NET.

Не хочу использовать B1WS, так как мы узнали, что B1WS нестабилен и содержит множество ошибок. Также проверено приложение Python flask RESTful, но оно имеет ограниченную функциональность.


person Anup Ganatra    schedule 14.06.2018    source источник


Ответы (1)


Следующий код должен позволить вам подключиться к объекту «Компания» и оттуда выполнять свои задачи (DI — NOT UI).

    import com.sap.smb.sbo.api.*;

public static void main(String[] args) 
{
    ICompany company;
    IDocuments document;    
    SBOCOMUtil util = new SBOCOMUtil();
    company = util.newCompany();
    try 
    {
        company.setServer( "sqlservername" );
        company.setCompanyDB( "dbname" );
        company.setUserName( "manager" );
        company.setPassword( "manager" );
        company.setLanguage(com.sap.smb.sbo.api.SBOCOMConstants.BoSuppLangs_ln_English);
        company.setDbUserName("sa");
        company.setDbPassword("pwd");
        company.setUseTrusted( new Boolean(false) ); 
        int result = company.connect();
        System.out.println("Company: " + company.getCompanyName());
        // analyze connection result
        if ( result != 0 ) 
        {
            System.out.println("Connection error: " + result);
        }
        else 
        {
            System.out.println("Connection success, company name: " + company.getCompanyName() );
        }
    }
    catch(SBOCOMException ex)
    {
        System.out.println(ex.getStackTraceString());
    }
    finally 
    {
        company.disconnect();
    }
}

Также взгляните на следующий путь; "C:\Program Files (x86)\SAP\SAP Business One DI API\JCO\LIB", где можно найти оболочку для DI API, а также "C:\Program Files (x86)\SAP\SAP Business One SDK\Help "Должен быть почтовый индекс JCO с более подробной информацией о подходе JAVA. Как правило, документация по Java очень скудна. Лучшим подходом будет решение B1i или COM.

С уважением,

enshadowed_

person enshadowed_    schedule 02.07.2018
comment
Это будет работать только внутри сети. Но если мы хотим использовать DI API вне сети, нам нужно использовать DI Server. - person Anup Ganatra; 03.07.2018