Возьмите значение из FieldA, отправьте в функцию db, верните значение в FieldB - PullRequest
1 голос
/ 05 июня 2019

У меня есть рабочий заказ в Maximo. Приложение заказа на работу имеет настраиваемые поля:

FieldA = 'Привет'

FieldB

Я хочу взять значение из FieldA и передать его функции в базе данных Oracle:

CREATE OR REPLACE function hello_world(var1 in varchar2) return varchar2  
    is
        hw varchar2(15);
    begin
        if var1 = 'Hello'  then 
            hw := var1 || ', World!';
        end if;
        return hw;
    end;
/

И я хочу, чтобы FieldB отобразил значение, которое было возвращено функцией:

FieldB = hello_world(FieldA) >>> Hello, World!

Как я могу это сделать?

(версия 7.6.1; рабочий стол / классика)

1 Ответ

2 голосов
/ 05 июня 2019

Я бы создал скрипт автоматизации с точкой запуска атрибута на FieldA. Сценарий должен будет использовать ссылку на менеджер базы данных и ключ подключения пользователя для прямого подключения к базе данных, а затем использовать некоторые стандартные вызовы java.sql для создания оператора, его выполнения и извлечения результатов. Затем он поместил бы результаты в FieldB.

Чтобы сделать все это, под рукой имеется справочная информация по Maximo JavaDocs и Java 8 JavaDocs , помимо справки по сценариям автоматизации, доступной из Maximo.

Если вам нужен кто-то, кто сделает это за вас, я советую нанять консультанта. : -)

И все это говорит о том, что вы должны просто использовать сценарий автоматизации, чтобы делать то, что у вас есть, если это вообще возможно для функции базы данных. Чтобы быть более тупым, то, что вы хотите сделать, не считается хорошей практикой. Поэтому обязательно включите в комментарии к вашему сценарию свое оправдание того, что вы не следуете передовой практике.

...