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

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

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

перепроведение исправленного документа

Рисовод
читатель
офлайн
Дата регистрации: 26.12.2007
Сообщений: 25775
Пост №1
 
19.02.2014 09:09

Уважаемые коллеги! Как перепровести документ (начисления з-ты, например) за прошлый (2013) период, если к нему есть документ-исправление. Необходимость этого возникла из-за "кривой регистрации" этих самых ОКТМО.

Петров-В
читатель
офлайн
Дата регистрации: 23.01.2011
Сообщений: 581
Пост №2
 
19.02.2014 09:30

Я писал обрботку примерно с таким алгоритмом:<br>1. Поиск документов-исправлений и отвязывание в них перерасчитываемого документа.<br>2. Перепроведение документа.<br>3. Привязка перерасчитываемого документа обратно к документам-исправлениям.<br>Все это в транзакции.

Sh_S
читатель
офлайн
Дата регистрации: 02.03.2007
Сообщений: 7730
Пост №3
 
19.02.2014 09:33

До сих пор загадка для меня – а если просто отвяжу исправление и проведу документы по отдельности, то что–нибудь разве испортиться?

Рисовод
читатель
офлайн
Дата регистрации: 26.12.2007
Сообщений: 25775
Пост №4
 
19.02.2014 09:52

кто его знает?! Но рисковать не хочется - не тот случай, и времени на эксперимент нет :-(

Рисовод
читатель
офлайн
Дата регистрации: 26.12.2007
Сообщений: 25775
Пост №5
 
19.02.2014 09:53

> Я писал обрботку<br>а поделиться? :-)

Sh_S
читатель
офлайн
Дата регистрации: 02.03.2007
Сообщений: 7730
Пост №6
 
19.02.2014 09:55

Да в том то и вопрос, что я так делала. И ничего нигде не вылазило. Вот стало интересно, может я чего–то не вижу

Петров-В
читатель
офлайн
Дата регистрации: 23.01.2011
Сообщений: 581
Пост №7
 
19.02.2014 10:23

"Этой обработкой я выправлял 2 года назад НДФЛ и написал побыстрому. Там перепроведение не только ЗП, а всех возможных документов, которые двигают НДФЛ. В том числе за период и с возможностью отбора по физлицу и еще куча всяких вариантов проведения. И с тех пор я ей не пользовался, поэтому не хотелось бы выкладывать тут неизвестно что.<br>А нужная процедура вот она... Только надо на форму обработки вывести ссылку на документ и в процедуру кнопки вставить вызов <span>ПерезаписатьДокумент().</span><br><span>Еще раз повторюсь, процедура для универсального проведения, если надо только ЗП, то можно упростить. </span><br> <br><br><pre>Процедура ПерезаписатьДокумент(Док) Сообщить("""" + Док +" - Попытка перезаписи...");      Если Док.Метаданные().Реквизиты.Найти("ПерерассчитываемыйДокумент") = Неопределено Тогда       ТекДокОбъект = Док.ПолучитьОбъект();       ТекДокОбъект.Записать(?(ТекДокОбъект.Проведен,РежимЗаписиДокумента.Проведение,РежимЗаписиДокумента.Запись));       Сообщить("""" + Док +" ... ОК!");       Возврат; КонецЕсли;      Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | НачислениеЗарплатыРаботникамОрганизаций.Ссылка |ИЗ | Документ.НачислениеЗарплатыРаботникамОрганизаций КАК НачислениеЗарплатыРаботникамОрганизаций |ГДЕ | НачислениеЗарплатыРаботникамОрганизаций.ПерерассчитываемыйДокумент = &ПерерассчитываемыйДокумент";      Запрос.Текст = СтрЗаменить(Запрос.Текст,"НачислениеЗарплатыРаботникамОрганизаций",Док.Метаданные().Имя);      Запрос.УстановитьПараметр("ПерерассчитываемыйДокумент",Док);      Выборка = Запрос.Выполнить().Выбрать(); МассивИсправлений = Новый Массив;      Пока Выборка.Следующий() Цикл       МассивИсправлений.Добавить(Выборка.Ссылка); КонецЦикла;       НачатьТранзакцию();      Для каждого ТекДок Из МассивИсправлений Цикл       ТекДокОбъект = ТекДок.ПолучитьОбъект();       ТекДокОбъект.ПерерассчитываемыйДокумент = Неопределено;       ТекДокОбъект.Записать(РежимЗаписиДокумента.Запись);       Сообщить("""" + ТекДок + " - отмена исправления."); КонецЦикла;      ВыбДокОбъект = Док.ПолучитьОбъект(); ВыбДокОбъект.Записать(?(ВыбДокОбъект.Проведен,РежимЗаписиДокумента.Проведение,РежимЗаписиДокумента.Запись));      Для каждого ТекДок Из МассивИсправлений Цикл       ТекДокОбъект = ТекДок.ПолучитьОбъект();       ТекДокОбъект.ПерерассчитываемыйДокумент = Док;       ТекДокОбъект.Записать(РежимЗаписиДокумента.Запись);       Сообщить("""" + ТекДок + " - восстановление исправления."); КонецЦикла; Сообщить("""" + Док +" ... ОК!"); ЗафиксироватьТранзакцию();КонецПроцедуры </pre>"

Тэра
читатель
офлайн
Дата регистрации: 25.12.2008
Сообщений: 22390
Пост №8
 
19.02.2014 10:26

Хм..Ну что, Юра, слабо?!

Рисовод
читатель
офлайн
Дата регистрации: 26.12.2007
Сообщений: 25775
Пост №9
 
19.02.2014 10:30

"а что нам скажет начальник транспортного цеха?"

Рисовод
читатель
офлайн
Дата регистрации: 26.12.2007
Сообщений: 25775
Пост №10
 
19.02.2014 10:31

спасибо, если не найду другого выхода отдам этот полуфабрикат программисту.

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

Читают тему:

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