Solved

Need help converting dynamic XSL form fields...

Posted on 2003-11-12
3
286 Views
Last Modified: 2008-02-26
I'm on a new project that is XSL heavy and I haven't messed XML/XSL/XSLT in probably 1.5 years.  Anyway, I have a series of form fields that need to be converted from checkboxes to hidden fields.  Normally easy enough, but these are dynamically generated and the syntax is perplexing me.  Here's a snippet of the screen http://www.danielseliger.com/cruisexsl/form.gif and here's the associated code:

<xsl:if test="SpecialServicesAvailResponse[Rules/@MinimumGuests=$TOTALPAX]">
                        <tr>
                              <td align="center" class="tableHead">Stateroom Services</td>
                              <td colspan="{$TOTALPAX}" align="center" class="tableHead">All Guests</td>
                              <td align="center" class="tableHead">Comments</td>
                        </tr>
                        </xsl:if>
                        <xsl:for-each select="SpecialServicesAvailResponse[Rules/@MinimumGuests=$TOTALPAX]">
                        <xsl:variable name="specServI" select="user:GetServiceCount()" />
                        <xsl:variable name="specServ" select="." />
                        <tr>
                              <td align="center" class="tdBg"><xsl:value-of select="SpecialService/@Description" /></td>
                              <td colspan="{$TOTALPAX}" align="center" class="tdBg">
                                    <xsl:choose>
                                          <xsl:when test="$specServ/@AvailableInd='Y'">
                                                <xsl:choose>
                                                      <xsl:when test="$specServ/Rules/@MinimumGuests=$TOTALPAX">
                                                            <input type="checkbox" name="check{$specServI}_{number(position())-1}" onClick="AllAddService({$specServI}, {number(position())-1}, '{$specServ/SpecialService/@Code}', '{$specServ/SpecialServiceType/@Code}', '{$specServ/Rules/@DateRequiredInd}', '{$specServ/Rules/@YearsRequiredInd}')"  />
                                                      </xsl:when>
                                                      <xsl:otherwise>
                                                            <input type="checkbox" name="check{$specServI}_{number(position())-1}" onClick="AddService({$specServI}, {number(position())-1}, '{$specServ/SpecialService/@Code}', '{$specServ/SpecialServiceType/@Code}', '{$specServ/Rules/@DateRequiredInd}', '{$specServ/Rules/@YearsRequiredInd}')"  />
                                                      </xsl:otherwise>
                                                </xsl:choose>
                                          </xsl:when>
                                          <xsl:otherwise>
                                                &#160;
                                          </xsl:otherwise>
                                    </xsl:choose>
                              </td>
                              <td class="tdBg">
                                    <xsl:choose>
                                          <xsl:when test="Rates[@Type='C'] and string-length(Rates/@CabinAmount) > 0">
                                                $ <xsl:value-of select="Rates/@CabinAmount" /> /cabin
                                          </xsl:when>
                                          <xsl:when test="Rates[@Type='P'] and string-length(Rates/@GuestAmount) > 0">
                                                $ <xsl:value-of select="Rates/@GuestAmount" /> /guest
                                          </xsl:when>
                                          <xsl:otherwise>
                                                &#160;
                                          </xsl:otherwise>
                                    </xsl:choose>
                              </td>
                        </tr>
                        </xsl:for-each>

----------------

I know it may or may not be difficult to get what's going on here, but does anyone have any suggestions on how to pull off what I need to do?  Basically there are four fields I need to convert to hidden (Fax/Email Agent, Fax/Email Guest, Fax/Email Both, and Mailed Confirmation).

FAX/EMAIL CONFIRMATION - AGENT ---- needs to be set to False
FAX/EMAIL CONFIRMATION - GUEST  ---- needs to be set to True
FAX/EMAIL CONFIRMATION - BOTH     ---- needs to be set to True
MAILED CONFIRMATION  ---- needs to be set to False

So, all but "PREPAID GRATUITIES" need to be changed.  Anyone have any help on this? I'm completely lost at this point.  Thanks.
0
Comment
Question by:swankboy
  • 2
3 Comments
 
LVL 9

Expert Comment

by:sparkplug
ID: 9732751
An example of the XML might help here...

>S'Plug<
0
 

Author Comment

by:swankboy
ID: 9733007
This is the XML that comes back that's associated with this page...

Calling URL: http://nsdev0/users/ldg/eLN/eLN.svr?MessageId=CCCABHD1&SessionId=TUV4&replyMethod=HTML&PAX_ACTION_CODES=NN&DINING_SEATING_CODE=F&DINING_SEATING_DESC=FIRST+SEATING&rcvr=CCCABAV2&DECK_DESC=UPPER&TRANS_EXISTS=2&REVISION_MODE_FLAG=&PAX_COUNT=2&replyXML=Y&CABIN_NUMBER=U90&DINING_WITH_RES_ID=&debugFlag=1&SessionId=TUV4&VendorFrom=MCY Calling URL: http://nsdev0/users/mp/dynsql/dynsql.svr?XML_FORMAT=NESTED&SQL_STATEMENT=select+*+from+\NSDEV.$DSMSCM.ELN.ELNPAX+where+session_id+=+"TUV4"+browse+access Calling URL: http://nsdev0/users/mp/dynsql/dynsql.svr?XML_FORMAT=NESTED&SQL_STATEMENT=select+*+from+\NSDEV.$DSMSCM.ELN.ELNCONTX+where+session_id+=+"TUV4"+browse+access
- <CruiseLineResponse>
- <MessageHeader SegmentId="MSGHDR" >
  <MessageId>CCSVCAV2</MessageId>
  <SessionId>TUV4</SessionId>
  <CruiseLineCode>CCL</CruiseLineCode>
  <SystemId>ELN</SystemId>
  <UserId>Lance Gereau</UserId>
  <AgencyId>63143693</AgencyId>
  <AgencyPhoneNumber>4142287472</AgencyPhoneNumber>
  <AgencyARCNumber>14123454</AgencyARCNumber>
  <UICode>A</UICode>
  <VersionNum>1.0</VersionNum>
  <AttemptCnt>1</AttemptCnt>
  <SendDescriptionInd>Y</SendDescriptionInd>
  <Copyright>Copyright (C) 2000 Carnival Corporation. All rights reserved.</Copyright>
  </MessageHeader>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="5" Description="SERVICE ANIMAL" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="D" Description="DIABETIC" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="I" Description="BLIND" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="J" Description="DEAF" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="Q" Description="PREGNANCY" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="R" Description="MEDICATION REQUIRED" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="S" Description="DIALYSIS" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="U" Description="PHYSICALLY CHALLENGED" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="W" Description="WHEELCHAIR" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="X" Description="BED BOARD" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="Z" Description="OXYGEN" />
  <SpecialServiceType Code="MED" Description="MEDICAL ADVISORY" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="L" Description="BLAND DIET" />
  <SpecialServiceType Code="DIE" Description="SPECIAL MEAL" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11252004" EndDate="11282004" DateRequiredInd="N" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="F" Description="ANNIVERSARY" />
  <SpecialServiceType Code="OCC" Description="SPECIAL OCCASION" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11262004" EndDate="11272004" DateRequiredInd="Y" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="E" Description="BIRTHDAY" />
  <SpecialServiceType Code="OCC" Description="SPECIAL OCCASION" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11262004" EndDate="11272004" DateRequiredInd="Y" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="H" Description="HONEYMOON" />
  <SpecialServiceType Code="OCC" Description="SPECIAL OCCASION" />
  <Status Code="AV" Description="AVAILABLE" />
  <Rates Type="P" />
  <Rules BeginDate="11262004" EndDate="11272004" DateRequiredInd="Y" YearsRequiredInd="N" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="GRATS" Description="PREPAID GRATUITIES" />
  <SpecialServiceType Code="OTH" Description="OTHER" />
  <Status Code="AS" Description="ADVISE" />
  <Rates Type="C" Amount="60.00" CabinAmount="60.00" />
  <Rules BeginDate="11252004" EndDate="11282004" YearsRequiredInd="N" MinimumGuests="2" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="FCNFA" Description="FAX/EMAIL CONFIRMATION - AGENT" />
  <SpecialServiceType Code="OTH" Description="OTHER" />
  <Status Code="AS" Description="ADVISE" />
  <Rates Type="P" />
  <Rules MinimumGuests="2" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="FCNFP" Description="FAX/EMAIL CONFIRMATION - GUEST" />
  <SpecialServiceType Code="OTH" Description="OTHER" />
  <Status Code="AS" Description="ADVISE" />
  <Rates Type="P" />
  <Rules MinimumGuests="2" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="FCNFB" Description="FAX/EMAIL CONFIRMATION - BOTH" />
  <SpecialServiceType Code="OTH" Description="OTHER" />
  <Status Code="AS" Description="ADVISE" />
  <Rates Type="P" />
  <Rules MinimumGuests="2" />
  </SpecialServicesAvailResponse>
- <SpecialServicesAvailResponse SegmentId="SVCAV2" AvailableInd="Y" >
  <SpecialService Code="MCNF" Description="MAILED CONFIRMATION" />
  <SpecialServiceType Code="OTH" Description="OTHER" />
  <Status Code="AS" Description="ADVISE" />
  <Rates Type="P" />
  <Rules MinimumGuests="2" />
  </SpecialServicesAvailResponse>
- <ASP_Request>
  <MessageId>CCCABHD1</MessageId>
  <SessionId>TUV4</SessionId>
  <replyMethod>HTML</replyMethod>
  <PAX_ACTION_CODES>NN</PAX_ACTION_CODES>
  <DINING_SEATING_CODE>F</DINING_SEATING_CODE>
  <DINING_SEATING_DESC>FIRST SEATING</DINING_SEATING_DESC>
  <rcvr>CCCABAV2</rcvr>
  <DECK_DESC>UPPER</DECK_DESC>
  <TRANS_EXISTS>2</TRANS_EXISTS>
  <REVISION_MODE_FLAG/>
  <PAX_COUNT>2</PAX_COUNT>
  <replyXML>Y</replyXML>
  <CABIN_NUMBER>U90</CABIN_NUMBER>
  <DINING_WITH_RES_ID/>
  <debugFlag>1</debugFlag>
  <VendorFrom>MCY</VendorFrom>
  </ASP_Request>
- <recordset type="select" TableName="ELNPAX" >
- <row index="0" colcount="32" >
  <ELNPAX.SESSION_ID index="0" value="TUV4" />
  <ELNPAX.PAX_NUMBER index="1" value="0" />
  <ELNPAX.NAME_LAST index="2" value="" />
  <ELNPAX.NAME_FIRST index="3" value="" />
  <ELNPAX.TITLE_CODE index="4" value="" />
  <ELNPAX.GENDER_CODE index="5" value="" />
  <ELNPAX.AGE index="6" value="" />
  <ELNPAX.AGE_TYPE index="7" value="" />
  <ELNPAX.ACTION_CODE index="8" value="N" />
  <ELNPAX.PRIMARY_CONTACT_INDICATOR index="9" value="Y" />
  <ELNPAX.COVERAGE_INDICATOR index="10" value="" />
  <ELNPAX.PAST_PAX_INDICATOR index="11" value="" />
  <ELNPAX.PAST_PAX_NUMBER index="12" value="" />
  <ELNPAX.TRAVEL_WITH_RES_ID index="13" value="" />
  <ELNPAX.BIRTH_DATE index="14" value="1900-01-01" />
  <ELNPAX.ADDRESS_1 index="15" value="" />
  <ELNPAX.ADDRESS_2 index="16" value="" />
  <ELNPAX.CITY index="17" value="" />
  <ELNPAX.STATE index="18" value="" />
  <ELNPAX.ZIP_CODE index="19" value="" />
  <ELNPAX.COUNTRY_CODE index="20" value="" />
  <ELNPAX.PROVINCE index="21" value="" />
  <ELNPAX.PHONE_SERVICE_CODE index="22" value="" />
  <ELNPAX.PHONE_NUMBER index="23" value="" />
  <ELNPAX.EMAIL index="24" value="" />
  <ELNPAX.OCCUPATION_CODE index="25" value="" />
  <ELNPAX.IMMIGRATION_ISSUE_COUNTRY index="26" value="" />
  <ELNPAX.IMMIGRATION_BIRTH_COUNTRY index="27" value="" />
  <ELNPAX.IMMIGRATION_DOC_EXPIRE index="28" value="1900-01-01" />
  <ELNPAX.IMMIGRATION_DOC_ISSUE index="29" value="1900-01-01" />
  <ELNPAX.IMMIGRATION_DOC_NUMBER index="30" value="" />
  <ELNPAX.SOCIAL_SECURITY_NUMBER index="31" value="" />
  </row>
- <row index="1" colcount="32" >
  <ELNPAX.SESSION_ID index="0" value="TUV4" />
  <ELNPAX.PAX_NUMBER index="1" value="1" />
  <ELNPAX.NAME_LAST index="2" value="" />
  <ELNPAX.NAME_FIRST index="3" value="" />
  <ELNPAX.TITLE_CODE index="4" value="" />
  <ELNPAX.GENDER_CODE index="5" value="" />
  <ELNPAX.AGE index="6" value="" />
  <ELNPAX.AGE_TYPE index="7" value="" />
  <ELNPAX.ACTION_CODE index="8" value="N" />
  <ELNPAX.PRIMARY_CONTACT_INDICATOR index="9" value="" />
  <ELNPAX.COVERAGE_INDICATOR index="10" value="" />
  <ELNPAX.PAST_PAX_INDICATOR index="11" value="" />
  <ELNPAX.PAST_PAX_NUMBER index="12" value="" />
  <ELNPAX.TRAVEL_WITH_RES_ID index="13" value="" />
  <ELNPAX.BIRTH_DATE index="14" value="1900-01-01" />
  <ELNPAX.ADDRESS_1 index="15" value="" />
  <ELNPAX.ADDRESS_2 index="16" value="" />
  <ELNPAX.CITY index="17" value="" />
  <ELNPAX.STATE index="18" value="" />
  <ELNPAX.ZIP_CODE index="19" value="" />
  <ELNPAX.COUNTRY_CODE index="20" value="" />
  <ELNPAX.PROVINCE index="21" value="" />
  <ELNPAX.PHONE_SERVICE_CODE index="22" value="" />
  <ELNPAX.PHONE_NUMBER index="23" value="" />
  <ELNPAX.EMAIL index="24" value="" />
  <ELNPAX.OCCUPATION_CODE index="25" value="" />
  <ELNPAX.IMMIGRATION_ISSUE_COUNTRY index="26" value="" />
  <ELNPAX.IMMIGRATION_BIRTH_COUNTRY index="27" value="" />
  <ELNPAX.IMMIGRATION_DOC_EXPIRE index="28" value="1900-01-01" />
  <ELNPAX.IMMIGRATION_DOC_ISSUE index="29" value="1900-01-01" />
  <ELNPAX.IMMIGRATION_DOC_NUMBER index="30" value="" />
  <ELNPAX.SOCIAL_SECURITY_NUMBER index="31" value="" />
  </row>
  </recordset>
- <recordset type="select" TableName="ELNCONTEXT" >
- <row index="0" colcount="66" >
  <ELNCONTX.SESSION_ID index="0" value="TUV4" />
  <ELNCONTX.CRUISE_LINE_CODE index="1" value="CCL" />
  <ELNCONTX.VENDOR_FROM index="2" value="MCY" />
  <ELNCONTX.REFERRER index="3" value="" />
  <ELNCONTX.ARC_NUMBER index="4" value="14123454" />
  <ELNCONTX.AGENT_PHONE_NUMBER index="5" value="4142287472" />
  <ELNCONTX.AGENT_CLIA_NUMBER index="6" value="" />
  <ELNCONTX.AGENT_IATA_NUMBER index="7" value="14123454" />
  <ELNCONTX.AGENT_ELN_NUMBER index="8" value="63143693" />
  <ELNCONTX.AGENT_NAME index="9" value="Lance Gereau" />
  <ELNCONTX.USER_ID index="10" value="" />
  <ELNCONTX.CUID index="11" value="" />
  <ELNCONTX.SAIL_ID index="12" value="20041125FA03" />
  <ELNCONTX.DEPART_DATE index="13" value="2004-11-25" />
  <ELNCONTX.RATE_OPTION_CODE index="14" value="BCA" />
  <ELNCONTX.CATEGORY_CODE index="15" value="12" />
  <ELNCONTX.CATEGORY_BKG_STATUS_CODE index="16" value="" />
  <ELNCONTX.CABIN_NUMBER index="17" value="U90" />
  <ELNCONTX.CABIN_BKG_STATUS_CODE index="18" value="NN" />
  <ELNCONTX.RESERVATION_ID index="19" value="" />
  <ELNCONTX.REVISION_MODE_FLAG index="20" value="" />
  <ELNCONTX.BOOKING_OPTION_DATE index="21" value="1900-01-01" />
  <ELNCONTX.RATE_OPTION_CITY_CODE index="22" value="CAK" />
  <ELNCONTX.CATEGORY_UPGRADE_CODE index="23" value="" />
  <ELNCONTX.CATEGORY_DISPLAY_UPGRADE_CODE index="24" value="N" />
  <ELNCONTX.CATEGORY_RATE_OPTION_CODE index="25" value="PNSP44" />
  <ELNCONTX.DINING_SEATING_CODE index="26" value="F" />
  <ELNCONTX.DINING_TABLE_CODE index="27" value="" />
  <ELNCONTX.SMOKING_PREF_CODE index="28" value="N" />
  <ELNCONTX.DINING_WITH_RES_ID index="29" value="" />
  <ELNCONTX.PAX_COUNT index="30" value="2" />
  <ELNCONTX.TRANS_EXISTS_FLAG index="31" value="2" />
  <ELNCONTX.PKG_EXISTS_FLAG index="32" value="0" />
  <ELNCONTX.SVC_EXISTS_FLAG index="33" value="0" />
  <ELNCONTX.PAYMENT_EXISTS_FLAG index="34" value="0" />
  <ELNCONTX.PASSWORD index="35" value="" />
  <ELNCONTX.SESS_TIMESTAMP index="36" value="2003-11-12:17:34:54.000000" />
  <ELNCONTX.CRUISE_LINE_NAME index="37" value="" />
  <ELNCONTX.SAILING_DESC index="38" value="BAHAMAS" />
  <ELNCONTX.EMBARK_PORT_DESC index="39" value="ORLANDO, FLORIDA" />
  <ELNCONTX.DEBARK_PORT_DESC index="40" value="ORLANDO, FLORIDA" />
  <ELNCONTX.ITIN_STRING index="41" value="3 days/002 ports" />
  <ELNCONTX.ITIN_CODE index="42" value="03MCOBA5" />
  <ELNCONTX.RATE_CODE_DESC index="43" value="BEST FARE CABIN ASSIGNED" />
  <ELNCONTX.DECK_DESC index="44" value="UPPER" />
  <ELNCONTX.SHIP_NAME index="45" value="FANTASY" />
  <ELNCONTX.CABIN_LOC_DESC index="46" value="OCEANVIEW" />
  <ELNCONTX.PORT_CHARGE_O index="47" value="0" />
  <ELNCONTX.PORT_CHARGE_A index="48" value="0" />
  <ELNCONTX.PORT_CHARGE_B index="49" value="0" />
  <ELNCONTX.PORT_CHARGE_R index="50" value="0" />
  <ELNCONTX.MISC_CHARGE_O index="51" value="0" />
  <ELNCONTX.MISC_CHARGE_A index="52" value="0" />
  <ELNCONTX.MISC_CHARGE_B index="53" value="0" />
  <ELNCONTX.MISC_CHARGE_R index="54" value="0" />
  <ELNCONTX.INSURANCE_CHARGE index="55" value="3900" />
  <ELNCONTX.PAYMENT_RECEIVED index="56" value="0" />
  <ELNCONTX.TOTAL_PRICE index="57" value="0" />
  <ELNCONTX.COMMISSION index="58" value="0" />
  <ELNCONTX.NET index="59" value="0" />
  <ELNCONTX.DEPOSIT_AMOUNT index="60" value="0" />
  <ELNCONTX.DEPOSIT_DATE index="61" value="1900-01-01" />
  <ELNCONTX.FULL_DUE_DATE index="62" value="1900-01-01" />
  <ELNCONTX.COMMISSIONABLE_AMOUNT index="63" value="0" />
  <ELNCONTX.SHIP_CODE index="64" value="FA" />
  <ELNCONTX.DINING_SEATING_DESC index="65" value="FIRST SEATING" />
  </row>
  </recordset>
  </CruiseLineResponse>
0
 
LVL 9

Accepted Solution

by:
sparkplug earned 250 total points
ID: 9733296
Hi,

The function user:GetServiceCount() is missing so I'm not sure what is happening there.

The line:  <xsl:when test="$specServ/Rules/@MinimumGuests=$TOTALPAX"> is redundant because of the line <xsl:for-each select="SpecialServicesAvailResponse[Rules/@MinimumGuests=$TOTALPAX]">

I also don't know what the value of $TOTALPAX is as this is not shown. I guess however that this is 2 as the fields that you mention have this value.

Also I don't see any connection between your choose of checkboxes which are set to true so I guess the only way to do this is to hardcode the descriptions.

The following changes to the <xsl:choose> statement should replace all checkboxes to hidden fields for the items stated:

<xsl:choose>
   <xsl:when test="SpecialService/@Code = 'FCNFA'">
              <input type="hidden" name="check{$specServI}_{number(position())-1}" value="False"/>
   </xsl:when>
   <xsl:when test="SpecialService/@Code = 'FCNFP'">
              <input type="hidden" name="check{$specServI}_{number(position())-1}" value="True"/>
   </xsl:when>
   <xsl:when test="SpecialService/@Code = 'FCNFB'">
              <input type="hidden" name="check{$specServI}_{number(position())-1}" value="True"/>
   </xsl:when>
   <xsl:when test="SpecialService/@Code = 'MCNF'">
              <input type="hidden" name="check{$specServI}_{number(position())-1}" value="False"/>
   </xsl:when>
   <xsl:when test="@AvailableInd='Y'">
        <input type="checkbox" name="check{$specServI}_{number(position())-1}" onClick="AllAddService({$specServI}, {number(position())-1}, '{SpecialService/@Code}', '{SpecialServiceType/@Code}', '{Rules/@DateRequiredInd}', '{Rules/@YearsRequiredInd}')"  />
   </xsl:when>
   <xsl:otherwise>
            &#160;
   </xsl:otherwise>
</xsl:choose>

I have also removed the redundant code.

Hope this helps.

>S'Plug<



0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Many times as a report developer I've been asked to display normalized data such as three rows with values Jack, Joe, and Bob as a single comma-separated string such as 'Jack, Joe, Bob', and vice versa.  Here's how to do it. 
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
This video demonstrates how to create an example email signature rule for a department in a company using CodeTwo Exchange Rules. The signature will be inserted beneath users' latest emails in conversations and will be displayed in users' Sent Items…

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

24 Experts available now in Live!

Get 1:1 Help Now