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

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

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

1С:Предприятие 7.70.027. Как в принудительно завершить обработку в коде?

sten_d
читатель
офлайн
Дата регистрации: 17.11.2010
Сообщений: 2
Пост №1
 
17.11.2010 14:07

"Задача состоит в том чтобы вызвать обработку Форма1НДФЛ2009, записать нужные данные в константы и завершить ее. И так по списку для каждого человека.<br><br>Вызываю я вот так: "ОткрытьФорму("Обработка.Форма1НДФЛ2009",Параметры1);"<br>Завершить пытаюсь так: "Форма.Закрыть(0);"(эта строчка стоит в конце процедуры "При открытии" в самой обработке.) Обработка не завершается, пока мы не пройдем весь список. И получается что для всех людей мы используем данные из констант записанных для первого человека."

zak555 (398843952)
читатель
офлайн
Дата регистрации: 27.03.2008
Сообщений: 4656
Пост №2
 
17.11.2010 14:23

что за константы ?

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №3
 
17.11.2010 14:45

"Я делал подобную задачку. Смысл был вот в чем. В 1С:Бухгалтерии 7.7 для того, чтобы сдать в ИМНС сведния о доходах, нужно пройтись по справочнику сотрудников и по отношению к каждому сделать такую вещь: нажать кнопку "Налоги на доходы" и выбрать там "Справка о доходах физического лица 2-НДФЛ", нажать в ней кнопки Заполнить и Записать. Если это не сделать, то при попытке подготовки отчета в ИМНС система станет ругаться "сведений о доходах сотрудника не обнаружено". Если сотрудников много, то задача довольно трудоемка. Поэтому делал точно так же. Перебирал программно сотрудников, по каждому делал <br>СписокПараметров=СоздатьОбъект("СпсиокЗначений");<br>СписокПараметров.Установить("Сотрудник",НужныйСотрудник);<br>СписокПараметров.Установить("Год",НужныйГодЧислом);<br>СписокПараметров.Установить("ЭтоПотоковоеЗаполнение",1);<br>ОткрытьФорму("Обработка.Форма1НДФЛ2009",СписокПараметров).<br><br>В ПриОткрытии() писал:<br>...<br>Если ПустоеЗначение(Форма.Параметр) = 0 Тогда<br> Если Форма.Параметр.Получить("ЭтоПотоковоеЗаполнение")=1 Тогда<br>       СтрокаТекущегоГода = СпЛет.НайтиЗначение(СписокПараметров.Получить("Год"))<br>       СпЛет.ТекущаяСтрока(СтрокаТекущегоГода);<br>       ПриВыбореГода();<br>       Заполнить();<br>       Сохранить();<br>       СтатусВозврата(0); //это ответ на вопрос спрашивающего<br> КонецЕсли;<br>КонецЕсли;<br>КонецПроцедуры //ПриОткрытии<br><br>я угадал задачу?"

sten_d
читатель
офлайн
Дата регистрации: 17.11.2010
Сообщений: 2
Пост №4
 
17.11.2010 15:30

задача другая, но решение подошло. Спасибо!

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

Читают тему:

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