|
Удаление записи регистра сведений | ☑ | ||
---|---|---|---|---|
0
NIGHTHUNTER
06.08.21
✎
12:24
|
Подскажите пожалуйста. Имея запись регистра сведений, как ее удалить?
ИначеЕсли ТипЗнч(Элем.Данные) = Тип("РегистрСведенийКлючЗаписи.АналитикаУчетаПопартнерам") Тогда |
|||
1
NIGHTHUNTER
06.08.21
✎
12:25
|
(0) Посмотрел, этот регистр сведений непериодический, не зависимый.
|
|||
2
ДенисЧ
06.08.21
✎
12:27
|
Создать менеджер записи, заполнить ключевые поля, прочитать, если выбран() тогда удалить()
|
|||
3
NIGHTHUNTER
06.08.21
✎
12:35
|
Учитывая что регистр такой
http://joxi.ru/4AkXZOaH0obG5r Как правильно будет сделать удаление? (2) Через менеджер записи? Не через набор записей? Имея только Партнера. |
|||
4
mikecool
06.08.21
✎
12:36
|
Запись.Удалить()
|
|||
5
mikecool
06.08.21
✎
12:36
|
автор, когда ты уже СП читать будешь?
|
|||
6
NIGHTHUNTER
06.08.21
✎
12:37
|
Запись = РегистрыСведений.АналитикаУчетаПоПартнерам.СоздатьМенеджерЗаписи();
Запись.Партнер = Партнер; Запись.Удалить(); Будет ли это правильно? учитывая что для удаления есть только партнер? |
|||
7
NIGHTHUNTER
06.08.21
✎
12:38
|
Набор = РегистрыСведений.АналитикаУчетаПоПартнерам.СоздатьНаборЗаписей();
Набор.Отбор.Партнер.Установить(Партнер); Набор.Записать(); Как лучше? Так, или (6) ? Подскажите пожалуйста. |
|||
8
mikecool
06.08.21
✎
12:38
|
(6) попробуй, потом нам расскажешь
|
|||
9
Dmitrii
гуру
06.08.21
✎
12:38
|
(3) Что значит "имея только Партнёра"? У тебя КлючЗаписи. Он содержи все необходимые поля.
В СП: Описание: РегистрСведенийКлючЗаписи Набор значений, однозначно идентифицирующих запись регистра. |
|||
10
ДенисЧ
06.08.21
✎
12:40
|
не.. Ну вроде по шагам всё написал...
(5) А смысл? Он всё равно не поймёт... А денег на курс по обучению чтению у него нет |
|||
11
NIGHTHUNTER
06.08.21
✎
12:47
|
(9) Ну все нужно удалить что есть по этому партнеру, имея только его не достаточно это?
|
|||
12
NIGHTHUNTER
06.08.21
✎
12:54
|
(9) Да в Элем.Данные, есть ещё организация .
ну тогда так? Запись = РегистрыСведений.АналитикаУчетаПоПартнерам.СоздатьМенеджерЗаписи(); Запись.Партнер = Партнер; Запись.Организация = Организация; Запись.Удалить(); |
|||
13
NIGHTHUNTER
06.08.21
✎
12:55
|
Как будет лучше? Правильнее, (12), или так?
Набор = РегистрыСведений.АналитикаУчетаПоПартнерам.СоздатьНаборЗаписей(); Набор.Отбор.Организация.Установить(Организация); Набор.Отбор.Партнер.Установить(Партнер); Набор.Записать(); |
|||
14
NIGHTHUNTER
06.08.21
✎
14:21
|
Почему может не удаляться запись в регистре.
По коду проходит. останавливаю отладку. запускаю. Эта запись осталась. почему не удаляется? Запись = РегистрыСведений.ГруппыЗначенийДоступа.СоздатьМенеджерЗаписи(); Запись.ЗначениеДоступа = Элем.Ссылка; Запись.Удалить(); |
|||
15
NIGHTHUNTER
06.08.21
✎
14:27
|
(14) Не уходит эта запись, почему?
|
|||
16
NIGHTHUNTER
06.08.21
✎
14:32
|
Подскажите пожалуйста. почему не могу программно удалить запись регистра сведений? Так же есть некоторые другие.
Запись = РегистрыСведений.ИерархияПартнеров.СоздатьМенеджерЗаписи(); Запись.Партнер = Элем.Ссылка; Запись.Удалить(); Запись = РегистрыСведений.СоответствияОбъектовИнформационныхБаз.СоздатьМенеджерЗаписи(); Запись.УникальныйИдентификаторИсточника = Элем.Ссылка; Запись.Удалить(); |
|||
17
NIGHTHUNTER
06.08.21
✎
14:35
|
РегистрСведений.ГруппаЗначенийДоступа
ЗначениеДоступа - тип ОпределяемыйТип.ЗначениеДоступа Как мне его установить на партнера? |
|||
18
NIGHTHUNTER
06.08.21
✎
14:47
|
вроде и так устанавливается, но почему запись не удаляется? Кто знает?
|
|||
19
Ёпрст
06.08.21
✎
14:51
|
(17) посмотреть вестимо, что входит в состав определяемого типа, если там есть справочник нужного вида, то просто уставноить нужную ссылку на элемент справочника
|
|||
20
NIGHTHUNTER
06.08.21
✎
14:54
|
(19) Входит!!!! Все входит. Но запись не могу программно очистить. Подскажите в чем дело? Как попробовать?
Вот по этим регистрам. по коду проходит. Но запись остаются ((9 Что я не так делаю? http://joxi.ru/EA40apjUvoqaQA |
|||
21
NIGHTHUNTER
06.08.21
✎
14:55
|
ИначеЕсли ТипЗнч(Элем.Данные) = Тип("РегистрСведенийКлючЗаписи.ГруппыЗначенийДоступа") Тогда
// РегистСведений.ГруппыЗначенийДоступа (Не периодический, не зависимый) Запись = РегистрыСведений.ГруппыЗначенийДоступа.СоздатьМенеджерЗаписи(); Запись.ЗначениеДоступа = Элем.Ссылка; Запись.ГруппаДанных = Элем.Данные.ГруппаДанных; Запись.Удалить(); ИначеЕсли ТипЗнч(Элем.Данные) = Тип("РегистрСведенийКлючЗаписи.ИерархияПартнеров") Тогда // РегистрСведений.ИерархияПартнеров (Не периодический, не зависимый) Запись = РегистрыСведений.ИерархияПартнеров.СоздатьМенеджерЗаписи(); Запись.Партнер = Элем.Ссылка; Запись.Родитель = Элем.Ссылка; Запись.Удалить(); ИначеЕсли ТипЗнч(Элем.Данные) = Тип("РегистрСведенийКлючЗаписи.КлючиДоступаКОбъектам") Тогда // РегистрСведений.КлючиДоступаКОбъектам (Не периодический, не зависимый) Запись = РегистрыСведений.КлючиДоступаКОбъектам.СоздатьМенеджерЗаписи(); Запись.Объект = Элем.Ссылка; Запись.Удалить(); ИначеЕсли ТипЗнч(Элем.Данные) = Тип("РегистрСведенийКлючЗаписи.ПартнерыСегмента") Тогда // РегистрСведений.ПартнерыСегмента (Не периодический, не зависимый) Запись = РегистрыСведений.ПартнерыСегмента.СоздатьМенеджерЗаписи(); Запись.Партнер = Элем.Ссылка; Запись.Сегмент = Элем.Данные.Сегмент; Запись.Удалить(); ИначеЕсли ТипЗнч(Элем.Данные) = Тип("РегистрСведенийКлючЗаписи.СоответствияОбъектовИнформационныхБаз") Тогда // РегистрСведений.СоответствияОбъектовИнформационныхБаз (Не периодический, не зависимый) Запись = РегистрыСведений.СоответствияОбъектовИнформационныхБаз.СоздатьМенеджерЗаписи(); Запись.УникальныйИдентификаторИсточника = Элем.Ссылка; Запись.Удалить(); КонецЕсли; // Почему не удаляются записи? http://joxi.ru/EA40apjUvoqaQA |
|||
22
brainguard
06.08.21
✎
14:57
|
(21) Чтобы удалить запись, ее надо сначала прочитать. Разработчики платформы любят пошутить )))
|
|||
23
rozer76
06.08.21
✎
15:05
|
МенеджерЗаписиОчередьПроведенияОрдеровМобиСклад = РегистрыСведений.вртОчередьПроведенияОрдеровМобиСклад.СоздатьМенеджерЗаписи();
ЗаполнитьЗначенияСвойств(МенеджерЗаписиОчередьПроведенияОрдеровМобиСклад, ВыборкаДетальныеЗаписи); МенеджерЗаписиОчередьПроведенияОрдеровМобиСклад.Прочитать(); Если МенеджерЗаписиОчередьПроведенияОрдеровМобиСклад.Выбран() Тогда МенеджерЗаписиОчередьПроведенияОрдеровМобиСклад.Удалить(); КонецЕсли; |
|||
24
Ёпрст
06.08.21
✎
15:07
|
ЗЫ: если удалять через набор, то читать не надо
|
|||
25
Ёпрст
06.08.21
✎
15:07
|
токма отбор нужный наложить, а то можно похериьт лишнего или всё.
|
|||
26
NIGHTHUNTER
06.08.21
✎
15:09
|
Я это брал с примера на сайте. То есть он не рабочий что ли?
Процедура ОчиститьЗаписиВНезависимомРегистреСведенийСОтбором(Валюта, БазоваяВалюта) Запись = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи(); Запись.Валюта = Валюта; Запись.БазоваяВалюта = БазоваяВалюта; Запись.Удалить(); КонецПроцедуры |
|||
27
NIGHTHUNTER
06.08.21
✎
15:09
|
(25) Отбор у меня партнер
|
|||
28
rozer76
06.08.21
✎
15:10
|
(26) нет
|
|||
29
rozer76
06.08.21
✎
15:11
|
читай запись если через менеджер или через набор не читай но накладывай отбор - см (25)
|
|||
30
NIGHTHUNTER
06.08.21
✎
15:36
|
(29) Буду пробовать!
Но а отбор у меня же вот // РегистСведений.ГруппыЗначенийДоступа (Не периодический, не зависимый) Запись = РегистрыСведений.ГруппыЗначенийДоступа.СоздатьМенеджерЗаписи(); Запись.ЗначениеДоступа = Элем.Ссылка; Запись.ГруппаДанных = Элем.Данные.ГруппаДанных; Запись.Удалить(); Это справочник партнеры, его и нужно удалить! Так что нормальный отбор. Буду сейчас тогда пробовать ещё, если (28) |
|||
31
NIGHTHUNTER
06.08.21
✎
15:36
|
(30+)
Запись.ГруппаДанных = Элем.Данные.ГруппаДанных; Это справочник партнеры |
|||
32
vicof
06.08.21
✎
15:37
|
(30) Рукалицо.
|
|||
33
vicof
06.08.21
✎
15:38
|
Менеджер записи не будет работать если нет отбора по всем измерениям для определения конкретной записи.
|
|||
34
NIGHTHUNTER
06.08.21
✎
15:43
|
(33) Ясно. Видимо в этом причина. Хотя я все накладываю что нужно.
Лучше НаборЗаписей значит пробовать? |
|||
35
Малыш Джон
06.08.21
✎
15:45
|
(34) хмм, ну попробуй... потом впечатлениями поделишься
|
|||
36
vicof
06.08.21
✎
15:45
|
Не только пробовать, но и прочитать, ветку, помощь и наборзаписей.
|
|||
37
NIGHTHUNTER
06.08.21
✎
17:46
|
Не был выбран, не прошло вот это присвоение МенеджерЗаписи.ЗначениеДоступа = Элем.Ссылка; Почему?
В Определяемом типе ЗначеинеДоступа, есть партнеры , а Элем.Ссылка это элемент справочника партнеры !!! МенеджерЗаписи = РегистрыСведений.ГруппыЗначенийДоступа.СоздатьМенеджерЗаписи(); МенеджерЗаписи.ЗначениеДоступа = Элем.Ссылка; МенеджерЗаписи.Прочитать(); Если МенеджерЗаписи.Выбран() Тогда МенеджерЗаписи.Удалить(); КонецЕсли; |
|||
38
hhhh
06.08.21
✎
18:01
|
(37) ЗначениеДоступа это точно измерение? И других измерений нет?
|
|||
39
NIGHTHUNTER
06.08.21
✎
18:10
|
||||
40
NIGHTHUNTER
06.08.21
✎
18:12
|
Так можно пробовать?
НаборЗаписей = РегистрыСведений.ГруппыЗначенийДоступа.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.ЗначениеДоступа.Установить(Элем.Ссылка); НаборЗаписей.Записать(); |
|||
41
Anton1307
06.08.21
✎
18:26
|
Вариант 1 - через РегистрСведенийЗапись.
В этом случае надо устанавливать значения ВСЕХ измерений (и период, если периодический), для однозначного идентифицирования записи. Удалить таким образом можно ТОЛЬКО ОДНУ запись. Запись = РегистрыСведений.ИмяРегистраСведений.СоздатьМенеджерЗаписи(); Запись.Измерение1 = ЗначениеИзмерения1; Запись.Измерение2 = ЗначениеИзмерения2; ... Запись.Измерение5 = ЗначениеИзмерения5; Запись.Удалить(); Вариант 2 - через РегистрСведенийНаборЗаписей(); В этом случае можно удалятся записи, соответствующие отбору. Если надо удалить одну запись - необходимо установить отборы, соответствующие этой и только этой записи (в идеале - установить отборы на все измерения). Удалятся все записи, соответствующие отбору. НаборЗаписей = РегистрыСведений.ИмяРегистраСведений.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Измерение1.Установить(ЗначениеИзмерения1); НаборЗаписей.Отбор.Измерение2.Установить(ЗначениеИзмерения2); НаборЗаписей.Записать(); В этом примере удалятся все записи, где Измерение1 = ЗначениеИзмерения1 и Измерение2 = ЗначениеИзмерения2 |
|||
42
hhhh
06.08.21
✎
18:27
|
(40) попробуйте
НаборЗаписей.ОбменДанными.Загрузка = Истина; |
|||
43
Chameleon1980
06.08.21
✎
19:13
|
время идёт (много идёт), а человек не меняется
автор ты кто в жизни вообще? |
|||
44
NIGHTHUNTER
07.08.21
✎
03:24
|
(41) Спасибо. Буду пробовать. Дело в том что для меня не явно какие измерения нужно задавать!
Я задал значимое. остальных вроде как и нет, они и не нужны. По этому затык. По такой же технике. какие то регистры же очистились. А вот с некоторыми пошла проблема. |
|||
45
NIGHTHUNTER
07.08.21
✎
03:25
|
(43) Программист 1с, я в жизни вообще. И он, только.
Мало практики работы с регистрами. Да ещё с незнакомыми. Буду сейчас стараться. |
|||
46
NIGHTHUNTER
07.08.21
✎
03:52
|
(41) В первом варианте нужно ещё прочитать, проверить выбрана ли запись.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |