|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
Друзья! Прошу Вашей помощи! Есть шаблон XSLT, который как не странно преобразовывает XML в Exсel документ:) но делает это очень долго :( помогите его оптимизировать! В какую сторону мне копать... Конструкция преобразования элементарная, обычный when, я прохожу по xml и при совпадении значений присваиваю блоку необходимое форматирование в зависимости от условия. xslt: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240.
и т.д. xml: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
и т.д. в той же структуре ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 14:18 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
Дичь какая. За //Report5 можно сразу оставлять без обеда. Всю неделю. В <xsl:template mode="r" match="Report5" name="r"> каким образом попадаем? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 15:29 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
Antonariy, вот поэтому и не ем, а пытаюсь освоить xslt :) а что не так с "//Report5"? В Код: xml 1.
попадаю так Код: xml 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 15:59 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
khSergа что не так с "//Report5"?// написанные в начале пути означают поиск везде. даже в УРОЧИЩЕ. и таких глобальных поисков по паре десятков на каждый Report5. замена // на / khSergпопадаю така из откуда? хотелось бы увидеть стек вызовов шаблонов с начала построения списка. экселевские теги не нужны. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 16:07 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
Antonariyзамена // на /это обрывок мысли, игнорировать ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 16:08 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
AntonariykhSergа что не так с "//Report5"?// написанные в начале пути означают поиск везде. даже в УРОЧИЩЕ. и таких глобальных поисков по паре десятков на каждый Report5. замена // на / khSergпопадаю така из откуда? хотелось бы увидеть стек вызовов шаблонов с начала построения списка. экселевские теги не нужны. Я вызываю шаблон один раз, методом как я писал выше, он находится между экселевскими тегами. И уже в Код: xml 1.
он перераспределяет что как форматировать. Возможно моя конструкция шаблона неправильная? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 16:20 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
khSergЯ вызываю шаблон один раз, методом как я писал выше, он находится между экселевскими тегами. а экселевские теги где находятся? в template, все это хозяйство содержащем, что написано? khSergВозможно моя конструкция шаблона неправильная?именно. а чтобы сделать ее правильной, нужна информация, которую я пытаюсь выяснить. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 16:48 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
Antonariyа экселевские теги где находятся? в template, все это хозяйство содержащем, что написано? экселевские теги находятся в общем шаблоне xslt, приложил файл целиком для наглядности! Antonariyименно. а чтобы сделать ее правильной, нужна информация, которую я пытаюсь выяснить. все что нужно с удовольствием предоставлю. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 17:48 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
Antonariy, если упростить то общая структура шаблона такая... Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 17:55 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
Вот этоkhSerg Код: xml 1.
заменить на Код: xml 1.
если Report5 - не дочерний узел, то явно указать полный путь к узлу Вот это дикую порнографию khSerg Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 19:01 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
_Vasilisk_ Код: xml 1. 2. 3.
читать как Код: xml 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2014, 19:02 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
_Vasilisk_, Большое спасибо, время обработки сократилось на 2 порядка!!! Надо изучать мат.часть :) Насколько я понимаю, если на входе идет род. элемент Код: xml 1.
то уточнять его позицию в дереве не надо. И Код: xml 1.
определяет элементы текущего узла. Всё так? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 09:51 |
|
Оптимизация XSLT
|
|||
---|---|---|---|
#18+
khSerg Насколько я понимаю, если на входе идет род. элементНа вход идет коллекция узлов, определяемая xpath-выражением в xsl:apply-templates select="" xsl:template match="Report5" вызывается для каждого узла Report5, имеющимся в коллекции. khSerg И "." определяет элементы текущего узла. Элементы текущего узла это *, точка это сам текущий узел. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2014, 12:01 |
|
|
start [/forum/topic.php?fid=14&fpage=12&tid=1332307]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 18ms |
total: | 182ms |
0 / 0 |