powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Zen и два класса
2 сообщений из 2, страница 1 из 1
Zen и два класса
    #35463248
kras_sfu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеется два связанных класса(во втором ссылка на первый), необходимо одновременное добавление данных, т.е. в первый и второй сразу при том что во втором заполняется свойство ссылка на первый. Подскажите как это сделать попроще.
Пытался сделать так, но это вообще ерунда какая то и не работает :)
Код: 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.
...
Method SaveItem() [ Language = javascript ]
{
	var form = zenPage.getComponentById('MyForm');
	zenPage.AddPersonal(form);
	zenPage.AddEducation(form);	
}

ClassMethod AddPersonal(Form As %ZEN.Component.form) [ ZenMethod ]
{

	set user=##class(zen.Personal).%New()
	set user.Login = %page.%GetValueById("Login")
	set user.Password = %page.%GetValueById("Password1")
	set user.Surname = %page.%GetValueById("Surname")
	set user.Name = %page.%GetValueById("Name")
	set sc=user.%Save()
	if $$$ISERR(sc) {
			&js<alert('Не сохранено!');>
	}
    quit 
}

ClassMethod AddEducation(Form As %ZEN.Component.form) [ ZenMethod ]
{
           set login = %page.%GetValueById("Login")          
           &sql(SELECT ID INTO :id
 	      FROM zen.Personal WHERE (Login = :login))
           set school=##class(zen.School).%New()
	set school.SchoolName = %page.%GetValueById("SchoolName")
	set school.SchoolClass = %page.%GetValueById("SchoolClass")
	set school.EndSchDate = %page.%GetValueById("EndSchDate")
	set school.Personal = id
	set sc = school.%Save()
	if $$$ISERR(sc) {
			&js<alert('Не сохранено!');>
	}
	quit
}
...
Рейтинг: 0 / 0
Zen и два класса
    #35463402
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
set school=##class(zen.School).%New()
set school.SchoolName="SchoolName"
...
set school.Personal=##class(zen.Personal).%New()
set school.Personal.Surname="Surname"
...
set sc = school.%Save()
...

Если Вам уже известнен ID zen.Personal, то нужно так
Код: plaintext
d school.PersonalSetObjectId(id)
,а не
Код: plaintext
set school.Personal = id
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Zen и два класса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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