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 |
|
|
|