Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Внешняя обработка заполнения ТЧ "Заказ покупателя"
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование управляемых форм 1С 8.2
iswat
День добрый.

Начинаю разбираться с УТ11. Стоит задача создания внешней обработки для заполнения ТЧ "Запасы" документа "Заказ покупателя" из файла Excel.
В сети примеров для управляемого приложения не нашел (может плохо искал upset.gifsmile.gif ).
Если у кого есть пример создания такой обработки или ссылка на решение, буду премного благодарен. icon_beer17.gif


 ! 

Правила, п.5.
 
logist
1. Если Вам нужна готовая обработка - у нас есть для этого специальный раздел.
2. Если Вам нужно, что бы кто-то написал за вас - у нас есть Стол заказов.
3. Если у Вас проблемы с программированием, задавайте конкретные вопросы.

Определитесь, с вариантом, от этого будет зависеть, что будет с этой темой.
iswat
Цитата(logist @ 25.04.13, 22:09) необходимо зарегистрироваться для просмотра ссылки
3. Если у Вас проблемы с программированием, задавайте конкретные вопросы.


Да, моя тема имеет отношение именно к этому пункту.
По сути: нужна помощь, чтобы разобраться с внешними обработками для управляемого приложения.
Поэтому и попросил пример - готове решение мне не нужно.
logist
Пример и готовое решение в данном контексте одно и тоже. Примеров по работе с экселем и ТЧ достаточно можно найти.
Раз тема имеет отношение к программированию - ставьте конкретные вопросы.
iswat
Цитата(logist @ 25.04.13, 22:56) необходимо зарегистрироваться для просмотра ссылки
Примеров по работе с экселем и ТЧ достаточно можно найти


Для обычного приложения - достаточно. А вот для управляемых форм не нашел.
Может кто подскажет, в чем отличие подключения для внешних обработок управляемого режима от обычного?
Потому как обработка, написанная под обычное приложение, не подключается под управляемым.
logist
Цитата(iswat @ 25.04.13, 23:07) необходимо зарегистрироваться для просмотра ссылки
А вот для управляемых форм не нашел.

Скорее не искал..., понимаю, что до 6-й страницы списка этого раздела дойти было лень, но все же есть поиск. Как пример - необходимо зарегистрироваться для просмотра ссылки
iswat
Цитата(logist @ 26.04.13, 8:04) необходимо зарегистрироваться для просмотра ссылки
Скорее не искал..., понимаю, что до 6-й страницы списка этого раздела дойти было лень, но все же есть поиск. Как пример - необходимо зарегистрироваться для просмотра ссылки


Спасибо за помощь. Но это не совсем то, что нужно. Т.к. сам механизм загрузки уже есть.
Хотелось бы найти пример как создать внешнюю обработку заполнения табличной части. Например, как здесь для ПФ: необходимо зарегистрироваться для просмотра ссылки
iswat
Нашел пример обработки.
Но при ее выполнении данные не отображаются в форме, хотя заполняются:
&НаКлиенте
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения) Экспорт
    //Спросим у пользователя разрешение на продолжение обработки
    Режим = РежимДиалогаВопрос.ДаНет;
    Текст = "Текущие данные документа будут заменены новыми без возможности восстановления.
    |Продолжить?";
    Ответ = Вопрос(Текст, Режим, 0);
    Если Ответ = КодВозвратаДиалога.Да Тогда

        //Если пользователь дал разрешение на продолжение, то начнем перебирать все
        //документы, у которых мы планируем заполнить табличную часть
        Для каждого Элемент из ОбъектыНазначения Цикл

            //Зададим ключ поиска документа, из которого вызвана данная обработка,
            //чтобы получить ссылку на редактирумый документ в удобном виде для
            //функции ОткрытьФорму()
            КлючПоиска = Новый Структура("Ключ", Элемент);

            //Но нам не надо открывать новую форму (окно) для изменяемого документа, а
            //Нам надо все изменения показать в уже открытых у клиента окнах
            Окна = ПолучитьОкна();
            Для каждого Окно из Окна Цикл

                //Окно изменяемого документа будет точно не основным, а вспомогательным, поэтому
                //сразу пропускаем основное окно, а далее идем на не очень хороший способ поиска открытого окна
                //изменяемого документа. Мы просто переберем все окна, а в заголовке, которых будет встречаться
                //Наименование, номер и дата нужного документа - будем изменять
         Если НЕ Окно.Основное
                    И Найти(Окно.Заголовок, Элемент) Тогда
                    //Передадим ключ поиска (можно сказать ссылку на объект) и данные о найденном открытом окне
                    //в функцию ОткрытьФорму()
                    //Код находится в цикле на тот случай, если открытых окон изменяемого документа больше одного
                    Форма = ОткрытьФорму("Документ.ЗаказПокупателя.Форма.ФормаДокумента",КлючПоиска,,,Окно);

                    //Далее мы получаем объект только, что повторно открытой формы и помещаем её в переменную
                    //В объекте содержатся все реквизиты (элементы) формы
                    НовыйОбъект = Форма.Объект;

                    //Заполнение на сервере данными из Excel
                    ЗаполнитьОбъект(НовыйОбъект);
            Сообщить("Заполнили данные в копии");

                    //После выполнения процедуры на сервере мы получаем изменную переменную НовыйОбъект,
                    //которую необходимо передать в уже полученную нами форму

                    КопироватьДанныеФормы(НовыйОбъект, Форма.Объект);
                КонецЕсли;
    КонецЦикла;

        КонецЦикла;
    КонецЕсли;
КонецПроцедуры
jackson31
Функция ВернутьСумму(Цена,Количество,НДС)
    Если Дата>'20130701' Тогда
    Если НДС="20" Тогда
     Иначе Результат=Цена*Количество*(1+Число(НДС)/100);
КонецЕсли Иначе
     Результат=Цена*Количество;
          КонецЕсли;


Возврат Результат

    
КонецФункции



Добрый день! В ПриходнойНакладной добавил колонку НДС(20%), но оно не пересчитывает сумму, почему? Выдаёт итоговый результат, но без учёта НДС. Помогите чайнику!!!

 ! 

1. Помещайте код в специальный тег
2. А Вы не ошиблись темой?
 
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.