Помогите со списком значений

Тема в разделе "1C и всё что с ней связано", создана пользователем -, 1 апр 2009.

  1. Гость

    Здравствуйте все!
    У меня такая проблема: Есть список значений "СписокЦен"
    Надо создать условие, чтобы значения типов цен из таблицы значений проверялись бы на принадлежность
    списку значений "СписокЦен", наличию галочек в "СписокЦен" и обработка бы работала только с теми типами цен, которые отмечены "галочкой".
    СписокЦен заполняется в другой процедуре.

    Процедура Изменить()
    ДатаИзм = РабочаяДата();
    ВвестиДату(ДатаИзм,"Дата изменения цены");
    Т.ВыбратьСтроки();
    Для Б = 1 По Т.КоличествоСтрок() Цикл
    Если Лев(Т.ПолучитьЗначение(Б,"Наим"),3) = "---" Тогда
    Для А=5 По Т.КоличествоКолонок() Цикл
    Зн = Т.ПолучитьЗначение(Б, А);
    НомЭл = (А - 5)/2+2;
    Цены.ИспользоватьВладельца(Т.ПолучитьЗначение(Б, "Товар"));
    Если ТипыЦен.НайтиПоКоду(?(НомЭл>9,"000"+НомЭл,"0000"+НомЭл)) = 1 Тогда
    Если Цены.НайтиПоРеквизиту("ТипЦен",ТипыЦен.ТекущийЭлемент(),0) = 1 Тогда
    Если Зн <> Цены.Цена.Получить(ДатаИзм) Тогда
    Цены.Цена.Установить(ДатаИзм,Зн);
    Цены.Записать();
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    А = А + 1;
    КонецЦикла;
    КонецЕсли;
    КонецЦикла;

    КонецПроцедуры
     
  2. KiR

    KiR НЕ шибка опытный програмер)
    1C Team

    Регистрация:
    11 сен 2007
    Сообщения:
    1.581
    Симпатии:
    0
    А что мешает написать такую проверку? Искать в списке конкретное значение можно НайтиЗначение. Т.е. что-то типа
    Код (Text):
    Если СписокЦен.НайтиЗначение(<Значение>) <>0 Тогда
    //обрабатываем значение
    КонецЕсли;
     
  3. Гость


    Проблема указать значение в скобках и куда это условие вставить. Экспериментировал - никак не работает... Не могу сообразить...

    Проблема указать значение в скобках и куда это условие вставить. Экспериментировал - никак не работает... Не могу сообразить...

    В данный момент обработка работает со всеми типами цен, пытался ставитьусловие и перестали запоминаться все изменения
    делал типа
    Если СписокЦен.НайтиЗначение(ТипыЦен.ТекущийЭлемент()) =1 Тогда
    //обрабатываем значение
    КонецЕсли;
    не работает..
     
  4. KiR

    KiR НЕ шибка опытный програмер)
    1C Team

    Регистрация:
    11 сен 2007
    Сообщения:
    1.581
    Симпатии:
    0
    А что именно не работает? Отладчиком вообще-то можно посмотреть значение, которое принимает ТипыЦен.ТекущийЭлемент() а вместо //обрабатываем значение - написать что нужно делать если условие выполняется. к примеру Сообщить(ТипыЦен.ТекущийЭлемент() + "Есть в списке");
     
  5. SeverBap

    SeverBap Well-Known Member

    Регистрация:
    18 сен 2007
    Сообщения:
    440
    Симпатии:
    0
    KiR реально предложил, а то как мой как намудрид программер самому не понятно и другим не понять (что сейчас и у тебя), посмотри ТипЗначенияСтр что у тебя там в списке и вперед!
    :) у тебя ничего не понять в коде что ты там делаешь!
     
Загрузка...

Поделиться этой страницей