我有一個使用XML文件輸入的用Word編寫的報告卡。在XML文件中,如果學生在所有三個三學期都保持在同一部分,則該類將有一個節點;如果他們在三個月更換部分,則每個部分都會有一個節點。節點看起來像這樣(大大簡化):在MSWord郵件合併中彙總XML數據
<ReportCardSectionFB Abs1="2" Abs2="11" CourseID="ELMATH1" CourseTitle="Math" PeriodStart="3" TeacherName="Jones, Jennifer" TermCode="Year" SectionID="ELMATH1-4" />
<ReportCardSectionFB Abs1="1.50" Abs2="6" CourseID="ELMATH1" CourseTitle="Math" PeriodStart="3" TeacherName="Smith, Tina" TermCode="Year" SectionID="ELMATH1-3" />
有XML中無指示哪個三個月節點所屬。
在Word文檔中,我們用下面的郵件合併命令拉沒有數據:
{MERGEFIELD "ReportCardSectionFB[@PeriodStart='3']/ @Abs1" \# 0.# \* MERGEFORMAT }
那不是在這種情況下工作:它僅會從第一個節點沒有數據它跨越說到,即:2.0
。是否有辦法獲得所有第3階段的@ Abs1的總和,即:3.5
?如果不是的話,是否有辦法在第3期獲得最後的@ Abs1,即:1.5
?
你有沒有嘗試在'sum()'中包裝整個xpath? – har07
我得到各種錯誤,這取決於我放置sum()的位置(圍繞整個XPath表達式,圍繞@ Abs1等)。任何建議的功能應該去哪裏? –
正如我所說,正確的xpath 1.0表達式應該是'sum()',總和(ReportCardSectionFB [@ PeriodStart ='3']/@ Abs1)''。另請參見xpath測試程序中的[演示](http://xpatheval.apphb.com/0I6Bg6Q4J) – har07