Take value from FieldA, send to db function, return value to FieldB

早过忘川 提交于 2019-12-30 11:33:08

问题


I have a work order in Maximo. The work order application has custom fields:

FieldA = 'Hello'

FieldB

I want to take the value from FieldA and pass it to a function in the Oracle database:

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;
/

And I want FieldB to display the value that was returned by the function:

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

How can I do this?

(Version 7.6.1.1; desktop/classic)


回答1:


I would create an Automation Script with an Attribute Launch Point on FieldA. The script will have to use a reference to the database manager and the user's connection key to connect directly to the database, and then use some standard java.sql calls to create a statement, execute it, and extract the results. Then it would put the results in FieldB.

To do all that, it will help to have the Maximo business objects JavaDocs and the Java 8 JavaDocs on hand, on top of the Automation Scripting help available from within Maximo.

If you need someone to do that coding for you, I suggest hiring a consultant. :-)

And all that said, you should just use the automation script to do what you have the database function doing, if at all possible. To be more blunt, what you are wanting to do is not considered good practice. So, make sure to include in your script's comments your justification for not following good practice.



来源:https://stackoverflow.com/questions/56460154/take-value-from-fielda-send-to-db-function-return-value-to-fieldb

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!