Имя: Пароль:
1C
 
Внешняя обработка заполнения для Док требование накладная БП3 релиз последний
0 sqr4
 
21.12.14
18:01
Делая внешнюю обработку с вызовом формы
По нажатию кнопку должны происходить изменения они происходят но не полностью.
Код процедуры
    ПолучитьДанныеОП();
    Если Объект.СчетаУчета.Количество()=0 Тогда
        Сообщить("Не выбраны счета учёта ТМЦ!", СтатусСообщения.ОченьВажное);
        Возврат;
    КонецЕсли;
    ОбВладелец = ВладелецФормы.Объект;
    ИмяТабличнойЧасти = ПолучитьИмяТабличнойЧасти(Объект.СсылкаНаОбъект);
    ТабличнаяЧасть=ОбВладелец[ИмяТабличнойЧасти];
    Если ТабличнаяЧасть.Количество() > 0 Тогда
        Ответ = Вопрос("При заполнении табличная часть """ + ИмяТабличнойЧасти + """ будет очищена.
        |Продолжить?", РежимДиалогаВопрос.ДаНет,, КодВозвратаДиалога.Нет);
        Если Не Ответ = КодВозвратаДиалога.Да Тогда
            Возврат;
        КонецЕсли;
    КонецЕсли;        
    ТабличнаяЧасть.Очистить();
    ДанныеСтрокиТаблицы = Новый Структура(
        "Номенклатура, ЕдиницаИзмерения, Коэффициент, Количество,
        |Счет, ОтражениеВУСН, СпособУчетаНДС,
        |НомерГТД, СтранаПроисхождения,
        |НоменклатурнаяГруппа, СчетЗатрат, СтатьяЗатрат, ПодразделениеЗатрат,
        |ПодразделениеЗатратДоступность, НоменклатурнаяГруппаВыделятьНезаполненное");
    ДанныеОбъекта = Новый Структура("Дата, Организация, Склад, ПодразделениеОрганизации, СчетаУчетаЗатратВТаблице");
    ЗаполнитьЗначенияСвойств(ДанныеОбъекта,ОбВладелец);
    МассивДляЗаполения = ВыполнитьКомандуСерв(ОбВладелец,ИмяТабличнойЧасти);
    Для Каждого ТекСтр из МассивДляЗаполения Цикл
        НоваяСтрока = ТабличнаяЧасть.Добавить();
        ЗаполнитьЗначенияСвойств(НоваяСтрока, ТекСтр);
        ЗаполнитьЗначенияСвойств(ДанныеСтрокиТаблицы, ТекСтр);
        СведенияОНоменклатуре =  ПолучитьСведенияОНоменклатуре(ДанныеСтрокиТаблицы, ДанныеОбъекта);
        НоваяСтрока.НомерГТД = СведенияОНоменклатуре.НомерГТД;
        НоваяСтрока.СтранаПроисхождения = СведенияОНоменклатуре.СтранаПроисхождения;
    КонецЦикла;
    ЗаполнитьЗначенияСвойств(ОбВладелец, ДанныеСтрокиТаблицы);
    Сообщить(Строка(Объект.СчетЗатрат)+"..."+Строка(ОбВладелец.СчетЗатрат));
    ОбВладелец.Склад = ПустСклад();
    ВладелецФормы.ОбновитьОтображениеДанных();

Табличная часть материалы модифицируется. А вот все что ее не касается а именно "Счет затрат" нет, почему не могу понять, прошу вашей помощи
1 sqr4
 
21.12.14
23:15
Кому интересно, дело вот в этой строчке   ОбВладелец = ВладелецФормы.Объект; Она работает немного не так как я ожидал и нужно юзать КопироватьДанныеФормы()