Имя: Пароль:
1C
1С v8
Не могу изменить Реквизит Справочника
0 Kalina
 
04.06.25
16:18
1с КА 1.1
Здравствуйте, мне нужно изменить Реквизит в Справочнике
СпособыОтраженияЗарплатыВРеглУчете, пишу
ЭтотОбъект.СубконтоКт2 = Неопределено;
вроде всё хорошо отрабатывает, меняет, но если смотреть в отладчике значения -
ЭтотОбъект.СубконтоКт2 = Неопределено, а ЭтотОбъект.Ссылка.СубконтоКт2 =         СправочникСсылка.ПодразделенияОрганизаций, ну и дальше в запросах этот реквизит выбирается как СправочникСсылка.ПодразделенияОрганизаций.
Как мне его изменить так чтобы он был Неопределено ???
Заранее благодарен за подробный разжеваный ответ
1 Мультук
 
гуру
04.06.25
16:27
(0)

1) Кто такой "ЭтотОбъект" в вашей ситуации ?

2) Код вы пишите в ФормаЭлемента справочника "СпособыОтраженияЗарплатыВРеглУчете" ?

3) А изменения в этом справочнике как-то записываются ?

4)

ЭтотОбъект.СубконтоКт2 = Неопределено  
ЭтотОбъект.Ссылка.СубконтоКт2 =  {что-то есть}

Конечно. Вы же изменения еще не записали.
2 Kigo_Kigo
 
04.06.25
16:27
ЭтотОбъект.СубконтоКт2 <> ЭтотОбъект.Ссылка.СубконтоКт2
пока ЭтотОбъект не записан
3 Kalina
 
04.06.25
17:47
Код в процедуре ПередЗаписью, ну и собственно после записи он становится = Неопределено, но почему они не сходятся :
ЭтотОбъект.СубконтоКт2 = Неопределено, а ЭтотОбъект.Ссылка.СубконтоКт2 =         СправочникСсылка.ПодразделенияОрганизаций
ЭтотОбъект - ну я так понимаю  - элемент Справочника
4 Kalina
 
04.06.25
17:50
Элемент Справочника помечен - как предопределённый, но что это меняет ? он должен или Записать - или не записывать и сообщать ошибку. Но этого не происходит. Он записывается, но как-то раздвояется :(
5 timurhv
 
04.06.25
18:03
(3) Откуда событие ПослеЗаписи, в котором вы проверяете?
Если на форме, то смотрите параметр процедуры, в частности на ТекущийОбъект.
Если модуль объекта, то там нет события после записи.
6 craxx
 
04.06.25
22:34
(2) не просто пока не записан, но еще и пока не перечитан.
7 Kalina
 
05.06.25
11:39
(5) Событие на форме, не ПослеЗаписи, а ПередЗаписью и
ТекущийОбъект    {(1,1)}: Переменная не определена (ТекущийОбъект)
8 Kigo_Kigo
 
05.06.25
11:45
(7) Что не понятного то?
ЭтотОбъект, это объект который сейчас открыт у тебя и то что ты изменила в нем
ЭтотОбъект.Ссылка это объект записанный в базе данных, до твоих изменений, тоесть он читается из БД, а не то что у тебя сейчас открыто
хотелось бы узнать что вы там на неопределнность проверяете Перед записью?
Нельза проверить на ЗначениеЗаполнено или в запросе на
Значение(Справочник.Подразделения.ПустаяСсылка)?
9 timurhv
 
05.06.25
11:45
(7) уже отвечали (1), (2)

А где вы проверяете После записи?
Код в процедуре ПередЗаписью, ну и собственно после записи он становится = Неопределено, но почему они не сходятся
10 Kalina
 
05.06.25
12:16
(9) Есть обьект конфигурации - Справочник - СпособыОтраженияЗарплатыВРеглУчете, у него Реквизит - СубконтоКт2
мне нужно присвоить ему значение Неопределено (один раз и забыть про это)
в Процедуре ПередЗаписью в модуле ФормыЭлемента я пишу
ЭтотОбъект.СубконтоКт2 = Неопределено;
Жму ОК или Записать (в отладчике проверяю что оператор отрабатывает и меняет значение).
Захожу по новой в ФормуЭлемента - ставлю точку останова в ПриОткрытии и наблюдаю что
ЭтотОбъект.СубконтоКт2 = Неопределено; но
ЭтотОбъект.Ссылка.СубконтоКт2 = СправочникСсылка.ПодразделенияОрганизаций;
и дальше во всех Запросах из этого Реквизита выбирается СправочникСсылка.ПодразделенияОрганизаций, а мне нужно, чтобы было Неопределено,
вот и всё
11 Fish
 
гуру
05.06.25
12:18
(10) Тип какой у реквизита? Составной или СправочникСсылка.ПодразделенияОрганизаций?

Если не составной, то там никогда не будет неопределено.
12 Kalina
 
05.06.25
12:36
(11) Тип Характеристика.ВидыСубконтоХозрасчетные.
Он был = Неопределено, потом вдруг стал СправочникСсылка.ПодразделенияОрганизаций, х.з. почему, ну и некоторые вещи из-за этого стали работать некорректно, поэтому мне и нужно вернуть его взад, но он не хочет, я уже пробовал его загрузить из другой базы (старой), но нет.
Может как-то влияет то, что он Предопределённый ?
13 craxx
 
05.06.25
14:56
(12) Характеристика это составной тип, определяемый в ПВХ.
14 timurhv
 
05.06.25
17:41
(10) К счету учета привязан тип субконто?
На форме счет учета есть? Какой тип субконто 2 у счета?

Может где-то дополнительная проверка контроля срабатывает, а то часто бухгалтера потом на проводки жалуются в отчетах:
100р <...> (Неопределено)
200р <...> (Пустая ссылка)

Во многих типовых при записи проводят контроль заполнения субконто относительно счета учета.
15 Kalina
 
06.06.25
11:14
(14) Да, у счёта есть субконто и оно Типа Подразделение,
я тоже подозревал что при Записи 1с-ка как-то контролирует это, но меня смущает что, повторюсь
ЭтотОбъект.СубконтоКт2 = Неопределено; но
ЭтотОбъект.Ссылка.СубконтоКт2 = СправочникСсылка.ПодразделенияОрганизаций;
и на Форме в Поле Выбора стоит Неопределено, а в Запросе к этому полю возвращает тип СправочникСсылка.ПодразделенияОрганизаций.
Видимо придётся поставить костыль на это :)
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс