Имя: Пароль:
1C
1C 7.7
v7: Периодический реквизит - перечисление, что не так с выводом?
0 palpetrovich
 
18.02.14
16:18
ИсторияСтавокСтр = "";
            Ставки = СоздатьОбъект("Периодический");
            Ставки.ИспользоватьОбъект("СтавкаНДС",Товар);
            Ставки.ВыбратьЗначения(ДатНач, ДатаКон);
            Пока Ставки.ПолучитьЗначение() = 1 Цикл
                ИсторияСтавокСтр = ИсторияСтавокСтр + Строка(Ставки.ДатаЗнач) + "-" + Строка(Ставки.Значение)+ "  ";
            КонецЦикла;
зы: ничего не выводит :(
1 ДенисЧ
 
18.02.14
16:19
а где сообщиьт()?
За указанный период есть изменения?
2 palpetrovich
 
18.02.14
16:22
(1) изменения есть, это выводится в таблицу
может ЗначениеНаДату использовать надо?
3 palpetrovich
 
18.02.14
16:24
+1 да, катит
4 palpetrovich
 
18.02.14
16:24
*
            Ставки = СоздатьОбъект("Периодический");
            Ставки.ИспользоватьОбъект("СтавкаНДС",Товар);
            Для ТекДатаСтавки=ДатНач По ДатаКон Цикл
                ИсторияСтавокСтр = ИсторияСтавокСтр + Строка(ТекДатаСтавки) + "-" + Строка(Ставки.ЗначениеНаДату(ТекДатаСтавки))+ "  ";
            КонецЦикла;
5 Torquader
 
18.02.14
16:26
А слабо выбрать моменты изменения значения ?
6 eRik
 
18.02.14
16:42
"ДатНач" так и должно быть? не ДатаНач?
Товар.ТекущийЭлемент() ?
первый вариант, без перебора дат был лучше
7 Torquader
 
18.02.14
17:19
Ставки = СоздатьОбъект("Периодический");
Ставки.ИспользоватьОбъект("СтавкаНДС",Товар);
Если Ставки.ВыбратьЗначения(НачДата,КонДата)=1 Тогда
Пока Ставки.ПолучитьЗначение()=1 Цикл
  Сообщить("Ставка на "+Строка(Ставка.ДатаЗнач)+" => "+Строка(Ставка.Значение));
КонецЦикла;
КонецЕсли;
8 Torquader
 
18.02.14
17:20
(6) Товар.ТекущийЭлемент() должно быть, если товар получен через создать объект
(например)
Товар=СоздатьОбъект("Справочник.Номенклатура");
Товар.НайтиПоКоду("0001");