уменьшение базы зарплаты
09.04.2007
18:00
#2
"Да легко =)
Создаете внешний отчет, на нем три элемента:
НачДата (реквизит диалога типа Дата)
КонДата (реквизит диалога типа Дата)
Выполнить (кнопка, на вкладке Дополнительно в поле Формула впишите "Удаление()" без кавычек)
В модуль обработки кладете:
//////////
Перем Период,НТП,КТП;
Процедура Удаление()
Перем Запрос, ТекстЗапроса;
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ЖР=СоздатьОбъект("ЖурналРасчетов.Зарплата");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с НачДата по КонДата;
|ФизЛицо = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент;
|ЗаписьЖР = ЖурналРасчетов.Зарплата.ТекущаяЗапись;
|Результат = ЖурналРасчетов.Зарплата.Результат;
|Группировка ФизЛицо без групп;
|Группировка ЗаписьЖР;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
Пока Запрос.Группировка(1) = 1 Цикл
Пока Запрос.Группировка(2) = 1 Цикл
ТекущаяЗапись=Запрос.ЗаписьЖР;
ЖР.НайтиЗапись(ТекущаяЗапись);
ЖР.УдалитьЗапись();
КонецЦикла;
КонецЦикла;
КонецПроцедуры
///////////
И всё =) Укажите период, за который хотите удалить записи."
Создаете внешний отчет, на нем три элемента:
НачДата (реквизит диалога типа Дата)
КонДата (реквизит диалога типа Дата)
Выполнить (кнопка, на вкладке Дополнительно в поле Формула впишите "Удаление()" без кавычек)
В модуль обработки кладете:
//////////
Перем Период,НТП,КТП;
Процедура Удаление()
Перем Запрос, ТекстЗапроса;
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ЖР=СоздатьОбъект("ЖурналРасчетов.Зарплата");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с НачДата по КонДата;
|ФизЛицо = ЖурналРасчетов.Зарплата.Объект.ОсновнойЭлемент;
|ЗаписьЖР = ЖурналРасчетов.Зарплата.ТекущаяЗапись;
|Результат = ЖурналРасчетов.Зарплата.Результат;
|Группировка ФизЛицо без групп;
|Группировка ЗаписьЖР;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
Пока Запрос.Группировка(1) = 1 Цикл
Пока Запрос.Группировка(2) = 1 Цикл
ТекущаяЗапись=Запрос.ЗаписьЖР;
ЖР.НайтиЗапись(ТекущаяЗапись);
ЖР.УдалитьЗапись();
КонецЦикла;
КонецЦикла;
КонецПроцедуры
///////////
И всё =) Укажите период, за который хотите удалить записи."
Читают тему
(гостей: 1)