#0
by Crush
Как методологически правильнее получать номер строки при переборе Для Каждого? варианты: 1) сч=сч+1 При подсчете процента выполнения. От куда лучше брать общее количество строк? 1) из переменной КолСтрок = тз.Количество, определенной перед циклом Переменные сч и КолСтрок более нигде не используются
#9
by hhhh
да это два разных варианта: для правильнее через "к", а если Для Каждого ТекСтрока Из ТЗ, то вариант тз.Индекс(текСтрока) рулит.
#11
by hhhh
товарищ из спрашивает "Как методологически правильнее". Понятно, что чуть помедленнее. Да там со счетчиками вероятность ошибиться больше. А тут есть строка, тупо берем ее индекс.
#12
by Mnemonic1C
Смотря что делать с этой таблицей. Если например удалять строки по условию(ям), то не подойдет ни один из описаных алгоритмов.
#14
by Crush
На консультации к экзамену на спеца говорилось, что не нужно лишний раз инициализировать переменные. Сам склоняюсь к тз.Индекс(текСтрока), но сколько операций выполняется процессором для получения индекса? Когда достаточно обратиться к области памяти, прочитать, добавить, записать - в случае с сч++. Так же и с количеством строк. Если через метод таблицы, то явно больше(имхо) операций, чем через переменную. Собственно вопрос касается случая, когда в процессе перебора строк нужно ориентироваться в каком месте находишься: будь то процент выполнения или решаешь ставить запятую после последнего значения или нет.
#15
by Reset
"что не нужно лишний раз инициализировать переменные" Это правильно. Вопрос в том, какой случай считать лишним. Имхо, когда заведение переменной приводит к увеличению быстродействия, переменная не лишняя.
#16
by Reset
<--- еще укажу мем "Имхо". Мнение может несовпадать с мнением экзаменаторов на спеца:) Да даже тут в ветке есть другое
#17
by Reset
в частном случае с запятой имхо проще ставить всегда(избавившись от проверок в цикле), а потом лишнюю один раз отрезать :)
#18
by Crush
Хе, согласен! А если перед предпоследним значением союз "и" надо влепить?:) Собственно это и подтолкнуло к вопросу.
#25
by Reset
Вполне возможно, не задавался. Можно проверить. Для каждого то же наверянка по индексу перебирает, но "внутри", соотв. может быстрее
#29
by Reset
Если строки могут удалиться, "Для каждого" вообще противопоказан :) А в "Для" счетчик уже есть
#30
by hhhh
так он собъется, если строки удалять. Проверено, ТЗ.Количество вычисляется ровно один раз, в начале.
#31
by Reset
По крайней мере иногда можно построить так, чтобы не сбился. "Для каждого" вообще "не управляемый".
#33
by Axel2009
если строки удалять то смысла в увеличении счетчика нет никакого. выйдет за рамки массива
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Сканер штрихкодов подключен, но поиск и подбор по штрикоду не работает.
- отказ создания строки тч при загрузке с помощью КД
- БП 2.0 Транспортный налог
- Закупочная цена в УТ 10.3
- Как запретить ручной выбор дисконтной карты?
- УТ 11 Как записать дополнительный реквизит в номенклатуру
- УФ Как правильно сделать - открыть форму перед открытием другой?
- СКД: Раскрасить чересстрочно строки, запретить изменение заголовка отчета.
- БСП и работа в модели сервиса
- v8: Как дополнить движения документа Операция методом ЗаполнитьЗначенияСвойств?
- v7: ИсходнаяТаблица не работает в ОткрытьФорму
- Можно ли обновляться по ИТС только два раза в год?
- postgresql смена владельца всех объектов
- Как определить основной реквизит управляемой формы
- присваивать инвентарные номера для инвентаря числящегося на счете МЦ.04
- v8: В терминале модальное окно открывается иногда где-то сзади
- УТ11 (11.0.9.14) Индивидуальные соглашения с клиентами печать?
- Обработка с Инфостарта
- Реализация, Корректировки, и Первичная СФ
- Отражение з/п в рег. учете, УСН