Имя: Пароль:
1C
 
Заполнение табличной части Документа.
, , , , , ,
0 Novi4ek2015
 
06.03.15
15:29
Добрый День!1с 8.2 УТ 10.3.
При нажатии на кнопку в документе Должен открываться документ Корректировка Задолженности:Перенос Задолженности, и заполняться автоматически данными из документа на котором кнопка. Открывается КОрректировка Задолженности:ПереносЗадолженности. Шапка заполняется, но табличное поле пустое. А если открыть Корректировку задолженности, через вид операции, то там заполненно. Как сделать,чтобы заполнялось табличное поле именно в Документе КорретировкеЗадолженности, вид Операции:ПереносЗадолженности.
Если Работы.Количество()>0 Тогда
        ЭтоНовыйДок = Истина;
ДокументКорректировкаДолгаСсылка =  НайтиДокументВСписке("КорректировкаДолга");
Если ДокументКорректировкаДолгаСсылка="" Тогда
ДокументКорректировкаДолга = Документы.КорректировкаДолга.СоздатьДокумент();    
ДокументКорректировкаДолга.ВидОперации =Перечисления.ВидыОперацийКорректировкаДолга.ПереносЗадолженности;
ДокументКорректировкаДолга.Организация = Организация;
ДокументКорректировкаДолга.Дата = ТекущаяДата();
ДокументКорректировкаДолга.УстановитьНовыйНомер();
  
//Реквизиты Шапки
                
                ДокументКорректировкаДолга.КонтрагентДебитор   = Контрагент;
                ДокументКорректировкаДолга.КонтрагентКредитор =   Справочники.Контрагенты.НайтиПоНаименованию("БЛАУНТ");
                ДокументКорректировкаДолга.ДоговорКонтрагента   = ДоговорКонтрагента;
                ДокументКорректировкаДолга.ВалютаДокумента = Справочники.Валюты.НайтиПоНаименованию("руб");
                ДокументКорректировкаДолга.ОтражатьВБухгалтерскомУчете = Истина;
                ДокументКорректировкаДолга.ОтражатьВНалоговомУчете = Истина;
                ДокументКорректировкаДолга.ОтражатьВУправленческомУчете = Истина;
    Иначе
                ДокументКорректировкаДолга =  ДокументКорректировкаДолгаСсылка.ПолучитьОбъект();   ЭтоНовыйДок=Ложь;
                ДокументКорректировкаДолга.Дата             = ТекущаяДата();

        КонецЕсли;

        Для каждого СтрокаТЧ Из Работы  Цикл
                СтрокаДокументаКорректировкаДолгаВидОперации = ДокументКорректировкаДолга.СуммыДолга.Добавить();
        
                СтрокаДокументаКорректировкаДолгаВидОперации.ДоговорКонтрагента         = ДоговорКонтрагента;

                СтрокаДокументаКорректировкаДолгаВидОперации.Сумма           =СтрокаТЧ.Цена;
        КонецЦикла;
        

      ДокументКорректировкаДолга.Записать();
        ДокументКорректировкаДолга.ПолучитьФорму().Открыть();


   КонецЕсли;
    КонецЕсли;
1 Novi4ek2015
 
06.03.15
16:05
Нужна помощь....
2 D_E_S_131
 
06.03.15
16:12
Вот интересно, почему многим не судьба писать в коде

Если Работы.Количество() = 0 Тогда
   Возврат;
КонецЕсли;


А обязательно надо эти вложенности плодить?
3 Novi4ek2015
 
06.03.15
16:13
Просто надо чтобы сразу сразу открывался документ Перенос заолженности
4 Ёпрст
 
06.03.15
16:13
(2) возможно, разработчик думал о ветке ИначеЕсли или Иначе..потом
5 D_E_S_131
 
06.03.15
16:15
(4) Есть в этом сильное сомнение. Даже из логики понятно, что списывают с покупателя долг за работы.
6 Novi4ek2015
 
06.03.15
16:18
ДА, происходит списание долга.
7 Novi4ek2015
 
06.03.15
16:23
И как сделать, чтобы заполнилась табличная часть В Переносе Задолженности?
8 anatoly
 
06.03.15
16:24
позвать программиста не предлагать?
9 Novi4ek2015
 
06.03.15
16:26
Спасибо, за помощь.Думаю за этим сюда и пишут!!!!
10 anatoly
 
06.03.15
16:29
ты вопрос формулируй корректно для начала.

А если открыть Корректировку задолженности, через вид операции, то там заполненно.

вот это как понимать??
11 Novi4ek2015
 
06.03.15
16:34
При нажатии на кнопку открывается: Корректировка задолженности:Перенос Задолженности, но табличная часть не заполнена(договор, цена и т.д.).А заполняется Корректировка Задолженности, которая стоит по умолчаению: Проведение Взаиморасчета.
12 D_E_S_131
 
06.03.15
16:47
НайтиДокументВСписке("КорректировкаДолга")

Это тоже твое "изделие"? Если да, то код дай.
13 Novi4ek2015
 
06.03.15
16:56
Корректировка долга,это стандартный документ
14 D_E_S_131
 
06.03.15
17:02
(13) Я понимаю, но вопрос про функцию НайтиДокументВСписке("КорректировкаДолга").
15 Novi4ek2015
 
06.03.15
17:12
Для каждого СтрокаДок Из тчДокументы Цикл
        Если ТипЗнч(СтрокаДок.ткДокумент) = Тип("ДокументСсылка."+ВидДокумента) Тогда
            Возврат СтрокаДок.ткДокумент.Ссылка;
        КонецЕсли;    
    КонецЦикла;
    
    Возврат "";
16 D_E_S_131
 
06.03.15
17:14
(15) Т.е. в твоем документе есть еще табличная часть "тчДокументы", в котором может быть уже занесена КорректировкаДолга?
17 Novi4ek2015
 
12.03.15
13:27
табличная часть "тчДокументы" , это табличная часть документа, из которого создается новый документ:Корректировка Долга. И в олну из вкладок, после проведения документа Кореектировка долга, создается ссылка на документ.Поэтому это особо не играет роли
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn