Help in modifying the Sequence Model
Hi,
I would like to do one of the following:
1) Modify the Single Pass execution entry point, so that, it will call the 'PreUUT' sequence in the same way as the 'testUUTs' entry point.
or
2) Add a new Entry point that does what is described in (1) above.
3) In addition I would like to make an entry point 'PARTIAL TEST' that will, both, call the preUUT and creats a report? (this is in case I select to test only few steps of my sequence). It is required to call the 'preUUT', to generate a report and to collect data with the database in this case.
If it makes things easier, I'm willing to modify the 'Single Pass' to 'Partial Test' instead of adding a new entry point.
Any suggestions/guidlines/examples before I begin to di
g in?
Thanks
Hi Rafi,
My first suggestion would be to make a copy of the sequential process model in your user directory. In my case: C:\Program Files\National Instruments\TestStand 3.1\Components\User\Models. So copy all files from C:\Program Files\National Instruments\TestStand 3.1\Components\NI\Models\TestStandModels to your user directory. These paths will vary depending on where you installed TestStand and which version you're using. This way you will always have the original code to refer to. By default TestStand looks in the user Components directory first to find files so it will use your modified process model. You can change this by going to Configure >> Search Directories.
I don't think it would be any easier to modify Single Pass versus creating a new entry poi
nt. When you create a new entry point you can always copy the code from the Single Pass entry point. I would make the decision based on what options you want the user to have. It may be that you always want the user to enter the serial number. In this case you never want the user to use the Single Pass entry point in its orginal form. So,I would delete this entry point or rename it to Partial Test or leave it Single Pass and modify the code. It really depends on what you want your user to see.
As you dig in if you have more questions please feel free to post back.
Regards,
Sarah Miracle
National Instruments
Similar Messages
-
Need help in modifying the column length
Hi Experts,
I need to modify the length of a column from char(10) to char(5), but it's showing the error of:
ALTER TABLE appr_group_table MODIFY (APPR_TBLNO CHAR(5)) It's showing the below error:
ERROR at line 1:
ORA-01441: cannot decrease column length because some value is too bigI've checked in the dbase but there is no any value of this column having more than 5 characters:
SQL> SELECT APPR_TBLNO FROM appr_group_table;
APPR_TBLNO
ANTAB
ANTAB
ANTST
SCCTR
SOTAB
SOTAB
SOTAB
SOTAB
SOTAB
SOTAB
SOTAB
11 rows selected.Thnx in advance for helping me out.....char means fixed length variable. when you say char(10) oracle will reserve 10 places for your data. that means in your output what you are seeing as blank spaces are also considered as data. that is the reason, it is not allowing you to reduce the size.
better solution is to create new column with varchar2 or char(5) datatype and transfer this column data into new column and then drop original column. -
Need help to Modify the STD report which uses the Tcode CATS_DA.
Hi ,
we have a requirement as below. we need Add two Additional Fileds in the OutPut of the Std Report ( Tcode CATS_DA) .( 2 fileds are one is Managername /Manager employee number ) ..
Can you Please where we need to Modify the code to meet the above requirement.
Thanks in Advance.
Edited by: sandeep on Jul 29, 2008 12:45 PMCopy the report to "Z" version and plug in fields .
Thanks,
Saquib -
Help to modify the Release procedure without disturbing the existing class
Hi All,
We have a requirement to modify the existing workflow approval procedure for PR and PO to include a case, where the PO amount is less than certain value (say 100 EUR) and the material group is equal to certain value, then we need to include the approval levels L2 (defined for PR) and X2 (defined for PO).
Taking the case for PO`s, please note the following information,
Existing release Strategies & release Levels for PO are
51 Level X4
52 Level X4 + X3
53 Level X4 + X3 + X2
54 Level X4 + X3 + X2 +X1
Characteristics used
Total Net order Value
Purchasing organization
Order Type
Purchasing Group
Example : If the PO triggering a Release strategy 51 and if the conditions PO Value and Material Group satisfied then in addition to X4 system should send the PO Approval to X2 also. Similarly if the Po triggering the Release strategy 52 then in addition to X4 + X3, approval from X2 also required (provided if the condition satisfies).
Solutions tried
1) We can achieve the requirement by adding a dummy variable in the Characteristics and defining the new release strategy 55 with Level X4 + X2 and using the User Exit EXIT_SAPLEBND_002 .But we donu2019t want to touch the Characteristics and class because this is used by other companies also.
2) Also we can add a characteristic Material group with value equal to the required value and define 2 new release strategies 55 with Level X4 + X2 and 56 with Level X4+ X3 +X2.For all the other release strategies we can maintain the material group value as blank. Since the characteristics used by many companies we donu2019t want this option also.
Request your valuable suggestion to meet the above requirement, without disturbing the existing characteristics and Classes, would be highly appreciable.>
MadhanRaj S wrote:
But we cannot use those because these are used by other companies of the same organization.
>
> We need a solution other than these two options with out disturbing the existing charecteristics and class.
It looks to me like you need a new release strategy for the company that is different. This is a perfectly normal way to use release strategies and is exactly what they are designed for.
Cheers,
Mike -
Modifying the cube model & others doubts
Hello Experts,
I have a few doubts about certain BW30B concepts which I would like to seek help from experts in this very impressive forum.
A. From which ODS table does Init/Delta process use to load into connected data target?
B. When data model is changed to add a new attribute, must the Transfer Structure/Data Source be changed as well to include it, just as comm structure, transfer & update rules are modified?
C. To add a new characteristic into the model, I deleted existing cube data & added a new characteristic to this cube to avoid copying existing queries. A new cube is created with existing cube as template. Existing cube data is loaded into this new cube. Then, I adapted txfr & update rules and infosource. One way to complete the change is to load historical data for only the new characteristic from source system and then reload existing data from the new copy cube. The other way is simply to load all history from source system into emptied modified existing cube. I would like to clarify on the steps for the earlier method I mentioned. I cannot understand how data for only the new char can be loaded and then reload from copy cube back into modified, existing cube. Please help to clarify on this method.
D. When adding a new keyfigure, datasource is changed accordingly but its not stated that for char change, data source also need to be changed accordingly. I would think it needs to be changed too for any char / kf added to the model. Please could you confirm this with me.
E. For aggregates, how many maximum characteristics can be used as line item dimensions, not inclusive of data package,time/unit dimensions? Is it that only unit is optional dimension? Please confirm this with me as well.
F. Under what condition must the inventory marker not be updated?
Would be greatful for any useful help given.
warmest regards,
Alfonso SpinelliHi Alfonso,
Some answers for you:
A. Data is taken from the Change log table.
B. It depends...if you need to get the data fro the new attribute from the sourec system, then yes the data source and transfer structure will change. If the new data is being populated by reading some values that are already in BW tables, then you would not need to change the datasource. The you would change the comm structure and update rules.
C. The method you are talking about, i.e. create a copy of the cube, move data from original to copy and then reload back to original...is used to preserve the data. If you add a new char to an existing dimension, you need to delete the data of the cube. So this method is the workaround, because you have parked the data and then would not need to reload from the source. However, if you are adding a new char to a new dimension, you do not need to delete the data. Of course for the ne char, you will have data only from this point onwards. If you need all history data for the new char, you would need to reload from the source.
D. The answer to this is similar as point B. If you have the data for that char and can reuse it in your cube load (by coding in your update rules), then you would not need to change the datasource.
E. For line item dimensionswe will always have only one char, be it cube or aggregate. See dimensions are groupings of chars. P, T and U dimensions will always be there, like Time dimension will contain the chars like 0CALMONTH, 0FISCPER...
Hope this helps... -
In simple user Interface modify the sequence view to show only executing step
I want to see only the Single executing step in sequence view of the user interface
are there any egs for the same!!This is relatively trivial to implement yourself. Handle the UIMessageEvent of the ApplicationMgr and when you get a trace UIMessage do something like the following:
if (uiMsg.Event == UIMsg_Trace)
int notUsed;
String currentStepName = "";
SequenceContext context = uiMsg.Thread.GetSequenceContext(0, out notUsed);
if (context.NextStepIndex >= 0)
currentStepName = context.NextStep.Name;
/// Do something with currentStepName like update an indicator control.
Hope this helps,
-Doug -
Help for Modifying the Code for display a 7 column table
Hi,
Is someone can help me to modify that code I have a 7 colomn table and as many row as their is results?
Right now, All my result are in a 1 colomn table and and 1 row,
thanks,
Roseline
DECLARE
vtemp varchar2(4000) DEFAULT ' ';
BEGIN
htp.p('<HTML>');
htp.p('<HEAD>');
htp.p('<TITLE>DISQUES C</TITLE>');
htp.p('</HEAD>');
htp.p('<BODY>');
FOR idx IN
SELECT DVD_ID, NomFichier,
row_number() over(partition BY DVD_ID ORDER BY NomFichier ASC) AS rna,
row_number() over(partition BY DVD_ID ORDER BY NomFichier DESC) AS rnd
FROM elements
WHERE PROJET_ID = 1
ORDER BY DVD_ID ASC, rna ASC
loop
IF idx.rna = 1
then
htp.p('<TABLE>');
htp.p('<TR>');
htp.p('<TD>' || idx.DVD_ID ||' </TD> ');
htp.p('</TR>');
htp.p('<TR>');
end IF;
vtemp := vtemp || '<TD>' || idx.NomFichier || ' </TD>';
IF mod(idx.rna, 7) = 0 OR idx.rnd = 1
then
htp.p(vtemp);
vtemp := ' ';
end IF;
IF idx.rnd = 1
then
htp.p('</TR>');
htp.p('</TABLE>');
end IF;
end loop;
htp.p('</BODY>');
htp.p('</HTML>');
end;Sorry:
I have a table contening PROJECT ID, DVD ID and FILES NAME (NomFIchier) that are on the DVD.
In my page result, I want the list of the DVD from a project with the following formatting ( 7 columns table), using PL/SQL.
1 DVD can contain from 5000 files
ex:
Ex:
select DVDNAME, NomFichier fromTABLE where project = 2
*85*
2635080 2636608 2637084 2637091 2637092 2637093 2637147
2637152 2637153 2637154 2637155 2637156 2637157 2637164
*86*
2639497 2639498 2639502 2639504 2639505 2639506 2639507
2639508 2639509 2639511 2639512 2639519 2639521 2639522
******* ******* ******* ******** ********* ******** ******** With this code following code,
DECLARE
vtemp varchar2(4000) DEFAULT ' ';
BEGIN
htp.p('<HTML>');
htp.p('<HEAD>');
htp.p('<TITLE>DISQUES C</TITLE>');
htp.p('</HEAD>');
htp.p('<BODY>');
FOR idx IN
SELECT DVD_ID, NomFichier,
row_number() over(partition BY DVD_ID ORDER BY NomFichier ASC) AS rna,
row_number() over(partition BY DVD_ID ORDER BY NomFichier DESC) AS rnd
FROM elements
WHERE PROJET_ID = 1
ORDER BY DVD_ID ASC, rna ASC
loop
IF idx.rna = 1
then
htp.p('<TABLE>');
htp.p('<TR>');
htp.p('<TD>' || idx.DVD_ID ||' </TD> ');
htp.p('</TR>');
htp.p('<TR>');
end IF;
vtemp := vtemp || '<TD>' || idx.NomFichier || ' </TD>';
IF mod(idx.rna, 7) = 0 OR idx.rnd = 1
then
htp.p(vtemp);
vtemp := ' ';
end IF;
IF idx.rnd = 1
then
htp.p('</TR>');
htp.p('</TABLE>');
end IF;
end loop;
htp.p('</BODY>');
htp.p('</HTML>');
end;I have the following result
85
2635080 2636608 2637084 2637091 2637092 2637093 2637147 2637152 2637153 2637154 2637155 2637156 2637157 2637164 2637169 2637170 2637172 2637173 2637202 2637203 2637213 2637214 2637215 2637216 2637217 2637218 2637219 2637220 2637234 2637235 2637236 2637237 2637239 2637240 2637241 2637242 2637244 2637246 2637247 2637249 2637250 2637251 2637252 2637253 2637257 2637263 2637266 2637269 2637270 2637274 2637276 2637279 2637284 2637290 2637291 2637292 2637293 2637294 2637295 2637296 2637301 2637303 2637304 2637305 2637306 2637311 2637320 2637322 2637324 2637331 2637333 2637336 2637352 2637353 2637354 2637358 2637359 2637360 2637361 2637362 2637363 2637364 2637371 2637378 2637383 2637384 2637385 2637386 2637387 2637388 2637391 2637392 2637395 2637400 2637405 2637412 2637418 2637419 2637423 2637443 2637446 2637453 2637461 2637470 2637483 2637484 2637485 2637494 2637502 2637506 2637507 2637519 2637532 2637536 2637537 2637539 2637540 2637541 2637544 2637553 2637554 2637555 2637557 2637575 2637578 2637579 2637580 2637581 2637582 2637583 2637587 2637588 2637589 2637590 2637591 2637592 2637593 2637594 2637595 2637597 2637604 2637605 2637606 2637611 2637619 2637628 2637629 2637630 2637631 2637632 2637633 2637637 2637645 2637647 2637648 2637650 2637651 2637657 2637658 2637659 2637661 2637662 2637668 2637674 2637676 2637677 2637679 2637680 2637681 2637684 2637685 2637686 2637688 2637689 2637691 2637692 2637694 2637696 2637700 2637701 2637702 2637703 2637704 2637705 2637706 2637707 2637722 2637725 2637741 2637749 2637751 2637752 2637753 2637762 2637764 2637771 2637777 2637779 2637781 2637783 2637785 2637789 2637793 2637809 2637810 2637811 2637812 2637823 2637827 2637836 2637837 2637838 2637845 2637850 2637854 2637855 2637857 2637858 2637859 2637860 2637861 2637866 2637867 2637870 2637874 2637875 2637876 2637877 2637878 2637879 2637880 2637881 2637884 2637885 2637886 2637887 2637891 2637892 2637893 2637894 2637895 2637897 2637898 2637899 2637900 2637901 2637902 2637904 2637906 2637907 2637908 2637909 2637913 2637914 2637916 2637917 2637918 2637919 2637920 2637921 2637923 2637926 2637928 2637929 2637930 2637933 2637935 2637936 2637937 2637939 2637940 2637941 2637942 2637943 2637949 2637950 2637951 2637952 2637954 2637955 2637958 2637965 2637967 2637969 2637970 2637971 2637973 2637978 2637985 2637986 2637987 2637990 2637991 2637992 2637993 2638001 2638002 2638005 2638007 2638009 2638016 2638018 2638020 2638023 2638027 2638029 2638033 2638034 2638035 2638036 2638039 2638043 2638044 2638045 2638046 2638048 2638049 2638052 2638053 2638055 2638057 2638058 2638063 2638064 2638065 2638067 2638068 2638069 2638072 2638076 2638080 2638081 2638082 2638083 2638084 2638087 2638089 2638096 2638097 2638098 2638099 2638100 2638101 2638102 2638103 2638105 2638106 2638108 2638110 2638113 2638117 2638118 2638120 2638121 2638122 2638124 2638126 2638128 2638134 2638135 2638136 2638137 2638139 2638140 2638141 2638143 2638146 2638147 2638148 2638149 2638150 2638151 2638152 2638153 2638154 2638155 2638157 2638159 2638167 2638168 2638172 2638173 2638174 2638175 2638181 2638184 2638185 2638187 2638192 2638193 2638198 2638199 2638200 2638202 2638203 2638205 2638207 2638208 2638209 2638210 2638211 2638212 2638214 2638218 2638219 2638220 2638221 2638223 2638230 2638232 2638236 2638243 2638245 2638246 2638247 2638248 2638258 2638264 2638265 2638268 2638279 2638280 2638281 2638283 2638284 2638287 2638305 2638309 2638310 2638311 2638312 2638316 2638317 2638318 2638319 2638321 2638324 2638330 2638331 2638332 2638333 2638334 2638335 2638336 2638337 2638338 2638339 2638340 2638341 2638342 2638344 2638347 2638349 2638352 2638353 2638364 2638372 2638374 2638376 2638379 2638390 2638391 2638392 2638393 2638394 2638395 2638402 2638405 2638407 2638414 2638421 2638422 2638429 2638430 2638432 2638434 2638438 2638442 2638444 2638457 2638467 2638469 2638474 2638478 2638479 2638480 2638484 2638486 2638488 2638489 2638491 2638506 2638507 2638508 2638510 2638511 2638512 2638513 2638514 2638515 2638516 2638517 2638518 2638519 2638520 2638521 2638522 2638523 2638525 2638527 2638529 2638530 2638531 2638532 2638536 2638537 2638563 2638564 2638567 2638568 2638569 2638618 2638628 2638629 2638634 2638644 2638647 2638649 2638653 2638658 2638666 2638671 2638675 2638677 2638679 2638680 2638685 2638687 2638689 2638691 2638692 2638693 2638694 2638695 2638696 2638697 2638699 2638701 2638702 2638703 2638704 2638705 2638706 2638707 2638709 2638710 2638711 2638712 2638713 2638714 2638720 2638721 2638725 2638726 2638728 2638731 2638732 2638736 2638737 2638739 2638740 2638741 2638744 2638745 2638747 2638748 2638753 2638754 2638755 2638756 2638757 2638760 2638763 2638764 2638768 2638777 2638781 2638782 2638783 2638791 2638793 2638795 2638796 2638798 2638799 2638801 2638810 2638811 2638813 2638814 2638815 2638816 2638817 2638818 2638832 2638833 2638834 2638835 2638836 2638846 2638847 2638848 2638849 2638850 2638851 2638852 2638854 2638855 2638857 2638858 2638859 2638860 2638861 2638862 2638864 2638866 2638867 2638868 2638869 2638870 2638872 2638873 2638874 2638876 2638883 2638884 2638885 2638893 2638895 2638900 2638923 2638927 2638928 2638929 2638931 2638932 2638935 2638936 2638937 2638939 2638942 2638943 2638949 2638952 2638954 2638955 2638956 2638957 2638958 2638959 2638960 2638961 2638962 2638968 2638976 2638978 2638979 2638980 2638983 2638984 2638986 2638988 2638994 2638995 2638998 2638999 2639001 2639002 2639003 2639006 2639011 2639012 2639013 2639014 2639016 2639017 2639018 2639024 2639025 2639030 2639036 2639038 2639039 2639043 2639045 2639046 2639049 2639055 2639057 2639064 2639066 2639067 2639068 2639069 2639072 2639074 2639076 2639079 2639080 2639081 2639085 2639086 2639092 2639098 2639099 2639100 2639101 2639103 2639104 2639105 2639106 2639107 2639109 2639110 2639111 2639112 2639125 2639128 2639129 2639131 2639132 2639133 2639134 2639137 2639138 2639139 2639144 2639146 2639148 2639149 2639159 2639162 2639164 2639165 2639167 2639177 2639179 2639186 2639187 2639188 2639191 2639196 2639197 2639204 2639205 2639208 2639214 2639217 2639218 2639220 2639221 2639223 2639224 2639225 2639226 2639227 2639230 2639236 2639237 2639238 2639239 2639241 2639242 2639246 2639248 2639260 2639262 2639263 2639264 2639270 2639271 2639292 2639293 2639296 2639298 2639299 2639300 2639302 2639303 2639304 2639305 2639306 2639307 2639308 2639309 2639311 2639315 2639316 2639317 2639319 2639321 2639322 2639323 2639324 2639325 2639326 2639327 2639328 2639329 2639330 2639331 2639333 2639336 2639338 2639339 2639341 2639342 2639343 2639344 2639345 2639346 2639348 2639349 2639350 2639356 2639358 2639359 2639360 2639361 2639362 2639364 2639365 2639367 2639368 2639369 2639370 2639373 2639374 2639376 2639378 2639379 2639381 2639386 2639387 2639388 2639389 2639391 2639394 2639396 2639397 2639398 2639400 2639401 2639404 2639405 2639406 2639409 2639410 2639411 2639412 2639419 2639423 2639426 2639427 2639429 2639434 2639437 2639440 2639446 2639448 2639450 2639457 2639465 2639466 2639467 2639468 2639469 2639472 2639473 2639474 2639475 2639478 2639485 2639486 2639487 2639488 2639489 2639491 2639492 2639495
86
2639497 2639498 2639502 2639504 2639505 2639506 2639507 2639508 2639509 2639511 2639512 2639519 2639521 2639522 2639523 2639525 2639527 2639530 2639542 2639543 2639552 2639553 2639554 2639555 2639559 2639560 2639561 2639563 2639564 2639565 2639567 2639574 2639575 2639578 2639579 2639581 2639582 2639584 2639585 2639586 2639587 2639588 2639589 2639591 2639595 2639596 2639597 2639598 2639599 2639605 2639618 2639621 2639623 2639624 2639627 2639628 2639637 2639638 2639639 2639644 2639647 2639648 2639649 2639650 2639654 2639658 2639662 2639665 2639669 I have some sample date here:
http://www.developpez.net/forums/attachments/p57656d1263922095/bases-donnees/oracle/pl-sql/html-affichage-tableaux-conditions/testcase.zip/
I want to know if it's possible to achieve what I want based on the code here.
I'm working on Application Express 3.1.2.00.02
thanks!!
Roseline -
Need help in modifying the Calls by the Telemarketing agent
Hi Group,
I am facing issues while updating the calls using the Function module 'CRM_CLM_CALL_MODIFY'.
the business requirement is as under:
- a program needs to be built which will take the calls from all the Call lists from the Current week and has to update these
calls by using by a certain field called 'CALL_RESULT' of the Sturucture 'CRMS_CLM_CALL'.
- I have collected all the Calls but while using the Function module 'CRM_CLM_CALL_MODIFY', I was not getting any
exceptions, but still could not the see the updation being done to the calls in the Call lists.
In the CRM system also, there is no sign of this Function module being used and in the SAP Market place also I could not get a proper answer/notes to this query.
So please let me know your inputs on this to proceed further on the updation part.
Thanks for the help in advance.
Regards
Vishnu.Hi Group,
This can be resolved by creating the Implicit enhancement and adding the required functionality.
Regards,
Vishnu. -
Hi all, so all my contacts started with "+1". The goal was to erase the "+" and just have all of them start with "1". However, I messed up royally. I ran the following script, which made all my contacts start with "1+1". :
tell application "Contacts"
repeat with eachPerson in people
repeat with eachNumber in phones of eachPerson
set theNum to (get value of eachNumber)
if (theNum starts with "1+") then
set value of eachNumber to "1" & theNum
end if
end repeat
end repeat
save
end tell
This is messed up in 2 ways. Firstly, I meant to write "+1" in the script, but instead I wrote "1+". Secondly, even if I had written "1+", it still wouldn't make sense, because I'd effectively be telling the program to just add "1" in front of what's already there, including the "+1".
Could someone please tell me how to modify this script to say:
If the contact starts with "1+1", then erase the "1+1". Then I would need another script to take all my numbers and add "1" in front of them.What you want to do is simply delete the first few characters from the phone number, yes?
How about something like this:
repeat with eachNumber in phones of eachPerson
set theNum to (get value of eachNumber) as string
if (theNum starts with "1+1") then
set myFixedNum to (characters 3 thru -1) of theNum
else if (theNum starts with "+1") then
set myFixedNum to (characters 2 thru -1) of theNum
end if
set value of eachNumber to (myFixedNum as string)
end repeat
That will take you from 1+1 or +1 to 1 in one easy step. -
When i run the following query,
select row_wid,
case when X_ACT_TYPE in ('Install','3Ph Batt Replacement') then 'FLAG_1'
when (x_act_type ='Maintenance' and X_act_subtype = 'Break Fix') then 'FLAG_2'
When (x_act_type ='Maintenance' and X_act_subtype = 'Preventive Maintenance') then 'FLAG_3'
else 'FLAG_4' end as FLAG_TYPE
from anl_crm_rmw.wc_activity_d
my value for flag_type is always Flag_4. It is not able to find other types.
Is there any problem in query. Pls guide me.I am getting the following error ORA-00933, when i use the following query,
select a.row_wid,
case when a.X_ACT_TYPE = 'Install' then 'FLAG_1'
when a.X_ACT_TYPE = '3Ph Batt Replacement' then 'FLAG_1'
when a.X_ACT_TYPE = 'Customer Training' then 'FLAG_1'
when a.X_ACT_TYPE = 'Product Substuition' then 'FLAG_1'
when a.X_ACT_TYPE = 'Customer Commercial Support' then 'FLAG_1'
when (a.x_act_type = 'Maintenance' and a.X_act_subtype = 'Break Fix') then 'FLAG_2'
when (a.x_act_type = 'Maintenance' and a.X_act_subtype = 'Break/Fix') then 'FLAG_2'
when (a.x_act_type = 'Maintenance' and a.X_act_subtype = 'Break Fix/Corrective Maint') then 'FLAG_2'
when (a.x_act_type = 'Maintenance' and a.X_act_subtype = 'Break Fix-Corrective Maint') then 'FLAG_2'
When (a.x_act_type = 'Maintenance' and a.X_act_subtype = 'Preventive Maintenance') then 'FLAG_3'
When (a.x_act_type = 'Maintenance' and a.X_act_subtype = 'System Removal') then 'FLAG_3'
When (a.x_act_type = 'Maintenance' and a.X_act_subtype = 'Standby') then 'FLAG_3'
else 'FLAG_4' end as FLAG_TYPE,
C.wrnty_end_dt
from anl_crm_rmw.wc_activity_d A,
anl_crm_rmw.wc_activity_F B,
anl_crm_rmw.w_asset_d C
where A.ROW_WID = B.ROW_WID
and B.ASSET_WID = C.ROW_WID
and a.row_wid = 2088219
group by A.row_wid, case when A.X_ACT_TYPE = 'Install' then 'FLAG_1'
when A.X_ACT_TYPE = '3Ph Batt Replacement' then 'FLAG_1'
when A.X_ACT_TYPE = 'Customer Training' then 'FLAG_1'
when A.X_ACT_TYPE = 'Product Substuition' then 'FLAG_1'
when A.X_ACT_TYPE = 'Customer Commercial Support' then 'FLAG_1' end
when (A.x_act_type = 'Maintenance' and a.X_act_subtype = 'Break Fix') then 'FLAG_2'
when (A.x_act_type = 'Maintenance' and a.X_act_subtype = 'Break/Fix') then 'FLAG_2'
when (A.x_act_type = 'Maintenance' and a.X_act_subtype = 'Break Fix/Corrective Maint') then 'FLAG_2'
when (A.x_act_type = 'Maintenance' and a.X_act_subtype = 'Break Fix-Corrective Maint') then 'FLAG_2'
When (A.x_act_type = 'Maintenance' and a.X_act_subtype = 'Preventive Maintenance') then 'FLAG_3'
When (A.x_act_type = 'Maintenance' and a.X_act_subtype = 'System Removal') then 'FLAG_3'
When (A.x_act_type = 'Maintenance' and a.X_act_subtype = 'Standby') then 'FLAG_3'
else 'FLAG_4' end -
How to invoke the Client Sequence Clearup process in the Sequencial​Model?
Hi,
I want to know how to directly call the Client Sequence Clearup in the SequencialModel?
I don't wait to modify the main squence files, because many of the clearups in sequence files are different. I want realize it by modifying SequencialModel file.
there are the problem I suffered:
I have added the some process in clearup like close port, close com, but when I terminate the program, clearup not be executed, I need to modify the SequentialMode to realize that it will jump to the Client main sequence to execute the clearup first when I terminate the process, then execute the other clear process in the sequencialmodel process.
please help,
thanks,
IvanHi,
I also faced the same problem in my project. I am not sure whether there are any direct methods, but i achieved it through a round about method.
1. Create a Boolean station global
2. Set it to True when you exit the client sequence – as a Last Step in the client sequence clean up tab
3. Modify the process model to continue the clean up only after the Boolean value is True - may be this should be the first step in the process model's clean up tab
4. Don’t forget to initialize the Boolean (Set to false) when starting the test
Hope it helps
Thanks,
Sasi -
Batch testing using the Sequencial Model
One of our Test Engineers is uncomfortable with the Batch Model provided with TestStand 2. Is there an easy way of using the Sequential Model as a Batch Model (testing multiple UUTs). The way I understand it, there is much more flexibility and capability built into the Batch Model, but I'm having a hard time convincing him and our boss of that. It seems as though by the time you get done modifying the Sequencial Model to do Batch testing, you've basically created a custom Batch Model anyway. And if that's the case, why not use something that was already designed specifically for that purpose. Am I looking at this correctly?
jtc,
you are correct in your understanding regarding the basics of the two different models. The sequential model is designed to test a single UUT at a time. The batch model expands this to test as many UUTs in parallel as you like, but the execution is synchronized on some points for the UUTs. This is done because we asume that the UUTs are connected together somehow e.g. placed on the same carrier. So each execution first handles things for all UUTs once (like retrieving/positioning of the carrier) and then starts to test each "socket" (meaning each UUT). After each socket has finished, the carrier is removed and a new one has to be placed in the fixture.
Since i dont know TS 2.0 (i started with 3.0) i am not sure where the differences are regarding processmodels. In TS 3.x, you have a third processmodel called "ParallelModel" which does not contain logical dependencies between the sockets.
Another thing about the BatchModel is that you can insert "synchronized sections" where you can "change the way of execution in parts of your sequence". One possible setting is e.g. "One thread only" which makes sure that the sockets synchronize at the beginning of the section and then only ONE socket executes the content of the section. After this, all sockets continue testing.
Another "problem" which is encountered by many beginners is that both parallel and batch model copy the initial sequence for all sockets. So each socket does the same tests which is propably not wanted.
Nevertheless, you can change the execution by including all tests for all sockets. Then create appropriate preconditions where you check for the socket you are currently working on. The needed Lookupstring would be "RunState.TestSockets.MyIndex"....
hope this helps,
Norbert B.
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it. -
How to pass a command line argument to the sequence?
Hi,
My GUI is written in VB.NET. I can read the command line argument in the GUI, using: Me.AxApplicationMgr.CommandLineArguments(). But I don't know how to pass it on to my sequence file which the GUI invokes. How do I read the command line argument from the sequence file?
My purpose, is to have the same basic sequence execute different subsequences depending on starting conditions...
I am using TestStand 3.0 with a VB.NET GUI, on Windows XP.
I'd appreciate any help on the subject.
AlanHi Alan,
One obvious way would be to add parameter(s) to the MainSequence and then modify the process model sequence file to use the new parameter(s) in the step "MainSequence Callback" in either Single Pass or Test UUTs but I wouldn't recommend this approach.
The sequence file to be run via the entry point can be found at "RunState.ProcessModelClient" and the lookup string to the MainSequence would be "RunState.ProcessModelClient.Data.Seq["MainSequence"] or .Seq[0] .
Therefore you could quite easy use the SetVal method to setup a Local variable in the MainSequence of your Sequence File to receive the command line string.
Also you could do this without altering the Process Model Sequence File by using the Callback Sequence ProcessSetup in your Sequence File.
As an example.
You have a string in your Locals of MainSequence called CmdLineStr.
If you add the Callback Sequence ProcessSetup to your SequenceFile, then add an ActiveX Automation Adapter step which is setup for a PropertyObject and the reference is RunState.Caller.RunState.ProcessModel.Data.Seq[0].Locals.CmdLineStr.
There is an extra RunState.Caller to the lookup string, that's because I am doing the work in a SubSequence of Entry Point Sequence.
The method to use is SetValString and the parameters of the PropertyObject will be
lookupString = ""
options = 0 or 1
newValue = where evey you have stored you command line string.
Now when you run your sequence file you will find that the Locals.CmdLineStr will contain your parameter string.
Hope this is of help to you.
Regards
Ray Farmer
Regards
Ray Farmer -
Best way to modify Sequential Process Model for report generation.
I am using the Sequential Process Model in my application and the TestStand Reference Manual, (Figure A-1), clearly shows the following processing sequence:
...<part removed>
Call the Test Sequence
Display the UUT results
Generate a Report
Log Result to a Database
...<more removed>
I want to generate the report BEFORE displaying the results to the operator, or at a minimum, I want to generate the report in parallel with displaying the results to the operator. Currently, the problem I have is that when the test is done I have some automated scripts that take the data file and do some statistical processing on it, but the way the Sequential Process Model is set up, the test might finish but until the operator acknowledges the PASS/FAIL results display, the resulting file is never created. It could be overnight, over the weekend, or several days before an operator comes back and says, "Oh that last test finished, I guess I can press the OK button!", but until they do, I get no data. So I want the report generated no matter what, and right after the test finishes.
Any ideas as to how that might be best accomplished?
Thanks a billion - Ski (noob)Ray,
Is that new in 4.2 that the engine won't call a callback with nothing in it? I just did it and it seemed to work fine. I'm using 4.1.1 though.
Ski,
Maybe there is a better solution for what you want. Are you using the SequentialModel? What version of TS do you use? Why does the report have to be written before the pass/fail banner displays? The pass/fail banner gets displayed in the PostUUT callback. Like Ray said if you just put that in your client sequence you won't see the banners. However, I'm assuming there is more to this than just that. I'm assuming you want to see the report because of your external analyzer that is gathering the statistical data. And then based on that data you want to allow the user other options. Is this correct?
If so then I would override the PostUUT callback and then use a different callback (possible the ProcessCleanup callback) to displaly the banners. You could even do this without modifying the process model (which I always try to avoid). Just override both the PostUUT and ProcessCleanup callbacks. And then put code in the ProcessCleanup to behave like you need.
Or if you want you can modify the process model and create a new callback lower in the process model. Then have that new one do the post report analysis.
Just some thoughts.
jigg
CTA, CLA
teststandhelp.com
~Will work for kudos and/or BBQ~ -
Why do I get the sequence reloading warning message? Is there a way to default it?
I am running several test sequences simultaneously. I modified the test sockets used in the TS process models to specify the sequence file that I want to run in each socket. However, when I trigger the execution, no matter which sequences I have opened, I always get this message:
"The file 'Sequence File.seq' has been modified outside of the sequence editor. Do you want to reload it? Yes/No"
This message appears only the first time that I execute after opening TS. Once I click No, I can continue without problems (However, choosing Yes would freeze TS).
I don't know exactly why I am getting this message. I suppose somewhere when the test socket gets initialized, the sequence gets loaded
in memory, and then compares it with the file and ask for reloading.
Is there a way to always answer NO to this reloading prompt message? Or any clue about why am I getting this prompt?
Thanks.Hello,
Unfortunatelly there is no option to automatically reload the sequences that got modified outside the current application.
I'm not quite sure why you are getting this message. However, since you mentioned you modified the process model, I have a couple of suggestions:
1) Make sure you are not modifing your sequences at runtime. Usually you get this message when you modify properties under SequenceFile. This is the File object and if you change it, TS may reload it.
2) When you call your sequences, also make sure you have the same prototype for the parameters your sequence is expecting and the ones you are sending.
Maybe you can gice us some more details about how you executing this sequences and how you modified the process model.
Regards,
Roberto Piacentini
National Instruments
Applications Engineer
www.ni.com/support
Maybe you are looking for
-
Need to print Header Note from Shipment
Hi gurus I need to print the Header Note text from shipment. So far I have the following code: Include &xxxxxx-tdname& object vttk id 0003 paragraph IT The X's are what I need to define. Is it VBDKL (although that is Header view for Delivery note)
-
Installed a cloned 500g solid state hard drive but unable to boot in macbook pro. Can only hear drive spinning quietly, no chime to launch OS. Total darkness. Can anyone help? thanks in advance!
-
My macbook air (2 years old) runs very slow with "spinning wheel" operating very often
When I start up as well as operate my outlook for mac, the spinning wheel labors after startup and to search for various things. Is there a way to clean up the air to allow for faster operation. I have gone into History and cleared previous search
-
Question says it all! I got Rocksmith 2014 for Christmas which comes with an installation disc as well as a cable... The problem is that macbook pro retinas don't have a disc drive. How can I install the game?
-
Launched Hyper V and attempted to connect to WIN XP to install the XP operating system. I have the installation disk for WIN XP. The message I get is "boot device not found". when I try to install using an image file I get the same result. cc Hyper