SAD
 
  
  Joined: 09 Jun 2004 Posts: 114 Location: Гальвик Евгений Occupation: Инж.-программист Interests: Южно-Сахалинск
  | 
		
			
				 Posted: 27 Dec 2004 12:28    Post subject: ТД из БЭСТ4 перестал работать в БЕСТ4+. Помогите разобраться | 
				     | 
			 
			
				
  | 
			 
			
				Нужно было расчитать отпуск из расчета 12 месяцев. Берем зарплату за 1-ый месяц. Проверяем полностью отработал или нет (сверяем рабочие дни с нормо-днями). Если "да", то берем коэффициент 29.6, иначе умножаем на 1.4. И так по каждому месяцу.
 
Чтобы не делать кучу столбцов написал FileEval.
 
Весь ТД не печатаю, покажу то что перестало работать.
 
-------------------------
 
| Нормо-дни | ФОТ  |
 
|      12мес   | за 12 |     
 
|                  |  мес  |
 
-------------------------
 
На нормо-дни вешаю FileEval
 
 
//форма расчета отпуска за 12 месяцев в табличном документе
 
//РАСЧЕТ НОРМО-ДНЕЙ
 
 
//определение переменных
 
PRIVATE a,mes_0, god_0, nnum, god, graf
 
PRIVATE rmes_1,ndni_1
 
 
a:=tdocsh->fperiod
 
f_setrelation ("CARDSPRI","UPPER(TNUM)")
 
nnum:=cardspri->tnum
 
graf:=cardspri->c_graph
 
qcol:=16
 
qstr:=1
 
mes_0:=val(right(a,2))
 
god_0:=val(left(a,4))
 
  if mes_0 <>12
 
    god:=god_0-1
 
  else
 
    god:=god_0
 
  endif
 
a:=6
 
//*********************НОРМО-ДНИ************************
 
 
DBPUSH()
 
dbOpenBases({{'QUOTAS',loadpath()+'SALARY\QUOTAS.DBF'}})
 
 
if mes_0<10
 
  rmes_1:=alltrim(str(god))+".0"+alltrim(str(mes_0))
 
else
 
  rmes_1:=alltrim(str(god))+"."+alltrim(str(mes_0))
 
endif
 
 
dbpush('QUOTAS','01',"QUOTAS->PERIOD=rmes_1.AND.QUOTAS->CODE=graf",{})
 
 ndni_1:=QUOTAS->days
 
  dbpop()
 
 
a:=ndni_1
 
 
dbCloseBases ({'QUOTAS'})
 
DBPOP()
 
a
 
**********************************************************
 
 
А на второй столбец вешаю "Расчитать по колонке начислений 008" минус 12 мес расчитать за 12 месяцев.
 
 
 
При расчете ТД первый раз по F10 все нормально. А вот чтоб перекинуть в л/с по F5 потом или нажать второй F10 - стало в Б4+ выбивать такую хрень
 
 
 
 
                   Error BASE/1002 Алиас не существует: Quotas
 
 
 
                               Quit                       Retry
 
 
Где баг не пойму. Причем если удалить второй столбец то все нормально. | 
			 
		  |