powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Использование методов класса, %session
25 сообщений из 41, страница 1 из 2
Использование методов класса, %session
    #36609596
блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
В классе определен метод, по которому создается и заполняется dynaGrid. Можно ли использовать данный метод на другой ZEN странице для отображения этого грида? Если да, то как?
Ячейки грида заполняются пользователем непосредственно на странице. Можно ли по кнопке сохранить значения ячеек грида в массив, чтобы воспользоваться данным массивом на другой ZEN странице?(как я понимаю, это должно производится с использованием %session, да?)
Заранее спасибо!
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36609666
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блюх , данные не обязательно держать в сессион. Тем паче хранить их там вообще не получится.

Как вариант записать табличку в глобал. А на странички передавать некий "идентификатор" этой таблички... Хоть в УРЛе... Хоть в сессион...
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36609808
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можете привести пример как это сделать?то есть есть грид,в гриде заполняются ячейки значениями,по кнопке формируется глобал,так?кусок текста можете написать как это происходит?и как этот глобал потом вызвать на другой странице?
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36609846
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюх , алгоритм описан тобой правильно. Но с гридом я не работал... Т.ч. как брать данные из ячеек грида я даже не в курсе...
Так же нужно придумать как идентифицировать некой строкой всю табличку, которую потом нужно будет вычитывать на другой странице.
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36609891
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пусть есть грид.Его id="Grid".Значения из грида выцепляются следующим образом- %getvalue(n,m)? где n,m-строка и столбец. есть кнопка.и событие по нажатию этой кнопки .Пусть метод по событию будет называться Save. Что в нем написать?Хотя бы на пальцах объясните, а я уж втыкнуть попробую
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36609936
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так,ну вроде с глобалом все получилось.Сейчас буду пробовать работать с ним в другом классе.Спасибо за подсказку
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36609955
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Никак не получается обратиться к глобалу из другого класса. Подскажите как это сделать?
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36609961
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Корявенько,но все вроде получилось.Спасибо за помощь!
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36609966
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюх , смог сам - уже хорошо! Только в следующий раз показывай как и чего делаешь - это может ускорить решение вопроса/проблемы.
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610105
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С гридом вопрос решился, но возникли проблемы с таблицей.
Есть таблица
<tablePane id="SostavList"
tableName="MRP.Specif"
...
>
<column colName="ID" hidden="true"/>
<column header="Товар" colName="TovarID->TovName" hidden="true"/>
<column header="Спецификация" colName="Name"/>
<column header="Количество" colName="Kol"/>
</tablePane>
Есть datacombo

<dataCombo label="Товар:" id="TovarIDSostav" name="TovarID" onchange="javascript:zenPage.Otbor()" sql="SELECT ID,TovName FROM MRP.Tovar ORDER BY ID" size="40" />

В этой датакомбо отображается наименование номенклатуры. Срабатывает событие

Method Otbor() [ Language = javascript ]
{
var t=zenPage.getComponentById('SostavList');
...

var Pole=zenPage.getComponentById('TovarIDSostav');

t.setProperty('whereClause',"TovarID="+Pole.getProperty('value'));
zenPage.getComponentById('SostavList').executeQuery();

}
Соответственно на экране отобразится состав номенклатуры, которая была выбрана в датакомбо. Поменялась номенклатура в дата-изменилась таблица. Вопрос в следующем-мне необходимо использовать значение ячеек, отображающиеся в таблице по отбору. Я могу их использовать?Пытались сохранить в глобалы,но не очень понятно как их выцепить.А в грид их записать тоже как-то проблемно.Если говорить конкретно необходимо работать со столбцом Количество.Заранее спасибо!
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610229
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюхнеобходимо работать со столбцом Количество.Заранее спасибо!
Так у тебя есть целый sql-запрос, который даёт нужные записи в таблице! Вот и работай с ним.
Что-то не понятно мне зачем тебе значения самих ячеек в таблице?
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610340
Фотография kolesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюх,

как-то так, думаю:

Код: plaintext
1.
2.
3.
...
var table = ...
var row = table.getRowData(table.selectedIndex); 
alert(row.ColumnName)
• method getRowData(row) [ Language = javascript ]
For tables in snapshot mode only.
Go to the server and fetch the data for the specified row (0-based) from the table snapshot data. This data is packaged into a JavaScript object whose properties correspond to the names of the columns in the snapshot table.
For non-snapshot tables or out of range row numbers, returns null.
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610346
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1.Да.Запрос есть.Но в дальнейшем для расчетов мне необходимы конкретные значения. В чем суть.
Есть номенклатура, по номенклатуре отображается ее состав. Например, изделие А состоит из трех B и двух C. То есть по запросу, который у меня есть на экране отобразиться следующее
дата комбо: выбираю изделие А
отображается:
--------------|--------------
Наименование Количество |
--------------|--------------
B 3
--------------|-------------|
C 2
--------------|-------------|
Вот для дальнейших расчетов мне нужно как-то запомнить значения 3 и 2, чтобы производить с ними арифметические операции. Потому что таких таблиц по запросу у меня не одна. И в ней тоже формируются свои данные. Значения некоторых столбцов должны перемножаться в зависимости от условия и попасть в другую таблицу.Вот так все запутано)
Можете как-то помочь?
2.С гридом все было бы хорошо. Я с ним работать умею. Но не получается сормировать грид именно таким образом по запросу.В zen методе, который формирует грид указываю sql запрос и в условии where необходимо добавить следующую конструкцию TovarID=Pole,
где поле хранит в себе значение TovarIDSostav- то есть ID той записи , которую пользователь только что выбрал в датакомбо. В Pole все прекрасно записывается, но в самом запросе никак не получается написать TovarID=Pole,чтобы в Pole считывалось значение, хранящееся в этой переменной. Как уже только не писал, и TovarID=#(Pole)# и просто TovarID=Pole, ничего не получается.Вроде понятно объяснил. Там запрос пишется sql="select (то,что мне надо) where TovarID=? " Под знаком вопрос надо написать переменную Pole.Не знаете как это сделать?
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610353
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kolesov,Так не пойдет. у меня нет конкретной таблицы. У меня есть таблица,формируемая по запросу из других таблиц
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610369
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БлюхВот для дальнейших расчетов мне нужно как-то запомнить значения 3 и 2, чтобы производить с ними арифметические операции. Потому что таких таблиц по запросу у меня не одна. И в ней тоже формируются свои данные. Значения некоторых столбцов должны перемножаться в зависимости от условия и попасть в другую таблицу.Вот так все запутано)
Можете как-то помочь?
Ничего запутаного нет. Ты просто сам разберись что тебе нужно. В любом случае нужно использовать только данные из БД, а со странички брать только вводимую пользователем информацию.
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610383
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюх2.С гридом все было бы хорошо. Я с ним работать умею. Но не получается сормировать грид именно таким образом по запросу.В zen методе, который формирует грид указываю sql запрос и в условии where необходимо добавить следующую конструкцию TovarID=Pole,
где поле хранит в себе значение TovarIDSostav- то есть ID той записи , которую пользователь только что выбрал в датакомбо. В Pole все прекрасно записывается, но в самом запросе никак не получается написать TovarID=Pole,чтобы в Pole считывалось значение, хранящееся в этой переменной. Как уже только не писал, и TovarID=#(Pole)# и просто TovarID=Pole, ничего не получается.Вроде понятно объяснил. Там запрос пишется sql="select (то,что мне надо) where TovarID=? " Под знаком вопрос надо написать переменную Pole.Не знаете как это сделать?
Как вариант...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
<tablePane 
	id="tpStage" 
	tableName="wrk.Stage" 
	valueColumn="ID"
	pageSize="25" 
	useSnapshot="true" 
	caption="Этапы" 
	orderByClause="Job->Subject->Prio,Job,dEnd"
	whereClause="Vers=#(%page.idItem)#"
	onselectrow='zenPage.Select(zenThis.getValue("ID"))'
	ondblclick='zenPage.VersEdit()' 
	showValueInTooltip="true"
	useKeys="true"
>
	<parameter 
		id="pIdVers"
		value="#(%page.idItem)#"
	/>
...
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610393
Фотография kolesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюхkolesov,Так не пойдет. у меня нет конкретной таблицы. У меня есть таблица,формируемая по запросу из других таблиц

Извиняюсь, поленился все писать. Первая строчка выглядит так:

var table = zenPage.getComponentById("имя вашего tablePan'а");

В том смысле, что это табличка на странице.
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610414
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так вот с whereclause как раз-таки проблем бы и не было.так можно было указать конкретно
TovarID=#(Pole)#.И все работало. Запрос строился как раз по такой выборке.Но для грида запрос формируется так:
s query1="SELECT Name FROM MRP.Specif WHERE TovarID=#(Pole)#"
Но если пишу так, то в таблице ищутся не значения, где TovarID совпадает со значением переменной Pole,а со строкой '#(Pole)#'((
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610426
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюх , вот еще вариант с параметром...

Код: 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.
<tablePane 
	id="tpStgEmpt" 
	tableName="wrk.Stage" 
	valueColumn="ID"
	pageSize="10" 
	useSnapshot="true" 
	caption="Ожидают" 
	sql="
		Select 
			ID,
			IsNull (Title,Job->Name) as Title,
			TO_CHAR(Job->dEnd,'DD.MM.YYYY') as dEnd,
			Purpose->Name as Purpose
		From wrk.Stage
		Where 
			Member=? and dBeg is NULL and dEnd is NULL
		Order by Job->dEnd
	"
	onselectrow='zenPage.Select(zenThis.getValue("ID"),"cnStgEnpt")'
	ondblclick='zenPage.Edit(zenThis.getValue("ID"));' 
>
	<parameter 
		id="pIdMmbrEmpt"
		value="#(%page.idItem)#"
	/>
...
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610436
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В примере

Код: plaintext
1.
Where 
	Member=?

как раз попадает под твоё описание проблемы...
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610452
Блюх
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так я понимаю, когда пишут,что Member=?,то значит Member может принимать любое значение или я ошибаюсь?
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610465
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюх , не любое. А только значения из параметра. Т.е. тебе просто не хватает параметра внутри тейбелплэйн...
Добавь параметр... В условии селекта поставь знак вопроса... И будет тебе счастие.
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610471
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то типа этого...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
<tablePane 
	id="tpId" 
	sql="SELECT Name FROM MRP.Specif WHERE TovarID=?"
>
	<parameter 
		id="pId"
		value="#(%page.idItem)#"
	/>
...
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610475
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точнее даже так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
<tablePane 
	id="tpId" 
	sql="SELECT Name FROM MRP.Specif WHERE TovarID=?"
>
	<parameter 
		id="pId"
		value="#(Pole)#"
	/>
...
...
Рейтинг: 0 / 0
Использование методов класса, %session
    #36610483
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блюх , показывай примеры твоего кода. Это облегчит дело...
...
Рейтинг: 0 / 0
25 сообщений из 41, страница 1 из 2
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Использование методов класса, %session
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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