| View previous topic :: View next topic | 
	
	
		| Author | Message | 
	
		| Надежда Привалова 
 
 
 Joined: 04 Apr 2003
 Posts: 5
 Location: Надежда
 
 
 
 | 
			
				|  Posted: 25 Nov 2003 11:01    Post subject: Расчетный период в шаблоне таб.документа |   |  
				| 
 |  
				| В табличном документе необходимо вытащить часы оплаты по среднему(они привязаны в табеле к конкретной колонке). В заголовке табличного вводится фактический период расчета, а часы необходимо вытаскивать относительно расчетного периода( например, расчетный период=2003.11, фактический период=2004.01 - это при расчете отпускных будущего периода). Пробовала через функцию S_TIO, но не получается задать расчетный период ( табличный документ настроен на расчетный период). |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Павлова Наталья 
 
  
 Joined: 08 Jan 2002
 Posts: 814
 Location: Наталья Павлова
 
 
 
 | 
			
				|  Posted: 25 Nov 2003 15:24    Post subject: |   |  
				| 
 |  
				| Из заголовка табличного документа можно извлечь период следующим образом (содержимое колонки - формула): val(right(tdocsh->fperiod,2)).
 
 При необходимости вывести из заголовка табличного документа число, месяц и год используют следующие формулы:
 Число: val(left(dtoc(tdocsh->date),2))
 Месяц: val(substr(dtoc(tdocsh->date),4,2))
 Год:   val(right(dtoc(tdocsh->date),2))
 
 Уменьшить период на единицу (или любое другое число) возможно так:
 val(right(tdocsh->fperiod,2))-1.
 
 Соответственно функцию S_TIO() следует записать:
 S_TIO("ВИДНАЧ","ЗР1", val(right(tdocsh->fperiod,2))-1)
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Надежда Привалова 
 
 
 Joined: 04 Apr 2003
 Posts: 5
 Location: Надежда
 
 
 
 | 
			
				|  Posted: 25 Nov 2003 15:55    Post subject: Расчетный период в шаблоне таб.документа |   |  
				| 
 |  
				| То, что Вы ответили, я уже читала и попробовала. Все это работает нормально, когда период из заголовка таб.документа совпадает с расчетным периодом. Мне надо, чтобы вытаскивание часов происходило от расчетного периода, а в заголовке стоял фактический период( например, расчетный=2003.11, фактический =2004.01) |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Павлова Наталья 
 
  
 Joined: 08 Jan 2002
 Posts: 814
 Location: Наталья Павлова
 
 
 
 | 
			
				|  Posted: 25 Nov 2003 16:29    Post subject: |   |  
				| 
 |  
				| При изменении года можно использовать fileeval (Файл текста программы в каталоге PRO\PLUGINS\PRINT\SALARY): 
 ===
 
 
  	  | Code: |  	  | private a,m,g,m1,b //apars[1] -на сколько месяцев надо отступить
 
 a:=tdocsh->fperiod
 m:=val(right(a,2))
 g:=val(left(a,4))
 m1:=m-apars[1]
 if m1<=0
 //уменьшаем месяц и год
 m:=12+m1
 g:=g-1
 else
 //уменьшаем месяц
 m:=m1
 endif
 
 a:=alltrim(str(g))+"."+padl(m,2,'0')
 
 b:=S_TIO("ВИДНАЧ","ЗР1",a)
 | 
 ===
 
 Вызов в табличном документе fileeval("имя файла",{количество вычитаемых месяцев})
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Надежда Привалова 
 
 
 Joined: 04 Apr 2003
 Posts: 5
 Location: Надежда
 
 
 
 | 
			
				|  Posted: 25 Nov 2003 17:58    Post subject: Расчетный период в шаблоне таб.документа |   |  
				| 
 |  
				| Спасибо. Все получило |  | 
	
		| Back to top |  | 
	
		|  | 
	
		|  |