In OWB can I execute a function which is in another database in processflow
I am in database1 and want to create a process flow in which I want to call a function which is in database 2 and then run the process flow.
Can I do this. If so can anyone tell me how to do this.
Thank You
David can you tell me exactly how to do this. I would really appreciate it.
In process flow configure settings. I go into transformation part and point to the location the function resides on. Is that correct.
Currently I have 4 locations
working - use default location
deployed - use default location
execution - native execution
remote - use default location.
For the function which is in the database 2 I need to highlight that function and change which option. Can you tell me.
Thank You
Similar Messages
-
Can I execute a function module in my Webdynpro App ?
Hi,
Can I execute a function module in my Webdynpro App ? I mean, it's not a BAPI.
Is it possible ? which is the procedure to follow ? (comparing to a bapi procedure).
Thanks for your help !
Regards from Mexico. =)
DiegoHi Diego,
the warning icon indicates that you're using a function module that has not been externally released. If the corresponding function module has been defined by SAP, its interface might be changed in an incompatible way within one of the next releases, e.g. removing / renaming a parameter or structure field. Stability is only guaranteed for BAPIs or external released function modules.
From the point of view of the model import it does not make any difference. If import does not work, there seems to be some other problem. Maybe the function module has not been activated in the R/3 system. Or check the log file or the import log page which will be the last page of the import wizard.
You might want to import some other none external released function module in order to verify that model import of these kind of function module works.
Kind regards,
Lothar Bender -
Can I Execute a function whose name is stored in a string variable?
Can I execute a function whose name is stored in a string variable?
Like
Depending on the condition I will stroed the name of the function in a string variable. Then using that string variable i want to execute the function.
String str=��
iVal an int can take ne value
Switch(iVal)
Case 1:
str=�test1()�;
Case 2:
str=�test2()�;
I want whatever function name is in str to be executed.
----------------------------------------------------------------------------------For just executing a method or two, reflection might be easier than beanshell (or it might not). For executing entire scripts, beanshell will be preferable over reflection.
(I assume beanshell uses reflection under the hood, but I've never bothered to peek.) -
Can i create a function which can take infinite parameter.
Can i make a function which get infinite parameter.
like avg.Kamran Riaz wrote:
Can i make a function which get infinite parameter.
like avg.I think you'll have trouble finding anything to take infinite parameters cos that would be bigger than the universe itself.
User defined aggregate functions example...
http://asktom.oracle.com/pls/asktom/f?p=100:11:335287534824285::::P11_QUESTION_ID:229614022562
[email protected]> create or replace type StringAggType as object
2 (
3 theString varchar2(4000),
4
5 static function
6 ODCIAggregateInitialize(sctx IN OUT StringAggType )
7 return number,
8
9 member function
10 ODCIAggregateIterate(self IN OUT StringAggType ,
11 value IN varchar2 )
12 return number,
13
14 member function
15 ODCIAggregateTerminate(self IN StringAggType,
16 returnValue OUT varchar2,
17 flags IN number)
18 return number,
19
20 member function
21 ODCIAggregateMerge(self IN OUT StringAggType,
22 ctx2 IN StringAggType)
23 return number
24 );
25 /
Type created.
[email protected]>
[email protected]> create or replace type body StringAggType
2 is
3
4 static function ODCIAggregateInitialize(sctx IN OUT StringAggType)
5 return number
6 is
7 begin
8 sctx := StringAggType( null );
9 return ODCIConst.Success;
10 end;
11
12 member function ODCIAggregateIterate(self IN OUT StringAggType,
13 value IN varchar2 )
14 return number
15 is
16 begin
17 self.theString := self.theString || ',' || value;
18 return ODCIConst.Success;
19 end;
20
21 member function ODCIAggregateTerminate(self IN StringAggType,
22 returnValue OUT varchar2,
23 flags IN number)
24 return number
25 is
26 begin
27 returnValue := rtrim( ltrim( self.theString, ',' ), ',' );
28 return ODCIConst.Success;
29 end;
30
31 member function ODCIAggregateMerge(self IN OUT StringAggType,
32 ctx2 IN StringAggType)
33 return number
34 is
35 begin
36 self.theString := self.theString || ',' || ctx2.theString;
37 return ODCIConst.Success;
38 end;
39
40
41 end;
42 /
Type body created.
[email protected]>
[email protected]> CREATE or replace
2 FUNCTION stringAgg(input varchar2 )
3 RETURN varchar2
4 PARALLEL_ENABLE AGGREGATE USING StringAggType;
5 /
Function created.
[email protected]>
[email protected]> column enames format a30
[email protected]> select deptno, stringAgg(ename) enames
2 from emp
3 group by deptno
4 /
DEPTNO ENAMES
10 CLARK,KING,MILLER
20 SMITH,FORD,ADAMS,SCOTT,JONES
30 ALLEN,BLAKE,MARTIN,TURNER,JAME
S,WARD
[email protected]> -
Capture process: Can it write to a queue table in another database?
The capture process reads the archived redo logs. It then writes the appropriate changes into the queue table in the same database.
Can the Capture process read the archived redo logs and write to a queue table in another database?
HP-UX
Oracle 9.2.0.5What you are asking is not possible directly in 9i i.e. capture process cannot read the logs and write to a queue somewhere else.
If the other database is also Oracle with platform and version compatibility then, you can use the 10g downstream capture feature to accomplish this. -
I can't execute oracle functions with c#. i'm using oracle 9i version.
i have a problem trying to execute an oracle function with c#.net. The Oracle version i'm using is Oracle 9i.
This is the function definition: (it's defined and working right because i have tryed it with SQLWorksheet)
CREATE OR REPLACE Function NRegistros return integer is
Numero integer(4);
begin
select count(*) into Numero from singles;
return Numero;
END NRegistros;
But with c#.Net i can't acces it because i get an error: "this is not a procedure or is not defined". And i think the code is right. In fact in the same code you can see that i'm using an stored procedure and i have not problems. But with the function i have problems. Is it possible that "OracleClient" can't work with Oracle9i functions??. This is the code:
OracleParameter Parametro = new OracleParameter("Name", OracleType.VarChar,10);
OracleParameter ParametroFuncion = new OracleParameter("Retorno", OracleType.Int32, 4);
Parametro.Direction = ParameterDirection.Output;
ParametroFuncion.Direction = ParameterDirection.ReturnValue;
OracleConnection Conexion = new OracleConnection("Data Source=DISCOS;User Id=SYSTEM;Password=a0000;");
Conexion.Open();
OracleCommand Todos = new OracleCommand();
OracleCommand Procedimiento = new OracleCommand();
OracleCommand Funcion = new OracleCommand();
Todos.Connection = Conexion;
Todos.CommandType = CommandType.Text;
Todos.CommandText="select * from singles";
Procedimiento.Connection = Conexion;
Procedimiento.CommandType = CommandType.StoredProcedure;
Procedimiento.CommandText = "Procedimiento";
Procedimiento.Parameters.Add(Parametro);
Funcion.Connection = Conexion;
Funcion.CommandType = CommandType.StoredProcedure;
Funcion.CommandText = "NRegistros";
OracleDataReader Lector = Todos.ExecuteReader();
BindingSource Discos = new BindingSource();
Discos.DataSource = Lector;
dgvSingles.DataSource = Discos;
Procedimiento.ExecuteNonQuery();
Funcion.ExecuteNonQuery();
lblRegistroProcedimiento.Text = Procedimiento.Parameters["Name"].Value.ToString();
lblNregistros.Text=Funcion.Parameters["Retorno"].Value.ToString();
Conexion.Close();
Edited by: user11921281 on 22-nov-2009 20:32thank you very much. It was a stupid error, sorry. There was one line left :
OracleParameter Parametro = new OracleParameter("Name", OracleType.VarChar,10);
OracleParameter ParametroFuncion = new OracleParameter("Retorno", OracleType.Int32, 4);
Parametro.Direction = ParameterDirection.Output;
ParametroFuncion.Direction = ParameterDirection.ReturnValue;
OracleConnection Conexion = new OracleConnection("Data Source=DISCOS;User Id=SYSTEM;Password=a0000;");
Conexion.Open();
OracleCommand Todos = new OracleCommand();
OracleCommand Procedimiento = new OracleCommand();
OracleCommand Funcion = new OracleCommand();
Todos.Connection = Conexion;
Todos.CommandType = CommandType.Text;
Todos.CommandText="select * from singles";
Procedimiento.Connection = Conexion;
Procedimiento.CommandType = CommandType.StoredProcedure;
Procedimiento.CommandText = "Procedimiento";
Procedimiento.Parameters.Add(Parametro);
Funcion.Connection = Conexion;
Funcion.CommandType = CommandType.StoredProcedure;
Funcion.CommandText = "NRegistros";
Funcion.Parameters.Add(ParametroFuncion); //<--------------------- That one !!! (yes it was a stupid error jeje)
OracleDataReader Lector = Todos.ExecuteReader();
BindingSource Discos = new BindingSource();
Discos.DataSource = Lector;
dgvSingles.DataSource = Discos;
Procedimiento.ExecuteNonQuery();
Funcion.ExecuteNonQuery();
lblRegistroProcedimiento.Text = Procedimiento.Parameters["Name"].Value.ToString();
lblNregistros.Text=Funcion.Parameters["Retorno"].Value.ToString();
Conexion.Close(); -
How can you execute a function while the mouse is over a button.
I've got a movieclip I want to move across the screen on the x axis to the left or right depending on which button the user hovers their mouse over.
I thought I could do this with the following:
right_btn.addEventListener(MouseEvent.MOUSE_OVER, moveRight);
left_btn.addEventListener(MouseEvent.MOUSE_OVER, moveLeft);
function moveRight(e.MouseEvent):void
sampleMovieclip_mc.x += 1;
function moveLeft(e.MouseEvent):void
sampleMovieclip_mc.x -= 1;
But I find that it only moves it 1 pixel when the mouse first goes over the button and not continiously as it stays over it. I tried using Event.ENTER_FRAME to call the moveRight and moveLeft functions, but it just keeps going and I'm not sure how to kill the function once they move the mouse off of the button.
Any help would be greatly appreciated.
Thanks.use removeEventListener() method. Here is one of the ways to deal with it:
// move direction
var xd:int = 1;
// speed along x
var xs:Number = 1;
right_btn.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
right_btn.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
left_btn.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
left_btn.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
function onMouseOver(e:MouseEvent):void {
xd = e.curretnTarget == right_btn ? 1 : -1;
addEventListener(Event.ENTER_FRAME, onEnterFrame);
function onMouseOut(e:MouseEvent):void {
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
function onEnterFrame(e:Event):void
sampleMovieclip_mc.x += xd * xs; -
How can I consume a transaction which is on another SAP server or client?
Hi.
I work on SAP Collateral Managements (SAP CMS), on the transaction (cms_wb), this transaction works to create Collateral Objects, on some collateral objects need to do reference some number of document. The documents which i need to reference on the object. If this documents don't exist, are need to create on SAP FI (SAP FI is in other server).
On the transaction(cms_wb) I create the document, if it doesn't exist. I only click an icon, and then this icon opens the transaction of SAP FI.
This configuration was done by SAP Basis Consultant.
Do you have any idea to do this on ABAP program?Debug the button click and you'll see how it works... it all comes down to ABAP code no matter who implements it .
-
Can't use parameter in query if using another database
Hi there, I logged on SAP Business one for company A, and try to run the following query:
select t0.field1 from \[company b\].\[dbo\].\[table1\] t0
where t0.filed2 = '\[%0\]'
And I got errors.
If '\[%0\]' is replaced by a real value it works.
select t0.field1 from \[company b\].\[dbo\].\[table1\] t0
where t0.filed2 = 1234
So you can't use parameters in a query if you're using a database that is not your current company?
Thanks.
Edited by: Leslie Woodward on Feb 22, 2010 7:40 PMThat is right. All data have to be in the same company to use '[%\]' variables.
Thanks,
Gordon -
Execute a function module from sapportal without to create the users in R/3
I have a pdk application in sapportal. This pdk application will be execute for any sapportal users which don't have R/3 users. The problem is the follow.. in this pdk application there is a R/3 function module that must be execute, ¿how can i execute this function module without to create the users in R/3?
Hi Michael,
Create a JSP dyn page application. Hope you have the table name and in R/3 there will be Function modules already available which we also can reffer.
Then from this JSP dyn page application, call this particular function table.
wE DON'T have to create a user for this.
Regards
Arun Jacob
P.S please award points for helpful suggestions. -
Hello,
I am facing one basic problem that how can I execute the button which I have used in my vi at a time of pressing means in my vi I have used 4 button 1. Start 2. OK 3. Save and 4. Stop button
when user press start button then continuous loop will be executed and after pressing OK it will stop that loop and waiting for next instruction from user whether he want to do reading operation again or he want to save or he want to stop.
The thing is when I press start button then while loop is execute then its not possible to press stop button or save button, user need to wait until OK button is pressed.
Will you please guide me how can I do so that when ever user press any button that button is executed at time.
Thank you very much once again.
Attachments:
voltageforcecapacitance without instrument.vi 40 KBHi Ankit,
There are some issue in your code mention below please have a look and correct these will work fine for your requirement.
1. Save button Boolean value pass to the lower wheel conditional loop means if you press save your bottom loop will stop working this is not the code requirement you have to continue loop and tigger start event in last using value tigger event property to tigger again start event.
This step will reset your loop and start from zero.
2. According to me I think both loop should stop only in stop condition so you can remove stop function from upper loop and pass the button value in both loop directly to wheel loop condition terminal.
Upper loop direct and lower both loop local variable.
3. Why you want to stop your upper loop on any error condition, you should Handel the errors and keep running the code.
4. What is the use of queue no case related with dequeue in bottom loop.
5. Wheel loop in a event is not good practice so you can use your queue structure here to run continuous lower code.
I hope these changes can improve your code.
Thanks and Regards
Himanshu Goyal | LabVIEW Engineer- Power System Automation
Values that steer us ahead: Passion | Innovation | Ambition | Diligence | Teamwork
It Only gets BETTER!!! -
Execute a function in SQL Worksheet
How can I execute a function in SQL Worksheet.
The function takes in two parameters of type varchar2 and returns a boolean.
the syntax is:
set serveroutput on
VARIABLE x BOOLEAN;
EXECUTE :x := check_number('78','A');
PRINT x ;
my error is:
SP2-0552: Bind variable "X" not declared.
I have also tried:
set serveroutput on
select check_number('78','A')
from dual;
my error is:
ERROR at line 1:
ORA-06552: PL/SQL: Statement ignored
ORA-06553: PLS-382: expression is of wrong type
thanks.You could even cut out the variable:
SQL> CREATE OR REPLACE FUNCTION is_true
2 ( p1 VARCHAR2
3 , p2 VARCHAR2 )
4 RETURN BOOLEAN
5 AS
6 BEGIN
7 RETURN p1 = p2;
8 END is_true;
9 /
Function created.
SQL> exec dbms_output.put_line(sys.diutil.bool_to_int(IS_TRUE('x','y')))
0
PL/SQL procedure successfully completed.
SQL> exec dbms_output.put_line(sys.diutil.bool_to_int(IS_TRUE('x','x')))
1
PL/SQL procedure successfully completed. -
While Rollup is goingon Can we execute the query
Hello All
We have a cube and aggregates built on this cube and daily in my Process chain we have step Rollup.
Now while Rollup is goingon Can we execute the query which is builut on the same cube? Will the cube will be locked?
Can we excute query while load is goingon to this cube?
Regards
BaljiHi Balaji,
You can execute a query when the roll up is going on. The new data is available to the report only when the rollup is complete, but this will not create locks.
Hope this helps... -
How to execute a function returning type in oracle
hi
i want to execute a function which is returning table from oracle prompt.
i have created type in order to return table from function.
/*creating type
CREATE OR REPLACE TYPE U_VOC.t_in_list_tab AS OBJECT (i_group NUMBER ,
i_company number,
i_estab number
NOT FINAL ;
CREATE OR REPLACE TYPE U_VOC.t_in_list_tab_type
AS TABLE OF U_VOC.t_in_list_tab;
/*function */
CREATE OR REPLACE FUNCTION FU_VOC_S_VEHICLES(pi_group number,
pi_company number,
pi_estab number
RETURN t_in_list_tab
AS
v_nb_idvehicle U_REF.V_REF_VEHICLES.NB_IDVEHICLE%type ;
v_vc_reference U_REF.V_REF_VEHICLES.VC_REFERENCE%type ;
v_vc_licenceplate U_REF.V_REF_VEHICLES.VC_LICENCEPLATE%type ;
l_tab t_in_list_tab := t_in_list_tab( pi_group ,pi_company, pi_estab );
BEGIN
SELECT V_REF_VEHICLES.NB_IDVEHICLE,
V_REF_VEHICLES.VC_REFERENCE,
V_REF_VEHICLES.VC_LICENCEPLATE
INTO V_NB_IDVEHICLE,
V_VC_REFERENCE,
V_VC_LICENCEPLATE
FROM U_REF.V_REF_VEHICLES
WHERE V_REF_VEHICLES.NB_IDGROUP = pi_group
AND V_REF_VEHICLES.NB_IDCOMPANY = pi_company
AND V_REF_VEHICLES.NB_ESTABL = pi_estab;
RETURN l_tab;
END;
please help
Thank in advance
SandySandy,
I have a series of examples on this issue in my demo application. See this one:
http://htmldb.oracle.com/pls/otn/f?p=31517:146
You will basicaly need to write it like this:
CREATE OR REPLACE TYPE u_voc.t_in_list_tab AS OBJECT (
i_group NUMBER,
i_company NUMBER,
i_estab NUMBER
CREATE OR REPLACE TYPE u_voc.t_in_list_tab_type AS TABLE OF u_voc.t_in_list_tab;
CREATE OR REPLACE FUNCTION fu_voc_s_vehicles (
pi_group NUMBER,
pi_company NUMBER,
pi_estab NUMBER
RETURN t_in_list_tab PIPELINED
AS
l_tab t_in_list_tab := t_in_list_tab (NULL, NULL, NULL);
BEGIN
FOR c IN (SELECT v_ref_vehicles.nb_idvehicle, v_ref_vehicles.vc_reference,
v_ref_vehicles.vc_licenceplate
FROM u_ref.v_ref_vehicles
WHERE v_ref_vehicles.nb_idgroup = pi_group
AND v_ref_vehicles.nb_idcompany = pi_company
AND v_ref_vehicles.nb_establ = pi_estab)
LOOP
l_tab.i_group := c.nb_idvehicle;
l_tab.i_company_number := c.vc_reference;
l_tab.estab_number := vc_licenceplate;
END LOOP;
RETURN l_tab;
END;
SELECT *
FROM TABLE (fu_voc_s_vehicles (value1, value2, value3))But looking at your code, your function will return only one record.
Denes Kubicek
http://deneskubicek.blogspot.com/
http://www.opal-consulting.de/apex/f?p=107:7
http://htmldb.oracle.com/pls/otn/f?p=31517:1
------------------------------------------------------------------- -
Creating a function which you can execute with a parameter for date range
Hi Everyone,
Hope you can help me.
I have specific data that I am looking at that I require to query from a function. This function will require that I specify a parameter for a specific date which will only list the date criteria f my choosing.
Here is the data..
StudentID
FirstName
LastName
ClassName
ClassStartDate
ClassEndDate
GPA
1
John
Davids
Soft Dev
11/1/2013 9:00
11/30/2013 12:00
3.25
2
John
Davids
Database
10/1/2013 9:00
10/30/2013 12:00
3.5
3
John
Davids
Web Design
10/1/2013 9:00
10/30/2013 12:00
4
4
John
Davids
Psychology
10/1/2013 9:00
10/30/2013 12:00
3.25
So here is an example function which will need to be altered. I am hoping someone could help me figure this out. I thought the below may have been correct, but it just errors out.
SET
ANSI_NULLSON
GO
SET
QUOTED_IDENTIFIERON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE
FUNCTIONStudentGPATimePeriod
@startdate
AS
BEGIN
selectFirstName,LastName,ClassName,ClassStartDate,ClassEndDate,GPA
fromdbo.Students
whereClassStartDate
=@startdate
END
GOHi Saravana,
If I would to execute this function, how would the parameter be entered?
exec dbo.StudentGPATimePeriod
i think what you need is PROCEDURE, try below
--For a single date
Create PROCEDURE StudentGPATimePeriod
( @startdate datetime )
AS
Begin
select FirstName,LastName,ClassName,ClassStartDate,ClassEndDate,GPA
from dbo.Students
where ClassStartDate >=@startdate and ClassStartDate < dateadd(day,1,@startdate)
End
GO
--for multiple dates
CREATE PROCEDURE getStudentGPAMultipledate
( @startdate datetime,@enddate datetime )
AS
BEGIN
select FirstName,LastName,ClassName,ClassStartDate,ClassEndDate,GPA
from dbo.Students
where ClassStartDate >=@startdate and ClassStartDate < dateadd(day,1,@enddate)
END
GO
EXEC StudentGPATimePeriod @startdate='2014-11-12'
GO
EXEC getStudentGPAMultipledate @startdate='2014-11-12',@enddate='2014-11-13'
Maybe you are looking for
-
Which website should I update my plug-in to if Firefox does not direct me to just one website?
picasa.com offered many websites
-
I just purchased a new 23" Cinema Display and was wondering if anyone using the foot of the display as also a place to put your PowerBook/MBP? Does anyone else do this? I guess its an odd question - but just wanted to see if this was a bad thing (alt
-
Changing images (and text) in InDesign file to spot color.
Hi, Im trying to create a two color job in InDesign that will be black and red. The problem I have is that our imagesetter is not separating the colors. I was told that the red color needs to be a spot color in InDesign for the imagesetter to know to
-
HELLO WE RECENTLY PURCHASED THE ADOBE PRODUCTION SUITE FORM THE CREATIVE CLOUD OPTIONS AND ALL SOFTWARE HAS BEEN DOWNLOADED AND INSTALLED HOWEVER, ENCORE CONTINUES TO PROMPT THE SERIAL NUMBER. IS ENCORE NOT PART OF THE PRODUCTION COLLECTION? IF I HAV
-
Leopard: Easy install, runs like a top
Here is how I did it... 0) Made a good backup 0.5) Let the DVD check run. 1) As soon as I get a menu on the installer, run Disk Utility. 2) Repartition my hard drive. I bought a bigger hard drive for Leopard, because I still need to test software wit