8.х Не переносится новый реквизит ТЧ Товары при создании на основании

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем nickvv, 4 июл 2017.

  1. TopicStarter Overlay
    nickvv
    Offline

    nickvv Опытный в 1С

    Регистрация:
    10 май 2011
    Сообщения:
    439
    Симпатии:
    2
    Баллы:
    29
    Уважаемые эксперты, прошу помощи!
    1С:Комплексная автоматизация 2 (2.2.2.193)
    В ТЧ Товары документа ЗаказКлиента создал новый реквизит. Такой же реквизит создан и в ТЧ Товары РеализацииТоваровУслуг.
    Никак не могу добиться, чтобы этот реквизит в РТУ заполнялся при создании документа на основании ЗаказаКлиента, где реквизит заполнен.
    В обработке заполнения модуля РТУ есть вот такая процедура:
    Код:
    Процедура ЗаполнитьДокументНаОснованииЗаказаКлиента(Знач ДокументОснование,
                                                       Знач СкладОтгрузки,
                                                       ВариантОформления,
                                                       РеквизитыЗаказа = Неопределено,
                                                       ПараметрыОформления = Неопределено)
        ТипОснования = ТипЗнч(ДокументОснование);
        ЗаполнятьПоОстаткам = Ложь;
       
        ИспользоватьСоглашенияСКлиентами = ПолучитьФункциональнуюОпцию("ИспользоватьСоглашенияСКлиентами");
       
        Если ТипОснования = Тип("ДокументСсылка.ЗаказКлиента") Тогда
       
            Запрос = Новый Запрос("
            |ВЫБРАТЬ
            |    ЗаказКлиента.Ссылка                КАК ЗаказКлиента,
            |    ЗаказКлиента.Партнер               КАК Партнер,
            |    ЗаказКлиента.Контрагент            КАК Контрагент,
            |    ЗаказКлиента.КонтактноеЛицо        КАК КонтактноеЛицо,
            |    ЗаказКлиента.Договор               КАК Договор,
            |    ЗаказКлиента.Организация           КАК Организация,
            |    ЗаказКлиента.ФормаОплаты           КАК ФормаОплаты,
            |    ЗаказКлиента.Соглашение            КАК Соглашение,
            |    ЗаказКлиента.КартаЛояльности       КАК КартаЛояльности,
            |    ЗаказКлиента.Сделка                КАК Сделка,
            |    ЗаказКлиента.Валюта                КАК Валюта,
            |    ЗаказКлиента.Валюта                КАК ВалютаВзаиморасчетов,
            |    ЗаказКлиента.ГрафикОплаты          КАК ГрафикОплаты,
            |    ЗаказКлиента.Подразделение         КАК Подразделение,
            |    ЗаказКлиента.ДатаОтгрузки          КАК ДатаОтгрузки,
            |    ВЫБОР
            |        КОГДА
            |            ЗаказКлиента.Склад.ЭтоГруппа И ЗаказКлиента.Склад.ВыборГруппы = ЗНАЧЕНИЕ(Перечисление.ВыборГруппыСкладов.РазрешитьВЗаказах)
            |        ТОГДА
            |            ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)
            |        ИНАЧЕ
            |            ЗаказКлиента.Склад
            |    КОНЕЦ КАК Склад,
            |    ВЫБОР
            |        КОГДА
            |            ЗаказКлиента.Склад.ЭтоГруппа И ЗаказКлиента.Склад.ВыборГруппы = ЗНАЧЕНИЕ(Перечисление.ВыборГруппыСкладов.РазрешитьВЗаказах)
            |        ТОГДА
            |            ИСТИНА
            |        ИНАЧЕ
            |            ЛОЖЬ
            |    КОНЕЦ КАК ЗапрещеноВыбиратьГруппуСкладов,
            |    ЗаказКлиента.ЦенаВключаетНДС       КАК ЦенаВключаетНДС,
            |    ЗаказКлиента.НалогообложениеНДС    КАК НалогообложениеНДС,
            |    ЗаказКлиента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
            |    ЗаказКлиента.НеОтгружатьЧастями    КАК НеОтгружатьЧастями,
            |    ЗаказКлиента.АдресДоставки         КАК АдресДоставки,
            |    ЗаказКлиента.Склад.ИспользоватьОрдернуюСхемуПриОтгрузке   КАК ОрдернаяСхемаПриОтгрузке,
            |
            |    ЗаказКлиента.ГруппаФинансовогоУчета КАК ГруппаФинансовогоУчета,
            |    ЗаказКлиента.Статус                КАК СтатусДокумента,
            |    НЕ ЗаказКлиента.Проведен           КАК ЕстьОшибкиПроведен,
            |    ИСТИНА                             КАК ЕстьОшибкиСтатус,
            |
            |    ЗаказКлиента.БанковскийСчет                 КАК БанковскийСчетОрганизации,
            |    ЗаказКлиента.БанковскийСчетКонтрагента      КАК БанковскийСчетКонтрагента,
            |    ЗаказКлиента.Грузоотправитель               КАК Грузоотправитель,
            |    ЗаказКлиента.Грузополучатель                КАК Грузополучатель,
            |    ЗаказКлиента.БанковскийСчетГрузоотправителя КАК БанковскийСчетГрузоотправителя,
            |    ЗаказКлиента.БанковскийСчетГрузополучателя  КАК БанковскийСчетГрузополучателя,
            |    ЗаказКлиента.ВернутьМногооборотнуюТару      КАК ВернутьМногооборотнуюТару,
            |    ЗаказКлиента.СрокВозвратаМногооборотнойТары КАК СрокВозвратаМногооборотнойТары,
            |    ЗаказКлиента.ТребуетсяЗалогЗаТару           КАК ТребуетсяЗалогЗаТару,
            |    ВЫБОР
            |        КОГДА &ИспользоватьСоглашенияСКлиентами 
            |            ТОГДА ЗаказКлиента.Соглашение.КалендарьВозвратаТары
            |        ИНАЧЕ ЗНАЧЕНИЕ(Справочник.ПроизводственныеКалендари.ПустаяСсылка)
            |    КОНЕЦ                                       КАК КалендарьВозвратаТары,
            |    ВЫБОР
            |        КОГДА &ИспользоватьСоглашенияСКлиентами 
            |            ТОГДА ЗаказКлиента.Соглашение.РассчитыватьДатуВозвратаТарыПоКалендарю
            |        ИНАЧЕ ЛОЖЬ
            |    КОНЕЦ                                       КАК РассчитыватьДатуВозвратаТарыПоКалендарю,
            |
            |    ЗаказКлиента.СкидкиНаценки.(
            |        КлючСвязи,
            |        СкидкаНаценка,
            |        Сумма
            |    ) КАК СкидкиНаценки,
            |    ЗаказКлиента.АдресДоставкиЗначенияПолей     КАК АдресДоставкиЗначенияПолей,
            |
            |    ВЫБОР КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
            |        И ЗаказКлиента.СпособДоставки = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика) 
            |        ИЛИ НЕ &ИспользоватьРасширенныеВозможностиЗаказаКлиента ТОГДА
            |        ЗаказКлиента.СпособДоставки
            |    КОНЕЦ                                       КАК СпособДоставки,
            |
            |    ВЫБОР КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
            |        И ЗаказКлиента.СпособДоставки = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика) 
            |        ИЛИ НЕ &ИспользоватьРасширенныеВозможностиЗаказаКлиента ТОГДА
            |        ЗаказКлиента.ЗонаДоставки
            |    КОНЕЦ                                       КАК ЗонаДоставки,
            |
            |    ВЫБОР КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
            |        И ЗаказКлиента.СпособДоставки = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика)
            |        ИЛИ НЕ &ИспользоватьРасширенныеВозможностиЗаказаКлиента ТОГДА
            |        ЗаказКлиента.ПеревозчикПартнер
            |    КОНЕЦ                                       КАК ПеревозчикПартнер,
            |
            |    ВЫБОР КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
            |        И ЗаказКлиента.СпособДоставки = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика) 
            |        ИЛИ НЕ &ИспользоватьРасширенныеВозможностиЗаказаКлиента ТОГДА
            |        ЗаказКлиента.ВремяДоставкиС
            |    КОНЕЦ                                       КАК ВремяДоставкиС,
            |
            |    ВЫБОР КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
            |        И ЗаказКлиента.СпособДоставки = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика) 
            |        ИЛИ НЕ &ИспользоватьРасширенныеВозможностиЗаказаКлиента ТОГДА
            |        ЗаказКлиента.ВремяДоставкиПо
            |    КОНЕЦ                                       КАК ВремяДоставкиПо,
            |
            |    ВЫБОР КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
            |        И ЗаказКлиента.СпособДоставки = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика)
            |        ИЛИ НЕ &ИспользоватьРасширенныеВозможностиЗаказаКлиента ТОГДА
            |        ЗаказКлиента.ДополнительнаяИнформацияПоДоставке
            |    КОНЕЦ                                       КАК ДополнительнаяИнформацияПоДоставке,
            |
            |    ВЫБОР КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
            |        И ЗаказКлиента.СпособДоставки = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика)
            |        ИЛИ НЕ &ИспользоватьРасширенныеВозможностиЗаказаКлиента ТОГДА
            |        ЗаказКлиента.ОсобыеУсловияПеревозки
            |    КОНЕЦ                                       КАК ОсобыеУсловияПеревозки,
            |
            |    ВЫБОР КОГДА НЕ &ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками
            |        И ЗаказКлиента.СпособДоставки = ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.СиламиПеревозчика)
            |        ИЛИ НЕ &ИспользоватьРасширенныеВозможностиЗаказаКлиента ТОГДА
            |        ЗаказКлиента.ОсобыеУсловияПеревозкиОписание
            |    КОНЕЦ                                       КАК ОсобыеУсловияПеревозкиОписание,
            |   
            |    ЗаказКлиента.ПорядокРасчетов                КАК ПорядокРасчетов,
            |    ЗаказКлиента.НаправлениеДеятельности        КАК НаправлениеДеятельности,
            |    ЗаказКлиента.ПорядокОплаты                  КАК ПорядокОплаты
            |
            |ИЗ
            |    Документ.ЗаказКлиента КАК ЗаказКлиента
            |ГДЕ
            |    ЗаказКлиента.Ссылка = &ЗаказКлиента
            |;
            |ВЫБРАТЬ РАЗЛИЧНЫЕ
            |    ЗаказыОстатки.Склад КАК Склад
            |ИЗ
            |    РегистрНакопления.ЗаказыКлиентов.Остатки(
            |        ,
            |        ЗаказКлиента = &ЗаказКлиента
            |) КАК ЗаказыОстатки
            |");
       
            Запрос.УстановитьПараметр("ЗаказКлиента", ДокументОснование);
            Запрос.УстановитьПараметр("ИспользоватьСоглашенияСКлиентами", ИспользоватьСоглашенияСКлиентами);
            Запрос.УстановитьПараметр("ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками",
                ПолучитьФункциональнуюОпцию("ИспользоватьЗаданияНаПеревозкуДляУчетаДоставкиПеревозчиками"));
            Запрос.УстановитьПараметр("ИспользоватьРасширенныеВозможностиЗаказаКлиента",
                ПолучитьФункциональнуюОпцию("ИспользоватьРасширенныеВозможностиЗаказаКлиента"));
           
            РезультатЗапроса = Запрос.ВыполнитьПакет();
           
            РеквизитыЗаказа = РезультатЗапроса[0].Выбрать();
            РеквизитыЗаказа.Следующий();
    
            Документы.ЗаказКлиента.ПроверитьВозможностьВводаНаОсновании(
                РеквизитыЗаказа.ЗаказКлиента,
                РеквизитыЗаказа.СтатусДокумента,
                РеквизитыЗаказа.ЕстьОшибкиПроведен);
           
            // Заполнение шапки
            ЗаполнитьЗначенияСвойств(ЭтотОбъект, РеквизитыЗаказа);
            Если НЕ ПолучитьФункциональнуюОпцию("ИспользоватьРасширенныеВозможностиЗаказаКлиента") Тогда
                Если НЕ ЗначениеЗаполнено(Дата) Тогда
                    Дата = ТекущаяДатаСеанса();
                КонецЕсли;
            КонецЕсли;
            ДатаВозвратаМногооборотнойТары = МногооборотнаяТараСервер.РассчитатьДатуВозвратаМногооборотнойТары(
                ЭтотОбъект,
                РеквизитыЗаказа.СрокВозвратаМногооборотнойТары,
                РеквизитыЗаказа.РассчитыватьДатуВозвратаТарыПоКалендарю,
                РеквизитыЗаказа.КалендарьВозвратаТары);
           
            Если РеквизитыЗаказа.ЗапрещеноВыбиратьГруппуСкладов Тогда
                МассивСкладов = РезультатЗапроса[1].Выгрузить().ВыгрузитьКолонку("Склад");
            КонецЕсли;
           
        ИначеЕсли ТипОснования = Тип("ДокументСсылка.ЗаявкаНаВозвратТоваровОтКлиента") Тогда
    ...
        // Заполнение т.ч. товары.
        Если Не ЗначениеЗаполнено(СкладОтгрузки) Тогда
            Если РеквизитыЗаказа.ЗапрещеноВыбиратьГруппуСкладов Тогда
                // Только услуги
                Если МассивСкладов.Количество() = 0 Тогда
                    ЗаполнятьПоОстаткам = Истина;
                // Услуги или товары
                ИначеЕсли МассивСкладов.Количество() = 1 Тогда
                    СкладОтгрузки = МассивСкладов[0];
                    Склад = СкладОтгрузки;
                    ЗаполнятьПоОстаткам = Истина;
                // Услуги и товары
                ИначеЕсли МассивСкладов.Количество() = 2 Тогда
                    Если Не ЗначениеЗаполнено(МассивСкладов[0]) Или
                        Не ЗначениеЗаполнено(МассивСкладов[1]) Тогда
                        СкладОтгрузки = ?(ЗначениеЗаполнено(МассивСкладов[0]), МассивСкладов[0], МассивСкладов[1]);
                        Склад = СкладОтгрузки;
                        ЗаполнятьПоОстаткам = Истина;
                    КонецЕсли;
                КонецЕсли;
            Иначе
                ЗаполнятьПоОстаткам = Истина;
                СкладОтгрузки = Склад;
            КонецЕсли;
        Иначе
            Если РеквизитыЗаказа.ЗапрещеноВыбиратьГруппуСкладов Тогда
                Склад = СкладОтгрузки;
            КонецЕсли;
            ЗаполнятьПоОстаткам = Истина;
        КонецЕсли;
       
        Если ЗаполнятьПоОстаткам Тогда
           
            Если ТипОснования = Тип("Массив") Тогда
                МассивЗаказов = ДокументОснование;
            Иначе
                МассивЗаказов = Новый Массив();
                МассивЗаказов.Добавить(ЗаказКлиента);
            КонецЕсли;
           
            ПараметрыЗаполнения = Новый Структура;
            ПараметрыЗаполнения.Вставить("ВариантОформления", ВариантОформления);
            ПараметрыЗаполнения.Вставить("ПараметрыОформления", ПараметрыОформления);
           
            Документы.РеализацияТоваровУслуг.ЗаполнитьПоОстаткамЗаказов(
                ЭтотОбъект,
                Товары,
                СкидкиНаценки,
                ?(СкладОтгрузки=Неопределено, Справочники.Склады.ПустаяСсылка(), СкладОтгрузки),
                МассивЗаказов,
                ПараметрыЗаполнения);
            ЭтотОбъект.ВариантОформленияПродажи = ?(ЗначениеЗаполнено(ВариантОформления), 
                ВариантОформления,
                Перечисления.ВариантыОформленияПродажи.РеализацияТоваровУслуг);
            ЗаказыСервер.ЗаполнитьЗаказВШапкеПоЗаказамВТабличнойЧасти(ЗаказКлиента, Товары, "ЗаказКлиента");
           
            ПараметрыУказанияСерий = НоменклатураСервер.ПараметрыУказанияСерий(ЭтотОбъект, Документы.РеализацияТоваровУслуг);
            НоменклатураСервер.ЗаполнитьСерииПоFEFO(ЭтотОбъект,ПараметрыУказанияСерий, Ложь);
           
        КонецЕсли;
       
        Если НЕ ЗначениеЗаполнено(Статус) Тогда
            Статус = Перечисления.СтатусыРеализацийТоваровУслуг.Отгружено;
        КонецЕсли;
       
        СтруктураОснование = Документы.РеализацияТоваровУслуг.СтруктураОснованияДляПечати(ЭтотОбъект);
        ЗаполнитьЗначенияСвойств(ЭтотОбъект, СтруктураОснование);
       
    КонецПроцедуры
    
    
    но там вообще нет запроса к ТЧ Товары.
    Никак не могу найти, куда же впихнуть этот мой новый реквизит.
    Я уж и обработку Обновления вспомогательных данных из БСП запускал - не помогло.
    Что же делать?
    Спасибо
  2. 1с-ник
    Offline

    1с-ник Профессионал в 1С Заблокирован

    Регистрация:
    5 окт 2014
    Сообщения:
    998
    Симпатии:
    162
    Баллы:
    104
    Код:
    Документы.РеализацияТоваровУслуг.ЗаполнитьПоОстаткамЗаказов(
                ЭтотОбъект,
                Товары,
                СкидкиНаценки,
                ?(СкладОтгрузки=Неопределено, Справочники.Склады.ПустаяСсылка(), СкладОтгрузки),
                МассивЗаказов,
                ПараметрыЗаполнения);
    А вообще, такие штуки делаются в подписке на событие обработки заполнения, ведь проще будет обновлять эту конфу.
    nickvv нравится это.
  3. TopicStarter Overlay
    nickvv
    Offline

    nickvv Опытный в 1С

    Регистрация:
    10 май 2011
    Сообщения:
    439
    Симпатии:
    2
    Баллы:
    29
    этот кусок кода есть, но ведь не заполняет же
    Последнее редактирование: 4 июл 2017
  4. TopicStarter Overlay
    nickvv
    Offline

    nickvv Опытный в 1С

    Регистрация:
    10 май 2011
    Сообщения:
    439
    Симпатии:
    2
    Баллы:
    29
    Попробовал в модуле формы отдельную серверную процедуру написать для заполнения этого реквизита, которая вызывается из процедуры ПриСозданииНаСервере:
    Код:
    &НаСервере
    Процедура ЗаполнитьКоличествоПользователей()      
    
        Заказ = Объект.ЗаказКлиента;
        
            Запрос = Новый Запрос();
            Запрос.Текст = "ВЫБРАТЬ
                           |    ЗаказКлиента.Товары.(
                           |        КоличествоПользователей КАК Пользователи,
                           |        Характеристика
                           |    )
                           |ИЗ
                           |    Документ.ЗаказКлиента КАК ЗаказКлиента
                           |ГДЕ
                           |    ЗаказКлиента.Ссылка = &Заказ";
                   
               Запрос.УстановитьПараметр("Заказ",Заказ);
               Выборка = Запрос.Выполнить().Выбрать();
            Пока Выборка.Следующий() Цикл
                ВыборкаТовары = Выборка.Товары.Выбрать();
                Пока ВыборкаТовары.Следующий() Цикл
                    НайденнаяСтрока = Объект.Товары.Найти(ВыборкаТовары.Характеристика, "Характеристика");
                    НайденнаяСтрока.КоличествоПользователей = ВыборкаТовары.Пользователи;
                КонецЦикла;
            КонецЦикла;
    
    КонецПроцедуры
    
    ругается:
    Код:
    {Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(58)}: Метод объекта не обнаружен (Найти)
                    НайденнаяСтрока = Объект.Товары.Найти(ВыборкаТовары.Характеристика, "Характеристика");
    хотя СП говорит:
    Это чтобы найти нужную строку и в ней задать значение КоличествоПользователей.
    Что я делаю не так?
    Спасибо.
    --- Объединение сообщений, 14 июл 2017 ---
    если убираю поиск строки по Характеристике и оставляю так:
    Код:
                Пока ВыборкаТовары.Следующий() Цикл
                    //НайденнаяСтрока = Объект.Товары.Найти(ВыборкаТовары.Характеристика, "Характеристика");
                    Объект.Товары.КоличествоПользователей = ВыборкаТовары.Пользователи;
                КонецЦикла;
    
    ,
    то ругается тоже по-другому:
    Код:
    {Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(59)}: Поле объекта не обнаружено (КоличествоПользователей)
                    Объект.Товары.КоличествоПользователей = ВыборкаТовары.Пользователи;
    КоличествоПользователей - тот самый новый реквизит табличной части Товары.
    Последнее редактирование: 14 июл 2017
  5. 1с-ник
    Offline

    1с-ник Профессионал в 1С Заблокирован

    Регистрация:
    5 окт 2014
    Сообщения:
    998
    Симпатии:
    162
    Баллы:
    104
    Код:
    {Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(58)}: Метод объекта не обнаружен (Найти)
                    НайденнаяСтрока = Объект.Товары.Найти(ВыборкаТовары.Характеристика, "Характеристика");
    Значит это не табличная часть, а скорее всего таблица формы.
    Код:
    {Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(59)}: Поле объекта не обнаружено (КоличествоПользователей)
                    Объект.Товары.КоличествоПользователей = ВыборкаТовары.Пользователи;
    Кто ж так обращается к полю таблицы...
    nickvv нравится это.
  6. TopicStarter Overlay
    nickvv
    Offline

    nickvv Опытный в 1С

    Регистрация:
    10 май 2011
    Сообщения:
    439
    Симпатии:
    2
    Баллы:
    29
    А как же надо?
  7. 1с-ник
    Offline

    1с-ник Профессионал в 1С Заблокирован

    Регистрация:
    5 окт 2014
    Сообщения:
    998
    Симпатии:
    162
    Баллы:
    104
    Обратиться к реквизиту.
    Я же уже сказал как надо - подписка к обработке заполнения
    nickvv нравится это.
  8. TopicStarter Overlay
    nickvv
    Offline

    nickvv Опытный в 1С

    Регистрация:
    10 май 2011
    Сообщения:
    439
    Симпатии:
    2
    Баллы:
    29
    Т.е создаю свой новый общий модуль, куда помещаю
    Код:
    Процедура ЗаполнитьКоличествоПользователей() Экспорт
    (аналогично #4), который будет вызываться из подписки.
    Но строку же по характеристике все равно надо найти? И все равно останется этот цикл?
    Код:
                Пока ВыборкаТовары.Следующий() Цикл
                    НайденнаяСтрока = Объект.Товары.Найти(ВыборкаТовары.Характеристика, "Характеристика");
                    НайденнаяСтрока.КоличествоПользователей = ВыборкаТовары.Пользователи;
                КонецЦикла;
    
  9. 1с-ник
    Offline

    1с-ник Профессионал в 1С Заблокирован

    Регистрация:
    5 окт 2014
    Сообщения:
    998
    Симпатии:
    162
    Баллы:
    104
    У вас в подписке уже будут данные объектов: Источник и ДанныеЗаполнения.
    nickvv нравится это.

Поделиться этой страницей