powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Как программно удалить записи в РС Штрихкоды?
16 сообщений из 16, страница 1 из 1
Как программно удалить записи в РС Штрихкоды?
    #39196381
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все доброго времени суток! Как программно удалить записи в РС Штрихкоды? Есть несколько штрихкодов, ошибочно назначенных для неправильной единицы измерения, хочу их удалить и заново переназначить уже для правильной единицы. Подскажите, пожалуйста, как их быстро удалить? Пробовала так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	               |	Штрихкоды.Штрихкод,
	               |	Штрихкоды.Владелец
	               |ИЗ
	               |	РегистрСведений.Штрихкоды КАК Штрихкоды
	               |ГДЕ
	               |	Штрихкоды.Владелец.Родитель = &Родитель";
				   
	Запрос.УстановитьПараметр("Родитель", Родитель);
	
	Выборка = Запрос.Выполнить().Выбрать();
	Пока Выборка.Следующий() Цикл
		Запись = РегистрыСведений.Штрихкоды.СоздатьНаборЗаписей();
		Запись.Отбор.Владелец.Установить(Выборка.Владелец);
		Запись.Удалить(Выборка.Штрихкод);
		Сообщить("Удалён штрихкод " + Выборка.Штрихкод);
		
	КонецЦикла;	


Ругается так:
Ошибка при вызове метода контекста (Удалить)
Запись.Удалить(Выборка.Штрихкод);
по причине:
Значение индекса выходит за границы диапазона
:(
Что не так делаю?
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39196390
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya,
авторЧто не так делаю?
не читаете СП по набору записей
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39196403
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,

Ну прочитала, там вот:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
РегистрСведенийНаборЗаписей.<Имя регистра сведений> (InformationRegisterRecordSet.<Имя регистра сведений>)
Удалить (Delete)
Синтаксис:

Удалить(<Запись>) 
Параметры:

<Запись> (обязательный)

Тип: Число; РегистрСведенийЗапись.<Имя регистра сведений>. 
Индекс удаляемой записи либо сама запись. 
Описание:

Удаляет запись из набора записей регистра сведений.

Доступность: 

Сервер, толстый клиент, внешнее соединение. 
Пример:

НаборКурсов.Удалить(0);
 


изменила на
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
	Пока Выборка.Следующий() Цикл
		Запись = РегистрыСведений.Штрихкоды.СоздатьНаборЗаписей();
		Запись.Отбор.Владелец.Установить(Выборка.Владелец);
		Запись.Удалить(0);
		Сообщить("Удалён штрихкод " + Выборка.Штрихкод);
		
	КонецЦикла;	
	


всё равно не пашет :( ругается на тоже самое.
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39196413
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya,авторУдаляет запись из набора записей регистра сведений.
а вам надо из базы удалить, так что смотрите что есть у набора записей еще, что может повлиять на состояние базы.
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39196446
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,

Кажется получилось вот так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	               |	Штрихкоды.Штрихкод,
	               |	Штрихкоды.Владелец,
	               |	Штрихкоды.Владелец.Код КАК Код,
	               |	Штрихкоды.Владелец.Родитель КАК Родитель
	               |ИЗ
	               |	РегистрСведений.Штрихкоды КАК Штрихкоды
	               |ГДЕ
	               |	Штрихкоды.Владелец.Родитель = &Родитель";
				   
	Запрос.УстановитьПараметр("Родитель", Родитель);
	
	Выборка = Запрос.Выполнить().Выбрать();
	Пока Выборка.Следующий() Цикл
		Запись = РегистрыСведений.Штрихкоды.СоздатьНаборЗаписей();
		Запись.Отбор.Владелец.Установить(Выборка.Владелец);
	
		Запись.Прочитать();
		Для Каждого Х Из Запись Цикл
			Запись.Удалить(0);
			Сообщить("Удалён штрихкод " + Выборка.Штрихкод + " " + Выборка.Код + " " + Выборка.Родитель);
		КонецЦикла;
		Запись.Записать();
	КонецЦикла;	


Всем большое спасибо!!!
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39196499
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya,Кажется получилось вот так:
вам точно надо 1С?
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39196818
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapeckerLittleLoya,
вам точно надо 1С?
К сожалению, да, надо :( Хотя я от него не в восторге, не понимаю его совсем. А почему Вы спрашиваете, что-то не так в коде?
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39196876
Последний выдох ГПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока Выборка.Следующий() Цикл
Запись = РегистрыСведений.Штрихкоды.СоздатьНаборЗаписей();
Запись.Отбор.Владелец.Установить(Выборка.Владелец);

Запись.Прочитать();
Для Каждого Х Из Запись Цикл
Запись.Удалить(0);
Сообщить("Удалён штрихкод " + Выборка.Штрихкод + " " + Выборка.Код + " " + Выборка.Родитель);
КонецЦикла;
Запись.Записать();
КонецЦикла;


там Очистить() есть... смысл перебирать набор?
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39197002
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Последний выдох ГПЖ,

Точно! Вот так работает, спасибо большое!
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
	Пока Выборка.Следующий() Цикл
		Запись = РегистрыСведений.Штрихкоды.СоздатьНаборЗаписей();
		Запись.Отбор.Владелец.Установить(Выборка.Владелец);	
		Запись.Прочитать();
		Запись.Очистить();
		Сообщить("Удалён штрихкод " + Выборка.Штрихкод + " " + Выборка.Код + " " + Выборка.Родитель);
		Запись.Записать();
	КонецЦикла;	
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39197019
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya,А почему Вы спрашиваете, что-то не так в коде?
Да, много чего не так
1. вам вообще не нужно читать набор записей, вы же все равно его очищаете. Сразу записывайте пустой набор.
2. вы записываете набор слишком много раз, достаточно один раз для каждого владельца, а не для каждого штрихкода.
3. создавать набор записей нужно один раз, до цикла
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39197056
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,

Поняла, спасибо большое. Тогда окончательный вариант такой:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
	Выборка = Запрос.Выполнить().Выбрать();
	Запись = РегистрыСведений.Штрихкоды.СоздатьНаборЗаписей();
	Пока Выборка.Следующий() Цикл
		Запись.Отбор.Владелец.Установить(Выборка.Владелец);
		Запись.Очистить();
		Сообщить("Удалён штрихкод " + Выборка.Штрихкод + " " + Выборка.Код + " " + Выборка.Родитель);
		Запись.Записать();
	КонецЦикла;	
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39197066
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya,Тогда окончательный вариант такой:
Здесь только 3 пункт и половина 1-го (если вы не читаете набор записей, то и очищать его не надо, он пустой).
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39197187
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,

спасибо, убрала из кода строку Запись.Очистить();
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39197294
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya, а лишние записи набора)?
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39198138
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapecker,

а как? Если я вынесу Запись.Записать(); за пределы цикла, то он мне только последний и удалит. Остальные останутся!
...
Рейтинг: 0 / 0
Как программно удалить записи в РС Штрихкоды?
    #39198146
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya, записывайте не каждый раз, запрос слегка измените, обходите его по другому
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Как программно удалить записи в РС Штрихкоды?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]