Markus B.: Variabeln zusammenfassen, --> Unexpected tocken....

Beitrag lesen

Hallo,

Kann mir keiner helfen?

Doch, ich könnte und würde aber :

1)ich hocke nicht vor dem Rechner und warte darauf, dass hier jemand was fragt.

Akkzeptiert^^Mein Fehler

Dann stell ihc hier mal kurz alles für diese Problem dar:

So hier die XSL(Relevante teil):

<xsl:apply-templates select="Intervall"/>

</svg>
    </xsl:template>
    <xsl:template match="value" name="Temp1">
        <xsl:param name="add" select="0"/>

<xsl:param name="add2" select="$add+1"/>
        <xsl:for-each select="descendant-or-self::value">
            xsl:choose

<xsl:when test="following-sibling::value[position() = 1]">
                    <g class="Lines1">
                        <line x1="{$add}%" y1="{76-((0.6*((100*(.)) div ($MaxV))))}%"
                            x2="{$add+$add}%"
                            y2="{76-(0.6*(100*(following-sibling::value[position() = 1])) div (($MaxV)))}%"
                        />
                    </g>
                </xsl:when>

xsl:otherwise
                    <xsl:if
                        test="parent::Intervall/following-sibling::Intervall[position() = 1]/value[position() = 1]">
                        <g class="Lines1">
                            <line x1="{$add}%"
                                y1="{(76-((100*(.)) div (($MaxV)-100)-100) *0.6)}%" x2="{$add+$add}%"
                                y2="{(76-((100*(parent::Intervall/following-sibling::Intervall[position() = 1]/value[position() = 1])) div (($MaxV)-100)-100) *0.6)}%"
                            />
                        </g>
                    </xsl:if>

</xsl:otherwise>

</xsl:choose>

</xsl:for-each>
    </xsl:template>

DIe XML(ein kleiner Teil, der Rest sieht aber genauso aus)

hier

<data>
    <Intervall name="30.05.2003">
        <value>100</value>
        <value>105</value>
        <value>110</value>
        <value>115</value>
    </Intervall>
    <Intervall name="30.05.2001">
        <value>120</value>
        <value>125</value>
        <value>130</value>
        <value>135</value>
    </Intervall>
    <Intervall name="30.05.2005">
        <value>140</value>
        <value>145</value>
        <value>150</value>
        <value>155</value>
    </Intervall>
    <Intervall name="30.05.2006">
        <value>160</value>
        <value>165</value>
        <value>170</value>
        <value>175</value>
    </Intervall>

</data>

Jetzt nochma zudem was ich machen möchte

<xsl:when test="following-sibling::value[position() = 1]">
                    <g class="Lines1">
                        <line x1="{$add}%" y1="{76-((0.6*((100*(.)) div ($MaxV))))}%"
                            x2="{$add*2}%"
                            y2="{76-(0.6*(100*(following-sibling::value[position() = 1])) div (($MaxV)))}%"
                        />
                    </g>

<-- Hier will ihc jetzt das Template wieder aufrufen und add um 1(bzw eine variable später) erhöhen und dass mach ihc auch im xsl:otherwise--->

<xsl:call-template name="Temp1">
<xsl:with-param name="add" select="$add+1"/>
</xsl:call-template>

</xsl:when>

Das Problem hab ich im debuggen auch gefunden, er bleibt beim Aufrufen in der gleichen position und geht nicht zum nächten Value, wodruch er die Dauerschleife bekommt.

ps: soll ich meine anderes problem/e auhc hier posten oder dafür einen neuen Thread aufmachen weil es dann besser zu sehen ist für andere Member?