powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Фильтр в колонках tablePane
7 сообщений из 7, страница 1 из 1
Фильтр в колонках tablePane
    #36386502
armin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<column colName="State"
header="Закрита/відкрита"
filterOp="="
filterType="enum"
filterEnum="0, 1"
filterEnumDisplay="закрита, відкрита" />

вот так работает...но в таблице не смотрибельно выглядит 1 и 0.....делаю следующее

<column colName="case State
when '0' then 'закрита'
when '1' then 'відкрита'
else '' end as State"
header="Закрита/відкрита"
filterOp="="
filterType="enum"
filterEnum="0, 1"
filterEnumDisplay="закрита, відкрита" />

...теперь фильтр не работает ((....как это победить!!???....если можете киньте кусок кода )
...
Рейтинг: 0 / 0
Фильтр в колонках tablePane
    #36386568
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
armin , есть несколько вариантов работы с таблицей и фильтрами в колонках.

Код: plaintext
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.
 1 . Генерировать sql-запрос

<tablePane 
	...
	OnCreateResultSet="CrtSQL"
	...
>
...
/// Построение запроса для отображения таблицы
Method CrtSQL(Output tSC As %Status, pInfo As %ZEN.Auxiliary.QueryInfo) As %ResultSet
{
	Set tRS = ""
	
	Set tSC = $$$OK
	Set tSELECT = "ID,Name,"
	Set tSELECT = tSELECT_"wrk.Job_AllMember(ID) as Member,"
	Set tSELECT = tSELECT_"wrk.sys_Month(dEnd,1) as Brk,"
	Set tSELECT = tSELECT_"wrk.Plan_KvrToStr(Plan->ID) as Kvartal,"
	Set tSELECT = tSELECT_"wrk.Job_Ok(ID) as Ok"
	Set tFROM = "wrk.Job as a"
	Set tWHERE = ""
	Set tORDER = "dCreate Desc,Member"
	// строим критерии отбора по фильтрам
	If $g(pInfo.filters("Name"))'="" {
		Set tWHERE = tWHERE_"Name [ '"_pInfo.filters("Name")_"' "
	}
	If $g(pInfo.filters("Member"))'="" {
		Set:tWHERE'="" tWHERE=tWHERE_" AND "
		Set tWHERE=tWHERE_"wrk.Job_AllMember(ID)['"_ pInfo.filters("Member")_"'"
	}
	If $g(pInfo.filters("Ok"))'="" {
		Set:tWHERE'="" tWHERE=tWHERE_" AND "
		s ok="<>"
		s:pInfo.filters("Ok")="Да" ok="="
		Set tWHERE=tWHERE_"wrk.Job_Ok(ID)"_ok_"'Да'"
	}
	Set sql = "SELECT " _ tSELECT _ " FROM " _ tFROM
	Set:tWHERE'="" sql = sql _ " WHERE " _tWHERE
	Set:tORDER'="" sql = sql _ " ORDER BY " _tORDER
	Set tRS = ##class(%ResultSet).%New()
	Set tSC = tRS.Prepare(sql)
	Set pInfo.queryText = sql
	Quit tRS
}
...
Рейтинг: 0 / 0
Фильтр в колонках tablePane
    #36386580
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2. Расписать все по колонкам...

Код: plaintext
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.
<tablePane 
	id="tpTask2" 
	tableName="wrk.Task as a LEFT OUTER JOIN wrk.Job as b ON (a.ID=b.Task)" 
	whereClause="b.ID is not NULL"
	orderByClause="a.dCreate Desc"
	valueColumn="ID"
	pageSize="20" 
	useSnapshot="true" 
	caption="Задачи в работе или завершены" 
	onselectrow='zenPage.Select(zenThis.getValue("ID"))'
	ondblclick='zenPage.Edit(zenThis.getValue("ID"));' 
	showValueInTooltip="true"
>
...
	<column 
		header="Название" 
		colName="Title" 
		colExpression="a.Title"
		filterType="text"
		filterOp="["
	/>
	<column 
		header="Исполнители" 
		colName="Member" 
		width="200px"
		colExpression="wrk.Job_AllMember(b.ID)"
	/>
...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
Фильтр в колонках tablePane
    #36386583
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самый, самый универсальный - это первый. Зато второй смотрится лучше...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
Фильтр в колонках tablePane
    #36386601
armin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,

пасибо...пипец лопатить прийдется.....ща буду пробовать
...
Рейтинг: 0 / 0
Фильтр в колонках tablePane
    #36386803
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
включи режим showQuery="1"
и посмотри что дают тебе фильтры
потом построй фильтр так, чтобы он тебе подставлял нужные значения
...
Рейтинг: 0 / 0
Фильтр в колонках tablePane
    #36386814
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
<column 
colExpression="case sex when 1 then 'М' when 2 then 'Ж' else 'МЖ' end" 
colName="sex"
header="Пол" 
width="60"
filterType="enum" filterEnum="М,Ж,МЖ"
/>
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Фильтр в колонках tablePane
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]