Query On Interface Vs Session in Package
Hi,
I have five interface in a package linked serially using ok But If I create 5 scenario of that 5 interfaces and then put them in a package using ok serially.
Which will be better and why?
Thanks
Papai
Linking interfaces in a package is better & recommended(at least in development environment) as it will be easier for you to understand flow of your steps & you will be able to edit the steps if required.
Scenario is like a compiled version for your ODI objects & You can't change the code of a scenario. You need to regenerate the package/interface to have new changes in effect.
Scenarios are nothing but ODI jobs that are scheduled & one object compiled with all required. So having 1 scenario for 1 interface doesn't make much sense.
So its better to have simplicity in development.
If this a Production environment, then its fine to have scenarios linked as users will be restricted to make the code changes, but ODI already has provision of that which is "Execution Work repository" where ODI jobs will only be executed & not modified.
Hope this helps.
Regards,
Santy
Similar Messages
-
I am getting "The parameter name [startDate] in the query's selection criteria does not match any parameter name defined in the query" error when querying on interface using TopLink 11g (11.1.3). The interface is implemented by many classes MyImplementationClass being one of them. The query works in TopLink 10g. Is this a bug in 11g? Thanks.
Here is my code:
+// subquery+
ExpressionBuilder subqueryBuilder = new ExpressionBuilder();
ReportQuery subQuery = new ReportQuery(MySubQueryClass.class, subqueryBuilder);
+// Main read query+
ReadAllQuery namedQuery1 = new ReadAllQuery(MyInterface.class);
ExpressionBuilder expBuilder1 = namedQuery1.getExpressionBuilder();
subQuery.addAttribute("primaryKey");
subQuery.setSelectionCriteria(
subqueryBuilder.get("operationDate").between(
subqueryBuilder.getParameter("startDate"),
subqueryBuilder.getParameter("endDate")).and(
subqueryBuilder.get("primaryKey").equal(expBuilder1.get("primaryKey))));
namedQuery1.setSelectionCriteria(expBuilder1.get("valueDate")
+.between(expBuilder1.getParameter("startDate"),+
expBuilder1.getParameter("endDate")).and(
expBuilder1.get("primaryKey").notExists(subQuery)));
namedQuery1.addArgument("startDate", java.sql.Date.class);+
namedQuery1.addArgument("endDate", java.sql.Date.class);+
// Stack trace
DEBUG 15:52:54 - ClientSession(27122014)--Exception [TOPLINK-6094] (Oracle TopLink - 11g Release 1 (11.1.1.3.0) (Build 100323)): oracle.toplink.exceptions.QueryException
Exception Description: The parameter name [startDate] in the query's selection criteria does not match any parameter name defined in the query.
Query: ReadAllQuery(*myPackage.MyImplementationClass*)Local Exception Stack:
Exception [TOPLINK-6094] (Oracle TopLink - 11g Release 1 (11.1.1.3.0) (Build 100323)): oracle.toplink.exceptions.QueryException
Exception Description: The parameter name [startDate] in the query's selection criteria does not match any parameter name defined in the query.
Query: ReadAllQuery(myPackage.MyImplementationClass)
at oracle.toplink.exceptions.QueryException.parameterNameMismatch(QueryException.java:996)
at oracle.toplink.internal.expressions.ParameterExpression.getValue(ParameterExpression.java:227)
at oracle.toplink.internal.databaseaccess.DatabaseCall.translate(DatabaseCall.java:914)
at oracle.toplink.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:192)
at oracle.toplink.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:179)
at oracle.toplink.internal.queryframework.DatasourceCallQueryMechanism.executeSelectCall(DatasourceCallQueryMechanism.java:250)
at oracle.toplink.internal.queryframework.DatasourceCallQueryMechanism.selectAllRows(DatasourceCallQueryMechanism.java:583)
at oracle.toplink.internal.queryframework.ExpressionQueryMechanism.selectAllRowsFromTable(ExpressionQueryMechanism.java:2483)
at oracle.toplink.internal.queryframework.ExpressionQueryMechanism.selectAllRows(ExpressionQueryMechanism.java:2441)
at oracle.toplink.queryframework.ReadAllQuery.executeObjectLevelReadQuery(ReadAllQuery.java:467)
at oracle.toplink.queryframework.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:874)
at oracle.toplink.queryframework.DatabaseQuery.execute(DatabaseQuery.java:674)
at oracle.toplink.queryframework.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:835)
at oracle.toplink.queryframework.ReadAllQuery.execute(ReadAllQuery.java:445)
at oracle.toplink.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:2265)
at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1079)
at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1063)
at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1022)
at oracle.toplink.descriptors.InterfacePolicy.selectAllObjectsUsingMultipleTableSubclassRead(InterfacePolicy.java:171)
at oracle.toplink.queryframework.ReadAllQuery.executeObjectLevelReadQuery(ReadAllQuery.java:462)
at oracle.toplink.queryframework.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:874)
at oracle.toplink.queryframework.DatabaseQuery.execute(DatabaseQuery.java:674)
at oracle.toplink.queryframework.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:835)
at oracle.toplink.queryframework.ReadAllQuery.execute(ReadAllQuery.java:445)
at oracle.toplink.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:2265)
at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1079)
at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1063)
at oracle.toplink.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1037)Try using the outer query for the parameters,
change,
subqueryBuilder.getParameter("startDate"),
to,
expBuilder1.getParameter("startDate"),
If that does not work, try the query without the sub-query to determine if the sub-query is the cause.
It could be a bug with the sub-query, if you can recreate it on EclipseLink you could log a bug, or contact Oracle support.
James : http://www.eclipse.org/eclipselink/ -
How to run the interfaces prallely in a package?
Hi all,
Is it possible with ODI to run the interfaces parallely. If yes please help me how to do?
My reqirement is
Source-->File and Target-->Teradata. From the unique source flat file data is populated with 45 target tables.
I designed 45 interfaces. I want to run all the 45 interfaces parallely.
I tried by generating scenarios for all 45 interfaces and kept in package. And i also used Wait for child session and i passed the keywords for all the 45 scenario's into "wait for child session" and executed the package.
Its not working.
So please help me how to achieve.
Regards
SureshHi ,
After creating the scenario of all 45 interface , create a package say master package which is going to run all 45 scenario in parallel
Inside the master package for each and every scenario set the Synchronous / Asynchronous to Asynchronous Mode.
After the 45th scenario use OdiWaitForChildSession and set Max. Number of Failed Child Sessions to 1 .
In this way you will achieve the following
All 45 scenario will run parallel and if any one of the scenario execution fails your master package will result in error .
Hope this helps .
Thanks,
Sutirtha
PS : You refer odiwaitforchildsession step -
Can we restrict a Procedure to be called only once in a session or package?
Hi,
I am having a procedure which is called for each insert statement.
The code is non-Editable.
So, I want to restrict the procedure to be called only once for the entire session or package.
Could any one please suggest me, can we do this?
Thak you,
Regards,
Gowtham Sen.Hi,
Actually, I am using OWB tool. I used a procedure with output parameters, to map to the target table. So, OWB creates a package. In that package its calling the procedure for each record.
So, in order to avoid that, can I do any thing else, which would restrict it to call for each record.
Thank you,
Regards,
Gowtham Sen. -
Need Info Regarding Implementaion of Interfaces in java.sql package
Hi All,
I am interested in knowing details abt how the Interfaces in the java.sql package are implemented. We all work with the database using the interfaces provided ,but how do they work at the backend ? How can a Interface provide details (work ) with out an implementation class.I Is this taken care by the JVM or some of the Call level interfaces? Please do provide details abt this..hi Sheshadri,
The implementation of the various interfaces in
java.sql package are provided by your jdbc driver,
which also manages the connection and communication of
your java program with the appropriate database.
cheers,
-Jer -
Hi there,
I was wondering whether anyone could tell me which feature in Windows 7 produces this message "This advertised application will not be installed because it might be unsafe. Contact your administrator to change the installation user interface option of
the package to basic." and whether it can be turned off in Windows to prevent this message from appearing when installing certain programs that aren't WHQL certified. At first I thought it was the UAC control that generated this message but found out
that it wasn't and then thought it was the DEP control and found out that it wasn't this either. I'm only seem to be getting this message when installing FileDirector Component Service Version 3 on a few of our workstations which is an add-on that allows file
integration with Office and is part of FileDirector WinClient Version 3.
Your help would be much appreciated.
Many thanks,
RocknRollTim
P.S. I know of a way to bypass this message but would ideally not like to have the feature turned on and for the message not to be appear for non WHQL certified program installations in order to make non WHQL certified program installations in the future much
easier, more simpler and straightforward to carry out. I was redirected by a moderator off the Microsoft Community Forum.Hi,
You can try following options to disable this prompt, but we don't recommend you to do so since this feature helps you to protect your computer.
Option 1: Run command as admin:
bcdedit -set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
Restart your computer to apply changes.
Option 2: Disable in GPO:
1.Type gpedit.msc in the Run dialog and press Enter.
2.In the Group Policy Editor, navigate to User Configuration → Administrative Templates → System → Driver Installation.
3.Double-click on Code signing for device drivers in the right-side pane as shown above.
4.In the windows that opens, choose Enabled. In the Options, choose Ignore as shown. Then click on the OK button to save the settings.
Restart your computer to apply changes.
Kate Li
TechNet Community Support
Unmarked as Answer based on OP's request.
https://social.technet.microsoft.com/Forums/en-US/35ab1279-c3a1-46be-9f7d-45e8606c1410/this-advertised-application-will-not-be-installed-because-it-might-be-unsafe-contact-your?forum=w7itproappcompat
Arnav Sharma | http://arnavsharma.net/ Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading
the thread. -
Unable to run interface as scenario in package
Hi All,
I had a packages consists of variables,procedures and interfaces connected serially
I created scenario for that package and it runs well
later I created scenarios for the interfaces used in that package
Instead of using interfaces i am using that scenarios in the package but it fails
Please let me know if the above procedure is wrong
Thanks,Dear Nilanjan,
This is the Script logic we are using.
//========================================
//Send data at XX level to XXXX from FinanceDetails
//Parameters: Category, Time
//Logic in FinanceDetails
//========================================
*SELECT(%XX_LIST%,ID,ORGDETAIL,[TYPE]='XX')
//*XDIM_MEMBERSET DataSrc=Input
*XDIM_MEMBERSET Category=ACTUAL
*WHEN ORGDETAIL.XXENTRE
*IS %XX_LIST%
*REC(ORGDETAIL=ORGDETAIL.XXENTRE)
*ENDWHEN
*CLEAR_DESTINATION
*DESTINATION_APP = FINANCE
*ADD_DIM ACCTDETAILF=No_line
*ADD_DIM RptCurrency=LC
*RENAME_DIM ORGDETAIL = ORGANISATION
//========================================
*COMMIT
Please guide me .
Regards,
Srinivasan. -
I noticed that Kodo 3.3 supports query on interface - is it part of JDO 2.0
persistent interface support? What else is implemented? Can we associate
Interface with Implementation to do the rest of the staff?>I noticed that Kodo 3.3 supports query on interface - is it part of JDO 2.0
persistent interface support? What else is implemented? Can we associate
Interface with Implementation to do the rest of the staff?We've had querying on interfaces for a long time!
The Kodo implementation is currently different than JDO 2, in that JDO 2
requires you to explicitly list your persistent interfaces in metadata, along
with which classes implement them. Kodo currently just dynamically tracks which
persistent classes implement which interfaces, and turns any query on an
interface into a query on the set of the implementing classes. -
Hi
I have a simple question about querying on Interfaces.
I have an interface called Entity, and 2 implementing classes called Service and ServiceProvider (mapped to tables Services (pk serviceId) and ServiceProviders (pk serviceProviderId)). serviceId and serviceProviderId have independent sequences. In Workbench, both classes are specified as implementing the Entity interface. The Entity interface currently specifies an accessor method getEntityId(), and entityId is a common query key for both classes.
I want to query against the Entity interface to obtain a single instance, by knowing the entityId and class name.
How can I formulate a readObject query so that Toplink generates the appropriate SQL:
select * from services where serviceId = ? or
select * from serviceProviders where serviceProviderId = ?
Sorry for the trivial nature of this question - I can't find any examples of querying against interface descriptors in a search of tutorials or the developers guide. The developers guide simply says "If there are multiple implementors of the interfaces, the query returns instances of all implementing classes." and this sounds like it would translate to a UNION ALL SQL query.
I also have in a separate class a variable one to one mapping where I can specify a class indicator (entityTypeId values). Somehow I feel that I need something like this for the Entity interface descriptor.
JamesFrankly, this just isn't something that is done that often. In the past decade I can only think of a couple of customers who've asked me about this. I always feel a bit uncomfortable with how querying through interfaces really tends to break polymorphism -- it just doesn't seem very natural from an OO perspective. Now, if instead of an interface you had used a common superclass, that makes more sense. I guess the fact that interfaces don't have state makes this whole area a bit of an OOAD research topic. :)
That being said, I don't expect TopLink would do an "or" query like you've shown, but would do a UNION.
My recommendation is to experiement with the queries, perhaps take a look at query-keys (they may be of some help here), and contact support with any feature suggestions you have in this area.
- Don -
In servlet what Event Listener interface defines session will passivate()
Hi!
In servlet what Event Listener interface defines session will passivate() method?
ThanxHi!
for the above question which one will be the correct answer?
1.HTTPSessionEventListener
2.HTTPSessionListener
3.HTTPSessionAttributeListener
4.HTTPSessionActivationListener -
ACE - Query VLAN Interfaces Status
Hi,
I am wondering what the status of the query vlan interface means in the command 'show ft peer detail':
Query Vlan IF State : UP, Manual validation - please ping peer
I am pretty sure that I did not see this status when I configured query vlan last time. Current version is A2(2.3).
Unfortunately this status does not seem to be documented anywhere on CCO.
I appreciate any help!
Thanks,
DanielHi Daniel,
The FT Query VLAN interface is an optional, yet very good, feature to be used when using redundant ACE modules or appliances. Without it, if the FT VLAN was to go down, the standby ACE will no longer receive FT heartbeats from the active ACE and therefore take the active role. However, if the active ACE is still running fine in the active role, then you don't want the standby ACE to take over as active because that will put them into an active/active scenario, which may lead to connectivity issues.
This is where the FT Query VLAN interface comes in. If the FT VLAN goes down, the standby ACE will notice this, but before taking the active role, it will ping it's peer IP address configured on the interface that is designated as the FT Query VLAN. If the ping is successful, then it will stay in the standby role, thereby saving you some headaches.
The status that you are seeing is the ACE's way of telling you that the interface is UP, but if you want to know if it can successfully ping the peer IP address, then you would have to manually ping the peer IP address from the CLI. The ACE does not periodically check the ping connectivity through any automatic mechanism. The automatic mechanism is only triggered by the FT VLAN going down.
Does this help?
Sean -
Metadata query to extract each session run duration for last 10 Runs
Here is the query: Select Subject_Area,Workflow_Name,Task_Name,Instance_Name,Task_Type_Name, Start_Time, End_Time from (Select Subject_Area,Workflow_Name,Task_Name,Instance_Name,Task_Type_Name,Cast(Start_Time As Timestamp) Start_Time, Cast(End_Time As Timestamp) End_Time, rank()over(partition by subject_area,workflow_name,instance_name,task_type_name order by Start_time desc) RFrom Rep_Task_Inst_Run Where Task_Type_Name<>'Start') where R<=10
Hi all, Please help me with metadata query to extract each session RUN_DURTION, Start Time, end time for last 10 runs of each session at a workflow level. I know we can get information from REP_WFLOW_RUN table but i dont know table strucure and I dont have access to Repository database and we need an exact query to raise it to admin team. so please provide me an exact query. Thanks
-
Query/Read Interface for API
Is there a query/read interface from the HRMS API's or from the TCA API's?
We are using customers online to maintain data , but I want to have a custom application to view the data.
Obvious choice would be through the TCA API's but I cannot find any Query/Read Interfaces there.
Oracle's Docs seem to say it's possible so could somebody point me in the right direction please
cheers
DominicAnyone have any idea of it ?
-
Hi all, Please can anybody help me with metadata query to extract all the sessions run duration information (start time and end time, run duration)in each workflow for last 10days.I dont have access to metadata repository so need exact query so that i can raise a request to admin team(he needs exact query). I know that we can get information from REP_WFLOW_RUN , but i dont know the table structure so please provide full query. Thanks,Ravi kumar
Hi all, Please help me with metadata query to extract each session RUN_DURTION, Start Time, end time for last 10 runs of each session at a workflow level. I know we can get information from REP_WFLOW_RUN table but i dont know table strucure and I dont have access to Repository database and we need an exact query to raise it to admin team. so please provide me an exact query. Thanks
-
Same query different timings , different sessions at the same time
I am running exactly the same query from 2 different sessions almost simultaneously and in one session it is taking 2 seconds and in the other it is taking 20 seconds. The explain plans in both the sessions (by set autotrace on) are exactly the same. The timing is almost same for succesive runs of the query in the same sessions. That is when I run the query again in the "slow session" it is always around 20 seconds and when I run the query again in the "fast session" it is always fast. The queries are being run within a few seconds of each other so the load on the database is almost same.
My hunch is that it is a database parameter that needs to be changed to solve this problem, can someone guide me with this ....which parameters I should ask our DBAs to adjust ? Our database is Oracle 10G.
Regards
AmitabhaDuplicate thread
Same query different timings , different sessions at the same time
Gints Plivna
http://www.gplivna.eu
Maybe you are looking for
-
Child account in family sharing asking for payment verification?
I am the organiser of my family sharing group which includes my three children (under 18). Today my son tried to download a Free app which would usually send a request to me to approve however instead it is asking on his iPad to provide payment accou
-
My iphoto program was all messed up so I properly uninstalled it, I have a good back up. When I reinstall iphoto from my iwork disc it installed Ok, but when I clk on the icon it says that my library is unavailable, use the new iphoto. What is the
-
Success with iDefrag and DiskWarrior on my Intel iMac! (indirectly)
Had some very good success using iDefrag and DiskWarrior on my intel iMac, both of which do not run directly on the intel platform yet. As I had observed a gradual (modest) slow-down over the course of the past month since I got my iMac, I couldn't h
-
How do I correct the silverlight application storage error to watch netflix movies?
I get a Silverlight application storage error when attempting to watch an instant netflix movie. Following instructions of error message does not correct. Instant movies play properly with Explorer - but not Firefox.
-
Java version and amount of SAPDATA
Hi! I would like to install SAP Solution Manager on Solaris Sparc 10 Zone (64 Bit) with Oracle. Questions: 1) Which Java version applies for the installation? I have installed 1.4.2.12. 2) Is that problem that the <sid>adm user exist already on the s