parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Вывод сложной структуры для учеников школы (исправленная версия)

Евгений Химич 02.11.2015 00:31 / 02.11.2015 00:38

В школе много классов:
Пусть к файлу cfg с учениками 11 А класса находится в директории /school/11a/people.cfg
Пусть к файлу cfg с учениками 11 Б класса находится в директории /school/11b/people.cfg
Пусть к файлу cfg с учениками 10 А класса находится в директории /school/10a/people.cfg
Пусть к файлу cfg с учениками 10 Б класса находится в директории /school/10b/people.cfg
и т.д.

Файл people.cfg
YesNo	name	uri	dezhur	photo
Yes	Иванов	/11a/ivanov/	5	/11a/ivanov/img.jpg
Yes	Петров	/11a/petrov/	2	/11a/petrov/img.jpg
no	Сидаров	/11a/sidarov/	 	/11a/sidarov/img.jpg
no	Волков	/11a/volkov/	1	/11a/volkov/img.jpg
Yes	Михаева	/11a/miheeva/	2	/11a/miheeva/img.jpg
Где, Yes - хорошист, no — троечник

Чтобы вывести всех учеников в необходимом месте, я использую метод:
@klass_sk_[name_klass][result;sections]
$sections[^table::load[/school/${name_klass}/people.cfg]]
^sections.menu{^klass_sk_cell[$sections]}

@klass_sk_cell[sections]
^if(!def $sections.uri){
<p><span>$sections.name</span></p>}($sections.uri eq $request:uri){
<p><span>$sections.name</span></p>}{
<p><span><a href="$sections.uri">$sections.name</a></span></p>}
Соответственно вывожу сам список учеников:
^klass_sk_[11a]
^klass_sk_[11b]
^klass_sk_[10a]
^klass_sk_[10b]
Теперь, мне необходимо вывести только хорошистов т.е. вывести всех учеников из столбца YesNo, которые содержат данные Yes. Я пытаюсь их вывести методом который ниже, но что-то не получается (я подозреваю, что косяк где-то в sections)
@klass_sk_[name_klass][result;sections]
$sections[^table::load[/school/${name_klass}/people.cfg]]
$sectionsYesNO[^sections.select($sections.YesNo==Yes)]
^sectionsYesNO.menu{^klass_sk_cell[$sections]}

@klass_sk_cell[sections]
^if(!def $sections.uri){
<p><span>$sections.name</span></p>}($sections.uri eq $request:uri){
<p><span>$sections.name</span></p>}{
<p><span><a href="$sections.uri">$sections.name</a></span></p>}
Подскажите пожалуйста как мне вывести хорошистов, 11А, 11Б, 10А, 10Б?


P.S. Выдает ошибку
.......auto.p(272:50): 'Yes' invalid number (double) [number.format].......
Строка 272 содержит данные:
[code]$sectionsYesNo[^sections.select($sections.YesNo==Yes)]