|
|
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
списзнач=создатьобъект("списокзначений"); спрсотр=создатьобъект("справочник.сотрудники"); спрсотр.выбратьэлементы(); пока спрсотр.получитьэлемент()=1 цикл списзнач.добавитьзначение(спрсотр.наименование); конеццикла; списзнач.выгрузить(списоксотрудников);//// передали в список значений инфу со справочника процедура удалить() для н=1 по списоксотрудников.размерсписка() цикл если списоксотрудников.пометка(н)=1 тогда списоксотрудников.удалитьзначение(н); конецесли; конеццикла; конецпроцедуры удаляет не все значения. выдает следующую ошибку если списоксотрудников.пометка(н)=1 тогда {D:\DOCUMENTS AND SETTINGS\ADMIN\МОИ ДОКУМЕНТЫ\INFOBASE1\EXTFORMS\РАБОТА СО СПИСКОМ ЗНАЧЕНИЙ.ERT(72)}: Индекс не входит в границы списка значений. помогите, что в цикле не так. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 13:28 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
"Возможно обращение к элементу коллекции посредством оператора [...]. В качестве аргумента передается индекс (нумерация с 0) элемента." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 13:41 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
Нет реги, я прочитал, по поводу формата удальтьзапись(с какой, количенство удаляемых) но не совсем понял, можно ли поподробнее ,как осущиствить удаление, что и как изменить. Подскажите пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 13:45 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
maxfaqНет реги, я прочитал, по поводу формата удальтьзапись(с какой, количенство удаляемых) но не совсем понял, можно ли поподробнее ,как осущиствить удаление, что и как изменить. Подскажите пожалуйста Ты последовательно уменьшаешь список методом списоксотрудников.удалитьзначение(н), а количество итераций в цикле у тебя равно первоначальному списоксотрудников.размерсписка(). Поэтому не удаляй значения из списка, а заполняй по новой. _списСотрудников = СоздатьОбъект("СписокЗначений"); Если списоксотрудников.пометка(н)=1 Тогда _списСотрудников.ДобавитьЗначение(списоксотрудников.ПолучитьЗначение(н)); КонецЕсли; _списСотрудников.Выгрузить(списСотрудников); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 13:54 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
vitkhv, тоесть мы помещаем всех помеченных в новый список? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 14:13 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
vitkhv, опять ругается.причем так же ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 14:19 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
maxfaqvitkhv, опять ругается.причем так же Так ругается? _списСотрудников = СоздатьОбъект("СписокЗначений"); Для н=1 по списоксотрудников.размерсписка() цикл Если списоксотрудников.пометка(н)=1 Тогда _списСотрудников.ДобавитьЗначение(списоксотрудников.ПолучитьЗначение(н)); КонецЕсли; Конеццикла; _списСотрудников.Выгрузить(списСотрудников); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 14:29 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
vitkhv, если так то первый раз нормально, а когда еще раз выделяешь и опять запускаешь функцию то он делает обратное , тоесть оставляет только помеченных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 14:38 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
процедура удалить() н=списоксотрудников.размерсписка() Пока н>=1 цикл если списоксотрудников.пометка(н)=1 тогда списоксотрудников.удалитьзначение(н); конецесли; н=н-1; конеццикла; конецпроцедуры ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 14:42 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
maxfaqvitkhv, если так то первый раз нормально, а когда еще раз выделяешь и опять запускаешь функцию то он делает обратное , тоесть оставляет только помеченных Ну елки зеленые, тебе принцип объяснили - дальше уже сам думай. Можеш делать как показал rigus. Только запомни в данном конкрентном случае удалять значения из списка может и оправданно, но в случае когда список очень большой, время на перииндексацию списка при удалении из него значений будет выше чем заполнение списка по новой, это касается и таблиц значений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 14:50 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
я если много значений то лучше таблицу с колонкой признака удаления а потом сортировать и выгрузить диапазон в итоговую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 14:54 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
Попробую намекнуть еще раз: "Возможно обращение к элементу коллекции посредством оператора [...]. В качестве аргумента передается индекс ( нумерация с 0 ) элемента." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 14:54 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
rigus, так же, при первом обращении работает при втором , делает наоборот, оставляет отмеченное,остальные удаляет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:02 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
Нет реги, ))можно ли поточне) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:03 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
для н=1 по списоксотрудников.размерсписка() цикл и нумерация с 0 не наводит на мысли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:17 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
Нет региПопробую намекнуть еще раз: "Возможно обращение к элементу коллекции посредством оператора [...]. В качестве аргумента передается индекс ( нумерация с 0 ) элемента." речь о 7ке maxfaq, для начала н=н-1; вообще то если удаляешь элемент списка а у тебя оно постянно инкриментируется вне зависимости от того удали или инет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:18 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
декрементируется прошу прощения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:19 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
maxfaq, вот тебе правильный алгоритм: (надо было заменить 1 на 0 и было б тебе счастье.) _списСотрудников = СоздатьОбъект("СписокЗначений"); Для н=1 по списоксотрудников.размерсписка() цикл Если списоксотрудников.пометка(н)=0 Тогда _списСотрудников.ДобавитьЗначение(списоксотрудников.ПолучитьЗначение(н)); КонецЕсли; Конеццикла; _списСотрудников.Выгрузить(списоксотрудников); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:36 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
vitkhv, я это сразу сделал)) но второй раз когда обращаешься к процедуре оно делает наоборот из осавшенгося списка убирает все кроме помеченного ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:38 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
maxfaqvitkhv, я это сразу сделал)) но второй раз когда обращаешься к процедуре оно делает наоборот из осавшенгося списка убирает все кроме помеченного можешь выложить ВЕСЬ текст... или вообще обработку прикрепить а то по фрагментам с кучей ощибок весело судить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:39 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
maxfaqvitkhv, я это сразу сделал)) но второй раз когда обращаешься к процедуре оно делает наоборот из осавшенгося списка убирает все кроме помеченного Я вот для тебя даже тебе обработку написал..... во вложении...... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:43 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
Last1Cmen, списзнач=создатьобъект("списокзначений"); спрсотр=создатьобъект("справочник.сотрудники"); спрсотр.выбратьэлементы(); пока спрсотр.получитьэлемент()=1 цикл списзнач.добавитьзначение(спрсотр.наименование); конеццикла; списзнач.выгрузить(списоксотрудников); процедура удалить() _списСотрудников = СоздатьОбъект("СписокЗначений"); Для н=1 по списоксотрудников.размерсписка() цикл Если списоксотрудников.пометка(н)=1 Тогда _списСотрудников.ДобавитьЗначение(списоксотрудников.ПолучитьЗначение(н)); КонецЕсли; Конеццикла; _списСотрудников.Выгрузить(списокСотрудников); конецпроцедуры ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 15:59 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
vitkhv, я лошара) прости, я не сохранил тогда изменение условия если )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 16:03 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
Спасибо уловил разницу, я и по началу насчет етой строки засомневался,потому как ошубку давало на втором удаляемлом элементе , но я думал кфункция подсчета кол-ва элементов будет индексировать, ошибся. БОЛЬШОЕ СПАСИБО. кстати и за использования второго списка с записью в него необходимых элементов ет тоже интерестно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 16:07 |
|
||
|
помогите новичку. Удаление помеченных значений в списке значений
|
|||
|---|---|---|---|
|
#18+
ну и... после первого раза у тебя заново формируется тот список что на форме но без пометок уже и соответственно при повторном нажатии кнопки "удалить" одаляется уже весь список т.к. там нет ни одного отмеченного элемента если хочешь чтоб галочки автоматом проставлялись у тех что не надо удалить то после _списСотрудников.ДобавитьЗначение(списоксотрудников.ПолучитьЗначение(н)); надо еще и пометку добавляемому элементу присвоить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2010, 16:10 |
|
||
|
|

start [/forum/topic.php?fid=28&msg=36534792&tid=1522566]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 353ms |

| 0 / 0 |
