Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
13 Дек 2017, 10:49
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Внешняя обработка Заполнения!  (Прочитано 14263 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
Все доброго времени суток!
Проблема в следующем, создал внешнюю обработку для документа перемещения для УТ11. Обработка заполняет все остатки склада (Торговой точки) для перемещении на основной склад!

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

        Для каждого Элемент из ОбъектыНазначенияМассив Цикл

            КлючПоиска = Новый Структура("Ключ", Элемент);

            Окна = ПолучитьОкна();
            Для каждого Окно из Окна Цикл

                Если НЕ Окно.Основное
                И Найти(Окно.Заголовок, Элемент) Тогда
               
                    Форма = ОткрытьФорму("Документ.ПеремещениеТоваров.Форма.ФормаДокумента",КлючПоиска,,,Окно);

                   НовыйОбъект = Форма.Объект;

                    ЗаполнитьОбъект(НовыйОбъект);

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

&НаСервере
Функция ЗаполнитьОбъект(НовыйОбъект)
   
    НовыйОбъект.Товары.Очистить();
   
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ТоварыНаСкладахОстатки.Номенклатура,
    |    ТоварыНаСкладахОстатки.Характеристика,
    |    ТоварыНаСкладахОстатки.ВНаличииОстаток КАК Количество
    |ИЗ
    |    РегистрНакопления.ТоварыНаСкладах.Остатки(&Период, ) КАК ТоварыНаСкладахОстатки
    |ГДЕ
    |    ТоварыНаСкладахОстатки.Склад = &Склад
    |
    |СГРУППИРОВАТЬ ПО
    |    ТоварыНаСкладахОстатки.Номенклатура,
    |    ТоварыНаСкладахОстатки.Характеристика,
    |    ТоварыНаСкладахОстатки.ВНаличииОстаток";
    Запрос.УстановитьПараметр("Период", НовыйОбъект.Дата);
    Запрос.УстановитьПараметр("Склад", НовыйОбъект.СкладОтправитель);
    Выборка = Запрос.Выполнить().Выбрать();
    Сообщить(НовыйОбъект.Дата);
    Сообщить(НовыйОбъект.СкладОтправитель);
    Пока Выборка.Следующий() Цикл
        НоваяСтрока = НовыйОбъект.Товары.Добавить();
        НоваяСтрока.Номенклатура = Выборка.Номенклатура;
        НоваяСтрока.Характеристика = Выборка.Характеристика;
        НоваяСтрока.Количество = Выборка.Количество;
        НоваяСтрока.КоличествоУпаковок = Выборка.Количество;
    КонецЦикла;
КонецФункции

Помогли, отблагодари!


Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
В результате документ пустой. как будто не срабатывает
КопироватьДанныеФормы(НовыйОбъект, Форма.Объект)
Что делать?
После этой строки вставлял Форма.Обновить();
Вылетает с ошибкой но форма документа показывается заполненной!


Помогли, отблагодари!

Оффлайн Slin

  • Глобальный модератор
  • *****
  • Сообщений: 780
  • РЕПУТАЦИЯ: 247
  • КПД: 32%
  • Game over...
  • Регистрация: 2010-10-13
  • Сайт: 
  • Профессия: Программист 1С
Что за ошибка то?
skype: slin-dev

Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
Суть не в этом! В том что появляется форма заполненная! Как я понял появляется форма Которая НовыйОбъект!
Помогли, отблагодари!

Оффлайн Slin

  • Глобальный модератор
  • *****
  • Сообщений: 780
  • РЕПУТАЦИЯ: 247
  • КПД: 32%
  • Game over...
  • Регистрация: 2010-10-13
  • Сайт: 
  • Профессия: Программист 1С
Попробуй вместо форма.Обновить() использовать ОповеститьОбИзменении(НовыйОбъект)
Добавлено: 21 Мар 2013, 12:27

у тебя же управляемые формы?
skype: slin-dev

Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
Ошибка первого параметра! там ссылка нужна а не Объект! Я так думаю может из-за цикла! он мне обнуляет?!
Добавлено: 21 Мар 2013, 13:09

Если вставить Форма.ОбновитьОтображениеДанных(); то ошибки нет Он показывает номенклатуру и сразу затирает!
Добавлено: 21 Мар 2013, 13:09

ДА!!!
Могу выложить обработку!
Помогли, отблагодари!

Оффлайн Slin

  • Глобальный модератор
  • *****
  • Сообщений: 780
  • РЕПУТАЦИЯ: 247
  • КПД: 32%
  • Game over...
  • Регистрация: 2010-10-13
  • Сайт: 
  • Профессия: Программист 1С
Ошибка первого параметра! там ссылка нужна а не Объект! Я так думаю может из-за цикла! он мне обнуляет?!
Ну да... все равно метод не тот :)
skype: slin-dev

Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
Вот обработка!

Добавлено: 21 Мар 2013, 13:30

добавлять как внешнюю! в документе перемещения Заполнение!

Добавлено: 21 Мар 2013, 13:32

процедуры заполнения в модуле формы!

Добавлено: 21 Мар 2013, 14:56

Есть ли другой вариант получение формы!

Добавлено: 22 Мар 2013, 16:30

Подойдем с другой стороны к вопросу!
Как в открытой управляемой форме, заполнить табличную часть документа и обновить форму чтобы видеть изменения табличной части?
Помогли, отблагодари!

Последний раз редактировалось: Yura063; 22 Мар 2013, 16:30. Причина: Объединение сообщений

Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
Господа! Вопрос в следующем! Программное изменение данных в открытой управляемой форме и отображение изменений на форме?
Помогли, отблагодари!

Оффлайн SlazZy

  • ***
  • Сообщений: 149
  • РЕПУТАЦИЯ: 15
  • КПД: 10%
  • Регистрация: 2012-04-28
  • Сайт: 
  • Профессия: Программист 1С
Когда господ просят о помощи, то не скрывают код паролем. Вам за него стыдно или боитесь, что украдут? В общем-то есть за что стыдиться )) :dfbbdrfb:

особенно учитывая то, что ваша обработка - копипас с инфостарта, вместе с комментариями

Последний раз редактировалось: SlazZy; 01 Апр 2013, 11:16


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
172 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
38 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 856
  • Точка Скрытых: 0
  • Точка Пользователей: 9
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal