» | Казахстанский Бухгалтерский форум www.balans.kz | Вычет из з/пл |
|
Показать сообщения: Начиная со старых .::. Начиная с новых |
Автор: | Нерезидент Баланса |
Добавлено: | #1  Вт Фев 26, 2008 12:28:30 |
Заголовок сообщения: | Вычет из з/пл |
В 1С за неполный месяц делается вычет 9752 за 2007г. (т.е. человек отработал меньше половины месяца), как и что исправить в 1С, помогите, подскажите, пожалуйста. |
Автор: | Talik |
Добавлено: | #2  Вт Фев 26, 2008 12:40:56 |
Заголовок сообщения: | |
А какая у вас 1с все должны догадаться? |
Автор: | Нерезидент Баланса | ||
Добавлено: | #3  Вт Фев 26, 2008 13:00:25 | ||
Заголовок сообщения: | |||
7.70.025 |
Автор: | Граур Станислав |
Добавлено: | #4  Вт Фев 26, 2008 13:08:53 |
Заголовок сообщения: | |
Неполный ответ. Надо было сказать 1С 7.70.025 Конфигурация бухгалтерский учет 256 (или 257 или ...) релиз По существу. В документе "Ведомость начислений" есть модуль документа, а там функция "ПредоставитьВычет" Так вот, эта функция не рассматривает кол-во отработанных дней(часов). И всегда (за исключением месяца приема и увольнения) возвращает 1 (т.е. предоставляет вычет) Что делать 1) Подождать может вам здесь сбросят исправление для этой функции и вы исправите сами. Не думаю что там чего-то сложное. А исправить (просто заменить текст) уж не сложнее чем работать в ворде 2) Или обратится к обслуживающему вашу 1С программисту З.Ы. Увы сам не чинил, умнее ничего не скажу |
Автор: | NoName |
Добавлено: | #5  Вт Фев 26, 2008 13:36:36 |
Заголовок сообщения: | |
Если очень хочется, то в модуле проведения документа ВедомостьНачислений исправьте функцию ПредоставитьВычет() на это: //------------------------------------------------------------------------------ Функция ПредоставитьВычет(тзДокумента, тзДопНачислений) ПредоставитьВычет = 1; Если ДатаДок >= Дата(2004, 01, 01) Тогда ОтработаноДней = ТзДокумента.Дней + Окр(ТзДокумента.Часов/8,0,1); Стр = 0; Если тзДопНачислений.НайтиЗначение(тзДокумента.Сотрудник, Стр, "Сотрудник") = 1 Тогда тзДопНачислений.ПолучитьСтрокуПоНомеру(Стр); Структура = тзДопНачислений.Структура; КонецЕсли; Если ПустоеЗначение(Структура) = 0 Тогда Структура.ВыбратьСтроки(); Пока Структура.ПолучитьСтроку() = 1 Цикл ОтработаноДней = ОтработаноДней + Структура.Дней + Окр(Структура.Часов/8,0,1); КонецЦикла; КонецЕсли; Если ОтработаноДней < Константа.ЧислоРабочихДнейВМесяце.Получить(ДатаДок)/2 Тогда ПредоставитьВычет = "Отработано менее половины месяца" КонецЕсли; КонецЕсли; Возврат ПредоставитьВычет; КонецФункции // ПредоставитьВычет() //------------------------------------------------------------------------------ Но ситуация очень спорная, поэтому заранее определитесь, кто будет отвечать, если что. |