Имя: Пароль:
1C
1С v8
Продолжение, после программного заполнения ТЧ документа, надо его обновить с нов. данными
0 SkillUp
 
19.06.18
08:55
Код:

        НашОбъект = Выборка[0].ссылка.ПолучитьОбъект();
        НашОбъект.Наименование = Наимаенование;
        НашОбъект.Расписание   = Расписание;
        //Заполнение табличных частей.
        НашОбъект.ТЧ.Очистить();
        СтрокаТабличнойЧасти = НашОбъект.ТЧ.Добавить();
        Для Счетчик = 1 По 12 Цикл
             НашОбъект.ТЧ.Добавить();
        КонецЦикла;    
        НашОбъект.ТЧ.ЗагрузитьКолонку(Расписание.Месяцы,"Месяцы");
        НашОбъект.ТЧ.ЗагрузитьКолонку(Расписание.ДниНедели,"ДниНедели");
        СтрокаТабличнойЧасти.ДеньВМесяце = Расписание.ДеньВМесяце;        
        НашОбъект.Записать();

Не мой сегодня день ,увы... ((
1 SkillUp
 
19.06.18
08:56
После программного заполнения, ТЧ со страыми данными, как обновить документ?
2 _Дайвер_
 
19.06.18
08:59
Прочитать()
3 SkillUp
 
19.06.18
09:02
(2) НашОбъект.Прочитать() Так?
4 SkillUp
 
19.06.18
09:03
Или надо форму получить?
5 SkillUp
 
19.06.18
09:03
То просто, уже столько всего перепробовал...
6 alkorolev
 
19.06.18
09:04
ЗначениеВРеквизитФормы(ДокументОбъект, "Объект")
7 alkorolev
 
19.06.18
09:05
Прочитать() перечитает существующий объект БД. Не учтет внесенные незаписанные изменения
8 SkillUp
 
19.06.18
09:06
(7) Ура! хоть один человек со здр....
9 SkillUp
 
19.06.18
09:06
мыслями...
10 SkillUp
 
19.06.18
09:06
Прочитать() -не работает, этот метод! Как быть?
11 _Дайвер_
 
19.06.18
09:07
(7) У него после заполнения запись идет, так что пойдет
(8) ФЙорму нужно прочитать, СП в помощь
12 SkillUp
 
19.06.18
09:08
Есть еще варианты?
13 SkillUp
 
19.06.18
09:08
(11) Хорошо, я стобой соглашусь, если пример напишешь и он заработает!
14 SkillUp
 
19.06.18
09:09
(11) И я буду внимательней читать СП!
15 _Дайвер_
 
19.06.18
09:09
(13) Можешь не соглашаться, читай СП
16 alkorolev
 
19.06.18
09:10
(10) еще раз выше прочитай
ЗначениеВРеквизитФормы(ДокументОбъект, "Объект")
17 SkillUp
 
19.06.18
09:11
(15)
НашОбъект.Записать();
НашОбъект.Прочитать();

ситуация не меняется!!!
18 SkillUp
 
19.06.18
09:12
(16) Сейчас попробую...
19 alkorolev
 
19.06.18
09:12
не записывай ты объект! у тебя расхождения в версиях тогда будут
20 SkillUp
 
19.06.18
09:14
(19) ОК.
21 hhhh
 
19.06.18
09:15
(18) ты не туда запись зафигачил. вот это свое

  НашОбъект = Выборка[0].ссылка.ПолучитьОбъект();

выкинь. Работай прямо на форме, заполняй табличную часть. Тогда и записывать не надо, и перечитывать тем более.
22 _Дайвер_
 
19.06.18
09:17
(21) Он программно меняет данные, перечитать нужно будет, иначе не обновиться форма его.
(19)ЭтаФорма.Прочитать();
23 SkillUp
 
19.06.18
09:17
(21) Я из другой формы получаю документ, заполняю ТЧ программно. Пока не могу понять, как выкинуть...
24 SkillUp
 
19.06.18
09:22
(22) Короче надо форму обекта получить, правильно?
потом.
Форма.Прочитать();
25 _Дайвер_
 
19.06.18
09:23
(24)Вот тебе пример:
&НаСервереБезКонтекста
Процедура ДатьСкидкуВыполнитьНаСервере(Ссылка)

    Объект = Ссылка.ПолучитьОбъект();
    НоваяСтрока = Объект.ТМЦ.Добавить();
    НоваяСтрока.Цена = 100;
    Объект.Записать();

КонецПроцедуры

&НаКлиенте
Процедура ДатьСкидкуВыполнить()
    
    ДатьСкидкуВыполнитьНаСервере(Объект.Ссылка);
    ЭтаФорма.Прочитать();

КонецПроцедуры
26 SkillUp
 
19.06.18
09:26
(25) Заработало!!! Спасибо!
27 SkillUp
 
19.06.18
09:29
(25) Ты мой боххххх!!!!!!! )))
28 Мимохожий Однако
 
19.06.18
09:40
(27) Твой бог СП, если чё
29 SleepyHead
 
гуру
19.06.18
10:08
Читать в ТЗ. Потом Объект.ИмяТЧ.Загрузить(ТЗ)
Закон Брукера: Даже маленькая практика стоит большой теории.