|
1c УФ Объекты | ☑ | ||
---|---|---|---|---|
0
BanchenkoM
17.11.17
✎
09:45
|
Немного не понятен один вопрос по объектам.
//Вариант 1 ДокументОбъект = РеквизитФормыВЗначение("Объект"); //создает объект Х типа Док.... с данными из формы. ДокументОбъект.Действие(); // выполняет методы объекта ЗначениеВРеквизитФормы(ДокументОбъект, "Объект"); // данные из объекта Х переписывает данные в форму. // вариант 2 ДокументОбъект = Объект.ссылка.получитьОбъект(); // Мы получаем объект уже с данными, значит объект уже существует (нафига мы его создавали ещё один в варианте 1?) ДокументОбъект.Действие(); ЗначениеВРеквизитФормы(ДокументОбъект, "Объект"); // Тут нужен метод типа обновить данные на экране, но я такого увидел. получается так. вариант 1. (он из учебника 1с) У нас есть объект типа ДОК-Х форма которого на экране, мы создаем ещё один объект типа ДОК-Х выполняем его метод который меняет данные, и данные записываем в первый объект который уже был. вопрос в том почему сразу не выполнить метод объекта и не обновить данные на экране? |
|||
1
dezss
17.11.17
✎
09:50
|
Вариант 1 не создает объект, он просто преобразует данные формы в объект, с которым можно работать.
Вариант 2 вытягивает данные именно из базы и пофиг, что делалось в этот момент на форме, эти изменения сотрутся. |
|||
2
BanchenkoM
17.11.17
✎
10:38
|
по варианту второму понял... я просто не учел, что после сохранения появляется объект в базе... а проверял на уже записанном документе.
не создает объект, он просто преобразует данные формы в объект, с которым можно работать. не понятно... Объекта не было он появляется? или он был? Я нажимаю кнопку создать документ, на экране появляется форма, а объекта не существует до записи в базу? а если существует почему методы его не доступны? З.Ы. блин почему в паскале все так просто и понятно..... |
|||
3
dezss
17.11.17
✎
11:12
|
(2) Объект есть, но не в базе, а пока в памяти. Просто из формы напрямую к нему обратиться нельзя (потому что форма по сути этот самый объект, показанный в виде "графического представления"), отсюда и необходимость использовать РеквизитФормыВЗначение для обращения к методам объекта.
З.Ы.: просто дело привычки))) |
|||
4
Ц_У
17.11.17
✎
11:13
|
(2) "ссылка" это указатель на "объект", что бы изменить объект его нужно получить.
Что бы использовать методы объекта не обязательно иметь объект в базе, ты обращаешься "создаешь" что бы использовать его методы |
|||
5
dezss
17.11.17
✎
11:14
|
(0)"// Тут нужен метод типа обновить данные на экране, но я такого увидел."
Смотри ОбновитьОтображениеДанных в сп. |
|||
6
BanchenkoM
21.11.17
✎
16:13
|
Спасибо огромное. вроде как ясно....
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |