Имя: Пароль:
1C
 
как получить реквизит строки на форме
, , ,
0 Krasotka
 
09.08.22
11:02
В самодельном документе есть ТЧ, в реквизите тч есть количество, остатка нет. Но остаток есть на форме тч. Как обратиться к остатку, который есть на форме тч при событии при изменении строки?
1 oslokot
 
09.08.22
11:05
реквизит формы добавлен в ТЧ? Тогда как обычно Элементы.ТекущиеДанные.Остаток
2 Krasotka
 
09.08.22
11:08
(1) в текущих данных нет этого реквизита
3 Krasotka
 
09.08.22
11:11
ЭлементыФормы.Товары.Колонки.Остаток1 - поле есть, но там все пусто по данным. В текущих данных поля нет.
4 dmt
 
09.08.22
11:13
(3) в свойстве поля (колонки) ПутьКДанным что стоит?
5 Krasotka
 
09.08.22
11:16
(4)
пусто
6 oslokot
 
09.08.22
11:17
обычные формы чтоль?
7 Krasotka
 
09.08.22
11:18
да обычная, ут 10
8 oslokot
 
09.08.22
11:19
посмотри тогда что там в оформлениях строк при получении данных
9 Krasotka
 
09.08.22
11:27
(8)
как туда попасть? как сослаться?
10 oslokot
 
09.08.22
11:33
Для этого в ТЧ есть события ПриПолучениДанных и ПриВыводеСтроки
11 Krasotka
 
09.08.22
11:43
(10)
при получении данных есть такой код, устанавливающий остаток, но мне надо сослаться при изменении строки

    Для Каждого Офо Из ОформленияСтрок Цикл
        Стр = Т.Найти(Офо.ДанныеСтроки.Номенклатура, "Номенклатура");
        
        СвОстаток = 0;
        
        Если Стр <> Неопределено Тогда
            Офо.Ячейки.Остаток1.УстановитьТекст(Формат(Стр.Остаток1));
12 dmt
 
09.08.22
11:50
>Стр = Т.Найти(Офо.ДанныеСтроки.Номенклатура, "Номенклатура");

остатки лежат в таблице Т, вот оттуда и надо брать.
13 Krasotka
 
09.08.22
11:53
(12)
эта таблица Т формируется в событии при получении данных, а мне надо при изменении строки эти данные получить
14 oslokot
 
09.08.22
11:58
при активизации строки должен срабатывать приполученииданных или привыводе, оттуда и бери, у тебя все же есть
15 Kassern
 
09.08.22
11:58
Пробую вангануть ТС. У нее есть реквизит формы (скорее всего надпись), где отображается остаток номенклатуры по выделенной строке. И вот теперь ТС думает, а как же к нему обратиться при работе с реквизитом Количество в строке ТЧ (скорее всего, чтобы в минус не давать списывать). Может ругалку/запрет какую просят от ТС.
16 oslokot
 
09.08.22
11:58
у тя в оформлении ячейки все уже лежит
17 Kassern
 
09.08.22
12:00
(15) а блин, понял, у нее ОФ и ячейка без привязки к объекту с остатком судя по (11) Ей нужно всего лишь обратиться к этой ячейке и прочитать текст.
18 Kassern
 
09.08.22
12:01
только вот зачем это все, когда можно при проведении этого документа ругнуться на нехватку остатков, если в этом основной смысл топика?
19 Krasotka
 
09.08.22
12:02
(17)
да, но как это сделать ПриИзмененииСтроки, мне не надо в при выводе строки обращаться?
20 Kassern
 
09.08.22
12:04
(19) Давно с ОФ не работал, там что-нить попробовать из ЭлементыФормы.ТЧ.ТекущаяСтрока посмотреть, или как-то так
21 Krasotka
 
09.08.22
12:05
Процедура ТоварыКоличествоЗаказаноПриИзменении(Элемент)
    
    СтрокаТабличнойЧасти = ЭлементыФормы.Товары.ТекущиеДанные;

Вот нужная процедура, там получается строка, но как мне после нее сделать остаток=.... Как прописать... ?
22 Kassern
 
09.08.22
12:06
(21) блин вы остаток хотите обновить?)
23 oslokot
 
09.08.22
12:07
вроде ей надо получить остаток. Хм, тоже не помню ОФ. Как то надо до оформления дотянуться
24 Kassern
 
09.08.22
12:08
(21) так у вас же вызовется событие "при получении данных" при изменении строки и там уже и обновится остаток
25 Krasotka
 
09.08.22
12:15
(24)
Мне в "Процедура ТоварыКоличествоЗаказаноПриИзменении(Элемент)" нужно остаток получить, а не "при получении данных"
26 Kassern
 
09.08.22
12:15
(25) так вам получить остаток надо, или изменить поле с остатком?
27 Krasotka
 
09.08.22
12:16
(26)
получить
28 Kassern
 
09.08.22
12:19
(27) а вот тут пишите, что изменить "от нужная процедура, там получается строка, но как мне после нее сделать остаток=.... " (21)
В отладчике гляньте ЭлементыФормы.Товары.ТекущаяСтрока Будет там ваше поле с остатком?
29 Krasotka
 
09.08.22
12:25
(28)
нет, остатка нет. Остаток есть только в "колонки", но там пусто, чисто оформление, без текста
30 dmt
 
09.08.22
12:37
(13) придется повторить этот алгоритм поиска остатков, если действительно все так устроено. Либо переименовать эту Т и сделать переменной модуля ) не полагаясь на то, что автор, этот гений экономии, только в одном месте использовал это короткое имя
31 Kassern
 
09.08.22
12:38
(29) Конечно там будет пусто, это свойство самой колонки. Вот вам вариант...
ЭлементыФормы.Товары.ОформлениеСтроки(ЭлементыФормы.Товары.ТекущаяСтрока).Ячейки.Остаток.Текст