powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ZEN tablePane "перестал" показывать пустые строки
3 сообщений из 3, страница 1 из 1
ZEN tablePane "перестал" показывать пустые строки
    #36428981
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть вот такая табличка...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<tablePane 
	id="tpJob" 
	tableName="wrk.Job" 
	valueColumn="ID"
	pageSize="50" 
	useSnapshot="true" 
	caption="Работы" 
	onselectrow='zenPage.Select(zenThis.getValue("ID"))'
	ondblclick='zenPage.Edit(zenThis.getValue("ID"));' 
	showValueInTooltip='true'
	OnCreateResultSet="CrtSQL"
	showQuery="true"
>
...
</tablePane>

Вот так генерится SQL-запрос

Код: 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.
/// Построение запроса для отображения таблицы
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_"dEnd 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_"Upper(Name) [ Upper('"_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
}

Делаю добавление в табличку...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
/// Добавить элемент
Method Add() [ Language = javascript ]
{
	var ok=confirm('Вы действительно хотите добавить работу?')
	if (ok) {
		var cn=zenPage.getComponentById('cnJob')
		cn.createNewObject()
		cn.save()
		cn.setModelId("")
		zenPage.getComponentById('tpJob').executeQuery();
	}
}

Сами экземпляры появляются, проверял через портал... А вот такой, сгенеренный в tablePane SQL-запрос

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT 
   ID,
   Name,
   wrk.Job_AllMember(ID) as Member,
   dEnd as Brk,
   wrk.Plan_KvrToStr(Plan->ID) as Kvartal,
   wrk.Job_Ok(ID) as Ok 
FROM
   wrk.Job as a 
ORDER BY
   dCreate Desc,Member

Эти пустые строки не показывает.
Но если этот текст скопировать и выполнить в Портале - пустые строки видны.

Что-то не пойму в чем дело? Ранее ведь пустые строки показывались, это мне подтвердили коллеги по работе...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
ZEN tablePane "перестал" показывать пустые строки
    #36429012
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если убрать

Код: plaintext
useSnapshot="true"

То количество записей вообще уменьшается раза в 2!
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
ZEN tablePane "перестал" показывать пустые строки
    #36429109
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Убрал из сортировки Desc

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT 
   ID,
   Name,
   wrk.Job_AllMember(ID) as Member,
   dEnd as Brk,
   wrk.Plan_KvrToStr(Plan->ID) as Kvartal,
   wrk.Job_Ok(ID) as Ok 
FROM
   wrk.Job as a 
ORDER BY
   dCreate,Member

Строчки появились!
Т.е. потом потыкавшись понял, что пока не заполнено поле dCreate - фик чего увидишь! Правда если использовать фильтр на одном из столбцов - покажет записи и с пустым dCreate .
Там получается вот такой запрос


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT 
   ID,
   Name,
   wrk.Job_AllMember(ID) as Member,
   dEnd as Brk,
   wrk.Plan_KvrToStr(Plan->ID) as Kvartal,
   wrk.Job_Ok(ID) as Ok 
FROM
   wrk.Job as a 
WHERE
   Upper(Name) [ Upper('11') 
ORDER BY
   dCreate Desc,Member

Это "нормальное" поведение для tablePane ?
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ZEN tablePane "перестал" показывать пустые строки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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