#0
by NDIS HH
СписокТоваров - 3000 элементов. На 3000 циклов 2 раза: "ДопШтрихкод = СписокШтрихкодов.ПолучитьЗначение(Сч1) - Индекс не входит в границы списка значений". Как найти ошибку? Как сделать остановку отладчика по ошибке? Что происходит в момент такой ошибки? - то же что при Продолжить?
#2
by Злопчинский
. . Возникает вопрос: что имел в виду автор, оформялля внешний цикл, если "позиция" внешнего цикла нигде внутри цикла не используется...? или я что-то не понял..?
#3
by Злопчинский
странно... размер списка = 1, почему-то не обрабатывается... чем список с одним элементом отличается от списка с ЭН элементами..? ну да ладно - может для ЭН=1 список вообще отсутсвует...
#4
by Злопчинский
все очень просто - возможно (..что имел в виду автор, оформляя..) что СписокШтрихкодов - получен до внешнего цикла один раз... и успешно прошел внутри 2998 раз, а 2 раза вывалился.. потому что список СписокШтрихкодов нигде не меняется в соотв. с внешним циклом...?
#6
by rphosts
да в обоих случаях, если в списке всего 1 элемент - код из не отраотает... стоит ещё код который модифицирует или список или pyfxtybt переменной РазмСпПодчШК ТС, будь мужиком! Или сделай контрольный вывод перед снутренним циклом: или посмотри на них в отладчике
#9
by NDIS HH
ПолучитьЗначение первый параметр - номер позиции в списке. Изменяется от 1 до РазмерСписка. То есть проблема не в этом.
#10
by NDIS HH
ПолучитьЗначение(<?>,) Синтаксис: ПолучитьЗначение(<Позиция>,<Строка>) Назначение: Получить значение из указанной позиции списка. Возвращает значение из списка. Параметры: <Позиция> - номер позиции в списке, из которой возвращается значение (изменяется от 1 до РазмерСписка);
#11
by NDIS HH
rphost, вы глубоко правы. Щас буду разбираться по вашей методике. =) Сообщить("чего-нибудь"); И вот когда это условие не отработало а ошибка осталась - я запаниковал.
#17
by PALESIA
Ниже приведен "более скоростной" аналог твоего кода, вот только на кой он такой нужен - ХЗ:
#18
by NDIS HH
Если переменная РазмСпПодчШК < 2, то фрагмент на котором возникает ошибка вообще не отрабатывается - вместо этого начинается следующее повторение цикла. А моя проблема была в следующем Пока СписокТоваров.ПолучитьСтроку = 1 Цикл Переменная РазмСпПодчШК изменяется только если выполнено условие, но размер СписокШтрихкодов изменяется вне зависимости от условий на каждом витке. Таким образом если на текущем витке условие ни разу не сработало - то значение РазмСпПодчШК осталось от предыдущего витка. Сам себя премудрил - постеснялся выкладывать всю процедуру.
#19
by NDIS HH
(Вообще это "доработка" обработки выгрузки в фронт-офис Штрих-М, с целью выгрузки не одного, а всех штрих-кодов подчиненных элементу номенклатуры.)
#20
by Злопчинский
товарищ NDIS HH! ты понимаешь что включать какой-то код внутрь цикла и в этом коде никак не использовать данные самого цикла - это как-то сомнительно? . тебе понятно, что в твоем коде в можно безо всякого ущерба выкинуть последнюю и первую строки - и от этого результат исполнения кода практически никак не измениятся - он выполнится всего один раз, вместо того, чтобы СОВЕРШЕННО ОДИНАКОВО выполниться N раз..? . или я чего-то не понимаю?
#21
by NDIS HH
Злопчинский, это же отрывок. Функция ЗагрузитьТовары(Объект, НомСекции, НомерККМ, КаталогОбмена, СписокТоваров)
#22
by Torquader
В УТ-шке я эту "кучу" копал, но там было интереснее, если штрих-код один, то получали значение, если несколько - то список. Соответственно, выгружались и штрих-коды и единицы. Но засада там в том, что если действительно есть единицы с другим количеством, то нужно их штрих-коды не перепутать - иначе потом "умная" программа запрашивает выбор из одинаковых штрих-кодов. P.S. а самое интересное там начинается с весовыми штрих-кодами, когда нужно выгрузить данные в весы и терминал, чтобы они друг-друга понимали.
#23
by Злопчинский
это тебя не спасает . от строчки заголовка цикла . . до блока кода внутри этого цикла . . нет ни одного определения переменных этого блока в связи с переменной/заголовком цикла... этот код может быть безболезненно вынесен наверх, перед заголовком цикла
#24
by Злопчинский
у меня стойкая уверенность что требуемую задачу при тех исходных данных которе есть в параметрах процедуры у ТС - можно решить гораздо проще по коду...
#25
by NDIS HH
Злопчинский, >нет ни одного определения переменных этого блока в связи с переменной/заголовком цикла... Таким образом Спр.НайтиПоКоду(СписокТоваров.Код, 0) определяет текущий элемент справочника Номенклатура, чтобы можно было получить отсутствующие в таблице значений СписокТоваров реквизиты. Вы об этом? Что касается оптимизации, то я додумался только сделать все подчиненные товару штрих-коды реквизитами справочника Номенклатура. Вполне допускаю возможность более изящного решения - у меня пока мало опыта.
#26
by NDIS HH
Если КодДляСравнения = Спр.Код Тогда Вот Спр.Код меняется на каждом витке "большого" цикла. Пока СписокТоваров.ПолучитьСтроку = 1 Цикл
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Индекс не входит в границы списка значений
- Индекс не входит в границы списка значений
- v7: v7 : НДС при возврате
- v7: Что нужно чтоб подключить ККМ Меркурий 112F к 1с V7 Торговля + склад
- v7: v7.7 премещение элемента справочника
- v7: v8: v7: Кто-нибудь сумел скачать комплект отчетности за I квартал 2007 года
- v7: Индекс не входит в границы списка значений
- v7: Отображения списка значений v7
- v7: 1С V7.7 в сети
- v7: 1C:V7 starter program (for SQL) - обнаружена ошибка
- v7: Как узнать владельца формы списка справочника, в модуле этой формы списка
- v7: Перенос данных Бухгалтерия из v7 в v8
В этой группе 1С
- БП8 Корректировка поступления в меньшую сторону - зависает отр.сальдо на счБУ 19
- Подсветить нужную строку в табличном поле УФ
- УФ: скрыть стандартные команды окна
- (ЗУП) программное добавление контактной информации в физ.лицо - всегда неВРФ
- Как в скд выставить период, на месяц раньше текущего?
- Ошибка при вызове метода контекста (Заблокировать)...
- Вернуть размер управляемой формы (скрыть реквизиты под кат)
- УТ11. Проблема с обновлением
- Группировка в Экселе в цикле
- IIS + кластер 1С (2 сервера) + Windows авторизация - проблемы
- Как установить параметры сеанса массива ?
- СКД, вычисляемые поля.
- 1С 8.1 Ошибка РИБ
- Сторно поступления товаров и услуг в УПП
- Кто за деньги может помочь с выгрузкой из Store House от UCS в 1С Общепит
- Отчет на СКД. если делаешь отбор неправильно, без отбора правильно. как быть?
- УТ 11: в каком модуле посмотреть, как формируются движения по регистрам накоплен
- БП 3 - Документ Поступление на расчетный счет - поле СуммаУслуг
- Меняется период при записи движений регистра бухгалтерии
- Учет возвратной тары БП 2.0