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


1С:Предприятие ::

Метки: 

Как удалить первую строку в табличной части документа??

Я
   Рауф
 
03.01.13 - 13:47
Как из несколько повторяющихся значений, удалить все кроме последнего?
 
 
   Noroving
 
1 - 03.01.13 - 13:49
тебе нужно удаление дублирующихся строк?
   Галахад
 
2 - 03.01.13 - 13:50
Товары[0].Удалить не?
   Noroving
 
3 - 03.01.13 - 13:51
(2) Удалить, это метод...
   Рауф
 
4 - 03.01.13 - 13:51
да  только дубликаты
   Рауф
 
5 - 03.01.13 - 13:53
(1) мне надо удалить в табличной части документа только дублирующие строки и оставить только последнею
   Noroving
 
6 - 03.01.13 - 13:54
(4) была уже такая ветка... подробно разжеваная
   sapphire
 
7 - 03.01.13 - 13:55
(2) Если так сделать то по-удаляешь совсем не то :)
   sapphire
 
8 - 03.01.13 - 13:56
(0) Что проще запросом получить ТЧ без дублей и загрузиьт её или бегать по таблице и искать дубли?
   rphosts
 
9 - 03.01.13 - 13:59
(0) 1.найти запросом все дубли кроме последних.
2.обходя выборку удалять соответсвующие строки
   Галахад
 
10 - 03.01.13 - 14:02
(7) Не первую, что-ли? ;-)
 
 Рекламное место пустует
   sapphire
 
11 - 03.01.13 - 14:03
В общем вариантов, масса, старый вариант - скопировать ТЧ, добавить колонку счетчика уникальности, свернуть по полям и просуммировать счетчик. Отсортировать по счетчику в порядке убывания.

Перебираешь строки полученной таблицы пока счетчик уникальности больше 1.
Инициализируешь счетчик удаляемых строк=значение счетчика уникальности
Находишь строки в табличной части.
Для каждой строки если найденные в ТЧ
если 1<счетчик удаляемых строк тогда удаляешь строку.
   Азат
 
12 - 03.01.13 - 14:03
(10) ты первую удалишь и тут же все остальные съедут...
   sapphire
 
13 - 03.01.13 - 14:03
(10) Первую, но сели изначально надо удалить 1, потом, 7, и с 20 по 50-ю, будет весело :)
   Азат
 
14 - 03.01.13 - 14:03
имхо канеш - запросом выбрать Максимум(НомерСтроки) и оставить только их
   sapphire
 
15 - 03.01.13 - 14:04
(14) Запросом получить уникальные и загрузить, Да?
   sapphire
 
16 - 03.01.13 - 14:05
+(11) Само собой что счетчик удаляемых строк декрементируется если строка удалена.
   rphosts
 
17 - 03.01.13 - 14:07
(12) при обходе запроса не так сложно кол-во похереных строк...
   rphosts
 
18 - 03.01.13 - 14:08
(14) обработка удет сложнее, трафик между коиентом и сервером будет на порядки больше...
   sapphire
 
19 - 03.01.13 - 14:09
(18)ИМХО, фактически все уйдет на сервант в серверном режиме, как ни крути.
   sapphire
 
20 - 03.01.13 - 14:09
(18) Если не корежить данные формы.
   rphosts
 
21 - 03.01.13 - 14:10
+ (18) кста и запрос не намного сложнее: сначао как в (14) а потом те которые не попали в этот список.
   sapphire
 
22 - 03.01.13 - 14:11
(21) Зачем? Проще перезаполнить ТЧ в таком разе.
   Галахад
 
23 - 03.01.13 - 14:12
Хех. Теоретики, а автор сидит и ждет листинга...
   sapphire
 
24 - 03.01.13 - 14:13
(23) Пусть ждет :)
   Азат
 
25 - 03.01.13 - 14:15
(23) я тоже жду 5000 на киви или ЯД, чтобы начать печатать листинг...
   sapphire
 
26 - 03.01.13 - 14:16
(25) Экий ты жадный
   sapphire
 
27 - 03.01.13 - 14:17
(23) Ваще, ИМХО, (11) вполне одинесно-кодово выглядит :)
   Азат
 
28 - 03.01.13 - 14:20
(27) он на семерочный оч сильно смахивает)))
   rphosts
 
29 - 03.01.13 - 14:20
(22) кстати, да
   sapphire
 
30 - 03.01.13 - 14:22
(28) Зависит от потребностей и способностей ТС
   ILM
 
31 - 03.01.13 - 14:23
(0)  
Первый вопрос: зачем удалять дубли в ТЧ?
Второй вопрос: зачем вводить дубли в ТЧ?
Третий вопрос: Если заполняется автоматом, то можно ли в механизме заполнения избежать дублей?
   Рауф
 
32 - 03.01.13 - 14:25
(12) мне надо удалять все дубле кроме последнего
   Рауф
 
33 - 03.01.13 - 14:29
вы мне можете привести пример
 
 
   Галахад
 
34 - 03.01.13 - 14:30
Я ж говорил. :-)
   ILM
 
35 - 03.01.13 - 14:31
Если строк в ТЧ мало, то 
ТЗ = ТЧ.Выгрузить();
ТЗ.Свернуть(...);
ТЧ.Загрузить(ТЗ);

Если строк сильно много, то:
Запрос=Новый Запрос("Выбрать РАЗЛИЧНЫЕ * ИЗ ТЧ ГДЕ ТЧ.Ссылка =&CсылкаДокумент");
Запрос.УстановитьПараметр("CсылкаДокумент",CсылкаДокумент);
ТЧ.Загрузить(Запрос.Выполнить().Выгрузить());
   Infsams654
 
36 - 03.01.13 - 16:00
(31) на счет, зачем вводить дубли в ТЧ, в типовых 1С нопределенность какая-то: БП 3 есть Функция ПроверитьОтсутствиеДублейВТабличнойЧасти(Объект, ИмяТабличнойЧасти, ПоляПроверки, Отказ) Экспорт, при чем в ОМ УправлениеВнеоборотнымиАктивами, почему то; БГУ 2 Функция ЭтоСтрокаДубль(ТабЧасть, СтрокаТабЧасти, СтруктураРеквизитов) Экспорт - в ОбщегоНазначенияБГУ
   ILM
 
37 - 03.01.13 - 16:06
(36) Все зависит от бизнес-логики.
Где-то нужно удалять дубли например, в заказах поставщикам.
Где-то, в заказах на производство, нет.
Про это и был вопрос к ТС в (31).
   Miss1C
 
38 - 03.01.13 - 16:14
(11) Много мороки) Я бы посоветовала создать такую же ТЗ и при переборе строк с основной методом найти строки записывать только уникальные данные)



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