API sn_erp_integration - Escopo, global

  • Versão de lançamento: Australia
  • Atualizado 12 de mar. de 2026
  • 15 min. de leitura
  • O script inclui o fornecimento de uma API encadeável para interagir com Conector zero cópia para ERP(Planejamento de recursos empresariais).

    Esta inclusão de script requer Conector zero cópia para ERP(com.sn_erp_integration) armazena a aplicação e é fornecida no namespace sn_erp_integration. Para obter mais informações, consulte Zero Copy Connector for ERP.

    Função necessária: sn_erp_integration.erp_user

    Metadados
    Use métodos de metadados para descobrir o sistema, o modelo e as informações do IDoc disponíveis no Conector zero cópia para ERP ambiente.
    • GetAvailableSystems()
    • GetAvailableModels()
    • GetAvailableOperations()
    • GetAvailableInputs()
    • GetRequiredInputs()
    • GetAvailableOutputs()
    • GetAvailableIdocConfigs()
    Configuração
    Use métodos de configuração para selecionar sistemas, modelos, operações e configurações de IDoc disponíveis para processamento. Você também pode usar esses métodos para filtrar valores de retorno do campo do modelo.
    • sistema()
    • modelo ()
    • operação ()
    • IdocConfig()
    • campos ()
    • limite()
    • deslocamento ()
    Criação de consulta
    Use métodos de criação de consulta para filtrar resultados.
    • AddEncodedQuery()
    • AddQuery()
    • AddOrQuery()
    Entrada de dados
    Use os métodos de entrada de dados para definir valores de campo. . WithJSON() O método pode ser usado para entrada em objetos aninhados e campos IDoc. . set() o método é usado para definir um valor de campo único.
    • set()
    • WithJSON()
    Execução da operação
    Use o. executar() ao trabalhar com vários registros, e o. get() método para resultados de um único registro.
    • executar()
    • get()

    API - Construtor de API

    Inicializa um novo Conector zero cópia para ERP Instância da API.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Nenhum(a)

    Os exemplos a seguir mostram como criar uma instância da API para acessar um sistema ERP.

    // Select the system1 system
    const api = new sn_erp_integration.API().system('system1');

    API - addEncodedQuery(String encodedQuery)

    Filtra registros usando uma consulta codificada.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    encodedQuery Cadeia de caracteres AN cadeia de caracteres de consulta codificada .
    Tabela 3. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como usar uma consulta codificada para recuperar códigos da empresa nos EUA.

    const api = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .operation('read')
      .addEncodedQuery('company_codes_countryregion_key=US')
      .execute();

    AddOrQuery (campo de cadeia de caracteres, operador de cadeia de caracteres, valor de cadeia de caracteres)

    Adicione uma condição de consulta OR.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    Assunto: Cadeia de caracteres O nome do campo a ser consultado.
    operador Cadeia de caracteres Opcional. Operador de consulta. A opção de consulta usada depende de os dados fornecidos para valor o parâmetro é um número ou cadeia de caracteres.

    Valor padrão:

    Números:
    • =
    • !=
    • >
    • >=
    • <
    • menor ou igual a
    Cadeias de caracteres (devem estar em maiúsculas):
    • =
    • !=
    • IN
    • NÃO ESTÁ EM
    • INICIAR
    • ENDSWITH
    • contém
    • NÃO CONTÉM
    Nota:
    Use CONTÉM em vez do operador LIKE.
    valor Cadeia de caracteres Valor no qual consultar (não diferencia maiúsculas de minúsculas).
    Tabela 5. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como retornar todos os códigos de empresa nos EUA e Canadá.

    const api = new sn_erp_integration.API();
    const companyCodes = api
      .system('system1')
      .model('company_code')
      .operation('read')
      .addQuery('company_codes_countryregion_key', 'US')
      .addOrQuery('company_codes_countryregion_key', 'CA')
      .fields(['company_codes_company_code', 'company_codes_company_name', 'company_codes_countryregion_key', 'company_codes_currency'])
      .execute();
    
    // Process the results
    companyCodes.forEach(companyCode => {
      gs.info('Company Code: ${companyCode.company_codes_company_code}, Name: ${companyCode.company_codes_company_name}, Country: ${companyCode.company_codes_countryregion_key}');
      
      // Do something with each company code
      if (companyCode.company_codes_countryregion_key === 'US') {
        // Process US company codes
      } else {
        // Process Canadian company codes
      }
    });

    AddQuery (campo de cadeia de caracteres, operador de cadeia de caracteres, valor de cadeia de caracteres, cadeia de caracteres joinType)

    Adicione uma condição de consulta para filtrar dados.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    Assunto: Cadeia de caracteres O nome do campo a ser consultado.
    operador Cadeia de caracteres Opcional. Operador de consulta. A opção de consulta usada depende de os dados fornecidos para valor o parâmetro é um número ou cadeia de caracteres.

    Valor padrão:

    Números:
    • =
    • !=
    • >
    • >=
    • <
    • menor ou igual a
    Cadeias de caracteres (devem estar em maiúsculas):
    • =
    • !=
    • IN
    • NÃO ESTÁ EM
    • INICIAR
    • ENDSWITH
    • contém
    • NÃO CONTÉM
    Nota:
    Use CONTÉM em vez do operador LIKE.
    valor Cadeia de caracteres Valor no qual consultar (não diferencia maiúsculas de minúsculas).
    JoinType Cadeia de caracteres Opcional. Tipo de junção.
    Valores possíveis:
    • E
    • OU
    Valor padrão: E.
    Tabela 7. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como usar o operador > para retornar resultados com prioridade um ou prioridade maior que duas.

    // Results in: priority=1^ORpriority>2
    const api = new sn_erp_integration.API();
      .system('system1')
      .model('request')
      .operation('read')
      .addQuery('priority', '1)
      .addOrQuery('priority', '>', '2')
      .execute();

    API - execute()

    Executa a operação configurada.

    Para executar uma operação em um único resultado, use API - Get().

    Tabela 8. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 9. Retorna
    Tipo Descrição
    Matriz|Objeto O resultado da operação. Erro se malsucedido.

    O exemplo a seguir mostra como criar um novo código de empresa.

    const newCompanyCode = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .operation('create')
      .withJSON({
        company_codes_company_code: '1234',
        company_codes_company_name: 'New York Office',
        company_codes_countryregion_key: 'US',
        company_codes_language_key: 'EN'
      })
      .execute();

    API - campos (campos de matriz)

    Especifica os campos do modelo a serem retornados. Este é o método primário para seleção de campo.

    Para recuperar uma lista de campos disponíveis para um modelo, use API - getAvailableOutputs().

    Tabela 10. Parâmetros
    Nome Tipo Descrição
    campos Matriz Um ou mais nomes de campo de modelo listados como cadeias de caracteres.
    Tabela 11. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo a seguir mostra como retornar campos específicos para todos os códigos de empresa nos EUA.

    const companyCodes = new API()
      .system('system1')
      .model('company_code')
      .operation('read')
      .addQuery('company_codes_countryregion_key', 'US')
      .fields(['company_codes_company_code', 'company_codes_company_name', 'company_codes_countryregion_key'])
      .execute();

    API - Get()

    Alias para o método execute() para recuperar um único registro nos resultados.

    Consulte também API - execute().

    Tabela 12. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 13. Retorna
    Tipo Descrição
    Objeto O primeiro resultado da operação.

    O exemplo a seguir mostra como recuperar um documento de vendas específico.

    const salesDoc = new sn_erp_integration.API()
      .system('system1')
      .model('sales_document')
      .operation('read')
      .addQuery('document_number', '0000123456')
      .get();

    API - getAvailableIdocConfigs()

    Obtém os detalhes de configuração do IDoc disponíveis para o sistema selecionado.

    Tabela 14. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 15. Retorna
    Tipo Descrição
    Matriz de objetos Lista de configurações de IDoc disponíveis. Emite um erro se nenhum sistema tiver sido selecionado.

    Consulte também API - sistema (cadeia de caracteres systemId).

    object.id ID do IDoc. Use este valor para selecionar um IDoc com API - idocConfig (cadeia de caracteres configId) método.

    Tipo de dados: Cadeia de caracteres

    object.name Nome de exibição do IDOC.

    Tipo de dados: Cadeia de caracteres

    object.description Descrição do IDoc.

    Tipo de dados: Cadeia de caracteres

    O exemplo a seguir mostra como obter todas as configurações de IDoc disponíveis para um sistema selecionado.

    const idocConfigs = new sn_erp_integration.API()
      .system('system1')
      .getAvailableIdocConfigs();
    
    gs.info(JSON.stringify(idocConfigs, null, 2));

    Saída:

    [
      {
        "id": "OBC0001002",
        "name": "Sales Order IDoc",
        "description": "IDoc for sales order processing"
      },
      {
        "id": "OBC0001003",
        "name": "Material IDoc",
        "description": "IDoc for material core data"
      }
    ]

    API - getAvailableInputs()

    Retorna uma lista de todos os campos de entrada disponíveis para a operação selecionada.

    Para obter uma lista de somente os campos de entrada obrigatórios para um modelo selecionado, use API - getRequiredInputs() método.

    Tabela 16. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 17. Retorna
    Tipo Descrição
    Objeto Objeto que descreve as entradas disponíveis e seus tipos.

    Consulte também API - sistema (cadeia de caracteres systemId).

    object.variable_name Nome da variável do campo de entrada.

    Tipo de dados: Cadeia de caracteres

    rótulo.objeto Nome de exibição do campo de entrada.

    Tipo de dados: Cadeia de caracteres

    object.data_type Tipo de dados da entrada de operação.

    Tipo de dados: Cadeia de caracteres

    objeto.obrigatório Sinalizador que indica se o campo de entrada é obrigatório.
    Valores válidos:
    • Verdadeiro: O campo de entrada é obrigatório.
    • Falso: O campo de entrada não é obrigatório.

    Tipo de dados: Booliano

    Obtenha entradas disponíveis para criar um código de empresa.

    const inputs = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .operation('read')
      .getAvailableInputs();
    
    gs.info(JSON.stringify(operations, null, 2));

    Saída:

    [
      {
        "variable_name": "company_codes_company_code",
        "label": "Company Code",
        "data_type": "string",
        "required": true
      },
      {
        "variable_name": "company_codes_company_name",
        "label": "Company Name",
        "data_type": "string",
        "required": true
      }
    ]

    API - getAvailableModels()

    Retorna uma lista de modelos disponíveis para o sistema selecionado.

    Tabela 18. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 19. Retorna
    Tipo Descrição
    Matriz de objetos Lista de modelos disponíveis listados como um objeto JSON com uma propriedade de ID, nome e descrição. Emite um erro se nenhum sistema tiver sido selecionado.

    Consulte também API - sistema (cadeia de caracteres systemId).

    object.id ID do modelo. Use este valor para selecionar um modelo com API - model (cadeia de caracteres modelId) método.

    Tipo de dados: Cadeia de caracteres

    object.name Rótulo do modelo, ou seja, o nome de exibição.

    Tipo de dados: Cadeia de caracteres

    object.description Descrição do modelo.

    Tipo de dados: Cadeia de caracteres

    O exemplo a seguir mostra como recuperar todos os modelos disponíveis para um sistema selecionado.

    // Get all available models for system1
    const models = new sn_erp_integration.API()
      .system('system1')
      .getAvailableModels();
    
    gs.info(JSON.stringify(models, null, 2));

    Saída:

    [
      {
        "id": "company_code",
        "name": "Company Code",
        "description": "Company Code"
      },
      {
        "id": "country",
        "name": "Country",
        "description": "Country"
      },
      {
        "id": "currency",
        "name": "Currency",
        "description": "Currency"
      },
      {
        "id": "customer_invoice",
        "name": "Customer Invoice",
        "description": "Customer Invoice"
      },
      {
        "id": "language",
        "name": "Language",
        "description": "Language"
      }
    ]

    API - getAvailableOperations()

    Obtém as operações disponíveis para o modelo selecionado.

    Tabela 20. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 21. Retorna
    Tipo Descrição
    Matriz Lista de operações do modelo ERP disponíveis. Emite um erro se nenhum modelo ou sistema tiver sido selecionado.
    object.id ID de operação do modelo. Use este valor para selecionar uma operação de modelo com API - Operação (cadeia de caracteres operationId) método.

    Tipo de dados: Cadeia de caracteres

    object.name Rótulo de operação do modelo, ou seja, o nome de exibição.

    Tipo de dados: Cadeia de caracteres

    O exemplo a seguir mostra como obter todas as operações disponíveis para company_codemodelo.

    const operations = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .getAvailableOperations();
    
    gs.info(JSON.stringify(operations, null, 2));

    Saída:

    [
      {
        "id": "create",
        "name": "Company Code - Create"
      },
      {
        "id": "read",
        "name": "Company Code - Read"
      }
    ]

    API - getAvailableOutputs()

    Obtém uma lista de todos os campos de saída disponíveis para a operação selecionada.

    Os nomes de campo retornados por este método podem ser usados com API - campos (campos de matriz) método para filtrar resultados de campo.

    Tabela 22. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 23. Retorna
    Tipo Descrição
    Matriz de objetos Lista de campos de saída disponíveis. Emite um erro se nenhum modelo ou sistema tiver sido selecionado.

    Consulte também API - sistema (cadeia de caracteres systemId).

    object.variable_name Nome da variável do campo de saída.

    Tipo de dados: Cadeia de caracteres

    rótulo.objeto Nome de exibição do campo de saída.

    Tipo de dados: Cadeia de caracteres

    object.data_type Tipo de dados da saída da operação.

    Tipo de dados: Cadeia de caracteres

    O exemplo a seguir mostra como obter a saída disponível fornecida lendo uma operação de modelo chamada vendor.

    // Get available outputs for read operation on a vendor model
    const outputs = new sn_erp_integration.API()
      .system('system1')
      .model('vendor')
      .operation('read')
      .getAvailableOutputs();
    
    gs.info(JSON.stringify(outputs, null, 2));

    Saída:

    [
      {
        "variable_name": "supplier_country",
        "label": "Country",
        "data_type": "string"
      }
      {
        "variable_name": "supplier_city",
        "label": "City",
        "data_type": "string"
      },
      {
        "variable_name": "supplier_location",
        "label": "Location",
        "data_type": "string"
      },
      {
        "variable_name": "supplier_street",
        "label": "Street",
        "data_type": "string"
      },
      {
        "variable_name": "supplier_name",
        "label": "Name",
        "data_type": "string"
      },
      {
        "variable_name": "supplier_postal_code",
        "label": "Postal Code",
        "data_type": "string"
      },
      {
        "variable_name": "supplier_state",
        "label": "State",
        "data_type": "string"
      }
    ]

    API - getAvailableSystems()

    Obtém uma lista de todos os sistemas ERP disponíveis que podem ser acessados por meio da API.

    Tabela 24. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 25. Retorna
    Tipo Descrição
    Matriz de objetos Lista de sistemas ERP disponíveis.
    object.id ID do sistema. Use este valor para selecionar um sistema com API - sistema (cadeia de caracteres systemId) método.

    Tipo de dados: Cadeia de caracteres

    object.name Rótulo do sistema, ou seja, o nome de exibição.

    Tipo de dados: Cadeia de caracteres

    O exemplo a seguir mostra como obter uma lista de todos os sistemas ERP disponíveis.

    const systems = new sn_erp_integration.API().getAvailableSystems();
    
    gs.info(JSON.stringify(systems));

    Saída:

    [
      {
        "id": "system1",
        "name": "SAP DEV"
      },
      {
        "id": "system2",
        "name": "SAP PROD"
      }
    ]

    API - getRequiredInputs()

    Retorna da lista de somente os campos de entrada obrigatórios para o modelo selecionado e a operação de criação.

    Os campos de entrada obrigatórios são definidos quando os modelos são criados.

    Para obter uma lista completa de campos de entrada para um modelo selecionado, use API - getAvailableInputs() método.

    Tabela 26. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 27. Retorna
    Tipo Descrição
    Matriz de objetos Lista de nomes de campos de entrada obrigatórios.
    object.variable_name Nome da variável do campo de entrada obrigatório.

    Tipo de dados: Cadeia de caracteres

    rótulo.objeto Nome de exibição do campo de entrada obrigatório.

    Tipo de dados: Cadeia de caracteres

    object.data_type Tipo de dados da entrada necessária da operação.

    Tipo de dados: Cadeia de caracteres

    objeto.obrigatório Sinalizador que indica se o campo de entrada é obrigatório. Este método retorna resultados somente se o valor for verdadeiro.

    Tipo de dados: Booliano

    O exemplo a seguir mostra como retornar os campos de entrada necessários para criar uma fatura.

    const requiredInputs = new sn_erp_integration.API()
      .system('system1')
      .model('invoice')
      .operation('create')
      .getRequiredInputs();
    
    gs.info(JSON.stringify(requiredInputs, null, 2));

    Saída:

    {
      "variable_name": "INVOICE01",
      "label": "INVOICE01",
      "data_type": "array",
      "required": true
    }

    API - idocConfig (cadeia de caracteres configId)

    Seleciona uma configuração do IDoc para operar.

    Tabela 28. Parâmetros
    Nome Tipo Descrição
    configId Cadeia de caracteres ID da configuração de saída do IDoc. Para recuperar uma lista de IDs de configuração do IDoc, use API - getAvailableIdocConfigs() método.
    Tabela 29. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como selecionar uma configuração do IDoc e definir valores para processamento.

    const api = new sn_erp_integration.API()
      .system('system1')
      .idocConfig('OBC0001002')
      .withJSON({
        idoc_field1: 'value1',
        idoc_field2: 'value2'
      })
      .execute();

    API - Limite (número máximo)

    Limita o número de resultados retornados.

    Tabela 30. Parâmetros
    Nome Tipo Descrição
    máx. Número Número máximo de registros a serem retornados.
    Tabela 31. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como recuperar somente os primeiros 10 registros de código da empresa.

    // Get only the first 10 company codes
    const api = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .fields(['company_codes_company_code', 'company_codes_company_name'])
      .limit(10)
      .execute();

    API - model (cadeia de caracteres modelId)

    Seleciona um modelo para operar.

    Tabela 32. Parâmetros
    Nome Tipo Descrição
    modelId Cadeia de caracteres O ID do modelo.

    Para recuperar uma lista de todos os modelos com seus IDs, use API - getAvailableModels().

    Tabela 33. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como selecionar o modelo company_code no system1. Você pode encadear métodos adicionais para obter e definir dados para o modelo selecionado.

    const api = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .execute();

    API - deslocamento (início do número)

    Define o deslocamento inicial dos resultados.

    Tabela 34. Parâmetros
    Nome Tipo Descrição
    iniciar Número Ponto de partida no qual começar a recuperar os resultados. Por exemplo, definir este valor como 10 ignora os primeiros 10 resultados retornados em uma consulta.
    Tabela 35. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como recuperar 10 registros de código da empresa ignorando os primeiros 10 resultados (11-20).

    const api = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .fields(['company_codes_company_code', 'company_codes_company_name'])
      .limit(10)
      .offset(10)
      .execute();

    API - Operação (cadeia de caracteres operationId)

    Seleciona uma operação a ser usada em um modelo selecionado.

    Para retornar uma lista de operações do modelo, use API - getAvailableOperations().

    Tabela 36. Parâmetros
    Nome Tipo Descrição
    OperationId Cadeia de caracteres O ID da operação do modelo.
    Tabela 37. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como selecionar a operação de leitura para company_codemodelo.

    const api = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .operation('read')
      .execute();

    API - Definir (campo de cadeia de caracteres, valor de cadeia de caracteres)

    Define um valor de campo único para operações de criação ou atualização.

    Tabela 38. Parâmetros
    Nome Tipo Descrição
    Assunto: Cadeia de caracteres Nome do campo no qual definir um valor.
    valor Cadeia de caracteres Valor a ser definido para o campo.
    Tabela 39. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como criar uma entrada de código da empresa e atribuir valores de campo a ela.

    const api = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .operation('create')
      .set('company_codes_company_code', '1234')
      .set('company_codes_company_name', 'New York Office')
      .set('company_codes_countryregion_key', 'US')
      .set('company_codes_language_key', 'EN')
      .execute();

    O exemplo a seguir mostra como atualizar um documento de vendas com propriedades aninhadas. Para estruturas de dados aninhadas com níveis adicionais, use API - withJSON (dados do objeto).

    const api = new sn_erp_integration.API()
      .system('system1')
      .model('sales_document')
      .operation('update')
      .set('document_number', '0000123456')
      .set('header.document_type', 'OR')
      .set('header.sales_organization', '1000')
      .execute();

    API - sistema (cadeia de caracteres systemId)

    Seleciona um sistema para operar.

    Tabela 40. Parâmetros
    Nome Tipo Descrição
    SystemId Cadeia de caracteres O ID do sistema. Você pode recuperar o ID do sistema usando API - getAvailableSystems() método.
    Tabela 41. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como selecionar um sistema. Você pode encadear métodos adicionais para selecionar um modelo no sistema e métodos adicionais para usar dados no sistema selecionado.

    const api = new sn_erp_integration.API().system('system1');

    API - withJSON (dados do objeto)

    Define dados JSON para a operação. Para operações de leitura, este método define condições de filtro. Para operações de criação ou atualização, este método define os campos com dados a serem criados ou atualizados.

    Consulte também API - Definir (campo de cadeia de caracteres, valor de cadeia de caracteres).

    Tabela 42. Parâmetros
    Nome Tipo Descrição
    dados Objeto Campos de listagem de dados JSON e seus valores.
    Formato:
    {fieldname: 'value'}
    Tabela 43. Retornos
    Tipo Descrição
    Objeto Retorna esta instância para encadeamento.

    O exemplo a seguir mostra como definir dados para uma operação de criação.

    const api = new sn_erp_integration.API()
      .system('system1')
      .model('company_code')
      .operation('create')
      .withJSON({
        company_codes_company_code: '1234',
        company_codes_company_name: 'New York Office',
        company_codes_countryregion_key: 'US'
      })
      .execute();

    O exemplo a seguir mostra como definir um filtro aninhado para uma operação de leitura.

    const api = new sn_erp_integration.API()
      .system('system1')
      .model('sales_document')
      .operation('read')
      .withJSON({
        header: {
          document_type: 'OR',
          sales_organization: '1000'
        }
      })
      .operation('read')
      .execute();