|
Удаление записей регистра сведений независимо от режима записи | ☑ | ||
---|---|---|---|---|
0
Arms
07.04.13
✎
21:29
|
Нужно написать обработку, которая будет очищать выбранный РегистрСведений. В цикле делаю проверку на РежимЗаписи выбранного регистра, в зависимости от результата удаляю записи. Но в задании указано, что РежимЗаписиРегистра для реализации не важен. Не могу сообразить как его можно обойти.. Кто знает, подскажите, пожалуйста.
|
|||
1
Necessitudo
07.04.13
✎
21:38
|
Первый!
НаборЗаписей = РегистрыСведений.ЦеныНоменклатуры.СоздатьНаборЗаписей(); НаборЗаписей.Записать(); |
|||
2
Arms
07.04.13
✎
21:39
|
(1) в этом случае регистры подчиненные регистратору не проходят - ошибка: не установлен отбор по регистратору
|
|||
3
Necessitudo
07.04.13
✎
21:44
|
(2) Черт...Ну тогда так:
НаборЗаписей = РегистрыСведений[ИмяРегистра].СоздатьНаборЗаписей(); Запрос = Новый Запрос("Выбрать РАЗРЕШЕННЫЕ НужныйДокумент.Ссылка Из Документ.НужныйДокумент Как НужныйДокумент Где НужныйДокумент.Проведен = Истина Упорядочить ПО НужныйДокумент.Дата"); Результат = Запрос.Выполнить(); Если Не Результат.Пустой() Тогда Выборка=Результат.Выбрать() Пока Выборка.Следующий() Цикл НаборЗаписей.Отбор.Регистратор.Установить(Выборка.Ссылка); НаборЗаписей.Записать(); КонецЦикла; КонецЕсли; |
|||
4
Arms
07.04.13
✎
22:01
|
(3) в этом случае не подчиненные регистры с ошибкой - поле Регистратор не обнаружено
|
|||
5
Arms
07.04.13
✎
22:08
|
Как можно проверить, есть ли колонка Регистратор у выбранного регистра? сравнение типа
Регистратор = Неопределено не проходит у независимых регистров. |
|||
6
DirecTwiX
07.04.13
✎
22:13
|
Метаданные?
|
|||
7
Arms
07.04.13
✎
22:18
|
как через метаданные это прописать? у меня не получается - у независимых регистров ошибка об отсутствии поля и все
|
|||
8
hhhh
07.04.13
✎
22:43
|
ну напишите две обработки
|
|||
9
Arms
07.04.13
✎
22:46
|
(8) я так понимаю для независимых и подчиненных. по какому принципу определять, какую обработку выполнять? снова таки РежимЗаписи?
|
|||
10
hhhh
07.04.13
✎
23:02
|
ну проверяйте РежимЗаписи. Что тут сложного.
Если независимый регистр, то как в (1), иначе по регистраторам. |
|||
11
Arms
07.04.13
✎
23:04
|
(10) все сложности в условии задачи )
|
|||
12
hhhh
07.04.13
✎
23:07
|
(11) там вообще непонятно. Есть регистр, у него режим записи. Зачем его проверять в цикле? Он же один.
|
|||
13
Serg_1960
07.04.13
✎
23:10
|
(0) Пиши алгоритм, который может обработать любой(!) регистр сведений, ибо именно про это сказано в задание - "режим записи регистра - не важен".
РежимЗаписи = Метаданные.РегистрыСведений.ТвойРегистр.РежимЗаписи; Если РежимЗаписи = Метаданные.СвойстваОбъектов.РежимЗаписиРегистра... |
|||
14
Arms
07.04.13
✎
23:20
|
(12) на форме обработки ПолеВыбора, где пользователь выбирает любой РС. проверять в цикле для того, чтобы определить какой РежимЗаписи у выбранного РС
|
|||
15
Arms
07.04.13
✎
23:21
|
(13) Вы пишите:
Если РежимЗаписи = Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.. так ведь это и есть проверка РежимаЗаписи |
|||
16
hhhh
07.04.13
✎
23:33
|
(14) берете выбранный регистр, у него берете режим записи. Зачем цикл?
|
|||
17
Arms
07.04.13
✎
23:44
|
(16) То, что у меня написано:
Если ВыбрРегистр.РежимЗаписи = Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.Независимый Тогда // серия действий Иначе // серия действий КонецЕсли; Т.е. в данном случае РежимЗаписи имеет значение |
|||
18
DirecTwiX
07.04.13
✎
23:49
|
(17) Ты пишешь бред. Либо потому, что действительно не понимаешь, либо потому, что пытаешь скрыть непонимание
|
|||
19
DirecTwiX
07.04.13
✎
23:51
|
В каком задании? Клиент попросил так реализовать? Какой цикл для проверки режима записи?
|
|||
20
DirecTwiX
07.04.13
✎
23:53
|
Если с снята с поддержки, то можешь удалить РС, а потом создать такой же)
|
|||
21
Arms
07.04.13
✎
23:57
|
(19) Клиент здесь вообще ни при чем. У меня стоит задание, описанное выше.
в чем конкретно бред? цикл не ДЛЯ ПРОВЕРКИ РежимаЗаписи, в зависимости от режима записи идет удаление в цикле |
|||
22
DirecTwiX
08.04.13
✎
01:27
|
(21) Вот я и спрашиваю, откуда задание. А про проверку в цикле ты сам дважды сказал - в (0) и (14) - как минимум в этом бред. И задание тоже бредовое
|
|||
23
Arms
08.04.13
✎
01:55
|
(22) Значит неправильно мной донесено, но с (17) по-моему, суть должна быть ясна. Задания никто не выбирает, что имеем)
|
|||
24
Necessitudo
08.04.13
✎
08:12
|
Нам просто лень за тебя код писать:-)
|
|||
25
NWsFF
08.04.13
✎
08:18
|
Попытка
ВариантИз (1) Исключение ВариантИз (3) КонецПопытки Если уж нельзя использовать режим записи |
|||
26
НЕА123
08.04.13
✎
09:01
|
хз.
может через выбрать(), менеджерзаписи? но маразм, конечно. |
|||
27
Necessitudo
08.04.13
✎
09:22
|
А в чем проблема-то? Обойти по метаданным регистры, для каждого свой режим очистки, профит. Не?
|
|||
28
Широкий
08.04.13
✎
09:30
|
(0) TRUNCATE TABLE MyTable
|
|||
29
Serg_1960
08.04.13
✎
09:50
|
Автор заблуждается что в задании на "РежимЗаписиРегистра" табу наложено. Можно, конечно, и без этого обращения написать алгоритм очистки, но цель задания - не в этом.
|
|||
30
patric24
08.04.13
✎
09:56
|
напиши 2 обработки..
|
|||
31
Serg_1960
08.04.13
✎
11:21
|
Хех, две обработки :) Алгоритм - пару минут на десяток строк.
|
|||
32
Sword
08.04.13
✎
11:53
|
Не знаю можно ли...
http://infostart.ru/public/67112/ |
|||
33
Arms
08.04.13
✎
11:54
|
(29) в том, что написано, заблуждаться сложно )
но все, вопрос снимаю - прошло с проверкой на РежимЗаписи. Спасибо всем за попытки помочь :) |
|||
34
Sword
08.04.13
✎
11:55
|
Обработка моя, удаляет как надо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |