Имя: Пароль:
1C
 
Новая обработка
🠗 (Волшебник 17.12.2024 12:27)
,
0 daniil77
 
naïve
17.12.24
11:28
&НаСервере
Процедура УдалитьАктивныеОбъекты()
    
    // Выполняем запрос для получения активных объектов  
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 100
                    |  РецептыКазань.Объект КАК Объект
                    |ИЗ
                    |  РегистрСведений.РецептыКазань КАК РецептыКазань
                    |ГДЕ
                    |  РецептыКазань.Объект.Активный = ИСТИНА";
  
    Результат = Запрос.Выполнить();
  Помогите пожалуйста дописать пожалуйста обработку. Уже 4 день мучаюсь. Нужно чтобы кнопка удаляла найденные объекты по запросу именно "активные".
До этого пробовал вот так
РезультатТаблица = Результат.Выгрузить();

    // Проверяем, есть ли записи для удаления
  Если РезультатТаблица.Количество() = 0 Тогда
    Возврат;
    КонецЕсли;

    ТекПозиция = 0;

    Для каждого СтрокаЗапроса из РезультатТаблица Цикл
    
        НаборЗаписей = РегистрыСведений.РецептыКазань.СоздатьНаборЗаписей();
        НаборЗаписей.Отбор.Объект.Установить(СтрокаЗапроса.Объект);

       // Удаляем запись
    НаборЗаписей.Искать();

    Если НаборЗаписей.Найдено() Тогда
        НаборЗаписей.Удалить();
        НаборЗаписей.Записать(Истина);
    КонецЕсли;
    
КонецЦикла;
КонецПроцедуры                  

&НаКлиенте
Процедура КнопкаУдалитьНажатие(Команда)
    // Вызов процедуры для удаления активных объектов
    УдалитьАктивныеОбъекты();
КонецПроцедуры
    но выдает ошибку Метод объекта не обнаружен (Искать)
{Обработка.Обработка1.Форма.Форма.Форма(31)}:    НаборЗаписей.Искать();
1 DrShad
 
17.12.24
11:29
Искать? )))))
2 daniil77
 
naïve
17.12.24
11:30
(1) а как можно переиграть
3 Волшебник
 
17.12.24
11:31
что это за хуйня вообще?
4 DrShad
 
17.12.24
11:34
(2) попробуйте другие команды, которые вам знакомы

я бы попробовал Лежать()
5 Волшебник
 
17.12.24
11:32
зачем удалять активные? их надо наоборот беречь. Это ж активные казанские рецепты!
6 daniil77
 
naïve
17.12.24
11:33
(5) потому что они дублируются
7 Волшебник
 
17.12.24
11:33
(4) А как Вам это?

Если НаборЗаписей.Найдено() Тогда
8 Волшебник
 
17.12.24
11:34
(6) да не врите
9 DrShad
 
17.12.24
11:34
(7) сорри, номером сообщения ошибся
10 Буковка
 
17.12.24
11:34
(0) почитайте про методы Набора записей. Возможно, "отбор" Вам поможет. Лучше сейчас Вам потратить время и разобраться, чтобы в дальнейшем было легче.
11 Irbis
 
17.12.24
11:34
>> потому что они дублируются
Косяк проектирования. В нормальном РС дубль невозможен по определению, на уровне движка контролируется.
12 evorle145
 
17.12.24
11:34
(2) вам надо почитать основы, как работать с регистрами сведений, что такое Измерения узнать...

Вот тут раньше об этом было написано:
https://v8.1c.ru/metod/books/42696.htm
13 Буковка
 
17.12.24
11:35
(5) захотелось эчпочмаки:)
14 Shurjk
 
17.12.24
11:35
Охота чего ни будь посоветовать но боюсь, так и базу можно удалить.
15 Волшебник
 
17.12.24
11:36
(14) Нет там никакой базы. Это ж просто генерация кода от нейронки
16 Shurjk
 
17.12.24
11:36
(10) Человек четвертый день бьется. Что то ищет.
17 daniil77
 
naïve
17.12.24
11:36
(8) Я понимаю, что возможно это смешно, просто на форуме другом пробовали так, поэтому я воспользовался обработкой которую делали до этого другие люди(
18 Irbis
 
17.12.24
11:37
(13) Чак-чак, кыстыбый, кызлык и т. п. А особенно вяленого гуся с тёмным пивом
19 Shurjk
 
17.12.24
11:37
(15) Но его то запускают на какой то базе.
20 Волшебник
 
17.12.24
11:37
(19) Его запускают на мисту
21 Волшебник
 
17.12.24
11:38
(17) Хватит морочить нам голову и вешать лапшу на уши!
22 Буковка
 
17.12.24
11:39
(16) кто ищет, вынужден блуждать использовать метод "искать"
23 Irbis
 
17.12.24
11:38
(17) Так ты ещё и подлый плагиатор
24 Lite777888
 
naïve
17.12.24
11:42
(0) Набор.Прочитать(); Набор.Удалить()
25 evorle145
 
17.12.24
11:42
(17) на каком другом форуме? ссылку можно?
26 Волшебник
 
17.12.24
11:43
РегистрСведений.РецептыКазань.СоздатьНаборЗаписей().Записать();
27 DrShad
 
17.12.24
11:43
может ТС какой-нить курс закончил типа "1С:Эксплуатаор" ?
28 MWWRuza
 
гуру
17.12.24
11:44
Бороться, искать, НАЙТИ, не сдаваться (С)
29 DrShad
 
17.12.24
11:44
(26) ой зря ты ему такое заклинание дал
30 Волшебник
 
17.12.24
11:44
(29) Нет регистра — нет проблемы.
31 DrShad
 
17.12.24
11:45
+(29) сначала нужно научить бэкап делать
32 Tarlich
 
17.12.24
11:46
(0) https://infostart.ru/1c/tools/619669/ скачайте , установите нужный отбор, удалите, не забудь про бекап
33 yurikmellon2
 
17.12.24
11:45
на копии сначала проверь

Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 100
                    |  РецептыКазань.Объект КАК Объект
                    |ИЗ
                    |  РегистрСведений.РецептыКазань КАК РецептыКазань
                    |ГДЕ
                    |  РецептыКазань.Объект.Активный = ИСТИНА";
  
    Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();

Пока Выборка.Следующий() Цикл

    МенеджерЗаписи = РегистрыСведений.РецептыКазань.СоздатьМенеджерЗаписи();

    МенеджерЗаписи.Объект = Выборка.Объект;

    МенеджерЗаписи.Прочитать();
    Если МенеджерЗаписи.Выбран() Тогда
        МенеджерЗаписи.Удалить();
    КонецЕсли;

КонецЦикла;
34 DrShad
 
17.12.24
11:45
(30) тогда уже транкануть БД
35 Волшебник
 
17.12.24
11:46
(33) это лишнее:
МенеджерЗаписи.Прочитать();
    Если МенеджерЗаписи.Выбран() Тогда
36 Shurjk
 
17.12.24
11:47
(26) Нехороший Вы человек.
37 Волшебник
 
17.12.24
11:47
(36) В нормальной базе не может быть РС РецептыКазань. Не должно быть.
38 evorle145
 
17.12.24
11:51
(26) Это не поможет. Потому что лишние активные объекты все равно могут потом сами появиться. Лучше (0) в конфигураторе найти в дереве метаданных этот регистр и удалить поле "Активный".
39 Волшебник
 
17.12.24
11:51
(38) поле Активный в объекте
40 Мультук
 
гуру
17.12.24
11:53
(39)

А начальник (38) сказал удалять в регистре!
Что непонятного ? :-)
41 Волшебник
 
17.12.24
11:54
(40) Как Вы думаете, каков тип измерения Объект? Я думаю, документ.
42 Irbis
 
17.12.24
11:56
(41) Начальник может прогуляться в известном направлении. Да и говорить ему что в конечном счете сделано не обязательно.
43 evorle145
 
17.12.24
12:01
(42) там чуть другой смысл.. начальник не тот, о котором вы подумали))) как я понял) но вы правы, что сделано, то сделано. Главное результат чтобы был виден!
(39) да, точно.. тогда не знаю что делать.. кроме как удалить регистр сведений целиком, применить изменения на базе и затем вернуть обратно - вариантов уже не остается.
44 Irbis
 
17.12.24
12:03
(43) Да там способов как Остапа по сравнительно честному отъёму денежных знаков. Парочка уже в теме проскочила.
45 Shurjk
 
17.12.24
12:16
(37) Это всего лишь следствия слогана "1с Доступно и всерьез"
46 mmg
 
17.12.24
12:27
(0) Что ты мучаешься! Спроси у o1, где у тебя ошибки и получишь ответ
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.