Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

Как обратиться к реквизиты обработки

Yakovin
читатель
офлайн
Дата регистрации: 19.02.2007
Сообщений: 49
Пост №1
 
22.04.2010 14:11

"Всем, здравствуйте! Помогите разобраться с внешней обработкой. Проблема в следующем: внешняя обработка имеет несколько форм, мне необходимо передать данные из одной в другую. Я добавил реквизиты, на основной форме работать с ними получается. Я делаю это т.о.:<br><br>Обработка = ВнешниеОбработки.Создать("C:\Рабочая\ComCenter\ComCenter.epf");<br>Обработка.ТипФормы = "1";<br><br>Во второй форме я также создаю объект Обработка, но реквизиты пустые. Каким образом обратиться к реквизитам из второй формы.<br><br>Если не использовать реквизиты, то другой вариант - переменные Экспорт, но как к ним обратиться я тоже не знаю.<br>Спасибо за помощь."

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №2
 
22.04.2010 14:25

"Вы создаете объекты, а надо открывать формы.<br>Обработка = ВнешниеОбработки.Создать("C:\Рабочая\ComCenter\ComCenter.epf");<br>Форма1 = Обработка.ПолучитьФорму ("ИмяФормы1");<br>Форма2 = Обработка.ПолучитьФорму ("ИмяФормы2");<br><br>Если у форм в качестве основного реквизита стоит обработка, то обе формы будут иметь доступ к реквизитам Обработки.<br><br>Или опишите задачу иначе, а то у вас какая-то двойственность в описании: "У обработки 2 формы" и "во второй форме я также создаю объект Обработка""

Yakovin
читатель
офлайн
Дата регистрации: 19.02.2007
Сообщений: 49
Пост №3
 
22.04.2010 14:46

"Ошибка, поле объекта не обнаружено (при попытке заполнить ТаблицуЗначений результатом запроса)<br><br>Процедура ПриОткрытии()<br> Обработка = ВнешниеОбработки.Создать("C:\Рабочая\ComCenter\ComCenter.epf");<br> Форма1 = Обработка.ПолучитьФорму ("ФормаОсновная");<br>КонецПроцедуры<br><br>заполняю так <br>Форма1.ППВТаблЗнач = РезультатЗапроса.Выгрузить();<br><br>Задача такая: на основной форме табличное поле, в него помещаю результат запроса (выборка приходников и выписок за период), двойном щелчке на строке Табличного поля должно открыться окно элементы которого заполняются параметрами платежа (номер, дата, сумма, контрагент, договор и т.п.). Мне это необходимо для правки некоторых позиций платежа и выполнить последующую выгрузку во внешнее приложение (точнее в БД этого приложения). Для изменения результат запроса помещаю в реквизит обработки ППВТаблЗнач, тип ТаблицаЗначений<br><br>Я не понял Вашей фразы: "Если у форм в качестве основного реквизита стоит обработка, то обе формы будут иметь доступ к реквизитам Обработки." В окне "Свойства" формы практически нет параметров для изменения.<br><br>Спасибо за помощь.<br><br>П.С. Прошу прощения если глупые вопросы, в 1С я плохо разбираюсь. Возникла необходимость связать внешнее приложение с 1С в плане платежей."

BelikovS
читатель
офлайн
Дата регистрации: 05.03.2007
Сообщений: 1701
Пост №4
 
22.04.2010 15:35

"Интересно, ваша Процедура ПриОткрытии() где находиться?<br>Предположим, что у вас ничего нет.<br>1. Создаете внешнюю обработку<br>2. Добавляете ей форму (по умолчанию у неё имя Форма) она же станет основной формой, открываемой при открытии обработки.<br>3. Кидаете на форму таблицу (я так понимаю назвали её ППВТаблЗнач)<br>4. В модуле формы формы в Процедуре ПриОткрытии делаете заполнение таблицы: <br>ППВТаблЗнач = РезультатЗапроса.Выгрузить();<br>ЭлементыФормы.ППВТаблЗнач.СоздатьКолонки();<br>5. Создаете 2-ю форму. По-умолчанию она получит имя Форма1. <br>6. Киньте на Форму1, скажем поле ввода. (имя ПолеВвода1)<br>7. Для таблицы (на Форме) задаете событие Выбор, где пишите, что-то типа:<br>ТекСтр = ППВТаблЗнач.ТекущаяСтрока(); //Можно воспользоваться Параметрами, но я привык так<br>лФорма = ЭтотОбъект.ПолучитьФорму("Форма1"); //"ЭтотОбъект." можно не писать - это подразумевается.<br>лФорма.ПолеВвода1 = ТекСтр.Ссылка; //Ссылка - это колонка в таблице, я не знаю как оно у вас назывется.<br>лФорма.Открыть();<br> <br>В принципе - этого достаточно для демонстрации. Можно запускать.<br><br>p.s. Если вы зайдете на закладку Реквизиты у Формы, то увидите, что один реквизит выделен жирным (например ОбработкаОбъект) - этот реквизит основной для данной формы и она (форма) имеет полный доступ к реквизитам и экспортным функциям (процедурам) этого объекта"

Yakovin
читатель
офлайн
Дата регистрации: 19.02.2007
Сообщений: 49
Пост №5
 
22.04.2010 17:13

Огромнейшее спасибо, все получилось!!!

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация