Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Компонент schedulePane / 4 сообщений из 4, страница 1 из 1
12.08.2010, 13:19
    #36788200
armin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компонент schedulePane
Доброго времени суток! В шедуле (schedulePane) есть возможность добавлять параметр (parameter)

Пример из мануала:

<schedulePane id="schedule"
caption="Schedule for Bob"
dateFormat="5"
interval="30"
startTime="540"
endTime="1020"
dropEnabled="true"
ondrop="zenPage.scheduleDataDrop(dragData);"
onselectitem="zenPage.selectItem(id,time);"
OnGetScheduleInfo="GetScheduleInfo">
<parameter id="parmPerson" paramName="Person" value="Bob"/>
</schedulePane>

ClassMethod GetScheduleInfo(ByRef pParms As %String, pStartDate As %Date, pEndDate As %Date, ByRef pInfo As %List) As %Boolean
{
Set tName = $G(pParms("Person"))
}

При отображении моего шедуле (schedulePane) не видет параметер (parameter) добавленный программно (вручную) и валится ексепшин..... Может кто подскажет или подправит мои дейтсвия!???

Кусок кода где я програмно добавляю параметер:

Method CreateScheduleInExpando() [ ZenMethod ]
{
............................
.......................
...................
.................

While result1.Next()
{
// создание нового шедуле
s sched = ##class(%ZEN.ComponentEx.schedulePane).%New()
// читаю значение из селекта
s BegTimeStamp = result1.Data("BegTimeStamp")
s EndTimeStamp = result1.Data("EndTimeStamp")
s IntervalReceive = result1.Data("IntervalReceive")
// присваиваю значения атрибутов для шедуле
s sched.interval = IntervalReceive
//s sched.date =+$h
s sched.startTime = $zth($p(BegTimeStamp," ",2))/60
s sched.endTime = $zth($p(EndTimeStamp," ",2))/60
// создаю параметер для шедуле
s par = ##class(%ZEN.Auxiliary.parameter).%New()
s par.name = "ListEmployeeID"
s par.value = ListEmployeeID
d sched.parameters.SetObjectAt(par,"1")

;Do:$IsObject(%page) %page.%AddComponent(par)
;s dddd = sched.parameters.Count()
;&js<alert('#(par.value )#')>
;q

s sched.OnGetScheduleInfo="GetScheduleInfo"
s sched.onselectitem="zenPage.SelectItem(id,time);"

;Do exp.%AddChild(par)

Do exp.%AddChild(sched)
}
}
...
Рейтинг: 0 / 0
12.08.2010, 15:30
    #36788656
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компонент schedulePane
Рабочий код
Код: 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.
/// Этот XML блок описывает содержимое этой страницы.
XData Contents [ XMLNamespace = "http://www.intersystems.com/zen" ]
{
<page xmlns="http://www.intersystems.com/zen" title="">
<button caption="Добавить планировщик динамически" onclick="zenPage.AddSchedulePane();"/>

<schedulePane id="schedule"
caption="Schedule for Bob"
dateFormat="5"
interval="30"
startTime="540"
endTime="1020"
OnGetScheduleInfo="GetScheduleInfo">
<parameter id="parmPerson" paramName="Person" value="Bob"/>
</schedulePane></page>
}

ClassMethod GetScheduleInfo(ByRef pParms As %String, pStartDate As %Date, pEndDate As %Date, ByRef pInfo As %List) As %Boolean
{
  Set tName = $G(pParms("Person")) 
  q  1 
}

Method AddSchedulePane() as %Status [ZenMethod]
{
  #dim sched As %ZEN.ComponentEx.schedulePane
  #dim par As %ZEN.Auxiliary.parameter
  
  s sched = ##class(%ZEN.ComponentEx.schedulePane).%New()
  s sched.id="scheduleNew"
  s sched.caption="Schedule for Bob New"
  s sched.dateFormat= 5 
  s sched.interval =  30 
  s sched.startTime =  540 
  s sched.endTime =  1020 
  s sched.OnGetScheduleInfo="GetScheduleInfo"

  s par = ##class(%ZEN.Auxiliary.parameter).%New()
  s par.id = "parmPersonNew"
  s par.value = "BobNew"
  d sched.parameters.SetAt(par,"Person")
  
  do %page.%AddComponent(par)
  Do %page.%AddChild(sched)
  
  q $$$OK
}
...
Рейтинг: 0 / 0
16.08.2010, 12:14
    #36793247
armin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компонент schedulePane
servit,

пасибо шо подправил....теперь все ок
...
Рейтинг: 0 / 0
20.08.2010, 15:25
    #36803074
armin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компонент schedulePane
Доброго времени суток! Задача заключается в удалении item с помощью перетягивания на другой компонент. Как с помощью события ondrag компонента schedulePane1 получить доступ к id item, что бы при событии ondrop компонента Component1 удалить его физически!???
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Компонент schedulePane / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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