gifts2017

Бухгалтерия 7.7. Релиз 535. Некорректности (ошибки) при вступлении в силу постановления 1137. Релиз 536 вышел

Опубликовал Иван Иванов (Famza) в раздел Программирование - Практика программирования

При обновлении на 535 релиз обнаружил некорректность в документах поступления.

При обновлении на 535 релиз обнаружил некорректность в документах поступления - ПоступлениеМатериалов, ПоступлениеНМА, ПоступлениеОборудования, ПоступлениеОС, ПоступлениеТоваров - в продедуре ПриОткрытии(). Код который внесли при вступлении в силу "Постановление
от 26 декабря 2011 г. N 1137 "О формах и правилах заполнения (ведения) документов, применяемых при расчетах по налогу на добавленную стоимость""
...

    Если ((ПустоеЗначение(ДатаНомерСчетаФактуры) = 1) и (Выбран() = 1))
    или (((ПустоеЗначение(
ДатаСчетаФактуры) = 1) или (ПустоеЗначение(НомерСчетаФактуры) = 1)) и (Выбран() = 1)) Тогда
       
СчетФактураПредъявлен = 0;
       
Форма.ДатаНомерСчетаФактуры.Доступность(0);
       
Форма.ДатаСчетаФактуры.Доступность(0);
       
Форма.НомерСчетаФактуры.Доступность(0);
    Иначе
       
СчетФактураПредъявлен = 1;
       
Форма.ДатаНомерСчетаФактуры.Доступность(1);
       
Форма.ДатаСчетаФактуры.Доступность(1);
       
Форма.НомерСчетаФактуры.Доступность(1);
    КонецЕсли;

сбрасывает установленный флаг получения счет-фактуры при открытии документа.
Предлагаю заменить следующим кодом:

    Если глПолучитьВерсиюПостановления(ДатаДок) = 2 Тогда
        Если ((ПустоеЗначение(
ДатаСчетаФактуры) = 1) или (ПустоеЗначение(НомерСчетаФактуры) = 1)) и (Выбран() = 1) Тогда
           
СчетФактураПредъявлен = 0;
           
Форма.ДатаСчетаФактуры.Доступность(0);
           
Форма.НомерСчетаФактуры.Доступность(0);
        Иначе
           
СчетФактураПредъявлен = 1;
           
Форма.ДатаСчетаФактуры.Доступность(1);
           
Форма.НомерСчетаФактуры.Доступность(1);
        КонецЕсли;
    Иначе
        Если (ПустоеЗначение(
ДатаНомерСчетаФактуры) = 1) и (Выбран() = 1) Тогда
           
СчетФактураПредъявлен = 0;
           
Форма.ДатаНомерСчетаФактуры.Доступность(0);
        Иначе
           
СчетФактураПредъявлен = 1;
           
Форма.ДатаНомерСчетаФактуры.Доступность(1);
        КонецЕсли;
    КонецЕсли;

Также необходимо для правильного формирования проводок по НДС откорректировать в модулях проведения этих документов строки:

        Если ПустоеЗначение(ДатаНомерСчетаФактуры) = 0 Тогда
           
Операция.Дебет.СчетаФактурыПолученные = ТекущийДокумент();
        КонецЕсли;

Предлагаю заменить следующим кодом:

        Если (ПустоеЗначение(ДатаНомерСчетаФактуры) = 0) ИЛИ ((ПустоеЗначение(НомерСчетаФактуры) = 0) И (ПустоеЗначение(ДатаСчетаФактуры) = 0)) Тогда
           
Операция.Дебет.СчетаФактурыПолученные = ТекущийДокумент();
        КонецЕсли;

ЗЫ. Номера строк не указываю, так как обновляемая конфигурация изменена - их легко найти по поиску. Жду комментариев.

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Дониэла Иванова (Доня) 06.02.12 16:15
Да, есть такая корява, НО! только в том случае, когда вводим новый документ копированием (F9) с документа 2011 года, а если вводить новую строку (Ins) то вводится все корректно !
2. Алексей Споров (Timesoft) 06.02.12 16:30
(1) Доня, А если открыть "старый" документ ? Будете премного удивлены.
3. Козлов Олег (*Zed*) 06.02.12 17:41
Модуль проведения можно не трогать, т.к. есть Процедура ЗаполнитьДатаНомер()
4. Иван Иванов (Famza) 06.02.12 19:49
(3) *Zed*, работу ЗаполнитьДатаНомер() я не проверял. Проверь, всегда ли будет привязано второе субконто к счету 19 при проведении?
5. Козлов Олег (*Zed*) 07.02.12 09:22
(4)Все возможные варинаты проверял - работает.
6. Иван Иванов (Famza) 07.02.12 09:33
(5) *Zed*, это же хорошо. Значит предлагаемые мною изменения можно сократить. Лишние строки - кому они нужны...)))
Надеюсь, что это всё временная мера и 1С наведёт красоту.
7. Дониэла Иванова (Доня) 07.02.12 09:49
8. Козлов Олег (*Zed*) 07.02.12 10:54
Уже навели - исправили в 536 релизе
9. Иван Иванов (Famza) 07.02.12 11:42
(8) *Zed*, радует, что так быстро. Обычно на 7.7 забивают.
10. Галина (gga) 08.02.12 08:18
по моему проще изменить "или" на "И" Было:
Если ((ПустоеЗначение(ДатаНомерСчетаФактуры) = 1) и (Выбран() = 1))
или (((ПустоеЗначение(ДатаСчетаФактуры) = 1) или (ПустоеЗначение(НомерСчетаФактуры) = 1)) и (Выбран() = 1)) Тогда

Надо:
Если ((ПустоеЗначение(ДатаНомерСчетаФактуры) = 1) и (Выбран() = 1))
и (((ПустоеЗначение(ДатаСчетаФактуры) = 1) или (ПустоеЗначение(НомерСчетаФактуры) = 1)) и (Выбран() = 1)) Тогда
11. Иван Иванов (Famza) 08.02.12 22:46
(10) gga, а если открыть документ за прошлый год? Что тогда будет? В 536 релизе исправлено
12. Oleg karp (Oleg1708) 09.02.12 16:46
Чего было писать если это в 536 есть? хз...
13. Иван Иванов (Famza) 09.02.12 23:02
(12) Oleg1708, ну это потому что 536 вышел, а статья проходила цензуру у модератора. Спросил его - снимать с сайта статью из=за неактуальности - сказал, пусть повисит. Да и денег у тебя она не просит...
14. Юлия Смирнова (Lava596) 22.02.12 04:53
Да правда что, пускай висит, хорошо, конечно, что 1С-ники всё-таки работают, иногда исправляют свои косяки. А вобще такое ощущение, что они узнают об изменениях в законодательстве за 3 дня до выхода релиза и как-то пытаются быстренько подстроиться.
15. Иван Иванов (Famza) 22.02.12 07:45
(14) Lava596, особенно это касается регламентной отчетности. Был как-то на телеконференции 1С - примерно с 5 часовых поясов сыпались вопросы почему обновляют отчетность в последний день сдачи. Ух как они злилися )))
16. Viktor (kurvik) 23.03.12 20:02
Блин.Бухгалтера столкнулись с данной ошибкой.Услуга не попадает в книгу покупок...Надо исправлять и перепроводить документы
17. Иван Иванов (Famza) 23.03.12 23:27
(16) kurvik, обновляй конфигурацию - уже 538 релиз вышел - в нем даже формы документов отработали.
18. Viktor (kurvik) 24.03.12 09:51
(17) Famza, Спасибо. Так и сделаем.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа