Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Можно ли пометить на удаление справочник, находясь в нем?

v7: Можно ли пометить на удаление справочник, находясь в нем?
Я
   Gugolovski
 
30.05.18 - 09:58
Можно ли пометить на удаление справочник, находясь непосредственно в нем?

попробовал:

Форма.Закрыть(0);
а после через создатьОбъект()... и спр.Удалить() 

Но пишет объект заблокирован..
Или это невозможно?
 
 
   NikVars
 
1 - 30.05.18 - 10:10
(0) Через конфигуратор не?
   NikVars
 
2 - 30.05.18 - 10:15
Удалить(<?>);
Синтаксис:
Удалить(<Режим>)
Назначение:
Удалить элемент справочника.
Параметры:
<Режим> - : 1 - непосредственное удаление, 0 - пометка на удаление (необязателен, по умолчанию - 1).
Замечание:
Метод  можно использовать только для объектов, созданных функцией СоздатьОбъект.
   Gugolovski
 
3 - 30.05.18 - 10:19
ну да

ПРоцедура Удалить()
кодПоиска = код;
Форма.Закрыть();

спр = СОздатьОбъект("Справочник.Сотрудники");
спр.НайтиПоКоду(кодПоиска);
спр.Удалить();
КонецПРоцедуры


пишет заблокирован объект
   Kigo_Kigo
 
4 - 30.05.18 - 10:20
И приз за самый лучший коммент уходитпервонаху, за самый лучший  и остроумный ответ
По сабжу- это не возможно, пока открыт элемент, он заблокирован
   Масянька
 
5 - 30.05.18 - 10:22
(3) спр.Удалить(); -> спр.Удалить(0);
А вообще - (4).
   NikVars
 
6 - 30.05.18 - 10:27
Кто еще путает справочник и элемент справочника?!
   Gugolovski
 
7 - 30.05.18 - 10:27
какое дурацкое ограничение)
   Gugolovski
 
8 - 30.05.18 - 10:28
(6) Прошу прощения за неточность. Именно, элемент справочника
   Андрей_Андреич
 
9 - 30.05.18 - 10:29
Не надо рубить сук на которых сидишь
   Slypower
 
10 - 30.05.18 - 10:30
(6) а что, в конфигураторе можно пометить на удаление справочник?
 
 Рекламное место пустует
   Андрей_Андреич
 
11 - 30.05.18 - 10:31
А ПослеЗакрытия() не работает?
   Масянька
 
12 - 30.05.18 - 10:31
(9) Ну, интересно же :))))))))))
   Масянька
 
13 - 30.05.18 - 10:35
И - меня, лично, интересует: зачем открывать и удалять? А так просто (ну, из списка) - религия не позволяет?
   Андрей_Андреич
 
14 - 30.05.18 - 10:37
(13) Открыл увидел что не нужен. может формы списка и нет - открывается какой-нибудь мега обработкой "НайтиПодозрительныеЭлементы"
   NikVars
 
15 - 30.05.18 - 10:43
(10) Открой конфигуратор и проверь.
   1Сергей
 
16 - 30.05.18 - 10:44
Вроде, можно через ложное закрытие. Хотя, хз. Не помню ужо
   1Сергей
 
17 - 30.05.18 - 10:44
Надо Ёпрста звать
   ikea
 
18 - 30.05.18 - 11:06
Попробуйте через дополнительную обработку с передачей туда контекста формы элемента справочника.

В обработке следующий код:

Перем ЭЛ;

Процедура ПриОткрытии()
    Если ПустоеЗначение(Форма.Параметр)=0 Тогда
        КонтекстЭлемента = Форма.Параметр.Получить("КонтекстЭлемента");
        ЭЛ=КонтекстЭлемента.ТекущийЭлемент();
        КонтекстЭлемента.Форма.Закрыть(0);
        Форма.Закрыть();
    КонецЕсли;
КонецПроцедуры// ПриОткрытии


Процедура ПриЗакрытии()
    Если ПустоеЗначение(ЭЛ)=0 Тогда
        Спр=СоздатьОбъект("Справочник.НужныйСправочник");
        Спр.НайтиЭлемент(ЭЛ);
        Спр.Удалить();
        ОткрытьФорму(ЭЛ);
    КонецЕсли;
КонецПроцедуры// ПриЗакрытии
   VladZ
 
19 - 30.05.18 - 11:08
(0) Зачем? Закрой карточку и пометь на удаление. Зачем себе создавать проблемы на ровном месте?
   NSSerg
 
20 - 30.05.18 - 11:09
Сделать в форме элемента кнопку - "открыть в форме списка".
И удалять станет намного удобней.
   Slypower
 
21 - 30.05.18 - 11:16
(15) ну понятно... сарказм не для вас. А серьезно, давайте доказательство того, что вы можете это сделать...
   Вася Теркин
 
22 - 30.05.18 - 11:16
передОткрытием или при записи попробуй...
   ADirks
 
23 - 30.05.18 - 11:17
Если уж извращаться...
Надо организовать очередь событий. Ежели возникает желание, пихаем туда запрос на удаление. Как только удаление станет возможным, оно исполнится.
   Вася Теркин
 
24 - 30.05.18 - 11:17
попробуй записать и при записи поставить пометку удаления. Хотя она и ридонли, роде.
   NSSerg
 
25 - 30.05.18 - 11:49
(24) Из формы элемента записать можно только через "переоткрытие"
   NSSerg
 
26 - 30.05.18 - 11:49
Блин, пометить можно только через "переоткрытие"
   Карст
 
27 - 30.05.18 - 12:50
дааа чинить мотор через фыхлопную трубу (с) ))
   _stay true_
 
28 - 30.05.18 - 12:52
(23) больной у.....к хDDD
   Ёпрст
 
29 - 30.05.18 - 12:58
(0) можно, как минимум, 4-мя способами
   Ёпрст
 
30 - 30.05.18 - 12:59
1. update parentid
2.открытие-закрытие формы обработки
3.обработка ожидания
4.показ копии объекта (метод с синьоры)
   Злопчинский
 
31 - 30.05.18 - 13:10
Генеришь событие. которое срабатывает после закрытия формы. в обработке события - удаляешь
   ADirks
 
32 - 30.05.18 - 13:31
(28) ага, у меня и справка есть!

а вообще идея хорошая, пойду ка, запилю себе MQ. с серверами и маршрутизацией.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует