Empty Report File

Obviously I'm doing something wrong because I can build my FlexUnit instance in ANT and get the verbose response that shows there were errors or not (I am using a simple test case and the SampleTests provided). Yet when I go to the report response (TESTS-TestSuites.xml) the file is empty:
<?xml version="1.0" encoding="UTF-8" ?>
<testsuites />
I can run the FlexUnit4SampleCIProject and get the appropriate failures and report file, but not with my file. Any ideas why?
I extended my tests to be more than just one because I saw at one point there was a bug with that.
My ANT segment (my compile is earlier and successful):
    <target name="executeTestRunner" description="executes the test runner app">
        <echo>Running Test Runner SWF</echo>
        <flexunit swf="${Test.dir}/${TestRunner.name}.swf"
            toDir="${Report.dir}"
            haltonfailure="false"
            verbose="true"
            localTrusted="true"/>
        <echo>Ran Test Runner SWF</echo>
        <echo>Generate Readable Tests</echo>
        <junitreport todir="${Report.dir}">
            <fileset dir="${Report.dir}">
                <include name="Test-*.xml"/>
            </fileset>
            <report format="frames" todir="${Report.dir}/html"/>
        </junitreport>
        <echo>Generated Readable Tests</echo>
    </target>
The FlexUnit4SampleCIProject's ANT segment:
    <target name="test" depends="compile">
        <!-- Compile TestRunner.mxml as a SWF -->
        <mxmlc file="${test.src.loc}/TestRunner.mxml" output="${bin.loc}/TestRunner.swf">
            <source-path path-element="${main.src.loc}" />
            <library-path dir="${lib.loc}" append="true">
                <include name="*.swc" />
            </library-path>
            <compiler.verbose-stacktraces>true</compiler.verbose-stacktraces>
            <compiler.headless-server>true</compiler.headless-server>
        </mxmlc>
        <!-- Execute TestRunner.swf as FlexUnit tests and publish reports -->
        <flexunit swf="bin/TestRunner.swf" toDir="${report.loc}" haltonfailure="false" verbose="true" localTrusted="true" />
        <!-- Generate readable JUnit-style reports -->
        <junitreport todir="${report.loc}">
            <fileset dir="${report.loc}">
                <include name="TEST-*.xml" />
            </fileset>
            <report format="frames" todir="${report.loc}/html" />
        </junitreport>
    </target>
Also, there is an error that the file FlashPlayerTrust is missing, shouldn't the flexUnitTasks.jar build that file if missing? I added it manually and it fixed the problem.

Not a problem, already was generated.
flashlog.txt
<testcase classname='tests.unitedmindset.components::SuperLabelTest' name='testSetEmptyText' time='0.000'  status='success'/>
<testcase classname='tests.unitedmindset.components::SuperLabelTest' name='testSetNullText' time='0.000'  status='failure'><failure message='expected:&lt;Super &gt; but was:&lt;Super null&gt;' type='tests.unitedmindset.components::SuperLabelTest.testSetNullText' ><![CDATA[expected:&lt;Super &gt; but was:&lt;Super null&gt;
    at org.flexunit::Assert$/failWithUserMessage()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\Fl exUnit4\src\org\flexunit\Assert.as:277]
    at org.flexunit::Assert$/failNotEquals()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit 4\src\org\flexunit\Assert.as:99]
    at org.flexunit::Assert$/assertEquals()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4 \src\org\flexunit\Assert.as:90]
    at tests.unitedmindset.components::SuperLabelTest/testSetNullText()[C:\workspace\ANTBuildUni tTest\src\tests\unitedmindset\components\SuperLabelTest.as:60]
    at Function/http://adobe.com/AS3/2006/builtin::apply()
    at flex.lang.reflect::Method/apply()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\sr c\flex\lang\reflect\Method.as:208]
    at ReflectiveCallable/run()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\fle xunit\runners\model\FrameworkMethod.as:297]
    at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[E:\hudson\jobs\FlexUn it4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:171]
    at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[E:\hudson\jobs\FlexU nit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:186]
    at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[E:\hudson\jobs\FlexUni t4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod. as:77]
    at org.flexunit.internals.runners.statements::StackAndFrameManagement/evaluate()[E:\hudson\j obs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\St ackAndFrameManagement.as:129]
    at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[E:\hudson\job s\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Stat ementSequencer.as:97]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:134]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[E:\hudson\jo bs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Asy ncStatementBase.as:76]
    at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[E:\hudson\jo bs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Sta tementSequencer.as:165]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:138]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.internals.runners.statements::InvokeMethod/handleMethodExecuteComplete()[E:\ hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\state ments\InvokeMethod.as:89]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[E:\hudson\jobs\FlexUn it4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:173]
    at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[E:\hudson\jobs\FlexU nit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:186]
    at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[E:\hudson\jobs\FlexUni t4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod. as:77]
    at org.flexunit.internals.runners.statements::SequencerWithDecoration/executeStep()[E:\hudso n\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements \SequencerWithDecoration.as:104]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:134]
    at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[E:\hudson\jobs\F lexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Stateme ntSequencer.as:108]
    at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[E:\hudson\job s\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Stat ementSequencer.as:97]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:134]
    at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[E:\hudson\jobs\F lexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Stateme ntSequencer.as:108]
    at org.flexunit.runners::BlockFlexUnit4ClassRunner/runChild()[E:\hudson\jobs\FlexUnit4-Flex3 .4\workspace\FlexUnit4\src\org\flexunit\runners\BlockFlexUnit4ClassRunner.as:130]
    at org.flexunit.internals.runners::ChildRunnerSequencer/executeStep()[E:\hudson\jobs\FlexUni t4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ChildRunnerSequencer.as: 82]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:134]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.runners::BlockFlexUnit4ClassRunner/handleBlockComplete()[E:\hudson\jobs\Flex Unit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\BlockFlexUnit4ClassRunner.as:16 7]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[E:\hudson\jo bs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Asy ncStatementBase.as:76]
    at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[E:\hudson\jo bs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Sta tementSequencer.as:165]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:138]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.internals.runners.statements::AsyncStatementBase/sendComplete()[E:\hudson\jo bs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Asy ncStatementBase.as:76]
    at org.flexunit.internals.runners.statements::StatementSequencer/sendComplete()[E:\hudson\jo bs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Sta tementSequencer.as:165]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:138]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.internals.runners.statements::InvokeMethod/handleMethodExecuteComplete()[E:\ hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\state ments\InvokeMethod.as:89]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[E:\hudson\jobs\FlexUn it4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:173]
    at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[E:\hudson\jobs\FlexU nit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:186]
    at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[E:\hudson\jobs\FlexUni t4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod. as:77]
    at org.flexunit.internals.runners.statements::SequencerWithDecoration/executeStep()[E:\hudso n\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements \SequencerWithDecoration.as:104]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:134]
    at org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[E:\hudson\jobs\F lexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Stateme ntSequencer.as:108]
    at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[E:\hudson\job s\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Stat ementSequencer.as:97]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:134]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.internals.runners.statements::StackAndFrameManagement/handleNextExecuteCompl ete()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runn ers\statements\StackAndFrameManagement.as:151]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.internals.runners.statements::InvokeMethod/handleMethodExecuteComplete()[E:\ hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\state ments\InvokeMethod.as:89]
    at org.flexunit.token::AsyncTestToken/sendResult()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspac e\FlexUnit4\src\org\flexunit\token\AsyncTestToken.as:118]
    at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[E:\hudson\jobs\FlexUn it4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:173]
    at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[E:\hudson\jobs\FlexU nit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:186]
    at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[E:\hudson\jobs\FlexUni t4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod. as:77]
    at org.flexunit.internals.runners.statements::StackAndFrameManagement/evaluate()[E:\hudson\j obs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\St ackAndFrameManagement.as:129]
    at org.flexunit.internals.runners.statements::StatementSequencer/executeStep()[E:\hudson\job s\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\Stat ementSequencer.as:97]
    at org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete( )[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\ statements\StatementSequencer.as:134]]]></failure></testcase>
<testcase classname='tests.unitedmindset.components::SuperLabelTest' name='testSetHelloWorldText' time='0.000'  status='success'/>
<testcase classname='tests.unitedmindset::SampleTest' name='testSampleError' time='0.000'  status='error'><error message='ERROR! - This is an error' type='tests.unitedmindset::SampleTest.testSampleError' ><![CDATA[Error: ERROR! - This is an error
    at tests.unitedmindset::SampleTest/testSampleError()[C:\workspace\ANTBuildUnitTest\src\tests \unitedmindset\SampleTest.as:18]
    at Function/http://adobe.com/AS3/2006/builtin::apply()
    at flex.lang.reflect::Method/apply()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\sr c\flex\lang\reflect\Method.as:208]
    at ReflectiveCallable/run()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\fle xunit\runners\model\FrameworkMethod.as:297]
    at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[E:\hudson\jobs\FlexUn it4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:171]
    at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[E:\hudson\jobs\FlexU nit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:186]
    at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[E:\hudson\jobs\FlexUni t4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod. as:77]
    at org.flexunit.internals.runners.statements::StackAndFrameManagement/handleTimerComplete()[ E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\st atements\StackAndFrameManagement.as:141]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at flash.utils::Timer/tick()]]></error></testcase>
<testcase classname='tests.unitedmindset::SampleTest' name='testSampleFailure' time='0.000'  status='failure'><failure message='FAIL! - This is a sample test that will fail.' type='tests.unitedmindset::SampleTest.testSampleFailure' ><![CDATA[FAIL! - This is a sample test that will fail.
    at org.flexunit::Assert$/fail()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org \flexunit\Assert.as:265]
    at tests.unitedmindset::SampleTest/testSampleFailure()[C:\workspace\ANTBuildUnitTest\src\tes ts\unitedmindset\SampleTest.as:12]
    at Function/http://adobe.com/AS3/2006/builtin::apply()
    at flex.lang.reflect::Method/apply()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\sr c\flex\lang\reflect\Method.as:208]
    at ReflectiveCallable/run()[E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\fle xunit\runners\model\FrameworkMethod.as:297]
    at org.flexunit.runners.model::FrameworkMethod/applyExplosivelyAsync()[E:\hudson\jobs\FlexUn it4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:171]
    at org.flexunit.runners.model::FrameworkMethod/invokeExplosivelyAsync()[E:\hudson\jobs\FlexU nit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\runners\model\FrameworkMethod.as:186]
    at org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[E:\hudson\jobs\FlexUni t4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\statements\InvokeMethod. as:77]
    at org.flexunit.internals.runners.statements::StackAndFrameManagement/handleTimerComplete()[ E:\hudson\jobs\FlexUnit4-Flex3.4\workspace\FlexUnit4\src\org\flexunit\internals\runners\st atements\StackAndFrameManagement.as:141]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at flash.utils::Timer/tick()]]></failure></testcase>
<testcase classname='tests.unitedmindset::SampleTest' name='testSampleIgnore' time='0.000' status='ignore'><skipped /></testcase>
<endOfTestRun/>
SuperLabelTest.as (runs as intended in UIListener)
this meant to be a simple test class, nothing real or production level
package tests.unitedmindset.components
    import com.unitedmindset.components.SuperLabel;
    import org.flexunit.Assert;
    public class SuperLabelTest
        public function SuperLabelTest()
        // Private Vars
        private var superLabel:SuperLabel;
        // Setup
        [BeforeClass]
        public static function runBeforeClass():void
            //do nothing
        [AfterClass]
        public static function runAfterClass():void
            //do nothing
        [Before(order=1)]
        public function runBeforeEveryTest():void
            superLabel = new SuperLabel();
        [After]
        public function runAfterEveryTest():void
            superLabel = null;
        // Tests
        [Test(description="Tests Setting 'Hello World' Text in SuperLabel")]
        public function testSetHelloWorldText():void
            superLabel.text = "Hello World";
            Assert.assertEquals("Super Hello World", superLabel.text);
        [Test(description="Tests Setting NULL in SuperLabel")]
        public function testSetNullText():void
            superLabel.text = null;
            //fail
            Assert.assertEquals("Super ", superLabel.text);
            //pass
            //Assert.assertEquals("Super null", superLabel.text);
        [Test(description="Tests Setting '' in SuperLabel")]
        public function testSetEmptyText():void
            superLabel.text = "";
            Assert.assertEquals("Super ", superLabel.text);

Similar Messages

  • Modify UUT report file name

    Hello,
    I use TesStand 3.1 in Batchmode with 4 Testsockets and generate a XML Testreport for every UUT with the serial number in the file name.
    I leave the "Enter UUT Serial Number" dialog boxes at the begin empty.
    After that i read out the Serial Number of my UUTs at the runtime via CAN and use the "PostUUT-Callback" to modify the "Parameters.UUT.SerialNumber".
    Because of that the UUT Serial Number appears in the Report Header.
    But the report filename is always "Report[NO_UUT_SERIAL_NUM0][date][time].xml".
    Is it possible to modify the "UUT Serial Number" in the Report File Name, too?
    Thanx for your answers!
    Greetz ALIEN

    We modify the report name to include error count, Model, build, etc. but it requires that the Report be complete at that point (file no longer locked by TestStand). 
    In order to do this, you'll need to create a Sequence (with no Process Model) to call the test sequence using Subsequence call with the "Run Sequence in a New Execution" selected in the "Specify Module", Multithreading selection ring.
    There may be other ways to do what you're attempting, but this gives you freedom to rename the file. 
    Mike

  • TestStand 2012 Report File Location variable

    Hi,
    In TestStand 2010 SP1, I have the "report file path" as one of the column into the database using the RunState.Report.Location.  This has been working until I upgraded to TestStand 2012.  The RunState.Report.Location is always empty.  I also tried to use the RunState.Root.Locals.ReportFilePath but I get an error that this is an unknow variable when logging to the database.  Even when removing the <UUTStatus> from the file path expression below, there is no difference.  
    I am using the following report file path expression:
    "C:\\TSReports\\<UUTStatus>\\<ClientFileName>_Report[<FileDate>][<FileTime>][UUT]_<UUTStatus>.<FileExtension>"
    Which variable contains the report file path in TestStand 2012.  
    Solved!
    Go to Solution.

    I haven't tried it, but RunState.Report.Location might work if you set the New Thread option on the Report and Database to False (assuming the report is first in the list) so you can be sure that the Report has been generated before you check that value.
    You have to set the Configure>>Result Processing>>Show More Options to see the New Thread options.
    This should give you access to the path of the Displayed report (the one with the checkmark in the Display column). However, in TS 2012, you can have any number of reports.
    There is a new callback, GetReportFilePath, you can add to your sequences to obtain the report paths as they are determined. You could store the paths in a station global or runtime variable for later use if needed.

  • Crystal report file locked

    Hello,
    I have an application in Visual Basic 6.0 an use Crystal Reports 8.5 through OCX.  Whenever I open a report and close it again, the report file is locked on the computer.  I have to shut down my VB6 program in order to be able to delete or overwrite it on my PC.  I think I do not close my report properly, so it stays in memory as long as my VB6 application runs.
    My code runs as follows:
       Load frmBeginEnEinddatumIngeven
       frmBeginEnEinddatumIngeven.Show vbModal
       If Not frmBeginEnEinddatumIngeven.blnAnnulerenGekozen Then
          With crptBRUMUKassasysteem
             .Formulas(0) = "Begindatum = '" & Format(frmBeginEnEinddatumIngeven.dtBegindatum, "dddd dd mmmm yyyy") & "'"
             .Formulas(1) = "Einddatum = '" & Format(frmBeginEnEinddatumIngeven.dtEinddatum, "dddd dd mmmm yyyy") & "'"
             .SelectionFormula = ""
                   .ReportFileName = gsRapportenpad & "Ticket\rptTicketPeriodeVerkoop.rpt"
                   .SelectionFormula = "{tblA_Musea.MU_Museum_id} = " & glVerkooplocatie_id & " And {tblTV_Sessies.TVSE_Begintijd} >= #" & Format(frmBeginEnEinddatumIngeven.dtBegindatum, "mm/dd/yyyy") & "# And {tblTV_Sessies.TVSE_Begintijd} < #" & Format(frmBeginEnEinddatumIngeven.dtEinddatum + 1, "mm/dd/yyyy") & "#"
                   .Action = 1
                   .ReportFileName = gsRapportenpad & "Ticket\rptTicketPeriodeBezoekersstatistiek.rpt"
                   .SelectionFormula = "{tblA_Musea.MU_Museum_id} = " & glVerkooplocatie_id & " And {tblTV_Sessies.TVSE_Begintijd} >= #" & Format(frmBeginEnEinddatumIngeven.dtBegindatum, "mm/dd/yyyy") & "# And {tblTV_Sessies.TVSE_Begintijd} < #" & Format(frmBeginEnEinddatumIngeven.dtEinddatum + 1, "mm/dd/yyyy") & "#"
                   .Action = 1
                     .Formulas(0) = ""
             .Formulas(1) = ""
             .SelectionFormula = ""
          End With
       End If
    Can anyone help me to solve this problem?
    Many thanks and greetings,
    Michel

    Hi,
    Did you try running one report first if still the problem persist? Or try running other report with one condition only, Let say try to run this first,
    If Not frmBeginEnEinddatumIngeven.blnAnnulerenGekozen Then
    With crptBRUMUKassasysteem
    .Formulas(0) = "Begindatum = '" & Format(frmBeginEnEinddatumIngeven.dtBegindatum, "dddd dd mmmm yyyy") & "'"
    .Formulas(1) = "Einddatum = '" & Format(frmBeginEnEinddatumIngeven.dtEinddatum, "dddd dd mmmm yyyy") & "'"
    .SelectionFormula = ""
    .ReportFileName = gsRapportenpad & "Ticket\rptTicketPeriodeVerkoop.rpt"
    .SelectionFormula = "{tblA_Musea.MU_Museum_id} = " & glVerkooplocatie_id & " And {tblTV_Sessies.TVSE_Begintijd} >= #" & Format(frmBeginEnEinddatumIngeven.dtBegindatum, "mm/dd/yyyy") & "# And {tblTV_Sessies.TVSE_Begintijd} < #" & Format(frmBeginEnEinddatumIngeven.dtEinddatum + 1, "mm/dd/yyyy") & "#"
    .Action = 1
    Regards,
    Clint

  • Print empty report

    Can I somehow print an empty report, and specify with a parameter how many times it should be repeated?
    The report is a form with checkboxes, and sometimes we want the empty one for someone to fill in when out on the field. And since this form is a subreport, we cant print the entire report over again, but need the subreport to be repeated, let's say five times.
    /Thank you!

    Please re-post if this is still an issue or purchase a case and have a dedicated support engineer work with you directly

  • Can no longer open up report file - Crystal Crashes

    I have a crystal report that I can not longer get to open. I'm on windows 7 32-bit, and I've attempted to open it in both 2008 and 2011.
    The report is comprised mainly of sub-reports. Each sub-report in its own report header section. I'm pretty sure the issue is related to a fairly large sub-report that I added that contains pretty sizable images. The image sub-report is around 24MB and the entire report is around 25MB.
    Everything was fine up until I added the image sub-report. Now I cannot even get the crystal file to open.
    2008 version: 12.4.0.966
    2011 (trial) version: 14.0.2.364RTM
    I was finally able to open the report after trying many times and so I deleted the image sub-report and tried to save it again but it crashed...
    [Report File|http://www.mediafire.com/?yc0vvr2rvd880ef]
    Edited by: philyq on Dec 28, 2011 8:03 PM

    Adding to DEP did not resolve the issue... I can still manage to open it once in a while... I don't know how I exactly get it to open though... I've been switching the default program from 2008 and 2011 and tried opening it multiple times, or the second it crashes I attempt again, and sometimes doing any of these gets it to open but I can never re-save it again. Something in the report is causing it to crash. I think it may now be the "Consents" sub-report.

  • Reporting mechanism on HTML report file, using TestStand 2012 SP1

    Hi,
    I am using TestStand 2012 SP1, where the reporting mechanism is configured to be in HTML format.
    I am not getting the full report of the sequence file which is executed, however I get a part of it printed on the HTML file.
    The following are the configured "Report options",
    ===========
    Contents Tab:
    ===========
    Report Format : HTML Document
    Default Numeric Format : %$.13f
    Include Step Result: Checked
                  Result Filtering Expression : Result.Status=="Failed"
                  Include Test Limits : Checked
                  Include Measurements : Checked
                  Include Arrays : Insert Table
                  Filter : Include All
    Include Execution Times : Checked
    On-The-Fly Rporting and Only Display Latest Results : Checked
    Select a Report Generator for producing the Report Body : DLL
    ===========
    Report File Pathname Tab:
    ===========
    Generate Report File Path : Checked
           File Name/Directory Options : Specify Report File Path by Expression
           Report File Path (Sequential Model) :
                            StationGlobals.TopLevelReportPath
                            +RunState.ProcessModelClient.AsPropertyObjectFile.​DisplayName+"Report_[<FileDate>]<Unique>.<FileExte​nsion>"
    Please let me know a solution to this problem.
    Thanks,
    Dharani

    Jason,
    Thankyou for replying.
    Yes, I need only the steps which had failed to print on the report file.
    The problem what I am facing is, if there are 10 failed steps, the report is not printed for all.
    Also the order of printing is not correct for the first step and the last step which is printed on the report file.
    I had used "Post Expression" for printing data for all the failed steps. Normally these post expressions should be printed beneath the step in the report file.
    However,
    1) For the first step which is printed on the html file, the post expression gets printed just above the step and also it gets printed beneath the step.
    2) For the last step which is printed on the html file, the post expression is not printed beneath the step.
    Please let me know if i need to provide some more information.
    Thanks,
    Dharani

  • In the ReportDocument.Load method it tries to connect using the using the connection information embedded in the Report File

    Post Author: bhaveshbusa
    CA Forum: Crystal Reports
    In the ReportDocument.Load method it tries to connect using the using the connection information embedded in the Report File. When the application calls ReportDocument.Load(reportFileName). This
    tries to connect to the database using the connection information embedded in
    the "reportFileName". This was only realised on checking the ODBC Trace
    Log. The connection itself is not a problem. The problem is that the embedded
    connection information is related to OLD production system. And failed
    connections had raised some concerns.
    Note: I am using
    SetDataSource to populate the data for the report. So I don't need the
    connection.
    Is there any way I
    can disable this auto-connect?
    Thanks and
    regards,
    Bhavesh

    960738 wrote:
    I need a help in answering one of the issue encountered last week.
    I have created a database link and tried to access the information from a table using the program written in another language. The password provided was incorrect for that user while creating database link. So we expected that,while retrieving the data, Database connection has to be errored out as password provided is incorrrect.
    But unfortunately, user account was locked out. When i checked with DBAs they mentioned that it tries to connect 16 ports with in a min of time.we were shocked as it STOPS another scheduled jobs with that user. and affects production badly.
    As per the program, it has to connect only one time and yesterday we tried to execute the program in DBAs observation and it errored out as expected. Didn't tried for multiple ports.
    Now the question is, WHY the database connection established 16 times last week and caused user account locked. DBAs are unable to answer it. Any EXPERTs opinion on this would greatly appreciated.
    I have verified managing ports in oracle documentation, it was mentioned that if one port is busy it will try to connect to another port in the range of ports mentioned during the installtion. DBAs verified ports related file and it was blank. and they are not agreeing with this reason. Please HELP me in finding the correct REASON for this.
    is it a NETWORK issue or issue with DATABASE SERVER only?
    Thanks
    SSP
    Edited by: 960738 on Sep 22, 2012 9:13 PMDBLINK is 100% oblivious to the fact any port exists.
    DBLINK only contains username, password & TNS Alias.
    can you post actual SQL & results?

  • Access Denied to report file on Windows Server 2003 Enterprise

    Hi,
    I have a deployment problem for which I am out of ideas. I have an ASP.NET web site deployed on a server running Windows Server 2003 R2, sp2.  It makes extensive use of Crystal Reports, including both displaying them and e-mailing them to specified recipients as PDF files. It all works great.
    Now I need to port the web site to a different server, running Windows Server 2003 Enterprise, sp1. The reports display fine as long as I am not trying to convert it to PDF for e-mailng. When it gets to the following line in my code:
    MemoryStream memStream = (MemoryStream)rptDoc.ExportToStream(ExportFormatType.PortableDocFormat);
    It reports the following error:
    Access denied.Error in File JobDetails {DC64A5D3-9DD7-4E4C-90F5-A08731409B29}.rpt:
    Access to report file denied. Another program may be using it.
    I finally got it to work by granting Modify permission to Everyone for the c:\Windows\Temp folder. Obviously this is not a good practice.  Granting Full Control  to the IUSR_servername account did not solve the problem on Windows Server Enterprise, although it did the trick on R2.
    So the question is, which account needs which permission to the Temp folder to enable the PDF to get written?
    Thanks.
    Dan

    What ever account the app is running under will need read / write permissions on the temp folder. Your working server should be a good place to look to see how the premissions were set there. The same will apply to any other server(?).
    Ludek
    Follow us on Twitter http://twitter.com/SAPCRNetSup
    Got Enhancement ideas? Try the [SAP Idea Place|https://ideas.sap.com/community/products_and_solutions/crystalreports]

  • How to call cystal report8 report file from jsp page

    hi guys
    present i am using cystal report8 already i am having ReportViewer.jar and ReportviewerBean.jar files
    using that please send me sample code how to call that report from jsp page..
    and how to pass the parameters from jsp page to crystalreport8 report file.
    it was very urgent task to me..so please send sample code on above topic..
    or send me crystalreport8 API
    thanks
    regards

    Hi,
    I also want to work on crystal report but i dont have the ReportViewerBean.jar and ReportViewer.jar. So, please tell from where will i get those jar files.
    Thanks in advanced.

  • Help required in embedding flash file object into Crystal Report file.

    Hello,
          I use the default version of Crystal Report (i.e.'Crystal Report Basic For Visual Studio 2008 - version 10.5' ) which is the part of 'Visual Studio 2008', to create and display the Report. Further, as a requirement, I have to show 'Event Video' into the Report. But, as this default version of Crystal Report does not support Flash File, I uninstalled it and downloaded and installed the 30 days trial version of the Crystal Report (i.e. Crystal Report 2008 - version 12.0).
          Then, I created a new Crystal Report File using 'Crystal Report 2008 Designer', embedded the video as a Flash File(i.e. SWF file) into it. Now,  when I add this newly created Crystal Report File into my sample application, which is created using VS 2008, it does not shows the embedded video.
          So, can anybody please tell me, how can I embed the Flash File into Crystal Report, so that it will be visible in the sample application?
    I would like to appreciate your help and support.
    Thanks,
    -Yogesh.

    Symptom :
    When embedding a pdf document into a Crystal Report, only the one page shows.
    Reproducing the Issue
    Environment:
    Crystal Reports OLE object
    Cause
    An OLE object only displays the first page.
    Resolution
    Embed multiple objects, one for each page
    Or
    Use a hyperlink to the object instead
    Hope this helps!
    Regards,
    Vinay

  • RE: What's database field are used in crystal report file?

    Hi all
    Please help me a C# code that using Crystall Report API (Crystal Report XI- Develop license) to get the list of database fieldname that using in crystal Report file. (What's database field using in header section ,group section , detail section of report.....)
    We looking forward to hearing from you
    Thanks
    Son

    Hello Son,
    please use this code below to get a list of used database fields in a report :
    //File Name:          CS_Get_report_data_out_inproc.sln
    //Created:            April 11, 2008
    //Author ID:          FLI
    //Purpose:            This C# .NET sample Windows application demonstrates
    //                  how to retrieve report data and put the into a XML file
    //                  using unmanaged RAS.
    // Note this is available without a dedicated RAS with SP2 for XI R2
    using System;
    using System.IO;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using CrystalDecisions.CrystalReports.Engine;
    using CrystalDecisions.ReportAppServer.ClientDoc;
    using CrystalDecisions.ReportAppServer.Controllers;
    using CrystalDecisions.ReportAppServer.DataDefModel;
    namespace CS_Get_report_data_out_inproc
        public partial class Form1 : Form
            // CR Declarations
            ReportDocument boReportDocument;
            ISCDReportClientDocument boReportClientDocument;
            public Form1()
                InitializeComponent();
                //Create a new ReportDocument
                boReportDocument = new ReportDocument();
                // load the RPT file
                boReportDocument.Load("..
    ReportData.rpt");
                // show in reportviewer
                crystalReportViewer1.ReportSource = boReportDocument;
            private void button1_Click(object sender, EventArgs e)
                //Access the ReportClientDocument in the ReportDocument (EROM bridge)
                boReportClientDocument = boReportDocument.ReportClientDocument;
                // Retrieve the Rowset Controller
                RowsetController boRowsetController = boReportClientDocument.RowsetController;
                // Retrieve the metadata (column headers) - this allows you to only retrieve the data that is on the report.
                RowsetMetaData boRowsetMetaData = new RowsetMetaData();
                Fields boFields = boReportClientDocument.DataDefinition.ResultFields;
                boRowsetMetaData.DataFields = boFields;
                // Now print out the data in XML file
                //(Note: This will print out the results of formulas too)
                StreamWriter sw = new StreamWriter("C:
    ReportData.xml", false);
                sw.WriteLine("<?xml version='1.0' encoding='utf-8'?>");
                sw.WriteLine("<ReportData>");
                sw.WriteLine("<Reportheader>");
                // Print out the titles
                for (int i = 0; i < boFields.Count; i++)
                    String boFieldName = boFields<i>.Name;
                    sw.WriteLine("<ReportheaderDetail>" + boFieldName + "</ReportheaderDetail>");
                sw.WriteLine("</Reportheader>");
                //Create the cursor which lets us loop through the data
                RowsetCursor boRowsetCursor = boRowsetController.CreateCursor(null, boRowsetMetaData, 1);
                Record boRecord;
                while (boRowsetCursor.IsEOF == false)
                    sw.WriteLine("<Customer>");
                    boRecord = boRowsetCursor.CurrentRecord;
                    for (int j = 0; j < boFields.Count; j++)
                        try
                            sw.WriteLine("<Detail>" + (String)boRecord[j].ToString() + "</Detail>");
                        catch (Exception err)
                            sw.WriteLine("<Error>" + err.Message + "</Error>");
                    sw.WriteLine("</Customer>");
                    boRowsetCursor.MoveNext();
                sw.WriteLine("</ReportData>");
                // CLose the file
                sw.Close();
                MessageBox.Show("XML File 'ReportData.xml' successfully created on C:");

  • Overwrite crystal report file name with new version but keep history

    I am writing a Crystal Reports .NET SDK in C# code to upload a crystal report files from its destination to CMC folder on BO XI R2 Platform.
    On "Upload Button" click_event, validate the two check boxes controls named "Keep History", and "Remove History". Once "Keep History" check box is selected, check If the SAME report file name exists in the same destination CMC folder, if Yes, overwrite it BUT Keep the History and all its associated objects like "recurring objects". If "Remove History" is selected, then remove the existing report and upload the new report file name.
    Please provide me some codes on how to do this task. This is definitely a "WIN" - "WIN" effort and contribution to my Team Goals.
    P.S. This is a similar scenario when you are uploading report on BO Enterprise R2 CMC.
    When Uploading a new report to a folder but same report file name exists, the BO System will promt message "Report File Name" already exists. Do you want to Overwrite it?" If Yes, then system will overwrite the file but it will keep the history and recurring objects.
    Any help would be greatly appreciated.
    Thanks,
    Bien

    Suggest looking at [this|https://wiki.sdn.sap.com/wiki/display/BOBJ/NETBusinessObjectsEnterpriseSDKSamples] wiki for links to pertinent samples. Also, check out the [Developer Help File|http://devlibrary.businessobjects.com/BusinessObjectsXIR2SP2/en/en/WS_SDK/wssdk_server/default.htm]. Searching these forums for similar queries may also prove to be fruitful
    Ludek

  • Retrieve crystal report file print settings

    I have crystal reports 10 report file, in which I edited the printer settings... collate and number of copies(2) and saved it.
    now i want to print it from VB6. I am using a customized print dialog form (not using the common dialog control)
    I want to get the collate and number of copies settings from the rpt file. how can I get those details. any API available?

    Hello Sankar  ,
    as you refer to the legacy technology VB6 I recommend to post this query to the [Legacy Application Development SDKs|SAP Crystal Reports - Legacy SDKs; forum.
    This forum is dedicated to topics related to legacy SDKs, including the Report Designer Component (RDC), OCX, VCL, and Crystal Reports Print Engine (CRPE).
    It is monitored by qualified technicians and you will get a faster response there.
    Also, all Legacy Application Development SDKs queries remain in one place and thus can be easily searched in one place.
    Thanks a lot,
    Falk

  • Creating crystal report file dynamically.

    Post Author: malcomstewart115
    CA Forum: General
    Hi, everybody.
    I have one problem.
    How to create crystal report file(*.rpt)  in php dynamically.
    I mean, I want to create the "*.rpt" file with php code.
    Please help me. thanks everybody.

    Post Author: PWilkens
    CA Forum: General
    It sounds like you're defeating the power and purpose of Crystal Reports, or replace it with pure PHP (which I suppose could be done... but why?)
    What exactly are you trying to do?
    If you're trying to make certain parts of the report hide or reveal or change depending on variables settings in the PHP file, that's easy enough to accomplish by sending parameters with your PHP values into the report.  But the dynamic actions really need to be done within the report itself, accomplished through ample use of the section and field settings provided within the Report Designer.

Maybe you are looking for