|  09.12.2003, 14:48 | #1 | 
| Участник | Выплата зарплаты в Аксапте 
			
			Возникли два вопроса связанные с выплатой начисленной зарплаты в Аксапте: 1) Как Аксапта отслеживает долг за работником / предприятием (или можно так сказать: в каком случае у сотрудников появляются шифры "Долг за работником", "Долг за предприятием") 2) Как в Аксапте реализовать следующую ситуацию: сотруднику начислили 5000 а в кассу к выплате поставили 4000, а остальные 1000 заплатят позже? На этапе создания платежной ведомости, к оплате идет вся сумма. На этапе оплаты платежной ведомости можно поставить 1000 на депонент, но Аксапта на депонент ставит опять таки всю сумму.   | 
|  | 
|  22.12.2003, 12:48 | #2 | 
| Участник | 
			
			1) Отслеживание происходит в момент выполнение процедуры "Закрытие зарплаты". Проверяется сальдо по каждому сотруднику, если оно не равно 0, то формируется "Долг за предприятием" (Долг за сотрудником) в следующем расчетном периоде 2) Для межрасчетных выплат необходимо использовать соответствующую ведомость - "Общая". В списке сотрудников в этой ведомости указать необходимую сумму. При создании ведомости "Зарплата" сформируется оставшаяся сумма к выплате | 
|  | 
|  23.12.2003, 08:42 | #3 | 
| Участник | Цитата: 
		
			Изначально опубликовано ppson  1) Отслеживание происходит в момент выполнение процедуры "Закрытие зарплаты". Проверяется сальдо по каждому сотруднику, если оно не равно 0, то формируется "Долг за предприятием" (Долг за сотрудником) в следующем расчетном периоде А ситуацию типа: начислили 5000, выдали 3000, а остальные 2000 потом выдали - похоже можно решить только через ведомость "Общая" и вторую выплату в 2000 руб. сразу ставить на депонет, а потом с депонента снимать. | 
|  | 
|  23.12.2003, 10:34 | #4 | 
| Участник | Цитата: 
		
			Изначально опубликовано PSA  Многочисленные эксперименты показали: это все работает ТОЛЬКО на уровне округления, т.е. если у сотрудника начислено 1000.30 руб. и округление до 1 руб. - то после закрытия зарплаты на "Долг за предприятием" упадет 0.30 руб. А ситуацию типа: начислили 5000, выдали 3000, а остальные 2000 потом выдали - похоже можно решить только через ведомость "Общая" и вторую выплату в 2000 руб. сразу ставить на депонет, а потом с депонента снимать.   | 
|  | 
|  23.12.2003, 11:45 | #5 | 
| Участник | 
			
			Это точно    | 
|  | 
|  12.03.2009, 08:05 | #6 | 
| MCTS | 
			
			И как решили этот вопрос? Доработкой?    | 
|  | 
|  13.03.2009, 14:08 | #7 | 
| MCTS | :) Цитата: 
		
			Сообщение от PSA
			   Многочисленные эксперименты показали: это все работает ТОЛЬКО на уровне округления, т.е. если у сотрудника начислено 1000.30 руб. и округление до 1 руб. - то после закрытия зарплаты на "Долг за предприятием" упадет 0.30 руб. А ситуацию типа: начислили 5000, выдали 3000, а остальные 2000 потом выдали - похоже можно решить только через ведомость "Общая" и вторую выплату в 2000 руб. сразу ставить на депонет, а потом с депонента снимать. При такой настройке Долг за предприятием (Долг за сотрудником) работает   | 
|  | 
|  03.04.2009, 15:22 | #8 | 
| Участник | 
			
			Может данная "особенность" алгоритма всё-таки не есть чья-то хитрая задумка? Похоже на простой косяк. Проводки по задолженности за предприятием или сотрудником формируются в методе closePayment класса RPayController. В тексте метода присутствует такой вот "странный" кусок кода: X++: if (rpayTransOld.Amount > 0) { debtAmount = rpayTransOld.Amount - roundDown(rpayTransOld.Amount,rPayParameters.PaySheetRound); } else { debtAmount = rpayTransOld.Amount; } if (debtAmount != 0) { rPayTransNew.clear(); rPayTransNew.SourceDate = payPeriod; rPayTransNew.PayPeriod = payPeriod; rPayTransNew.TransDate = systemdateget(); rPayTransNew.PayCtype = debtAmount > 0 ? costCompanyDebt : costEmplDebt; rPayTransNew.Amount = currency::amount(debtAmount); rPayTransNew.PayModuleCode = #ModuleNameClosePayment; rPayTransNew.initFromEmplTable(emplTable1); rPayTransNew.doInsert(); }  Где логика? По-моему, надо вообще убрать этот if-else. Последний раз редактировалось Roman_812; 03.04.2009 в 15:25. | 
|  | |
| За это сообщение автора поблагодарили: farlander (1). | |
|  06.04.2009, 09:07 | #9 | 
| MCTS | ! 
			
			Кто нибудь исправлял этот баг?
		 
				__________________ farlander.ru | 
|  | 
|  06.04.2009, 10:26 | #10 | 
| Участник | 
			
			Это не баг а фича   Подразумевается что задолженность предприятия перед работником может возникнуть только в случае, когда при выплате зарплаты суммы округляются. И в принципе это правда, до 15 числа преприятие обязано рассчитаться с работником, по закону. | 
|  | 
|  06.04.2009, 10:47 | #11 | 
| MCTS | 
			
			Одно дело, что предприятие должно выплатить... Другое дело, что Аксапта ничего не скажет при закрытии периода о том, что ЗП не вся выплачена... 
				__________________ farlander.ru | 
|  | 
|  06.04.2009, 13:09 | #12 | 
| Участник | 
			
			А этого не может быть, если вы создали зарплатную ведомость. Она создается на разницу между начислениями и удержаниями, а доначислить что-то после ее создания уже невозможно.
		 | 
|  | |
| За это сообщение автора поблагодарили: farlander (1). | |
| Теги | 
| баг, выплата зарплаты, долг за предприятием, долг за работником, ошибка, расчеты с персоналом | 
|  | 
| 
 |