Имя: Пароль:
1C
1C 7.7
v7: Как программно изменить количество в ТЧ?
0 Kaukass
 
18.07.15
12:50
Читаю описание встроенного языка для 77, но ни как не разберусь, каким образом программно изменить количество в ТЧ.
Пытаюсь так, но происходит ничего:

Процедура НайтиНоменклатуруВТЧ()
    Товар = Получитьноменклатуру(пвПоиск); пвПоиск = "";
    НомСтр = 0;
    ТЗ = СоздатьОбъект("ТаблицаЗначений");
    ВыгрузитьтабличнуюЧасть(ТЗ, "Номенклатура" );
    ТЗ.НайтиЗначение(Товар, НомСтр, "Номенклатура")  ;

    АктивизироватьСтроку(НомСтр);
         ПолучитьСтроку();
         количество = количество +1;
    
КонецПроцедуры
1 Duke1C
 
18.07.15
14:32
ПолучитьСтрокуПоНомеру(НомСтр)
2 zak555
 
18.07.15
14:40
в какой момент надо изменить ?
3 Злопчинский
 
18.07.15
14:40
Код - кривой.
вы уверены, что
Товар = Получитьноменклатуру(пвПоиск);
всегда в Товар будет товар, ИМЕЮЩИЙСЯ в табличной части документа?
4 Duke1C
 
18.07.15
14:59
+1 вместо ПолучитьСтроку();
5 Kaukass
 
19.07.15
10:38
(3) Отлучался в степь бухать и купаться.
Не уверен и этот момент надо тоже  учитывать.
6 xXeNoNx
 
19.07.15
10:48
Я думал что можно вот так:
УстановитьЗначение(Строка,Колонка,Значение)
7 xXeNoNx
 
19.07.15
10:49
(2) Ето 7.7!
8 HawkEye
 
19.07.15
11:25
(0) надо так:
ТЗ = СоздатьОбъект("ТаблицаЗначений");
ВыгрузитьтабличнуюЧасть(ТЗ);
НомСтр = 0;
Если ТЗ.НайтиЗначение(Товар, НомСтр, "Номенклатура") = 1 Тогда
//нашли
ТекКол = ТЗ.ПолучитьЗначение(НомСтр, "Количество");
Тз.установитьЗначение(НомСтр,"Количество", ТекКол + 1);
Иначе
//не нашли, тут сам думай что писать
КонецЕсли;
ЗагрузитьТабличнуюЧасть(ТЗ);

по поводу Товар - это должен быть элемент справочника Номенклатура, как ты там его ищешь - я не знаю...
9 Kaukass
 
19.07.15
11:56
Благодарю за помощь, братцы.
Независимо от того, куда вы едете — это в гору и против ветра!