|
Subject: [xsl] Testing for parent node From: Vincenzo Menanno <enzo13@xxxxxxx> Date: Fri, 30 Dec 2011 03:59:07 -0800 |
Hi everyone,
I am on this list but I rarely post.
<Field id="1" dataType="Text" fieldType="Normal" name="name">
<Comment/>
<AutoEnter allowEditing="True" constant="False" furigana="False" lookup="False" calculation="False">
<ConstantData/>
</AutoEnter>
<Validation message="False" maxLength="False" valuelist="False" calculation="False" alwaysValidateCalculation="False" type="OnlyDuringDataEntry">
<NotEmpty value="False"/>
<Unique value="False"/>
<Existing value="False"/>
<StrictValidation value="False"/>
</Validation>
<Storage autoIndex="True" index="None" indexLanguage="English" global="False" maxRepetition="1"/>
</Field>
<Field id="2" dataType="Number" fieldType="Calculated" name="sfksjfhd">
<Calculation table="Test"><![CDATA[Left ( name; 3 ) & "sdkfhskdfhsdf" & sdafsadf & Asin ( ZARK::boart ) & sdafsadf Copy2]]></Calculation>
<DisplayCalculation>
<Chunk type="FunctionRef">Left</Chunk>
<Chunk type="NoRef"> ( </Chunk>
<Chunk type="FieldRef">
<Field table="Test" id="1" name="name"/>
</Chunk>
<Chunk type="NoRef">; 3 ) & "sdkfhskdfhsdf" & </Chunk>
<Chunk type="CustomFunctionRef">sdafsadf</Chunk>
<Chunk type="NoRef"> & </Chunk>
<Chunk type="FunctionRef">Asin</Chunk>
<Chunk type="NoRef"> ( </Chunk>
<Chunk type="FieldRef">
<Field table="ZARK" id="1" name="boart"/>
</Chunk>
<Chunk type="NoRef"> ) & </Chunk>
<Chunk type="CustomFunctionRef">sdafsadf Copy2</Chunk>
</DisplayCalculation>
<Comment/>
<AutoEnter alwaysEvaluate="False"/>
<Storage storeCalculationResults="False" indexLanguage="English" global="False" maxRepetition="1"/>
</Field>
--------------------
<Field id="3" dataType="Text" fieldType="Normal" name="sfkjsdfklj">
<Comment/>
<AutoEnter allowEditing="True" overwriteExistingValue="False" alwaysEvaluate="False" constant="False" furigana="False" lookup="False" calculation="True">
<ConstantData/>
<Calculation table="Test"><![CDATA[Asin ( sfksjfhd )]]></Calculation>
<DisplayCalculation>
<Chunk type="FunctionRef">Asin</Chunk>
<Chunk type="NoRef"> ( </Chunk>
<Chunk type="FieldRef">
<Field table="Test" id="2" name="sfksjfhd"/>
</Chunk>
<Chunk type="NoRef"> )</Chunk>
</DisplayCalculation>
</AutoEnter>
<Validation message="False" maxLength="False" valuelist="False" calculation="False" alwaysValidateCalculation="False" type="OnlyDuringDataEntry">
<NotEmpty value="False"/>
<Unique value="False"/>
<Existing value="False"/>
<StrictValidation value="False"/>
</Validation>
<Storage autoIndex="True" index="None" indexLanguage="English" global="False" maxRepetition="1"/>
</Field>
My XPATH is fixed to all Calculations within the BaseTableCatalog - like this.
/FMPReport/File[1]/BaseTableCatalog[1]//Calculation
In some cases the parent of the calculation will be "Field" (see example) in other cases it will be "AutoEnter" (see example) or "Validation"
I have tried a number of different things but I can't get any of them to work and bring me reliable results.
This returns nothing for the"$from" variable
<xsl:variable name="from">
<xsl:choose>
<xsl:when test="../parent='Field'">53</xsl:when>
<xsl:when test="../parent='AutoEnter'">54</xsl:when>
<xsl:when test="../parent='Validation'">55</xsl:when>
</xsl:choose>
</xsl:variable>
This returns nothing when the calculation is a child of Field but it returns always the 53 when the calculation is "AutoEnter" or "Validation"
<xsl:variable name="from">
<xsl:choose>
<xsl:when test="local-name(../parent::*)='Field'">53</xsl:when>
<xsl:when test="local-name(../parent::*)='AutoEnter'">54</xsl:when>
<xsl:when test="local-name(../parent::*)='Validation'">55</xsl:when>
</xsl:choose>
</xsl:variable>
I know the answer is obvious and I am just missing it.
Thanks for any suggestions or help on this.
Vince
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Boolean logic, davep | Thread | Re: [xsl] Testing for parent node, Martin Honnen |
| Re: [xsl] Saxon & xsltproc giving d, Russell Urquhart | Date | Re: [xsl] Testing for parent node, Martin Honnen |
| Month |