Создание HANA-приложения с использованием среды разработки Eclipse

    Авторы – Баков Рустам, Дмитриева Людмила, Кульнев Дмитрий, Медведев Юрий

    Привет, Хабр-сообщество!

    В данной статье мы не будем рассказывать, что такое SAP HANA, об этом и так много говорят и пишут, а сразу покажем, как можно «поиграть» с системой и создать простое приложение из серии «Hello World!» с применением среды разработки Eclipse.

    Вначале настроим среду разработки Eclipse с необходимыми плагинами. Плагины для работы с SAP HANA существуют для двух версий Eclipse – Luna и Kepler. Если у вас не установлен Eclipse, то скачать его можно по ссылкам:
    Luna — www.eclipse.org/luna
    Kepler — www.eclipse.org/kepler
    В нашем примере мы будем показывать все шаги настройки на примере Eclipse Luna.

    image



    Следующим шагом станет установка плагинов — стандартный процесс для Eclipse. Единственное «но» – версии плагинов для Luna и Kepler отличаются, поэтому выбирайте именно тот, который подойдет вашей версии Eclipse.
    Ссылка на плагины для Luna — tools.hana.ondemand.com/luna
    Ссылка на плагины для Kepler — tools.hana.ondemand.com/kepler
    Выбираем Help в верхнем меню Eclipse и выбираем Install New Software.

    image

    Копируем ссылку в строку Work with: и добавляем в список сохраненных ссылок.

    image

    После этого появится список плагинов, доступных для скачивания. Из этого списка нас интересуют только два плагина:

    • ABAP Development Tools for SAP NetWeaver – он содержит в себе все необходимые инструменты для разработки на языке ABAP;
    • SAP HANA Tools – данный плагин включает в себя все инструменты для разработки для SAP HANA, включая инструменты для администрирования (на уровне разработчика), проектирования и разработки баз данных на основе платформы SAP HANA.

    image

    Отмечаем эти два плагина для установки и нажимаем на кнопку Next.

    image

    После этого, ознакомившись со списком устанавливаемых компонентов и согласившись с лицензионным соглашением,

    image

    ждем на Finish.

    После перезапуска Eclipse вас встречает обновленная страница приветствия. На ней можно найти ссылки на статьи по основам разработки на языке ABAP, а также много другой полезной информации.

    image

    Нажимаем на кнопку Workbench в правом верхнем углу и попадаем уже в «рабочую зону» среды разработки. Следующим шагом станет выбор необходимых перспектив разработки.
    Это можно сделать двумя способами. Первый – пройти в Window->Open Perspective->Other…
    Второй способ – нажать Open Perspective непосредственно на панели перспектив.

    image

    Нам необходимо добавить поочереди две перспективы: SAP HANA Administration Console и SAP HANA Modeler.

    На этом завершается этап подготовки Eclipse, теперь можно перейти непосредственно к получению тестового доступа к SAP HANA Cloud Platform.
    Получить его достаточно легко. Во-первых, надо пройти по ссылке account.hana.ondemand.com/register и зарегистрироваться на сайте. Во-вторых, после регистрации и входа в систему, необходимо пройти в панель управления облачной платформы, нажав на соответствующую ссылку на панели навигации сайта или просто пройти по ссылке:
    account.hanatrial.ondemand.com/cockpit

    image

    Здесь мы видим несколько вкладок, ведущих к просмотру и настройке разных частей облачной платформы. Сейчас нас интересует создание так называемого HANA XS приложения – создадим его!

    Создание нового экземпляра приложения

    Нажимаем на HANA Instances на панели быстрого доступа слева.
    Для получения доступа нужно создать новый пробный пример (New Trial Instance) и, указав его имя, сохранить изменения.

    image

    Добавление системы (Eclipse)

    Теперь соединим вместе Eclipse и SAP HANA. Для этого запускаем Eclipse и открываем перспективу SAP HANA Development. После чего переходим на вкладку Systems. Это будет выглядеть как-то так:

    image

    Кликаем правой клавишей мышки и выбираем Add Cloud System. После этого необходимо будет ввести имя аккаунта, имя пользователя и пароль.

    image

    Ваш Account name находится вот здесь.

    image

    Если вы забыли пароль, то сможете его восстановить здесь.

    image

    После нажатия на Next Eclipse спросит, какой инстанс надо выбрать. Скорее всего, вы увидите только один доступный вариант (тот, который был только что создан).

    image

    Выбираем его и нажимаем на Finish.

    Посмотрим, что в итоге получилось.

    image

    Интерес представляют две паки – Catalog и Content. В каталоге системы HANA мы можем использовать две схемы: NEO_ и DEV_. Схема базы данных с префиксом NEO_ является схемой для разработки, то есть вы должны сохранять там все артефакты, относящиеся к разработке приложении. Схема с префиксом DEV_ — это ваша личная схема, в ней вы можете хранить все, что угодно, но только если эти объекты не будут использованы в основной разработке.
    А в папке Content мы увидим наш созданный проект приложения HANA XS.
    Итак, инструменты настроены, соединение с SAP HANA установлено – самое время создать новое приложение.

    Добавление нового проекта

    Переходим на вкладку Project Explorer.

    image

    Выбираем из основного меню File->New ->Project и выбираем SAP HANA->Application Development->XS Project.

    image

    Задаем имя проекту, проверяем, что флажок Share project in SAP repository установлен, и идем дальше.

    image

    Выбор репозитория

    image

    В новом окне необходимо выбрать текущий workspace (Default Workspace).

    image

    Получаем:

    image

    Выбираем путь для Repository Package

    image

    image

    Выглядеть он будет так:

    image

    Нажимаем Next и переходим к следующему шагу.

    Создание объектов нашего приложения

    Заполняем поле XS JavaScript.

    image

    Далее жмите Finish.

    В результате имеем новый проект, в рамках которого будет происходить разработка.

    image

    Файл HelloWorld.xsjs

    Файл «HelloWorld.xsjs» был сгенерирован автоматически на предыдущем шаге и содержит некий код. Мы очистим его и добавим простейший функционал, реализующий:

    1. Чтение данных из SAP HANA
    2. Вывод результатов в HTTP формате в браузере

    Для этого обновим содержимое файла на следующий код:

    $.response.contentType = «text/html»;
    var output = «Hello, World! Message from system »;

    var conn = $.db.getConnection();
    var stmt = conn.prepareStatement(«SELECT value FROM m_host_information WHERE key = 'sid' „);
    var rs = stmt.executeQuery();
    if (!rs.next())
    {
    $.response.setBody(“Failed to retrieve data!»);
    $.response.status = $.net.http.INTERNAL_SERVER_ERROR;
    }
    else
    {
    output = output + rs.getString(1);
    }
    rs.close();
    stmt.close();
    conn.close();

    $.response.setBody( output );
    $.response.status = $.net.http.OK;

    Получаем:

    image

    Программа обращается к таблице «m_host_information» для получения информации об уникальном идентификаторе SAP HANA системы. Полученная информация добавляется к приветственному тексту «Hello, World!»

    Активируем скрипт.

    image

    После чего переходим в Cockpit и видим, что наше приложение HelloWorld появилось во вкладке HANA XS Applications (возможно, придётся перезапустить Cockpit, чтобы его увидеть). Берем URL нашего приложения,

    image


    прописываем в него созданный скрипт и запускаем.

    image

    Скрипт успешно отработал!

    Итак, вы ознакомились с разработкой самого простого HANA-приложения с использованием среды разработки Eclipse.

    Мы готовы обсудить с вами наш пост, ответить на ваши вопросы и поговорить о задачах, которые вам интересны!
    SAP
    85.74
    Лидер рынка корпоративных приложений
    Share post

    Comments 11

      0
      Уберите WordPress из хабов.
        0
        Спасибо, вы правы
        0
        Если вы забыли пароль, то сможете его восстановить здесь. — И надо нажать на кнопку Register? — Если да, то это весьма, и весьма радует! SAP AG следует своим традициям, всё запутать и усложнить (кто знает, тот поймёт) :)!

        Спасибо за статью, будет здорово, если такие статьи продолжатся, а то на конференциях рассказывали какой, он очень хороший этот SAP HANA, но практики не было. Будет здорово, если показанный выше пример будет нечто большим чем Hello World. Но для начала, более чем! Спасибо!
          0
          Спасибо за отзыв, мы планируем продолжать наши публикации. В следующих статьях попробуем решить более сложные задачи, как, например, разработка простейших аналитических отчетов на in-memory базе данных.
          В любом случае — мы ждем предложений — что могло бы быть особенно интересно.
          0
          С «Hello World» более менее понятно. Хотелось бы больше узнать об Online IDE от SAP (SAP HANA Cloud Platform), а так же посмотреть на приложение с запросами к БД. Крайне интересно сравнение по времени обработки запросов с другими СУБД. Да и сам язык запросов было бы интересно рассмотреть.
            0
            Спасибо, интересное предложение, включим в наш список будущих публикаций!
              0
              Я планировал написать про Web IDE и разработку UI5 приложения в мае-июне)
                0
                Нам самим было бы интересно про это почитать!
                  0
                  Договорились. Напишу сюда)
            0
            Было бы интересней посмотреть на более функциональный проект, потому что пока что непонятно в чём преимущества САПовского решения.
              0
              SAP HANA Cloud Platform — это облако и in-memory база данных в одном флаконе, соответственно, со всеми плюсами и минусами облака и SAP HANA. Про более функциональный проект нам бы хотелось рассказать в нашей следующей статье. Не попустите!

            Only users with full accounts can post comments. Log in, please.