Can I call a function with an arguement of %ROWTYPE directly from SQL?
I have the following function in a 10g DB:
CREATE OR REPLACE FUNCTION f_is_eligible2 (in_dm_row IN amplify_dm%ROWTYPE)
RETURN NUMBER
IS
I know I can call that function from another pl/sql function but I'm wondering if I can call that function directly from a SQL statement, something like this:
SELECT f_is_eligible2(dm.*)
FROM amplify_dm dm
or
SELECT f_is_eligible2(dm%rowtype)
FROM amplify_dm dm
neither of those worked so I'm thinking it's not possible but I thought I'd ask anyway.
Thanks in advance!
Not possible as said - but - based on what I'm seeing - you could simply pass the parameter(s) that are key on that table and - accomplish the same thing by modifying the function.
not sure why you'd need the whole row if I'm interpretting the code excerpt.
Similar Messages
-
How can i call javascript function with out internet connection?
I have trying to call javascript function through ExternalInterface. But flash player recomonding to have internet connectivity. i have allredy used allowscript="always" .
first, allow the folder that contains your flash files to connect to the internet by adjusting your security settings:
http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04a.ht ml
then try the following in a swf and open the published html in your browser to test:
import flash.external.ExternalInterface
ExternalInterface.call("function(){alert('test');}") -
Calling stored proc (with 2 IN and 3 OUT) - from SQL Plus
This is the signature of my stored proc:
CREATE OR REPLACE PROCEDURE myschema.myproc
p_usr_name IN VARCHAR2,
p_send_tmstmp IN DATE,
p_ret_value OUT NUMBER,
p_err_code OUT VARCHAR2
)If I need to call it from sql plus, how do I need to pass the arg?
This is what I am doing
execute myschema.myproc('abc123','02-MAY-2008');
What is wrong here? If someone could help. Thx!Try something like this
var usr_name varchar2(30)
var send_tmstmp varchar2(11)
var ret_value number
var err_code varchar2(10)
begin
:usr_name := 'abc123';
:usr_name := '02-MAY-2008';
myschema.myproc ( p_usr_name => :usr_name,
p_send_tmstmp => TO_DATE( :usr_name, 'DD-MON-YYYY' ),
p_ret_value => :ret_value,
p_err_code => :err_code);
end;
print ret_value;
print err_code; -
Can we call a Function Module with in a loop
Hi,
Can we call a Function Module within a loop . Does it reduces the performance.
Can you please guide regarding this.
With Best Regards
Mamatha.hi Mamatha,
You can call .. but it is better to avoid calling it within a loop...
Loop at it_tab.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = it_tab-vbeln.
importing
output = it_tab-vbeln.
endloop.
Regards,
Santosh
Message was edited by:
Santosh Kumar Patha -
Can we call a function module in ADHOC query
Hi
Can we call a function module in ADHOC query if yes how.
Also we ned to know how to call a function module in SAP query.
An early responce is appreciated.
Thanks and best regards
RajeevOkay as far as I understand your aim is:
To fill a field in the output list with a value that is based on the current line information and calculated by a function module
So go to SQ02 and create an additional field in the InfoSet.
You can refer in the coding to the technical names you can see in the left tree window like P0000-PERNR.
More information is avaiable in the Help part look for additional field in SQ02.
Regards,
Michael -
Can i call a function module of SAP?
Hi, i have a question... Can i call a function module of SAP... I need print a document from a device, can i call the function module of SAP in order that me it prints it?
Thanks,Hi Victor,
you can use the GenericSync Example of the MDK. This calls the Module to verify the user directly. Generic Sync is exactly for that purpose: call a BADI directly and no usage of SyncBO. Be aware, that you - out of the box- sync your app data as well at that moment, because a sync runs both - generic and smartsync. Even worse: even when you have nothing to sync in Generic Sync - so nothing to print - it will call the function module for generic sync as long as it is registered.
Well, anyway, this is the way to call a function module separate.
If it works with you rparticular print module? I have no idea, but if this is a normal function module - well, it should be ok.
Hope this helps.
Regards,
Oliver -
Can one call a function module in Calculated Key Figure?
Can one call a function module in Calculated Key Figure? If yes how, if not, what is the solution if formula does not suffice?
I want to convert duration which is in seconds to Duration in Hours and Minutes. There is a function module for doing it. Not sure how to do it in a formula.One option you have is a Virtual Key Figure and User Exit to use the Function Module to convert the time from seconds to HH:MM. Here are two documents on this subject to help you create them, based on the technology your comfortable with:
[Implementing Virtual Key Figure/ Characteristics Makes Query More Dynamic|https://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/e051fda8-71a9-2a10-ac9e-8d17414a8c8c&overridelayout=true]
[Step By Step Process for Virtual Key Figures and Characteristics through BAdi|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/60e34f63-f44c-2c10-488e-c89b04e0ca7c&overridelayout=true] -
I have a function from a dll that return a double* string and an integer. How can I call this function from LabVIEW? There is a possibility to work in LabVIEW with a double* string?
pcbv wrote:
> Hello all,<br><br>The header of the function is:
>
> "HRESULT WRAPIEnumerateDevices(WRAPI_NDIS_DEVICE **ppDeviceList, long *plItems);"
>
> where WRAPI_NDIS_DEVICE have this form:
>
> typedef struct WRAPI_NDIS_DEVICE<br>{<br>
> WCHAR *pDeviceName;<br>
> WCHAR *pDeviceDescription;<br><br>}
> WRAPI_NDIS_DEVICE;<br><br>
>
> The function is from WRAPI.dll, used for communication with wireless card.
> For my application I need to call in LabVIEW this function.
Two difficulties I can see with this.
First the application seems to allocate the array of references
internally and return a pointer to that array. In that case there must
be another function which then deallocates that array again.
Then you would need to setup the function call to have a pointer to an
int32 number for the deviceList parameter and another pointer to int32
one for the plItems parameter.
Then create another function in your DLL similar to this:
HRESULT WRAPIEnumExtractDevice(WRAPI_NDIS_DEVICE *lpDeviceList, long i,
CHAR lpszDeviceName, LONG lenDeviceName,
CHAR lpszDeviceDesc, LONG lenDeviceDesc)
if (!lpDeviceList)
return ERROR_INV_PARAMETER;
if (lpDeviceList[i].pDeviceName)
WideCharToMultiByte(CP_ACP, 0,
pDeviceList[i].pDeviceName, -1,
lpszDeviceName, lenDeviceName,
NULL, NULL);
if (lpDeviceList[i].pDeviceName)
WideCharToMultiByte(CP_ACP, 0,
pDeviceList[i].pDeviceDescription, -1,
lpszDeviceDesc, lenDeviceDesc,
NULL, NULL);
return NO_ERROR;
Pass the int32 you got from the first parameter of the previous call as
a simple int32 passed by value to this function (and make sure you don't
call this function with a higher index than (plItems - 1) returned from
the first function.
Rolf Kalbermatter
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
How to call a function with pl/sql
How does one call a function with pl/sql that uses a function?
Hi,
How does one call a function with pl/sql that uses a
function?I'm not sure what you mean.
In PL/SQL function can be used just about anywhere where an expression (with the same data type that the function returns). Arpit gave a very common example.
Here's another example, where all the functions take a single NUMBER argument and return a NUMBER, so they can all be used in places where NUMBERs are used:
IF fun_a (fun_b (0)) < fun_c (1)
THEN
UPDATE table_x
SET column_y = fun_d (2)
WHERE column_z = fun_e (ROUND ((fun_f (3), fun_g (4)));You call a function simply by using its name, followed by its argument list, if any.
If the function is in a package, you must call it with the package name, like "pk_foo.bar (1, 2, 3)", unless the call comes from within the same package.
If the function is owned by someone else, you must give the owner name, like "scott.bar (SYSDATE)" or "scott.pk_foo.bar (1, 2, 3)". You can create synonyms to avoid having to name the owner. -
Can LabVIEW call a function from a .sys file or is LabVIEW limited to dll access?
My vendor has sent me a .sys file with functions accessing their hardware. Can i call these function from labview directly or do I have to wrapper the .sys with a dll?
Well a sys file is a kernel device driver. LabVIEW does not have any direct way of accessing such a driver. The way kernel drivers are accessed is usually through a DLL which makes calls to WinAPI functions such as CreateFile(), ReadFile(), WriteFile(), CloseHandle() and DeviceIORequest(). Since these WinAPI calls are basically just DLL calls too, you could theoretically use the Call Library Node to call them and access the kernel device driver in such a way.
However for any kernel device driver with more than one or two device driver calls, it will certainly be easier in terms of development, debugging and maintenance of the code, to write actually a dedicated DLL in C/C++ for this device driver and access that DLL from LabVIEW, especially if you consider the LabVIEW datatype limitations when designing the DLL interface (Basically this same DLL can then be called from any other Windows development environment, be it Visual Basic (similar datatype limitation as LabVIEW), Delphi, (Visual) C, LabVIEW or also various scripting environments like Python and Lua.
Some of the necessary WindAPI calls are rather involved and pose quite a bit of trouble to get the parameter data right in LabVIEw.
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
Xdk: calling java function with a CharSequence parameter
When using xdk version 10.1.0.2.0_production, you can not call a javamethod with a CharSequence parameter.
Sun documentation:
Interface CharSequence
All Known Implementing Classes:
CharBuffer, String, StringBuffer
This prevents us from calling a method like
java.util.regex.Pattern.matches(String, CharSequence)
Converting the parameter to a normal string would solve the problem.
Example to illustrate the issue:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdt="http://www.w3.org/2005/02/xpath-datatypes" xmlns:Pattern="http://www.oracle.com/XSL/Transform/java/java.util.regex.Pattern">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<xsl:if test="Pattern:matches('...','123')">
<xsl:text>MATCH</xsl:text>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
results in the following stacktrace:
oracle.xml.parser.v2.XPathException: Extension function error: Error invoking 'matches':'java.lang.NullPointerException'
at oracle.xml.parser.v2.XSLExtFunctions.callStaticMethod(XSLExtFunctions.java:113)
at oracle.xml.parser.v2.XPathExtFunction.evaluateMethod(XPathExtFunction.java:296)
at oracle.xml.parser.v2.XPathExtFunction.evaluate(XPathExtFunction.java:223)
at oracle.xml.parser.v2.XSLCondition.testCondition(XSLCondition.java:185)
at oracle.xml.parser.v2.XSLCondition.processAction(XSLCondition.java:165)
at oracle.xml.parser.v2.XSLNode.processChildren(XSLNode.java:403)
at oracle.xml.parser.v2.XSLTemplate.processAction(XSLTemplate.java:191)
at oracle.xml.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:507)
at oracle.xml.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:484)
at oracle.xml.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:256)
at oracle.xml.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:146)
at oracle.xml.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:218)
at XSLSample.main(XSLSample.java:75)
Message was edited by:
user449717Hi Grarup,
I took a stab at getting this to run and compile and this is what I came up with. Let me know if this helps at all.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
class Program
static void Main(string[] args)
Console.WriteLine("\"True\" or \"False\"?");
bool boolVal = bool.Parse(Console.ReadLine());
Functions f = new Functions();
TestStruct t = new TestStruct() { Value = boolVal };
f.Flip(ref t);
Console.WriteLine(string.Format("Flipped value = {0}: ", t.Value));
Console.ReadLine();
public struct TestStruct
public bool Value;
public class Functions
public void Flip(ref TestStruct testStruct)
testStruct.Value = !testStruct.Value;
Best of luck. -
How can I call a function from a procedure
I have a function named: f_calc_value which return the variable v_result. This function is part of a package.
How can I call this function from a new procedure I am creating?
Thanksor refer this theread....calling function from procedure
-
Can you call a function module from within a smartform?
I was told that yu can not call a function module from a smartform - that does not make sense to me because you can do tons of ABAP within a smartform.
Well - can you?
Thanks.
ScottYes, you can call function modules.
-
Can we call a function within a function??????Urgent
Dear All,
Like we can call a procedure from another procedure , in the same way can we call a function within a function. Please reply it's urgent.
Regards> Please reply it's urgent.
My usual soapbox response.
Saying your posting is urgent is rude and arrogant. Why? Because you are saying that other people who have posted problems here, have less important problems than yours. That despite how complex and critical their problem may be, yours take priority.
You're also demaning attention and a quick answer from people that provide support here - in their free time... and not getting paid a single cent for their efforts.
So just how can you demand any urgency to your posting from them?
Remember that this is a public forum. You cannot demand anything here. This is not Oracle Support. There are no SLA's here. Basic nettiquette applies. -
Can I call a function in another package?
Dear all,
Can I call a function in another package?
Say I have package A, and package B.
Is it possible for me to call a function in inside package A, within a function inside package B?
If yes, what's the syntax.
Thanks in advance!The variable in the calling package that will receive the value of the function in the other package needs to be defined based on that type in the other package directly:
sql>create or replace package pkg_a
2 is
3 type testTable is table of varchar2(10) index by binary_integer;
4
5 function f_a return testTable;
6 end;
7 /
Package created.
sql>create or replace package body pkg_a
2 is
3 function f_a
4 return testTable
5 is
6 v_table testTable;
7 begin
8 v_table(1) := 'One';
9 v_table(2) := 'Two';
10 return v_table;
11 end;
12 end;
13 /
Package body created.
sql>create or replace package pkg_b
2 is
3 procedure p_b;
4 end;
5 /
Package created.
sql>create or replace package body pkg_b
2 is
3 procedure p_b
4 is
5 v_table pkg_a.testTable; -- this variable has to be based on the type in pkg_a
6 begin
7 v_table := pkg_a.f_a;
8 for i in 1..v_table.count loop
9 dbms_output.put_line( v_table(i) );
10 end loop;
11 end;
12 end;
13 /
Package body created.
sql>exec pkg_b.p_b
One
Two
PL/SQL procedure successfully completed.
Maybe you are looking for
-
*SOLVED* - 2D draw very slow, intel / fglrx Xorg driver
Hey all, My very first support post to the forums I have an issue on a few computers whereby the 2D drawing in X is very slow. This happens on my laptop with Intel vga and also on a desktop when using the proprietary fglrx driver. I did not have this
-
All the music is gone from my iPod & I keep getting firmware error messages
I left my iPod (iPod Classic, 80GB, purchased May 08, I believe it's the current generation) to charge overnight and this morning I wanted to sync it up to get some podcasts that had downloaded overnight. After I did the sync, I ejected the iPod and
-
Data into various fields in a PDF Form
Hi, I don't know whether this is the right place but I have been trying to figure out how to get different a field to change depending on the input of a different field. For example, the price price field being altered when the product field is chang
-
When trying to run itune getting message that itunes has stopped working ?
I am getting following popup message "itunes has stopped working " I have downloaded newest version & tried but it is still not working. Problem signature: Problem Event Name: BEX Application Name: iTunes.exe Application Version: 10.0.1.22 Applicatio
-
Updating clustered refnums in a custom control
Hello - Precursor: I am trying to alter an outsourced code we recently received and I am not exactly fluent in LabVIEW. There are 7 user interface clusters one of which I am looking to alter. The original program has a cluster of refnums, at least I'