Creating CIN with CVI
When I try to create a DLL to be used as a CIN with CVI, I get linker errors
that point to the
cin.obj file.
_CINRun is undefined.
I have gone through the steps outlined in cvilvsb.h and followed them exactly.
the
only other issue I am unsure of is the #pragma pack which is enveloped around
struct definitions which I have not defined any structures.
If anyone could give me a quick step by step on what i may be missing, it
would be
appreciated.
Edwin wrote:
> When I try to create a DLL to be used as a CIN with CVI, I get linker errors
> that point to the
> cin.obj file.
> _CINRun is undefined.
>
> I have gone through the steps outlined in cvilvsb.h and followed them exactly.
> the
> only other issue I am unsure of is the #pragma pack which is enveloped around
>
> struct definitions which I have not defined any structures.
>
> If anyone could give me a quick step by step on what i may be missing, it
> would be
> appreciated.
It appears to me that you are trying to do two very different things here.
It has be a long time since I did CINs though, so I could be mistaken.
A DLL is something you can call directly from LabVIEW using the "Call Library
Function"
This is usually a large collection of functions
and must be compiled specifically
as a DLL
A CIN on the other hand is a small piece (usually) of C code that is compiled as
an object
file (by an external compiler) and then incorporated into LabVIEW using the "Code
Interface Node"
If you start with a new VI , drop a CIN on the diagram, right click on the
CIN and select "Create .c file"
you will see that it creates a skeleton piece of C code. The main function will
be CINRun
This MUST be in a CIN for it to work properly.
I suggest you look at the Code Interface Reference Manual. While it may be
possible to call
a DLL from inside a CIN I do not believe that you can make a DLL and and use the
Code Interface Node to call it.
Kevin Kent
Similar Messages
-
How create CIN with visual C++
I am trying to generate a CIN for the following example C code (mult.c)
* CIN source file
#include "extcode.h"
CIN MgErr CINRun(float32 *A, float32 *B, float32 *AB);
CIN MgErr CINRun(float32 *A, float32 *B, float32 *AB) {
*AB = *A * *B;
return noErr;
My makefile is
name=mult
type=CIN
cintoolsdir=C:\Program Files\National Instruments\LabVIEW 6.1\cintools
!include <$(cintoolsdir)\ntlvsb.mak>
I'm following the istructions in the LabVIEW Code
Interface Reference Manual to compile a CIN using visual c++, but when I open the makefile
whith visual C++ don't showme the messages mentioned in the manual and I can't add the mult.c file.
I'm using Labview 6.1 and MVC 6.0
Can anyone help?I am not sure what the problem could be. I have followed the steps in "Using External Code in LabVIEW" manual with LV6.1 and VC++6 with success in the past. You can find the manual by opening LabVIEW >> help >> search the LabVIEW bookshelf. This launches a pdf with hyperlinks to all the LabVIEW shipping documents. The manual will be listed there.
The manual has been updated for 7 so you may want to look for it online for the latest information. -
CIN with Linux static library .a
Can CIN's work with Linux static libraries? by default cintools create makefile with LD flags specified as "-shared", but my source uses static library /usr/lib/libpci.a
Solved this problem.
-
DAQ 6.6 and 6.9 with CVI
With CVI 5.0, I used NI-DAQ to create a library (recognize, read and write I/O board) and a software using this library. When I use the software on a computer where the board has been configured with NI-DAQ 6.6, the board is not recognized (I have an error code more than 10000). Need help to make the versions compatible. Thanks
I don't really understand your problem, but there is some pieces of advice.
The first thing to validate is that the card is properly installed on the target PC.
Before pluging in the card, you need to install the NI-DAQ device drivers with a version compatible with your OS and your card. When pluged, your card must appear under MAX and must pass the ressources test.
Once you are sure that the card is correctly installed, you can distribute your application to the target PC. Traditionnal NI-DAQ functions prototypes didn't change from NI-DAQ 6.6 to NI-DAQ 6.9. No matter the version is installed on the target PC, 6.6 and 6.9 are compatible. Your application should be operationnal.
If you still encounter problems, please give me the following elements
- the card reference,
- the target OS,
- the NI-DAQ version installed on the target PC,
- the error code that is returned.
I'll answer you as soon as possible.
Benjamin CHARLES
Applications Engineer
National Instruments France -
Creating animations with transparent backgrounds?
I'm running into some problems when using After Effects to create animations with transparent backgrounds for Keynote...
I use animated gifs and short quicktime movies with uniform backgrounds as source files, use color keying to take out the backgrounds, preview them to see if they look OK, render the results as RGB+alpha, and... they don't show up as transparent in Keynote. They work in Powerpoint, however. I've tried outputting as .mov, as .gif, as premultiplied vs straight alpha... no joy. Can someone explain (or point me to an explanation) of how Keynote differs from other programs in its handling of transparency? What am I missing?Using a TYPE_INT_ARGB BufferedImage worked beautifully. I had played around with Image for hours, but it never occurred to me that BufferedImage would be needed. :)
many, many thanks,
Steven -
Webi Stucks while trying to create report with BW7.0 (WIS 10901)
Hello,
I have some problem about using data created from BW 7.0
1. After I try to drag more than one object to create report from webi and run the query, it got sutcked and appear error as below;
A database error occured. The database error text is: The MDX query SELECT { } ON COLUMNS , HIERARCHIZE( UNION( { [0GL_ACCOUNT INT].[INT 0HIER_NODE] } , { GENERATE ( { [0GL_ACCOUNT INT].[INT 0HIER_NODE] } , { Descendants( [0GL_ACCOUNT INT].CURRENTMEMBER, [0GL_ACCOUNT INT].[LEVEL01]) } ) } ) ) DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON ROWS FROM [$0ABC_C06] SAP VARIABLES [0DAT] INCLUDING 20080606 failed to execute with the error See RFC trace file or SAP system log for more details. (WIS 10901)
this error appears when I try to..
- create query with more than one object
- enable drill-down for the object and click the report to drill down
(This error appears the same in Voyager when drag objects into crosstab)
2. problems with displaying Thai language content created from BW, after I created object, thai content always appears as "######" event I change font to "tahoma", it returns the same result.
any expert could help me... thanks in advance
I use BOBJ XI 3.0, SAPBW 7.0
step:
1. Create universe connect to BW 7.0 and export universe
2. logon to infoview, choose universe to create report from webi
3. drag object and test drill down
and step for voyager
1. create voyager connection to SAP BW 7.0 use specified username and password
2. use voyager to create report
3. drag object into crosstabHello.
We have solved this issue. We tested our connection with MDX Parser in transaction SM59 and that resulted in errors. Then we applied SAP note 1032461 to replace an application server dll (librfc32u.dll). After this procedure, the WebIntelligence was able to run queries with more then 2 dimensions and key-figures!
Thanks for all. -
How to create Delivery with sales order FM/BAPI
Hi Gurus,I'm new to SAP platform
I have created sales order ,
with this i need to create Delivery(vl01n)
so i need to give 'Shipping Point','Selection Date','SD Number'
so could any one tel me which FM/BAPI is suitable to create
Outbound delivery with 'sales order number', 'Selection date' and
"Plant or Shipping Point'.
With these Import parameters i need FM/BAPI .
Thanks in Advance
Siva Kumar kasa.I have created delivery with that BAPI
giving 'batch number' but it was not updated,so can u tel me
any related field which need give to change batch field also. -
How to create Invoice with ref to PO
Dear sd gurus..
i know we can create invoice with ref to sales order not with po
But i want to create Invoice with ref to po only
please guide me
Thanks a lotVenu, thanks for your reply.
So in this case your idea wont work but the main imp thing is we cant create invoice with ref to po
Please read my post once again, i never said we can create customer invoice with ref to Purchase order. I said very clearly, " you can follow the normal 3rd party sales process", which means we create customer invoice with ref to sales order only.
Coming into another query,
but some time PO Is generated 110 qth to vendor but vendor may be he will send 105 due to shortage ... and he will tell i will send the the remaining stock after next 10 days now Generally miro will happen only for 105 not 110 ( even we can do MIRO110 also ) but i am talking generally because he received the stock 105 only
But company wants billing for 110 not for 105 because here customer accepted to pay full money
and vendor gave promise to delivery 5 qty in next 10 days
Why will the customer agree to be billed the full qty, when he receive the partial qty?
Let us assume as you said customer agree to pay for full qty, then there are two options.
1. Do the MIRO for full qty since you would be invoicing the customer for full qty
Or
2. Do the MIRO for partial qty and customer should agree for partial invoice
Please note in the normal case also if there is if condition then you don't have other option.
Example:
Order = 100 qty
PO = 100 qty
MIGO = 50 qty and remaining 50 qty Vendor delivery in next 10 days
MIRO =50 qty
But here also customer agreed to pay for full qty, then what will you do ? you don't have other option but to bill the partial qty in standard.
And let me know if you need any more clarity?
thanks,
Srinu. -
I have a new email address. Changed this on my itunes account. On iPhone deleted old icloud account and created new with new email. I have set find my phone to on. When I download music from itunes it no longer goes to icloud an does not show up on my iphone.
I have the same problem - it is maddening. I rely on this iPad for work so this is not just an annoyance! The above solutions of changing the appleid on the device or on the website do not work.
The old email address no longer exists - I haven't used it in a year probably and I no longer have the account. I logged into the appleid website and there is no trace of the old email address so there is nothing that can be deleted or changed there. On the iPad there is no trace of the old email address so nothing can be deleted there either. I have updated the iPad software and the same problem comes right back. Every 2 seconds I am asked to log in using the old non-existent email. The device is currently useless.
The only recent change to anything was the addition of an Apple TV device, which was set up using the correct login and password.
Does anyone have any ideas? The iPad has been backed up to the iCloud so presumably it now won't recognize the current iCloud account? So restoring may notbe an option? -
Problem while Creating MVLOG with synonym in Oracle 9i:Is it an Oracle Bug?
Hi All,
I am facing a problem while Creating MVLOG with synonym in Oracle 9i but for 10G it is working fine. Is it an Oracle Bug? or i am missing something.
SQL> select * from v$version;
BANNER
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Product
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
SQL>
SQL> create table t ( name varchar2(20), id varchar2(1) primary key);
Table created.
SQL> create materialized view log on t;
Materialized view log created.
SQL> create public synonym syn_t for t;
Synonym created.
SQL> CREATE MATERIALIZED VIEW MV_t
2 REFRESH ON DEMAND
3 WITH PRIMARY KEY
4 AS
5 SELECT name,id
6 FROM syn_t;
Materialized view created.
SQL> CREATE MATERIALIZED VIEW LOG ON MV_t
2 WITH PRIMARY KEY
3 (name)
4 INCLUDING NEW VALUES;
Materialized view log created.
SQL> select * from v$version;
BANNER
Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production
PL/SQL Release 9.2.0.6.0 - Production
CORE 9.2.0.6.0 Production
TNS for Solaris: Version 9.2.0.6.0 - Production
NLSRTL Version 9.2.0.6.0 - Production
SQL>
SQL> create table t ( name varchar2(20), id varchar2(1) primary key);
Table created.
SQL> create materialized view log on t;
Materialized view log created.
SQL> create public synonym syn_t for t;
Synonym created.
SQL> CREATE MATERIALIZED VIEW MV_t
REFRESH ON DEMAND
WITH PRIMARY KEY
AS
2 3 4 5 SELECT name,id
FROM syn_t; 6
Materialized view created.
SQL> CREATE MATERIALIZED VIEW LOG ON MV_t
WITH PRIMARY KEY
(name)
INCLUDING NEW VALUES; 2 3 4
CREATE MATERIALIZED VIEW LOG ON MV_t
ERROR at line 1:
ORA-12014: table 'MV_T' does not contain a primary key constraintRegards
Message was edited by:
Avinash Tripathi
nullHi Nicloei,
Thanks for the reply. Actually i don't want any work around (Creating MVLOG on table rather than synonym is fine with me) . I just wanted to know it is actually an oracle bug or something else.
Regards
Avinash -
How to create complaints with reference to ECC Billing document (CRM 7.0)
Hi experts!
I use ECC 6.0 and CRM 7.0.
I have to create CRM complaints (ZCLR - CLRP) with reference to ecc billing documents.
I read the following topics and help:
1. How to create complaints with referenceto ECC Billing document
2. Re: How can we transfer billing documents from SAP ERP to CRM 2007?
3. http://help.sap.com/saphelp_crm70/helpdata/en/46/029ba32e675c1ae10000000a1553f6/frameset.htm
Made these settings:
1. Define the Business object type
Goto SPRO>CRM>Transaction>Settings for Complaints>Integration>Trnsaction Referencing>Define Object types for Transaction reference
2. Assign Business Object Types to Transaction Types
Goto SPRO>CRM>Transaction>Settings for Complaints>Integration>Trnsaction Referencing>Assign Business Object Types to Transaction Types
3. Implement a BADI - CRM_COPY_BADI_EXTERN.Check Implementation CRM_COPY_BADI_BILLDO for more information on the coding for referencing the ECC Billing document.
Goto SPRO>CRM>Transaction>Settings for Complaints>Integration>Trnsaction Referencing>BAdI: Create Complaint with Reference to External Transaction.
but still do not know,
1) if I should pre-replicate billing documents into CRM ?
2) Or, the system uses the RFC to find these documents in ECC to create reference?
Please help me.
Best regards Kostya.
Edited by: Kostya Khveshchenik on Oct 20, 2010 2:09 PMnot resolved =(
Edited by: Kostya Khveshchenik on Nov 19, 2010 8:50 AM -
Hello.
During developing Domain Index for Oracle 11.2.0.1.0 (problem also appears in 12с) i was faced with misunderstanding of parameter types of function
ODCIIndexInsert in case of creating indextype WITH ARRAY DML option
According to Oracle documentation
http://docs.oracle.com/cd/E11882_01/appdev.112/e10765/ext_idx_ref.htm#i76892
In case of WITH ARRAY DML option Oracle will invoke ODCIIndexInsert with following signature
FUNCTION ODCIIndexInsert(
ia ODCIIndexInfo,
ridlist ODCIRidList,
newvallist varray_of_column_type,
env ODCIEnv)
RETURN NUMBER
In my case indexed column has datatype NUMBER so i defined varray_of_column_type as SYS.ODCINumberList
STATIC FUNCTION ODCIIndexInsert(ia in sys.ODCIIndexInfo, ridlist in sys.ODCIRidList, newvallist in sys.ODCINumberList, env in SYS.ODCIEnv) RETURN NUMBER
Indextype was created as
CREATE INDEXTYPE test_index_type
FOR
test_eq(number, number)
USING index_methods
WITH ARRAY DML(number, sys.ODCINumberList)
WITH LOCAL RANGE PARTITION
WITH SYSTEM MANAGED STORAGE TABLES;
or
CREATE INDEXTYPE test_index_type
FOR
test_eq(number, number)
USING index_methods
WITH ARRAY DML
WITH LOCAL RANGE PARTITION
WITH SYSTEM MANAGED STORAGE TABLES;
(problem occurs in all cases)
CREATE TABLE test_table (id NUMBER (19,0));
CREATE INDEX test_index ON test_table(id) INDEXTYPE IS test_index_type;
When attempting to insert data in the table
insert into test_table values (1);
oracle raise exception
Error starting at line 53 in command:
insert into test_table values (1)
Error at Command Line:53 Column:1
Error report:
SQL Error: ORA-29925: cannot execute SCOTT.INDEX_METHODS.ODCIINDEXINSERT
ORA-06553: PLS-306: wrong number or types of arguments in call to 'ODCIINDEXINSERT'
ORA-06553: PLS-306: wrong number or types of arguments in call to 'ODCIINDEXINSERT'
29925. 00000 - "cannot execute %s"
*Cause: The specified function does not exist or does not have an
appropriate signature.
*Action: Implement the function with the appropriate signature.
So my question is.
Is it normal behavior of oracle (according to documentation)?
What is correct signature of ODCIIndexInsert function in case of INDEXTYPE creation with 'WITH ARRAY DML' option and fact that indexed column has NUMBER datatype?
By the way if i define indextype without 'WITH ARRAY DML' option signature is clear, and working. But this approach doesn't satisfies our performance needs.
Also if i define index type with option 'WITH ARRAY DML WITHOUT COLUMN DATA' and use signature
static function ODCIIndexInsert(ia sys.odciindexinfo, ridlist sys.odciridlist, env sys.ODCIEnv) return number
Everything works too. But this approach doesn't satisfies our business needs.
Is it a way to define ODCIIndexInsert parameter types (in case of indexing number column) so that batch inserting works according to documentation ?
FUNCTION ODCIIndexInsert(
ia ODCIIndexInfo,
ridlist ODCIRidList,
newvallist varray_of_column_type,
env ODCIEnv)
I am attaching full sql script to recreate environment and reproduce the problem.
Type definition:
CREATE OR REPLACE TYPE index_methods AS OBJECT
step number,
STATIC FUNCTION ODCIGetInterfaces(ifclist OUT SYS.ODCIObjectList) RETURN NUMBER,
STATIC FUNCTION ODCIIndexCreate (ia SYS.ODCIIndexInfo, parms VARCHAR2, env SYS.ODCIEnv) RETURN NUMBER,
STATIC FUNCTION ODCIIndexAlter (ia sys.ODCIIndexInfo, parms IN OUT VARCHAR2, altopt number, env sys.ODCIEnv) RETURN NUMBER,
STATIC FUNCTION ODCIIndexDrop(ia SYS.ODCIIndexInfo, env SYS.ODCIEnv) RETURN NUMBER,
STATIC FUNCTION ODCIIndexExchangePartition(ia SYS.ODCIIndexInfo, ia1 SYS.ODCIIndexInfo, env SYS.ODCIEnv) RETURN NUMBER,
STATIC FUNCTION ODCIIndexUpdPartMetadata(ia sys.ODCIIndexInfo, palist sys.ODCIPartInfoList, env sys.ODCIEnv) RETURN NUMBER,
STATIC FUNCTION ODCIIndexInsert(ia in sys.ODCIIndexInfo, ridlist in sys.ODCIRidList, newvallist in sys.ODCINumberList, env in SYS.ODCIEnv) RETURN NUMBER,
STATIC FUNCTION ODCIIndexDelete(ia SYS.ODCIIndexInfo, rid VARCHAR2, oldval number, env SYS.ODCIEnv) RETURN NUMBER,
STATIC FUNCTION ODCIIndexUpdate(ia SYS.ODCIIndexInfo, rid VARCHAR2, oldval number, newval number, env SYS.ODCIEnv) RETURN NUMBER,
STATIC FUNCTION ODCIIndexStart(sctx IN OUT index_methods, ia SYS.ODCIIndexInfo,
op SYS.ODCIPredInfo, qi sys.ODCIQueryInfo, strt number, stop number, cmpval number, env SYS.ODCIEnv) RETURN NUMBER,
MEMBER FUNCTION ODCIIndexFetch(self IN OUT index_methods, nrows NUMBER, rids OUT SYS.ODCIridlist, env SYS.ODCIEnv) RETURN NUMBER,
MEMBER FUNCTION ODCIIndexClose(self IN index_methods, env SYS.ODCIEnv) RETURN NUMBER
CREATE OR REPLACE TYPE BODY index_methods IS
STATIC FUNCTION ODCIGetInterfaces(ifclist OUT sys.ODCIObjectList) RETURN NUMBER IS
BEGIN
ifclist := sys.ODCIObjectList(sys.ODCIObject('SYS','ODCIINDEX2'));
RETURN ODCIConst.Success;
END ODCIGetInterfaces;
STATIC FUNCTION ODCIIndexCreate (ia sys.ODCIIndexInfo, parms VARCHAR2, env sys.ODCIEnv) RETURN NUMBER IS
BEGIN
RETURN ODCIConst.Success;
END ODCIIndexCreate;
STATIC FUNCTION ODCIIndexDrop(ia sys.ODCIIndexInfo, env sys.ODCIEnv) RETURN NUMBER IS
BEGIN
RETURN ODCIConst.Success;
END ODCIIndexDrop;
STATIC FUNCTION ODCIIndexAlter (
ia sys.ODCIIndexInfo,
parms IN OUT VARCHAR2,
altopt NUMBER,
env sys.ODCIEnv)
RETURN NUMBER IS
BEGIN
RETURN ODCIConst.Success;
END ODCIIndexAlter;
STATIC FUNCTION ODCIIndexUpdPartMetadata(
ia sys.ODCIIndexInfo,
palist sys.ODCIPartInfoList,
env sys.ODCIEnv)
RETURN NUMBER IS
BEGIN
RETURN ODCIConst.Success;
END ODCIIndexUpdPartMetadata;
STATIC FUNCTION ODCIIndexExchangePartition(
ia sys.ODCIIndexInfo,
ia1 sys.ODCIIndexInfo,
env sys.ODCIEnv)
RETURN NUMBER IS
BEGIN
RETURN ODCIConst.Success;
END ODCIIndexExchangePartition;
STATIC FUNCTION ODCIIndexInsert(
ia sys.ODCIIndexInfo,
ridlist sys.ODCIRidList,
newvallist sys.ODCINumberList,
env sys.ODCIEnv)
RETURN NUMBER IS
BEGIN
return ODCIConst.Success;
END;
STATIC FUNCTION ODCIIndexDelete(
ia SYS.ODCIIndexInfo,
rid VARCHAR2,
oldval number,
env SYS.ODCIEnv)
RETURN NUMBER IS
BEGIN
return ODCIConst.Success;
END;
STATIC FUNCTION ODCIIndexUpdate(
ia SYS.ODCIIndexInfo,
rid VARCHAR2,
oldval number,
newval number,
env SYS.ODCIEnv)
RETURN NUMBER AS
BEGIN
return ODCIConst.Success;
END;
STATIC FUNCTION ODCIIndexStart(
sctx IN OUT index_methods,
ia SYS.ODCIIndexInfo,
op SYS.ODCIPredInfo,
qi sys.ODCIQueryInfo,
strt number,
stop number,
cmpval number,
env SYS.ODCIEnv)
RETURN NUMBER AS
BEGIN
sctx := index_methods(1);
return ODCIConst.Success;
END;
MEMBER FUNCTION ODCIIndexFetch(
self IN OUT index_methods,
nrows NUMBER,
rids OUT SYS.ODCIridlist,
env SYS.ODCIEnv)
RETURN NUMBER AS
BEGIN
return ODCIConst.Success;
END;
MEMBER FUNCTION ODCIIndexClose(self IN index_methods, env SYS.ODCIEnv) RETURN NUMBER AS
BEGIN
return ODCIConst.Success;
END;
end;
Problem workaround:
--drop function test_eq_fun;
CREATE FUNCTION test_eq_fun(a number, b number) RETURN NUMBER AS
BEGIN
IF a = b then
RETURN 1;
ELSE
RETURN 0;
END IF;
END;
--drop operator test_eq;
CREATE OPERATOR test_eq
BINDING (number, number) RETURN NUMBER
USING test_eq_fun;
--drop indextype test_index_type;
CREATE INDEXTYPE test_index_type
FOR
test_eq(number, number)
USING index_methods
WITH ARRAY DML(number, sys.ODCINumberList)
WITH LOCAL RANGE PARTITION
WITH SYSTEM MANAGED STORAGE TABLES;
CREATE INDEXTYPE test_index_type
FOR
test_eq(number, number)
USING index_methods
WITH ARRAY DML
WITH LOCAL RANGE PARTITION
WITH SYSTEM MANAGED STORAGE TABLES;
--drop table test_table;
CREATE TABLE test_table (id NUMBER (19,0));
CREATE INDEX test_index ON test_table(id) INDEXTYPE IS test_index_type;
insert into test_table values (1);I get single for 1 row and batch for 2 or more rows in the following simplified simulation.
SCOTT@orcl12c> DESC SYS.ODCINUMBERLIST
SYS.ODCINUMBERLIST VARRAY(32767) OF NUMBER
SCOTT@orcl12c> CREATE OR REPLACE TYPE index_methods AS OBJECT
2 (
3 step number,
4 STATIC FUNCTION ODCIGetInterfaces(ifclist OUT SYS.ODCIObjectList) RETURN NUMBER,
5 STATIC FUNCTION ODCIIndexCreate (ia SYS.ODCIIndexInfo, parms VARCHAR2, env SYS.ODCIEnv) RETURN NUMBER,
6 STATIC FUNCTION ODCIIndexAlter (ia sys.ODCIIndexInfo, parms IN OUT VARCHAR2, altopt number, env sys.ODCIEnv) RETURN NUMBER,
7 STATIC FUNCTION ODCIIndexDrop(ia SYS.ODCIIndexInfo, env SYS.ODCIEnv) RETURN NUMBER,
8 STATIC FUNCTION ODCIIndexExchangePartition(ia SYS.ODCIIndexInfo, ia1 SYS.ODCIIndexInfo, env SYS.ODCIEnv) RETURN NUMBER,
9 STATIC FUNCTION ODCIIndexUpdPartMetadata(ia sys.ODCIIndexInfo, palist sys.ODCIPartInfoList, env sys.ODCIEnv) RETURN NUMBER,
10 STATIC FUNCTION ODCIIndexInsert(ia in sys.ODCIIndexInfo, rid in VARCHAR2, newval in NUMBER, env in SYS.ODCIEnv) RETURN NUMBER,
11 STATIC FUNCTION ODCIIndexInsert(ia in sys.ODCIIndexInfo, ridlist in sys.ODCIRidList, newvallist in your_type, env in SYS.ODCIEnv) RETURN NUMBER,
12 STATIC FUNCTION ODCIIndexDelete(ia SYS.ODCIIndexInfo, rid VARCHAR2, oldval number, env SYS.ODCIEnv) RETURN NUMBER,
13 STATIC FUNCTION ODCIIndexUpdate(ia SYS.ODCIIndexInfo, rid VARCHAR2, oldval number, newval number, env SYS.ODCIEnv) RETURN NUMBER,
14 STATIC FUNCTION ODCIIndexStart(sctx IN OUT index_methods, ia SYS.ODCIIndexInfo,
15 op SYS.ODCIPredInfo, qi sys.ODCIQueryInfo, strt number, stop number, cmpval number, env SYS.ODCIEnv) RETURN NUMBER,
16 MEMBER FUNCTION ODCIIndexFetch(self IN OUT index_methods, nrows NUMBER, rids OUT SYS.ODCIridlist, env SYS.ODCIEnv) RETURN NUMBER,
17 MEMBER FUNCTION ODCIIndexClose(self IN index_methods, env SYS.ODCIEnv) RETURN NUMBER
18 );
19 /
Type created.
SCOTT@orcl12c> CREATE OR REPLACE TYPE BODY index_methods IS
2 STATIC FUNCTION ODCIGetInterfaces(ifclist OUT sys.ODCIObjectList) RETURN NUMBER IS
3 BEGIN
4 ifclist := sys.ODCIObjectList(sys.ODCIObject('SYS','ODCIINDEX2'));
5 RETURN ODCIConst.Success;
6 END ODCIGetInterfaces;
7
8 STATIC FUNCTION ODCIIndexCreate (ia sys.ODCIIndexInfo, parms VARCHAR2, env sys.ODCIEnv) RETURN NUMBER IS
9 BEGIN
10 RETURN ODCIConst.Success;
11 END ODCIIndexCreate;
12
13 STATIC FUNCTION ODCIIndexDrop(ia sys.ODCIIndexInfo, env sys.ODCIEnv) RETURN NUMBER IS
14 BEGIN
15 RETURN ODCIConst.Success;
16 END ODCIIndexDrop;
17
18 STATIC FUNCTION ODCIIndexAlter (
19 ia sys.ODCIIndexInfo,
20 parms IN OUT VARCHAR2,
21 altopt NUMBER,
22 env sys.ODCIEnv)
23 RETURN NUMBER IS
24 BEGIN
25 RETURN ODCIConst.Success;
26 END ODCIIndexAlter;
27
28 STATIC FUNCTION ODCIIndexUpdPartMetadata(
29 ia sys.ODCIIndexInfo,
30 palist sys.ODCIPartInfoList,
31 env sys.ODCIEnv)
32 RETURN NUMBER IS
33 BEGIN
34 RETURN ODCIConst.Success;
35 END ODCIIndexUpdPartMetadata;
36
37 STATIC FUNCTION ODCIIndexExchangePartition(
38 ia sys.ODCIIndexInfo,
39 ia1 sys.ODCIIndexInfo,
40 env sys.ODCIEnv)
41 RETURN NUMBER IS
42 BEGIN
43 RETURN ODCIConst.Success;
44 END ODCIIndexExchangePartition;
45
46 STATIC FUNCTION ODCIIndexInsert(
47 ia sys.ODCIIndexInfo,
48 rid VARCHAR2,
49 newval NUMBER,
50 env sys.ODCIEnv)
51 RETURN NUMBER IS
52 BEGIN
53 dbms_output.put_line ('single');
54 return ODCIConst.Success;
55 END;
56
57 STATIC FUNCTION ODCIIndexInsert(
58 ia sys.ODCIIndexInfo,
59 ridlist sys.ODCIRidList,
60 newvallist your_type,
61 env sys.ODCIEnv)
62 RETURN NUMBER IS
63 BEGIN
64 dbms_output.put_line ('batch');
65 return ODCIConst.Success;
66 END;
67
68 STATIC FUNCTION ODCIIndexDelete(
69 ia SYS.ODCIIndexInfo,
70 rid VARCHAR2,
71 oldval number,
72 env SYS.ODCIEnv)
73 RETURN NUMBER IS
74 BEGIN
75 return ODCIConst.Success;
76 END;
77
78 STATIC FUNCTION ODCIIndexUpdate(
79 ia SYS.ODCIIndexInfo,
80 rid VARCHAR2,
81 oldval number,
82 newval number,
83 env SYS.ODCIEnv)
84 RETURN NUMBER AS
85 BEGIN
86 return ODCIConst.Success;
87 END;
88
89 STATIC FUNCTION ODCIIndexStart(
90 sctx IN OUT index_methods,
91 ia SYS.ODCIIndexInfo,
92 op SYS.ODCIPredInfo,
93 qi sys.ODCIQueryInfo,
94 strt number,
95 stop number,
96 cmpval number,
97 env SYS.ODCIEnv)
98 RETURN NUMBER AS
99 BEGIN
100 sctx := index_methods(1);
101 return ODCIConst.Success;
102 END;
103
104 MEMBER FUNCTION ODCIIndexFetch(
105 self IN OUT index_methods,
106 nrows NUMBER,
107 rids OUT SYS.ODCIridlist,
108 env SYS.ODCIEnv)
109 RETURN NUMBER AS
110 BEGIN
111 return ODCIConst.Success;
112 END;
113
114 MEMBER FUNCTION ODCIIndexClose(self IN index_methods, env SYS.ODCIEnv) RETURN NUMBER AS
115 BEGIN
116 return ODCIConst.Success;
117 END;
118 end;
119 /
Type body created.
SCOTT@orcl12c> CREATE FUNCTION test_eq_fun(a number, b number) RETURN NUMBER AS
2 BEGIN
3 IF a = b then
4 RETURN 1;
5 ELSE
6 RETURN 0;
7 END IF;
8 END;
9 /
Function created.
SCOTT@orcl12c> CREATE OPERATOR test_eq
2 BINDING (number, number) RETURN NUMBER
3 USING test_eq_fun
4 /
Operator created.
SCOTT@orcl12c> CREATE INDEXTYPE test_index_type
2 FOR
3 test_eq(number, number)
4 USING index_methods
5 WITH ARRAY DML(number, your_type)
6 WITH LOCAL RANGE PARTITION
7 WITH SYSTEM MANAGED STORAGE TABLES
8 /
Indextype created.
SCOTT@orcl12c> CREATE TABLE test_table (id NUMBER (19,0))
2 /
Table created.
SCOTT@orcl12c> CREATE INDEX test_index ON test_table(id) INDEXTYPE IS test_index_type
2 /
Index created.
SCOTT@orcl12c> insert into test_table values (1)
2 /
single
1 row created.
SCOTT@orcl12c> insert into test_table
2 select 2 from dual union all
3 select 3 from dual
4 /
batch
2 rows created.
SCOTT@orcl12c> insert into test_table select deptno from dept
2 /
batch
4 rows created.
SCOTT@orcl12c> insert into test_table select object_id from user_objects
2 /
batch
34 rows created.
SCOTT@orcl12c> -
Error using BAPI_PO_CREATE1 for creating PO with services
Hi,
I'm getting an error saying 'EnTER account assignment data for item' when I use BAPI_PO_CREATE1 and try to create POs with Service Items. I have filled all the required details, even then the system throws up this error message. Thanks for any help.
Regards,
Vijaywhat have you passed to the table POACCOUNT? and POACCOUNTX?
Regards,
Ravi -
Check while creating PR with account assignment K
Hi Gurus,
Can I put a check while creating PRs for account assignment category K, that only statistical order number range is allowed.
In other words, user should not be allowed to put any internal order other than statistical order in PR, while creating it with account assignment category K..
Thanks in Advance,
VikashHi,
You can check on business transaction RMBA - it's the purchase requisition. Set it to prerequisites and for the validation select the order type (it's better than a number range - I believe you use different order types for real/statistical I/O) from AUFK (you will see this structure as available, when creating a validation). If you do use the same order type, then check on I/O itself COBL-AUFNR.
Regards,
Eli -
Create Invoice with RV_INVOICE_CREATE
hi buddies, I want to create invoice with reference to sales orders and delivery notes, Can I use FM:RV_INVOICE_CREATE for both?
I have tested this FM, and seems no errors, but no documents created when check the invoice table vbrk...
thanks!Hi,
you can use RV_INVOICE_CREATE, you can do commit only after checking the XVBFS internal table , and look for Success message then only you need to use COMMIT.
Note: XVBFS is the log internal table, here you can see success and error log.
check this internal table after execution of the FM for log details(success/error).
Regards
vijay
Maybe you are looking for
-
I have researched the knowledge base and found: Printing A Range of Pages or Number of Copies of a Report Using the Report Generation Toolkit in LabVIEW. This seems to be from a previous version of LV. I am using LV2010. The instructions given do not
-
I am designing a business card in Indesign and want to copy my logo from AI. The versions I am using is CS3, The logo is in vector format saved under AI. When I copy it, it doesn't copy right. I am a first time user, so all basic instructions are app
-
DVD Stutter with Satellite L series
DVDs have been playing just fine for the past year, but last night they started to stutter, audio and video. I've compacted the HD and freed up as much memory as possible by turning off AV etc, but this wasn't necessary before. Any suggestions as to
-
Help for Installing ECC 6.0
Hi, I am trying to install ECC 6.0 since last week and so far I am not successful. But all these time i made few observations which I have listed below. I had gone through installation guides and enough materials. Anyone who is having installation ex
-
I'm new to PSE11 and I need to get it back to new, like i never changed anything. Can someone PLEASE HELP? Thanks