Re: О ПОСЛЕДНИХ ИСПРАВЛЕНИЯХ В WEB ИРБИС32
Пользователь:
Константин Сбойчаков (IP-адрес скрыт)
Дата: 13, April, 2006 12:49
Encoding действительно не причем - убрал его
С ограничителем <.> ошибок не наблюдаю - возможно проблема в кодироке термина запроса
На ftp.gpntb.ru/pub/irbis обновлен файл upgrade_web32_52.zip с исправленой версией шлюза WEB ИРБИС32.
Функция &uf('+3S немного расширена и исправлена:
+3S<dbn>,NDOcs,<"termin">,<@имяформата|формат>
Теперь если NDOcs=0 то возвращается ТОЛЬКО количество найденных
Неважно задан формат или нет
Это применяется в многобазовом поиске - search_mnu.pft
Если NDOcs > 0 в случае 0 результата поиска вернется пустота
КОД ФОРМАТА search_mnu.pft
----------------------------------------
&uf('+1W2#',v1009)
&uf('+1W3#',v2226),
&uf('+1W4#',v2221),
&uf('+1W5#',&uf('+3E',v2225)),
&uf('+1W6#',v3331),
if p(v2224) then &uf('+1W7#',v2224) else &uf('+1W7#20') fi,
&uf('+1W8#'),
(if &uf('+5Tdbn_web.mnu')<>'' then
if &uf('+1R6')= &uf('+5Tdbn_web.mnu')
then
else
&uf('+1W9#',&uf('+3S',&uf('+5Tdbn_web.mnu'),',0,','|',&uf('+1R3'),'|',',')),
if val(&uf('+1R9'))>0 then
&uf('+1W8#1'),break,fi,
fi
else break fi),
if &uf('+1R8')<>'' then
'<table border=0 cellpadding=0 cellspacing=2 bgcolor=#FFFFFF width=100%>',
'<TR>',
'<TD VALIGN=TOP class=inp1><center>',
'Поискать то же самое в базе данных:',
'</center><td>',
(if &uf('+5Tdbn_web.mnu')<>'' then
if &uf('+1R6') = &uf('+5Tdbn_web.mnu')
then
else
&uf('+1W9#',&uf('+3S',&uf('+5Tdbn_web.mnu'),',0,','|',&uf('+1R3'),'|',',')),
if val(&uf('+1R9'))>0 then
'<TD VALIGN=TOP>',
'<div align=','"','center','"',' class=','"','sub1','"',' onMouseMove=this.className=','"','sub2','"',' onmouseout=this.className=','"','sub1','"', '>',
if &uf('+1R6')=&uf('G1_',&uf('+1R4'))
then &uf('+1W1#',&uf('+5Tdbn_web.mnu')),
else
if (&uf('G1_',&uf('+1R4'))='_EX') or (&uf('G1_',&uf('+1R4'))='_PROF')
then &uf('+1W1#',S(&uf('+5Tdbn_web.mnu'),&uf('G1_',&uf('+1R4')))),
else &uf('+1W1#',&uf('G1_',&uf('+1R4'))),
fi,
fi,
'<a href=','"','/cgi/irbis32r/cgiirbis_32.exe?C21COM=S&I21DBN=',&uf('+1R1'),'&P21DBN=',&uf('+5Tdbn_web.mnu'),'&S21FMT=',&uf('+1R2'),'&S21ALL=',&uf('+3E',&uf('+3U',&uf('+1R3'))),'&Z21ID=',&uf('+1R5'),'&S21STN=1','&S21REF=10','&S21CNR=',&uf('+1R7'),'">',
if &uf('+5Fdbn_web.mnu')<>'' then &uf('+5Fdbn_web.mnu') else &uf('+5Tdbn_web.mnu') fi,
' (',&uf('+1R9'),')',
'</a>','</div></td>',
fi,
fi
else break fi),
'</tr></table>',
fi
&uf('+1W1#')
&uf('+1W2#')
&uf('+1W3#'),
&uf('+1W4#'),
&uf('+1W5#'),
&uf('+1W6#'),
&uf('+1W7#'),