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

1С:Предприятие ::

Метки:

Изменение даты проведенного документа

Я
   kadr
 
01.03.04 - 11:24
Господа, решается задача по начислению заработной платы в 1С Зарплата и кадры. Данные по персоналу были занесены в середине января (так как вводится система впервые). При работе выяснилось, что для правильного начисления премии и налога на доходы для физических лиц необходимы данные с начала года. При попытке произвести начисление заработной платы за январь выдает ошибку, что периодические реквизиты не указаны на начало расчетного периода. При попытке изменить дату документа выдает, что нельзя изменить дату проведенного документа. Что делать?

НачальнаяДата = '01.01.2004';
    КонечнаяДата  = '31.01.2004';
    
    Периодический = СоздатьОбъект("Периодический");
    Сотрудник     = СоздатьОбъект("Справочник.Сотрудники");
    
    Сотрудник.ВыбратьЭлементы();
    
    Пока Сотрудник.ПолучитьЭлемент() = 1 Цикл
        ТекущийОбъект = Сотрудник.ТекущийЭлемент();
        Сообщить(ТекущийОбъект);
        Периодический.ИспользоватьОбъект("", ТекущийОбъект);
        Периодический.ВыбратьЗначения(НачальнаяДата, КонечнаяДата);
        ДатаДокумент2="";
        Пока Периодический.ПолучитьЗначение() = 1 Цикл
            Если Периодический.ТекущийДокумент().Выбран() = 1 Тогда
                ДатаДокумент = Периодический.ТекущийДокумент().ДатаДок;
                Периодический.ТекущийДокумент().ДатаДок = ДатаДокумент-40;
            Иначе
                ДатаДокумент = Периодический.ДатаЗнач;
                Периодический.ДатаЗнач = ДатаДокумент-40;
            КонецЕсли;
            Если ДатаДокумент2 <> ДатаДокумент Тогда
                Сообщить(ДатаДокумент);
                ДатаДокумент2 = ДатаДокумент;
            КонецЕсли;
        КонецЦикла;
    КонецЦикла;
 
 
   SnarkHunter
 
1 - 01.03.04 - 11:26
1. Сделать непроведенным...
2. Изменить дату...
3. Провести...
4. Ответить за последствия (опционально)...
   Рупор абсурда
 
2 - 01.03.04 - 11:26
Сделать непроведённым, поменять дату, провести ...
   SnarkHunter
 
3 - 01.03.04 - 11:29
(2)Ты знал, ты знал...
   Рупор абсурда
 
4 - 01.03.04 - 11:31
(3) Откуда?
Я прочитал (1), кое-что перефразировал, кое-что умышленно упустил, чтоб не обвинили в плагиате ...
Ну, и ...
   SnarkHunter
 
5 - 01.03.04 - 11:32
:-)
   kadr
 
6 - 01.03.04 - 11:38
Если Периодический.ТекущийДокумент().Выбран() = 1 Тогда
                ДатаДокумент = Периодический.ТекущийДокумент().ДатаДок;
                Если Периодический.ТекущийДокумент().Проведен() = 1 Тогда
                    Периодический.ТекущийДокумент().СделатьНеПроведенным();
                    Периодический.ТекущийДокумент().ДатаДок = ДатаДокумент-40;
                    Периодический.ТекущийДокумент().Провести();
                КонецЕсли;
            Иначе
                ДатаДокумент = Периодический.ДатаЗнач;
                Периодический.ДатаЗнач = ДатаДокумент-40;
            КонецЕсли;

Говорит, что документ не выбран...
   327
7 - 01.03.04 - 11:40
Кривые у вас мозги ...
Надо так

1. Вставить клизму установщику за необучение
2. Вставить клизму расчетчику за незадание вопросов
3. Найти косяк
4. Сделать непроведенным...
5. Изменить дату...
6. Провести...
7. Убедиться, что все неправильно
8. Повторить пункты 1,3,4,5,6,7 NN раз
9. Вставить клизму программисту - на будущее
10. Вставить клизму расчетчику - чтобы не выпендривалась и задавала вопросы ...
   kadr
 
8 - 01.03.04 - 11:42
На данный момент я являюсь и программистом, и расчетчиком, и установщиком... Так что (1+1+1+1=4) четыре клизмы за раз - больно круто!
А как по поводу (6)?
   Рупор абсурда
 
9 - 01.03.04 - 11:43
(6) Правильно говорит ...
Надо выбрать документ!
   kadr
 
10 - 01.03.04 - 11:49
(9) А нельзя ли чуть по подробнее? Разве инструкция Если Периодический.ТекущийДокумент().Выбран() = 1 не является проверкой на то выбран документ или нет?
 
  Рекламное место пустует
   SnarkHunter
 
11 - 01.03.04 - 11:55
Не является...
Выбран() в данном контексте есть синоним глагола "существует"... Тебе же перед изменением документа нужно на него спозиционироваться при помощи НайтиДокумент()...
   kadr
 
12 - 01.03.04 - 12:02
Заработало-о-о-о-о!!! Все всем спасибо!
   Дмитрий
 
13 - 01.03.04 - 12:18
(12) И как после 4-х клизм?
   kadr
 
14 - 01.03.04 - 12:20
(13) Смешно...


Список тем форума
  Рекламное место пустует
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует