Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ? / 9 сообщений из 9, страница 1 из 1
03.03.2010, 09:59
    #36498909
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
Делаю так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
ЖРЗ = СоздатьОбъект("ЖурналРасчетов.Зарплата");
ЖРЗ.ВыбратьПериод(ВыбНачПериода);
сч= 0 ;
Пока ЖРЗ.ПолучитьЗапись() =  1  Цикл
	Если ЖРЗ.ВидРасч = ВидРасчета.ЕжемесячнаяПремия Тогда
 	
	 	ЖРЗ.УстановитьРеквизит("ДатаНачала", ДобавитьМесяц(ЖРЗ.ДатаНачала,- 1 ))   ;
		ЖРЗ.УстановитьРеквизит("ДатаОкончания", ДобавитьМесяц(ЖРЗ.ДатаОкончания,- 1 ));
		ЖРЗ.Записать();   
		
		Состояние(ЖРЗ.Объект);
		
	КонецЕсли;
	сч=сч+ 1 ;
	Состояние("Журнал.Зарплата..."+Строка(сч));
КонецЦикла;
но выдаёт ошибку: Невозможно предустановить реквизит для записи: ДатаНачала
...
Рейтинг: 0 / 0
03.03.2010, 10:18
    #36498960
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
В общем есть Обработка.ИсправлениеЖР
Там добавляется новая запись, меняются значения, и удаляется текущая запись.
Видимо по другому никак.
...
Рейтинг: 0 / 0
03.03.2010, 11:54
    #36499278
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
имхо дата начада не реквизит ...
читайте книгу как применять
...
Рейтинг: 0 / 0
03.03.2010, 11:55
    #36499284
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
если бы все было так просто ...
любой бы Вася-сантехник мог влезть в закрытый период зарплаты
и испохабить все
...
Рейтинг: 0 / 0
03.03.2010, 12:07
    #36499339
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
Спасибо. Но руководство решило что премию теперь будем рассчитывать за не за прошлый месяц а за поза прошлый месяц.
Журнал уже сформирован. И поэтому надо всё переиграть.
Есть предложения? Кроме как
удалить запись (сохранив все реквизиты)

добавить новую (заменив ДатаНачала и ДатаОкончания)
...
Рейтинг: 0 / 0
03.03.2010, 12:46
    #36499494
paps
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
"мягкая "смена рп должна вам помочь
...
Рейтинг: 0 / 0
03.03.2010, 13:31
    #36499655
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
из штатных средств вроде как только документ исправление
и документ сторно ...
перерасчет будет оформлен в текущем учетном периоде
а как Вы хотели? Вы уже налоги выплатили и авансовые в пенсионку начислили
период закрыт - все изменения в текущем периоде
это закон
...
Рейтинг: 0 / 0
03.03.2010, 14:19
    #36499858
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
Сделал так, пока сижу проверяю, по-моему я вышел из положения. Если будут замечания, буду только благодарен.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Процедура Сформировать()
	
	т = СоздатьОбъект("ТаблицаЗначений");
	
	т.НоваяКолонка("ТекЗапись");
	т.НоваяКолонка("Документ");
	т.НоваяКолонка("РодительскийДокумент");
	т.НоваяКолонка("Объект");
	т.НоваяКолонка("ВидРасч");
	т.НоваяКолонка("ДатаНачала");
	т.НоваяКолонка("ДатаОкончания");
...
	ЖРЗ = СоздатьОбъект("ЖурналРасчетов.Зарплата");
	ЖРЗ.ВыбратьПериод(ВыбНачПериода);
это для отладки, т.е. менять только по одному сотруднику
Код: plaintext
1.
2.
3.
4.
5.
6.
	///////////////////////////////// ДЛЯ ОТЛАДКИ
	спрСотр = СоздатьОбъект("Справочник.Сотрудники");
	спрСотр.ПорядокКодов();
	спрСотр.НайтиПоКоду( Формат(Число(ТАБНОМЕР), "Ч(0)6") );
	ЖРЗ.ВыбратьЗаписиПоОбъекту(спрСотр.ТекущийЭлемент(), ВыбНачПериода, ВыбКонПериода);  // ДЛЯ ОТЛАДКИ
	///////////////////////////////// ДЛЯ ОТЛАДКИ
здесь читаю все значения реквизитов
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
	сч= 0 ;
	ПОКА ЖРЗ.ПолучитьЗапись() =  1  Цикл
		Если ЖРЗ.ВидРасч = ВидРасчета.ЕжемесячнаяПремия  Тогда
	        					
			т.НоваяСтрока(); 
	
			т.ТекЗапись = ЖРЗ.ТекущаяЗапись();
	
			т.Документ             = ЖРЗ.Документ;
			т.РодительскийДокумент = ЖРЗ.РодительскийДокумент;
			т.Объект               = ЖРЗ.Объект;
			т.ВидРасч              = ЖРЗ.ВидРасч;
			т.ДатаНачала           = ЖРЗ.ДатаНачала;
			т.ДатаОкончания        = ЖРЗ.ДатаОкончания;
...
			сч=сч+ 1 ;
			Состояние( Строка(сч) );
			
		КонецЕсли;
	КОНЕЦЦИКЛА;
	Сообщить( "ЗАМЕНЮ  " + Строка(сч) + " зап." );   //

здесь меняю дату и записываю в журнал
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
	сч= 0 ;
	т.ВыбратьСтроки();
	ПОКА т.ПолучитьСтроку() =  1  Цикл
		
		ЖРЗ.НайтиЗапись( т.ТекЗапись );
		ЖРЗ.УдалитьЗапись();
	    
		ЖРЗ.Новая();
		
		ЖРЗ.УстановитьРеквизит("Документ",             т.Документ);
		ЖРЗ.УстановитьРеквизит("РодительскийДокумент", т.РодительскийДокумент);
		ЖРЗ.УстановитьРеквизит("Объект",               т.Объект);
		ЖРЗ.УстановитьРеквизит("ВидРасч",              т.ВидРасч);
		ЖРЗ.УстановитьРеквизит("ДатаНачала",    ДобавитьМесяц(т.ДатаНачала,   - 1 ) );
		
		// если дата окончания была последним днём в месяце, 
		// то и после вычитания одного месяца, 
		// эта дата тоже должна стать последней датой в месяце.
		
		ДатаОконч = ДобавитьМесяц(т.ДатаОкончания,- 1 );
		Если КонМесяца(т.ДатаОкончания) = т.ДатаОкончания Тогда
			ДатаОконч = КонМесяца(ДатаОконч);
		КонецЕсли;
		
		ЖРЗ.УстановитьРеквизит("ДатаОкончания", ДатаОконч );
...
		ЖРЗ.Записать();
		
		сч=сч+ 1 ;
		Состояние("запись Журнал.Зарплата..."+Строка(сч));
	КОНЕЦЦИКЛА;

   	Сообщить( "ЗАМЕНИЛ " + Строка(сч) + " зап." );   //

КонецПроцедуры
...
Рейтинг: 0 / 0
03.03.2010, 15:51
    #36500180
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ?
переод регистрации? переод действия ?
результат?
вообще честно говоря я не понял смысл этих танцев с бубном
но наверное Вы знаете что делаете ... удачи
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / ЗиК 7.7 Как заменить в уже сущевствующей записе журнала зарплата, ДАТЫ? / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]