powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ZEN
25 сообщений из 80, страница 2 из 4
ZEN
    #35943759
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Появились еще вопросы по ZEN.

1) Как можно сохранить полученную таблицу на ZEN-странице в файл?
2) Можно все-таки как-то сменить текущего пользователя перед загрузкой ZEN-страницы?

И еще один вопрос маленько не по теме: с помощью каких спец. кодов можно сделать ссылку на конкретное высказывание в теме?
...
Рейтинг: 0 / 0
ZEN
    #35943773
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mr.Partizan1) Как можно сохранить полученную таблицу на ZEN-странице в файл?

Файл на клиенте или на сервере?

mr.Partizanс помощью каких спец. кодов можно сделать ссылку на конкретное высказывание в теме?

Ты про "редактирование цитаты" или "гипперссылку в тексте"?
...
Рейтинг: 0 / 0
ZEN
    #35943784
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1) Файл на клиенте

2) Я про то, что ты только что сделал в своем сообщении
...
Рейтинг: 0 / 0
ZEN
    #35943820
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
щас я остался без зена
но что то вроде этого
Код: plaintext
1.
2.
3.
4.
5.
6.
<tablePane>
 sql="select * from ksk_set_View.STATADR
  where DATA between ? and ?"> 
<parameter expression="..DataS"/>
<parameter expression="..DataPo"/>
</tablePane>
...
Рейтинг: 0 / 0
ZEN
    #35944079
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMor , примерно понял... А с фильтрами как оно будет сочетаться?
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
ZEN
    #35944124
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mr.Partizan1) Файл на клиенте

ЗЕН "серверный язык", он в этом деле не помошник... Это лучше спрашивать в ХТМЛ разделе. Только спрашивать нужно следующее:
- Как мне сохранить даные некой таблички в файл на клиенте?

Там вроде есть какие-то варианты с АктивИксом... Сам я с такими надобностями не сталкивался... Отделывался "версией для печати", которую можно "заредактировать в Эксель"...

mr.Partizan2) Я про то, что ты только что сделал в своем сообщении

Нажми на моём сообщении "Цитировать" и все увидишь... Я просто редактирую твою цитату, БиБи-кодами [ quot ]<текст>[ / quot ]. Только без пробелов конечно...
...
Рейтинг: 0 / 0
ZEN
    #35944345
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsamr.Partizan1) Файл на клиенте

ЗЕН "серверный язык", он в этом деле не помошник... Это лучше спрашивать в ХТМЛ разделе. Только спрашивать нужно следующее:
- Как мне сохранить даные некой таблички в файл на клиенте?

Там вроде есть какие-то варианты с АктивИксом... Сам я с такими надобностями не сталкивался... Отделывался "версией для печати", которую можно "заредактировать в Эксель"...

Нашел такую тему в ХТМЛ
D-monИмеется таблица, генерируемая по запросу php-скриптом.
Необходимо занести данные из этой таблицы в файл Excel-я...
u78если отдавая файл клиенту указать в http заголовках
Content-Disposition = "attachment;excel.xls"
и тип ContentType = "application/x-msexcel"
Expires = "Thu, 01 Apr 2003 00:00:00 GMT"
то IE предложит открыть этот файл в екселе, или сохранить на диске, не знаю как это реализовать в пхп но на Cache' я так делаю и всё работает. (дело тут не в php или Cache а именно в заголовках HTTP ответа сервера).
может кто знает как нужно это делать?
...
Рейтинг: 0 / 0
ZEN
    #35944428
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
всем привет
а что мешает кинуть текущий запрос (из tablepane) в ZEN.Report?
есть наработки ZEN.Report для выгрузки в Excel, файл формируется на сервере Cache, потом открывается для сохранения в броузере и удаляется с сервера. Пользователь что хочет с ним то и делает ))
...
Рейтинг: 0 / 0
ZEN
    #35945449
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ymka2007всем привет
а что мешает кинуть текущий запрос (из tablepane) в ZEN.Report?
...
мешает неопытность,
можно показать на примере это все?
...
Рейтинг: 0 / 0
ZEN
    #35946223
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
честно говоря мало времени
но идея такая:
два одинаковых запроса в tablepane и zenReport
пользователь в tablepane выставляет нужные ему фильтры и видит необходимый срез базы на экране в tablepane, потом нажимает кнопку "Print"
срабатывает метод который собирает все значения из фильтров:
Код: 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.
Method ToPDF() [ Language = javascript ]
{
	var RD = this.getComponentById('DateClass').getProperty('value');
	var vTable = this.getComponentById('table');
	var SEX = vTable.getFilterValue('SEX');
	var AG = vTable.getFilterValue('agegroup');
	var FIO = vTable.getFilterValue('FIO');
	var RN = vTable.getFilterValue('RegNum');
	var City = vTable.getFilterValue('City');
	var URL='zenReportTest.cls?$MODE=pdf&RD='+RD+'&SEX='+SEX;
	if (AG != '') {
		URL = URL + '&AG=' + escape(AG);
	};
	if (FIO != '') {
		URL = URL + '&FIO=' + escape(FIO);
	};
	if (RN != '') {
		URL = URL + '&RN=' + escape(RN);
	};
	if (City != '') {
		URL = URL + '&City=' + escape(City);
	};
	if (vTable.currColumn != '') {
		URL = URL + '&SC=' +vTable.currColumn;
	}
	if (vTable.sortOrder != '') {
		URL = URL + '&SD=' +vTable.sortOrder;
	}
	window.open(URL,'DetailWindowReport');
}
что то типа того, далее формируется строка с параметрами и вызывается сам zenReport
в zenReport должно быть что то типа того:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Property AgeGroup As %String(ZENURL = "AG");

Property SEX As %ZEN.Datatype.caption(ZENURL = "SEX");

Property RatingDate As %ZEN.Datatype.caption(ZENURL = "RD");

Property FIO As %String(ZENURL = "FIO");

Property RegNum As %String(ZENURL = "RN");

Property City As %String(ZENURL = "City");

/// Колонка для сортировки
Property SortC As %String(ZENURL = "SC");

/// Направление сортировки
Property SortD As %String(ZENURL = "SD");
это прием переданных параметров из адресной строки
далее формируется или используется sql запрос:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<report xmlns="http://www.intersystems.com/zen/report/definition"
name="Rating" queryClass="RTTXEN.RatingReport" queryName="Main">
<parameter expression='..GetSortC()'/>
<parameter expression='..GetSortD()'/>
<parameter expression='..GetRD()'/> 
<parameter expression='..GetSEX()'/>
<parameter expression='..GetAG()'/>
<parameter expression='..GetFIO()'/>
<parameter expression='..GetRN()'/>
<parameter expression='..GetCity()'/>
</report>
вот методы (хотя можно обойтись и без них см.документацию):
Код: 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.
44.
45.
46.
47.
48.
49.
Method GetRD()
{
	q ..RatingDate
}

Method GetSEX()
{
	Quit ..SEX
}

Method GetAG() As %String
{
	Quit $zcvt(..AgeGroup,"I","URL")
}

Method GetFIO()
{
	Quit $zcvt(..FIO,"I","URL")
}

Method GetRN()
{
	Quit $zcvt(..RegNum,"I","URL")
}

Method GetCity()
{
	Quit $zcvt(..City,"I","URL")
}

Method GetSortC()
{
	Quit ..SortC
}

Method GetSortD()
{
	Quit ..SortD
}

Method GetNameAG()
{
	s res = "Все"
	if ..AgeGroup'="" {
		s parameter = ..AgeGroup
		&sql(SELECT name INTO :res FROM hndb.ageGroup WHERE id = :parameter)
	}
	q res
}
вот такие пироги
...
Рейтинг: 0 / 0
ZEN
    #35949445
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возник очередной вопрос.
Как получить данные из прикрепленного файла и имя файла?
В csp делал так:
Код: 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.
44.
<html>
<form enctype="multipart/form-data" method="post">
	Имя    :<input type=text name=user size= 30 >
	Пароль :<input type=password name=passwd size= 8 >
	Файл   :<input type=file size= 30  name=FileStream>
	Процесс:<input type=text name=proc size= 30 >
	.......
</form>
<script language="cache" runat="server">
        //здесь проверка логина и пароля
	I '$D(^ADM("LOGON",$$WinToDos^io1(%request.Get("user")))) D  Q
	.W "<br> Нет такого пользователя."
	I $zp(^ADM("LOGON",$$WinToDos^io1(%request.Get("user")),""))'=$$WinToDos^io1(%request.Get("passwd")) D  Q
	.W "<br> Неправильный пароль."
	;
	I %request.Get("proc")'="" D  Q
	.S proc=%request.Get("proc")
	.I '^aIm5(proc) D
	..W "<br>Процесс загрузки =",proc
	..W "<br>Последняя загруженная строка =",$zp(^aIm5(proc, 1 ,""))
	..W "<br>Последняя ошибочная   строка =",$zp(^aIm5(proc, 0 ,""))
     	.I ^aIm5(proc)  D f^aIm5(%request.Get("proc"))
	;
        //чтение данных из файла	
	S obj=%request.MimeData("FileStream", 1 )
 	S stream=##class(%Library.FileCharacterStream).%OpenId(obj)
	I stream'["CSP" D   Q
	.W "<br>Файл не выбран!"
	;
	S fname=stream.FileName
	K ^aList($p)
        //проверка формата файла и распарсивание
	I $$low^a($P(fname,".",2))="xml" D dparse^a2(obj,$na(^aList($p)))
	I $$low^a($P(fname,".",2))="csv" D csv^aIm5()
	D stream.%Close()
	;
	I $D(^aList($p))'= 11  D  Q
	.W "<br>Неправильный формат файла!"
	;
	S proc=$I(^aIm5)
	I $D(^aList($p))= 11   J S^aIm5($na(^aList($p)),proc,%request.Get("user"),fname)
	W "<br>Процесс загрузки :",proc
</script>
</html>
...
Рейтинг: 0 / 0
ZEN
    #35949563
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В примерах был вариант работы с загрузкой файла...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
ZEN
    #35949586
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там правда с CSP пример...
http://cache:57772/csp/samples/showsource.csp?PAGE=/csp/samples/upload.csp
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
ZEN
    #35949603
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!
будем разбираться дальше.
...
Рейтинг: 0 / 0
ZEN
    #35968183
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть CSP страница, на которой перед загрузкой проверяется
передалась ли переменная pId, как сделать переход на другую страницу(например http://10.64.88.30/csp/gtt/GTS.vhod.cls), если pId не передалось?

Код: plaintext
1.
2.
3.
4.
5.
<csp:method name='OnPreHTTP' ReturnType='%Boolean'>
	if %session.Data("pId") {
	Quit  1 
	}
	Quit  0 
</csp:method>
...
Рейтинг: 0 / 0
ZEN
    #35968210
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mr.PartizanЕсть CSP страница
...
как сделать переход на другую страницу(например http://10.64.88.30/csp/gtt/GTS.vhod.cls), если pId не передалось?

Как вариант...

Код: plaintext
1.
2.
3.
4.
5.
6.
...
<script language='javascript'>
   if (#server(..OnPreHTTP())#== 1 ) {
      top.location='http://10.64.88.30/csp/gtt/GTS.vhod.cls'
   }
</script>
...
...
Рейтинг: 0 / 0
ZEN
    #35968219
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или более радикально!

Код: plaintext
1.
2.
3.
4.
5.
6.
...
<script language='javascript'>
   if (#($d(%session.Data("pId")))#== 0 ) {
      top.location='http://10.64.88.30/csp/gtt/GTS.vhod.cls'
   }
</script>
...

В саообщении выше условие не правильно написал... Нужно

Код: plaintext
#server(..OnPreHTTP())#== 0 
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
ZEN
    #35968286
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Чего-то не хочет работать ((
его в любое место можно вставить?
...
Рейтинг: 0 / 0
ZEN
    #35968576
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mr.Partizanего в любое место можно вставить?
Прямо в начале... В

Код: plaintext
<head>...</head>

Тестовый пример вашей страницы покажите... Чего там конкретно не работает-то?
...
Рейтинг: 0 / 0
ZEN
    #35968679
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
убрал со страницы этот:
Код: plaintext
1.
2.
3.
4.
5.
<csp:method name='OnPreHTTP' ReturnType='%Boolean'>
	if %session.Data("pId") {
	Quit  1 
	}
	Quit  0 
</csp:method>
метод и все заработало.

Код страницы примерно такой:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
<html>
<form enctype="multipart/form-data" method="post">
	Файл   :<input type=file size= 30  name=FileStream><BR><BR>
	Процесс:<input type=text name=proc size= 30 >
	....
	<input type="submit" value="Загрузить!">
</form>
<csp:method name='OnPreHTTP' ReturnType='%Boolean'>
	if %session.Data("pId") {
	Quit  1 
	}
	Quit  0 
</csp:method>
<script language="cache" runat="server">
	W "<BR>Здравствуйте ",$$DosToWin^io1(%session.Data("Surname")),"<BR><BR>"
	;
	....
</script>
</html>
...
Рейтинг: 0 / 0
ZEN
    #35968747
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
только когда сделал так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<html>
<script language='javascript'>
   if (#($d(%session.Data("pId")))#== 0 ) {
      top.location='http://10.64.88.30/csp/gtt/GTS.vhod.cls'
   }
</script>
<form enctype="multipart/form-data" method="post">
	Файл   :<input type=file size= 30  name=FileStream><BR><BR>
	Процесс:<input type=text name=proc size= 30 >
	....
	<input type="submit" value="Загрузить!">
</form>
<script language="cache" runat="server">
	W "<BR>Здравствуйте ",$$DosToWin^io1(%session.Data("Surname")),"<BR><BR>"
	;
	....
</script>
</html>
на странице больше не выводится сообщение
Код: plaintext
1.
2.
3.
4.
5.
<script language="cache" runat="server">
	W "<BR>Здравствуйте ",$$DosToWin^io1(%session.Data("Surname")),"<BR><BR>"
	;
	....
</script>
и вообще весь скрипт
Код: plaintext
1.
2.
<script language="cache" runat="server">
....
</script>
не работает
...
Рейтинг: 0 / 0
ZEN
    #35969321
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так сама переадресация-то работает?
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
ZEN
    #35969364
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот мой пример...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<html>
<head>
<title></title>
<script language='javascript'>
   if (#($d(%session.Data("pId")))#== 0 ) {
      top.location='http://localhost/csp/user/tmp1.csp'
   }
</script>
</head>

<body>
<form enctype="multipart/form-data" method="post">
	Файл   :<input type='file' size='30' name='FileStream'>
	<BR /><BR />
	Процесс:<input type='text' name='proc' size='30'>
	<input type="submit" value="Загрузить!">
</form>
<script language="cache" runat="server">
	&html<<BR>Здравствуйте <BR><BR>>
</script>
</body>
</html>

Он точно работает. Если переменной %session.Data("pId") нет - происходит переход на другую страницу.
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
ZEN
    #35974339
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все работает, спасибо!
...
Рейтинг: 0 / 0
ZEN
    #35991472
mr.Partizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как решить такую задачу?
Нужно к таблице на ZEN-странице сделать фильтр в виде выпадающего списка, всех возможных значений одного из полей.
И еще сделать интерактивный выбор полей для отображения.
...
Рейтинг: 0 / 0
25 сообщений из 80, страница 2 из 4
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ZEN
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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