|
УстановитьСсылкуНового | ☑ | ||
---|---|---|---|---|
0
George Wheels
24.10.13
✎
14:33
|
Создаю новый элемент справочника. В событии ПриИзменении поля Код пытаюсь сделать:
Объект.УстановитьСсылкуНового(Справочники.ФизЛица.ПолучитьСсылку(Новый УникальныйИдентификатор("...")); Ошибка - метод объекта не обнаружен. Если так: о = РеквизитФормыВЗначение("Объект"); о.УстановитьСсылкуНового(Справочники.ФизЛица.ПолучитьСсылку(Новый УникальныйИдентификатор("...")); то УИД не устанавливается. |
5 6 |
||
1
zak555
24.10.13
✎
14:35
|
потому что событие на клиенте
|
3 |
||
2
Maxus43
24.10.13
✎
14:35
|
зачем устанавливать ссылку при изменениии кода? не легче ПриСозданииНаСервере всё это сделать сразу?
|
3 |
||
3
George Wheels
24.10.13
✎
14:38
|
4 |
|||
4
zak555
24.10.13
✎
14:40
|
5 |
|||
5
George Wheels
24.10.13
✎
14:57
|
(4) Пожалуйста, но в (0) и так достаточно.
&НаКлиенте Процедура КодПриИзменении(Элемент) СотрудникИзЗУПНаСервере(); КонецПроцедуры &НаСервере Процедура СотрудникИзЗУПНаСервере() ЗУП = Новый COMОбъект("V82.Application"); Попытка ЗУП.Connect("File=""Путь"";Usr=""User"";Pwd=""Password"""); Запрос = ЗУП.NewObject("Запрос"); Запрос.Текст = "ВЫБРАТЬ | Сотр.Ссылка КАК Сотрудник, | Кадр.Период КАК ПериодНазначения, | Кадр.Должность КАК Должность |ИЗ | Справочник.СотрудникиОрганизаций КАК Сотр | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций.СрезПоследних КАК Кадр | ПО Сотр.Ссылка = Кадр.Сотрудник |ГДЕ | Сотр.Код = &Код |"; Запрос.УстановитьПараметр("Код", Объект.Код); Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Объект.Наименование = Выборка.Сотрудник.Наименование; Если Объект.ссылка.УникальныйИдентификатор() = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000") Тогда о = ДанныеФормыВЗначение(Объект, Тип("СправочникОбъект.ФизЛица")); о.УстановитьСсылкуНового(Справочники.ФизЛица.ПолучитьСсылку(Новый УникальныйИдентификатор(ЗУП.XMLСтрока(Выборка.Сотрудник.УникальныйИдентификатор())))); //ЗначениеВДанныеФормы(о, Объект); КонецЕсли; Иначе Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Не найден сотрудник с табельным номером: " + Объект.Код; Сообщение.Сообщить(); КонецЕсли; Исключение Сообщение = Новый СообщениеПользователю; Инфо = ИнформацияОбОшибке(); Сообщение.Текст = "Описание=" + Инфо.Описание; Сообщение.Сообщить(); Сообщение.Текст = "ИмяМодуля=" + Инфо.ИмяМодуля; Сообщение.Сообщить(); Сообщение.Текст = "НомерСтроки=" + Инфо.НомерСтроки; Сообщение.Сообщить(); Сообщение.Текст = "ИсходнаяСтрока=" + Инфо.ИсходнаяСтрока; Сообщение.Сообщить(); Если Инфо.Причина <> Неопределено Тогда Сообщение.Текст = "Причина=" + Инфо.Причина; Сообщение.Сообщить(); Сообщение.Текст = "Описание=" + Инфо.Причина.Описание; Сообщение.Сообщить(); КонецЕсли; Если ЗУП <> Неопределено Тогда ЗУП.ЗавершитьРаботуСистемы(Ложь); КонецЕсли; КонецПопытки; Если ЗУП <> Неопределено Тогда ЗУП.ЗавершитьРаботуСистемы(Ложь); //Сообщить("Готово"); КонецЕсли; КонецПроцедуры |
|||
6
Infsams654
24.10.13
✎
15:08
|
(0) если не секрет, для чего устанавливать ссылку нового?
|
7 11 |
||
7
George Wheels
24.10.13
✎
15:09
|
(6) Хочу чтобы в обеих базах были одинаковые идентификаторы.
|
|||
8
Зойч
24.10.13
✎
15:10
|
ПередЗаписьюНаСервере нужно устанавливать, а до этого хранить где нибудь на форме.
Ибо объекта не существует все время а только в момент УстановитьСсылкуНового |
10 13 |
||
9
Зойч
24.10.13
✎
15:10
|
*в момент РеквизитФормыВЗначение
|
|||
10
George Wheels
24.10.13
✎
15:13
|
(8) Склонялся к этому варианту, но надеялся, что есть другое решение.
|
12 |
||
11
Infsams654
24.10.13
✎
15:20
|
(6) опять-же, для чего одинаковые идентификаторы? Не достаточно одинаковых кодов, что ли ?
|
19 |
||
12
hhhh
24.10.13
✎
15:21
|
(10) а где обратное ЗначениеВДанныеФормы? Что-то в упор не вижу.
|
13 14 15 |
||
13
Maxus43
24.10.13
✎
15:22
|
||||
14
Зойч
24.10.13
✎
15:23
|
(12) не поможет.
|
|||
15
George Wheels
24.10.13
✎
15:24
|
(12) Было. Не помогает. Ни ЗначениеВДанныеФормы ни ЗначениеВРеквизитФормы.
|
16 |
||
16
hhhh
24.10.13
✎
15:27
|
(15) ну значит УИД левый подсовываете. Чудес не бывает.
Проверьте жестко, чтобы УИДЫ самих справочников ФизЛица совпадали. |
17 18 |
||
17
George Wheels
24.10.13
✎
15:29
|
(16) В ПередЗаписьюНаСервере срабатывает. Т.е. УИД не левый.
|
|||
18
Зойч
24.10.13
✎
15:30
|
(16) не знаешь - помалкивай
|
21 |
||
19
George Wheels
24.10.13
✎
15:37
|
(11) При изменении в кадрах, вносить изменения в эту базу. А табельные номера уже два раза при мне меняли. Вернее не сами номера, а префиксы.
|
|||
20
George Wheels
24.10.13
✎
15:38
|
Ладно, закругляюсь. Оставлю в ПередЗаписьюНаСервере.
|
|||
21
hhhh
24.10.13
✎
16:26
|
(18) чего помалкивай? Объсни тогда, почему в типовых не через ГУИД сделано как у ТС, а Регистр соответствие гуидов они замутили?
|
22 |
||
22
Зойч
24.10.13
✎
16:28
|
(21) и в типовых через гуид. а регистр для того чтоб не новые базы тоже можно было связать
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |