LKM CKM IKM executing sequence
Hi
How the execution of sequence of commands are decided in interface, when we execute a interface.
For e.g. (TRG_COUNTRY interface in Sales Administration folder)
we have LKM that have certain set of command and then IKM with ceratain set of command and CKM.
First few commands of LKM executes then of IKM and of CKM, at last the last command from LKM is executed, how this is defined.
Regards
Hi
thanks for the execution sequence.
Regarding the link between Diagram and Flow (LKM,IKM), I think i understood please tell me if I am wrong.
For e.g. the TRG_COUNTRY (In Sales Administration)
1) We define a join between SRC_REGION and TRG_COUNTRY as SRC.COUNTRY_ID column be same as TRG.COUNTRY_ID. And only populate the SRC.REGION where its like 'IND%'. Now this is the condition we define.
2) Now when we load data using LKM, the LKM will consider the above query while filling the data into C$ from SRC. Like we Write Insert in LKM etc.
AND
if we define a condition like in 1) for IKM, IKM will always consider the coindition we define while filling the data from I$ to TRG.
Is this the flow.
Regards
Similar Messages
-
Which LKM and IKM to use for Fast data loading b/w MSSQL 2005 and Oracle 11
Hi,
Can anybody help us to decide which LKMs and IKMs are best for data loading between MSSQL and Oracle.
Staging Area is Oracle. We have to load around 400Million rows from MSSQL to Oracle 11g.
Best regards,
MuhammadThanks Ayush,
You are right and it has dumped the file very quickly; but it is giving error on sqlldr call thorugh jython. I have reaised SR with oracle to look into it further.
thanks again and have a very nice time.
Regards,
Muhammad -
Executing sequence of commands using exec
How do I execute sequence of commads using java.lang.Runtime.exec()?
As a part of an assignment, I need to use the exec command to
a. change drive and then
b. change directory and then
c. execute some command.
Thanks.windows
"pushd <dir path> && <some command>" -
Can we execute sequence not from the 1st frame to end?
I had a problem that I want to execute sequence not from the 1st frame but from the specific frame that I want to execute to the end. How can I do? Please help me.
Instead of using a sequence I suggest you use a state machine. By using a state machine you can begin anywhere you like.
For more information in regards to a state machine, see the following link:
http://zone.ni.com/devzone/conceptd.nsf/webmain/C74CEC177A289DBD86256C4E00600196?opendocument
Hope this helps.
Mike -
Inconsistencies in LKM and IKM?
Hello,
I am trying to export from the demo HSQL_SRC, the city table to a file.
I have created file datastores, physical an logical and a model.
On load, the LKM prefixes all filenames with the directory I have provided, /temp.
The IKM seems to ignore this prefix.
Some logs:
Create work table
create table /temp/C$_mfileds2ds
CITY_ID STRING ,
CITY STRING
which I think is correct,
Export:
insert into /temp/C$_mfileds2ds
CITY_ID,
CITY
values
:CITY_ID,
:CITY
This is what I see.
Integration:
select distinct
'city_id' CITY_ID,
'city' CITY
from "C$_mfileds2ds"
where (1=1)
Should this not read: from "/temp/C$_mfileds2ds"
insert into mfileds2ds
city_id,
city
values
:city_id,
:city
Same here, prefix with /temp I think.
But still this is a warning, so no problem.
when inserting the thing crashes.
Why do I have a automatic /temp prefix during loading and not during integration?
Kind regards,
Frans.Thanks for your suggestion.
I have applied the change but the problem is still there.
So it seems to be located in the integration module.
create table /temp/C$_mfileds2ds
CITY_ID STRING ,
CITY STRING ,
POPULATION NUMERIC ,
REGION_ID NUMERIC
insert into mfileds2ds
city_id,
city,
population,
region_id
values
:CITY_ID,
:CITY,
:POPULATION,
:REGION_ID
I see the file.
The C$_ file is dropped
But still get the stacktrace:
-22 : S0002 : java.sql.SQLException: Table not found: C$_mfileds2ds in statement [select DISTINCT CITY_ID CITY_ID, CITY CITY, POPULATION POPULATION, REGION_ID REGION_ID from "C$_mfileds2ds" where (1=1)]
java.sql.SQLException: Table not found: C$_mfileds2ds in statement [select DISTINCT CITY_ID CITY_ID, CITY CITY, POPULATION POPULATION, REGION_ID REGION_ID from "C$_mfileds2ds" where (1=1)]
at org.hsqldb.jdbc.jdbcUtil.throwError(jdbcUtil.java:62)
at org.hsqldb.jdbc.jdbcPreparedStatement.<init>(jdbcPreparedStatement.java:1804)
at org.hsqldb.jdbc.jdbcConnection.prepareStatement(jdbcConnection.java:547)
at com.sunopsis.sql.SnpsQuery.a(SnpsQuery.java)
at com.sunopsis.sql.SnpsQuery.a(SnpsQuery.java)
at com.sunopsis.sql.SnpsQuery.updateExecStatement(SnpsQuery.java)
at com.sunopsis.sql.SnpsQuery.executeQuery(SnpsQuery.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execCollOrders(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSqlI.treatTaskTrt(SnpSessTaskSqlI.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.g.y(g.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:595)
kind regards,
Frans. -
Results from Executing Sequence in VB
I�m trying to control the TestStand engine from
Visual Basic. I�m using the Automation Server
interface rather than the ActiveX control because
ultimately I want to be able to interface with it
from script running in a web browser.
The problem I'm having is that I can execute a
sequence file but I can't get any meaningful
results out of it. For example the ResultStatus
property of each step in a sequence is blank.
However, when I run the same file in the sample
VB Test Operator program everything seems to work.
I guess it's probably because I'm not handling
the engine's UIMessageHandler properly.
The relevant code is as follows:
Set moTS = New TS.Engine 'using as Automation
Server
'Get a sequence file
Set moSequenceFile = moTS.GetSequenceFile
("c:\program
files\teststand\tutorial\sample2.seq")
'Get the main sequence
Set oSequence = moSequenceFile.GetSequence(0)
SequenceName = oSequence.Name
'Enable polling for UIMessages
moTS.UIMessagePollingEnabled = True
Timer1.Enabled = True
'Start an execution on this sequence, bypassing
the Proces model
Set moExecution = moTS.NewExecution
(moSequenceFile, SequenceName, Nothing, False,
ExecTypeMask_Normal)
'In UIMessage Handler code
Dim UIMsgCode As TS.UIMessageCodes
If Not moTS Is Nothing Then
If moTS.IsUIMessageQueueEmpty Then
Set moUIMsg = moTS.GetUIMessage
UIMsgCode = moUIMsg.Event
Select Case UIMsgCode
Case UIMsg_StartExecution
Case UIMsg_EndExecution
Debug.Print "Num Threads = " &
moExecution.NumThreads
Debug.Print "Execution Status = "
& moExecution.ResultStatus
'Print info about the steps
Set moSequenceFile =
moExecution.GetSequenceFile
Set oSequence =
moSequenceFile.GetSequence(0)
NumSteps = oSequence.GetNumSteps
(StepGroup_Main)
For i = 0 To NumSteps - 1
Set oStep = oSequence.GetStep
(i, StepGroup_Main)
Debug.Print "Name = " &
oStep.Name
Debug.Print "Description = "
& oStep.Description
Debug.Print "Result Status
= " & oStep.ResultStatus 'This is empty
Next
Debug.Print "Report = " &
moExecution.Report.All 'This is empty
Set oSequence = Nothing
Set moThread = Nothing
Timer1.Enabled = False
Case UIMsg_BreakOnUserRequest
Case UIMsg_BreakOnBreakpoint
'etc.
End Select
Set moUIMsg = Nothing
End If
End If
Sent via Deja.com http://www.deja.com/
Before you buy.Hi Paul,
Thanks for the examples web reference. The simple VB example will be
useful as there's less stuff to wade through! Plus, I'll probably also
eventually need to refer to the C++ examples.
Re: the current problem, I had in the meantime solved it on my own. I'd
done what you say below, but the critical thing I missed was defining
the sequence context object.
Kevin
In article <[email protected]>,
"Paul Mueller" wrote:
>
> Kevin,
>
> You'll need to use a timer callback or some asynchronous technique to
poll
> for UIMessages. Furthermore, you need to release the UIMessage
before TestStand
> will continue with the execution. The execution pauses while you are
handling
> the UIMessage. And the execution continues only when you release the
UIMessage
> (or set it to Nothing).
>
> THere is a Simple VB Operator Interface example on the web at
www.ni.com/support/epd/
>
> Hope this helps,
> Paul
>
> [email protected] wrote:
> >I�m trying to control the TestStand engine from>Visual Basic. I�m
using
> the Automation Server>interface rather than the ActiveX control
because>ultimately
> I want to be able to interface with it>from script running in a web
browser.>>The
> problem I'm having is that I can execute a>sequence file but I can't
get
> any meaningful>results out of it. For example the
ResultStatus>property of
> each step in a sequence is blank.>However, when I run the same file
in the
> sample>VB Test Operator program everything seems to work.>>I guess
it's probably
> because I'm not handling>the engine's UIMessageHandler properly.>>The
relevant
> code is as follows>>Set moTS = New TS.Engine 'using as
Automation>Server>>'Get
> a sequence file>Set moSequenceFile = moTS.GetSequenceFile>
("c:\program>files\teststand\tutorial\sample2.seq")>>'Get
> the main sequence>Set oSequence = moSequenceFile.GetSequence(0)
>SequenceName
> = oSequence.Name>>'Enable polling for
UIMessages>moTS.UIMessagePollingEnabled
> = True>Timer1.Enabled = True>>'Start an execution on this sequence,
bypassing>the
> Proces model>Set moExecution = moTS.NewExecution>(moSequenceFile,
SequenceName,
> Nothing, False,>ExecTypeMask_Normal)>>'In UIMessage Handler code>>Dim
UIMsgCode
> As TS.UIMessageCodes>>If Not moTS Is Nothing Then>> If
moTS.IsUIMessageQueueEmpty
> Then>> Set moUIMsg = moTS.GetUIMessage>> UIMsgCode =
moUIMsg.Event>>
> Select Case UIMsgCode> Case
UIMsg_StartExecution>
> Case UIMsg_EndExecution>> Debug.Print "Num
Threads =
> " &>moExecution.NumThreads> Debug.Print "Execution
Status
> = ">& moExecution.ResultStatus>> 'Print info about the
steps>
> Set moSequenceFile
=>moExecution.GetSequenceFile>
> Set oSequence =>moSequenceFile.GetSequence(0)>>
NumSteps
> = oSequence.GetNumSteps>(StepGroup_Main)>> For i = 0
To NumSteps
> - 1> Set oStep = oSequence.GetStep>(i,
StepGroup_Main)>
> Debug.Print "Name = "
&>oStep.Name>
> Debug.Print "Description = ">& oStep.Description>
Debug.Print
> "Result Status>= " & oStep.ResultStatus 'This is
empty> Next>>
> Debug.Print "Report = " &>moExecution.Report.All 'This
is
> empty> Set oSequence = Nothing> Set
moThread
> = Nothing>> Timer1.Enabled = False>> Case
UIMsg_BreakOnUserRequest>
> Case UIMsg_BreakOnBreakpoint> 'etc.>>
End Select>>
> Set moUIMsg = Nothing>> End If>End If>>>Sent via Deja.com
http://www.deja.com/>Before
> you buy.
>
Sent via Deja.com http://www.deja.com/
Before you buy. -
Error executing sequence in Planning
We are using Hyperion Planning and have been for years, and all of a sudden started having an issue. We did have a database corruption issue last week and had to recreate the databases, but other than that, nothing has changed. Here is what is occurring:
We use the workforce planning module to handle employee transfers, terminations, new hires, etc. and then those changes are transferred to the Expense database from the Workforce database. I will describe the transfer out, even though the issue is occurring with all:
The sequence utilizes two Run-time prompts and consists of three different business rules:
Rule 1 - Transfers employees from the two prompts out to a holding area - works perfect
Rule 2- Aggregates the combination of the two prompts - works perfect
Rule 3 - Moves the employee expenses from the Workforce database to the expense database. This is where the problem occurs. When looking in the log, it recognizes the two prompts, but then it gets an error on executing.
When I go into EAS and validate, the following error occurs: Cannot calculate. Analytic Server Error(1200323): Error parsing formula for [FIX STATEMENT] (line 21): expression expected after [,]
When I go to the individual rule causing the problem, the following error occurs: Cannot calculate. Analytic Server Error(1012001): Invalid Calc Script syntax [
DATACOPY "MonthFlag"->"NoDepartment"->"No Business Unit" TO "COR Gross Salaries"->->]
The area between the ->-> is where the two run time prompts go and it's like it doesn't recognize it.
Add'tl info: the prompts are hidden because we don't want the user to modify. But even when I unhide them, the same error occurs.
Sorry this is very long, but I was trying to provide as much information as possible.If the rule runs fine with hard-coded values (can you test?) then it points to an issue with the prompts as you suggest - but then they work fine for the first 2 rules.
Might sound a little simplistic, but can you try creating new variables and replacing the ones currently in the rules with these - I guess this will rule out an issue with a 'corrupt' prompt....
Wonder if the error indicates that for whatever reason the target for your copy cant find or doesnt recognise the members in your prompts?
JB -
Obtain/execute Sequence Generator in Toplink JPA
Hi, I have an entity bean with a database sequence for its primary key.
I can´t use something like:
@Id
@Column(name = "EMP_ID", nullable = false)
@GeneratedValue(generator="EMPSEQ")
@SequenceGenerator(name="EMPSEQ",sequenceName="EMP_SEQ", allocationSize=5)
private Long id;
because I need to know the new id of a new object before to persist it.
That is:
Employee newEmployee = new Employee();
Long newId = sequencer.nextVal();
newEmployee.setId();
Long id = newEmployee.getId();
entityManager.persist(newEmployee);
I need to execute the sequence nextVal method to manualy set the id. How can I do that?The id will be assigned to the object when you commit the transaction or call flush.
If you want to id back before you commit the transaction, calling EntityManager.flush() would be your best option.
You could also access the TopLink UnitOfWork.assignSequenceNumber(Object) API directly if you wished. -
Which LKM and IKM require ?????
I need to import one oracle table into .txt file. Can any body describe the steps involved in this process.
Which IKM and LKM we need to use ?Hi Asif,
Steps used for import table to File:
1) create the file datastore in the model
2)create the interafce int1 where choose the oracle table which is to be imported as source and File data store as target
3)Do the mapping in the target columns.
You can use IKM ISO SQL to File Append Km for the interface.
Thanks,
Madha. -
What is the teststand api call to execute sequence file after it is opened-C#?
I am programming in C#. I want to make a call to execute a sequence file after I call OpenSequenceFile. I want to do this outside of the GUI. I know that the GUI has a Single Pass button that executes the sequence, I want to know how can I just make the execution call myself?
Hi IM,
I think this thread will answer your task
http://forums.ni.com/ni/board/message?board.id=330&message.id=19658&query.id=461003
Regards
juergen
=s=i=g=n=a=t=u=r=e= Click on the Star and see what happens :-) =s=i=g=n=a=t=u=r=e= -
Make Simple OI.exe To begin executing sequence file immediately when opened
How do I make the Simple OI to begin executing a default sequence file immediately right after the Simple TestExec.exe file is opened? Without having to hit a Start Button on the UI.
Thanks!http://forums.ni.com/t5/NI-TestStand/Run-Seq-immediately-auto-after-UI-start/td-p/2912738
There are some options in there. Use the link from my 2nd option.
jigg
CTA, CLA
teststandhelp.com
~Will work for kudos and/or BBQ~ -
TS_EngineN​ewExecutio​n not executing sequence
I'm trying to run a TestStand sequence from
CVI. The TS_EngineNewExecution call returns correctly but doesn't seem
to actually run the sequence. I can write this same code in TestStand
and the sequence runs fine.
Here's a code snippet from the CVI project:
tsErrChkMsgPopup( TS_EngineGetSeqFileEx (objEngine,
&errorInfo,
pszSequenceFile,
TS_GetSeqFile_OperatorInterfaceFlags,
TS_ConflictHandler_Error,
&objSeqFile));
tsErrChkMsgPopup( TS_EngineNewExecution( objEngine,
&errorInfo,
objSeqFile,
"MainSequence",
objProcessModel, // where objProcessModel is 0
VFALSE,
TS_ExecTypeMask_InitiallyHidden,
CA_DEFAULT_VAL,
CA_DEFAULT_VAL,
CA_DEFAULT_VAL,
&objExecution)) ;
tsErrChkMsgPopup( TS_EngineReleaseSeqFileEx( objEngine, &errorInfo, objSeqFile, 0L, &unloaded)) ;
CA_DiscardObjHandle(objSeqFile) ;
In TestStand, the code which does the same thing, successfully:
FileGlobals.objSeqFile =
RunState.Engine.GetSequenceFileEx("C:\\Documents and
Settings\\Jen\\Desktop\\Sequence File 2.seq", 0, ConflictHandler_Error)
RunState.Engine.NewExecution( FileGlobals.objSeqFile, "MainSequence", Nothing, False, ExecTypeMask_InitiallyHidden)
RunState.Engine.ReleaseSequenceFileEx( FileGlobals.objSeqFile, 0)
Why
isn't the TS_EngineNewExecution call working correctly? What subtlety
might I be missing? I know the engine handle is OK because I can use
it to display a popup dialog; the sequence object handle seems correct
also.
I'm running CVI 8.5 and TS 4 on Windows XP.
Thanks. -- JenHi JenniferB,
I'm not sure exactly what is wrong with the code you posted, in either case, you probably will want to use the TestStand UI Controls to starts a new execution rather than call into the API directly.
The TestStand UI Controls make it really easy to do this kind of thing and handles a lot low level functionality behind the scenes that you would otherwise have to implement yourself. There are 3 Manager Controls, the ApplicationMgr, SequenceFileViewMgr, and the ExecutionViewMgr. They can be used to develop user interfaces, and connect visible UI controls (like buttons and list boxes) to automatically control the TestStand API.
We always encourage people to use these Manager Controls as it is less prone to error and also a lot easier to implement.
Jervin Justin
NI TestStand Product Manager -
Reg : Doubts on Knowledge Modules
hi all,
Please give brief idea about knowledge modules. please dont give links .
KNOWLEDGE MODULES
REVERSE ENGINEERING
LKM
CKM
IKM
JKM
SKM
Thanks a lot in advance ,
-Chinnu.LKM - Loading
The LKM - Loading Knowledge Modules - load (or extract data) from one data server to another.
They are named as follows:
LKM <source server technology> to <target server technology> (<module specificity>)
JKM - Journalizing
The JKM - Journalizing Knowledge Modules - setup journalizing on a datastore in a data model.
They are named as follows:
JKM <technology to journalize>
Note: Journalizing uses triggers and views. Therefore technologies that do not support these functions generally do not have an associated JKM.
IKM - Integration
The IKM - Integration Knowledge Modules - integrate data in a target data server from a Staging Area. Frequently, the Staging Area and target space are on the same data server. The IKM can manage options such as data insertion (Append), or update (Incremental Update), etc.
They are named as follows:
IKM <Staging Area data server technology> to <target data server technology> <option managed in the module> (<module specificity>)
IKM <Staging Area and target data server technology> <option managed in the module> (<module specificity>)
Note: The option managed by the module frequently indicate the more complex option supported in this knowledge module. For instance, a module Incremental Update (update) should also be able to manage the option append, which is data insertion, and suppression of data in the target..
CKM - Check
The CKM - Check Knowledge Modules - manage the data quality and cleansing, on static data and on data flows.
They are named as follows:
CKM <Checked Technology> (<module specificity>)
RKM - Reverse-engineering
The RKM - Reverse Knowledge Module - reverse-engineer a data model stored in a given technology. As default, the standard reverse allows to reverse all the information and meta-data in most models. It is required for certain technologies (files for instance) to use a personalized reverse and therefore a RKM. They are named specifically.
SKM - Services
SKM (Service Knowledge Modules) are used to generate the code required for creating data services. This code (typically Java) can be automatically compiled and deployed to a web service container.
You can get more information about various KMs from
http://www.oracle.com/technology/products/oracle-data-integrator/10.1.3/htdocs/documentation/oracledi_km_reference.pdf
There is no escape from URL :) -
No Authorization error in executing a planning sequence
Hi,
We are using BI 7.0 Integrated Planning.
We have implemented Mark Bernaud's file upload solution. We have used a planning sequence that uploads the file and stores it in a cube. Using it, we are able to upload files without any problem when executing with a SAP User Id which has all the authorizations (the user id has SAP_ALL specified in its list of profiles). Now, we have a requirement where we need to execute the file upload using a user id which has limited authorizations. When we are trying to execute the file upload with the userid that has limited authorizations, we are getting the following authorization error.
'You are not authorized to execute sequence PL_SEQ_FL_UPLOAD'
where PL_SEQ_FL_UPLOAD is the name of planning sequence we are using. We have also included the authorization variable in the filters being used as suggested in one of the blogs but this didn't help.
Could anyone please let us know the authorization objects to be added to the user id to enable access to this file upload.
Many Thanks,
Narendra.Thank you very much Diogo,
The objects you suggested were already there. We have successfully traced the error by switching on the trace using ST01. We found the reason for the error to be that display authorization is not provided for S_RS_PLSQ whereas execute authorization is already present for that.
Once again thanks Diogo.
Many Thanks,
Narendra -
Why i cann't get the executed step index of main segment of a sequence?
Hi, Everyone!
Could someone help me ,Pls?
Query:
How can i get the executed step index of main segment of a executed sequence?
Aim:
I want to let Teststand reveal the executed step index no matter when it running in main segment, setup segment or cleanup segment when i terminate executing sequence.
My action:
I add a Statement step in SequenceFilePostStep , the content is FileGlobals.GetArrayOffset1= RunState.Sequence.Main.GetArrayOffset("Pass/Fail Test1",0,"0").
but it cann't work, and it is error.The backslashs are escape characters which tell the expression to interpret the " " as actual quotes. Since the expression Doug posted had other quote marks in it here: ("", 0, "[\"Pass/Fail Test1\"]") we have to escape the inner quotation marks so that the expression will be interpreted correctly. The backslash does this.
Daniel E.
TestStand Product Support Engineer
National Instruments
Maybe you are looking for
-
How do I use creative cloud with an iPad
I am relatively new to Creative cloud. It is touted as a way to access and work on creative files from anywhere but it does not seem like I can work on those files from my iPad unless I pay extra for touch apps. If that is so then I really cannot wor
-
Using elements photo-downloader
I have just bought PSE 9 to g with Premiere elements 9, I had been only downloading video clips to my computer via elements photo-downloader, but now I'm putting on photos as well, the photos are now loading into the main file (I specified) on C that
-
How to create local store adapters in bulk without using ODSM in OVD
Hello, Our requirement is to create 62 local store adapters in OVD Hence, it can not be done using manual effort I have tried to do this using below approach: Create an ldif containing 62 groups Update adapters.os_xml to have the 62 nodes of "standar
-
My iPhone keeps going crazy, it will randomly open voice control and play music and then close voice control, and often causes the music to speed up, this only appears to have started after the recent apple up date, what can I do?
-
Portions of iPhoto library missing
Panic as usual! I opened iPhoto to review pics in one of the folders. When I clicked on the folder, the number showing the quantity of pics in the folder rapidly decsended to zero! Panic! There were no pics in the folder! To make a long story short,