Выбор периода и вызов подпрограммы в цикле за каждый месяц этого периода — различия между версиями

Материал из Фабиус wiki
Перейти к: навигация, поиск
м
м
 
(не показано 12 промежуточных версий этого же участника)
Строка 1: Строка 1:
  local ip, m, data, i
+
  local ip, m, data, ii
 
+
  ip := inputperiod( true )
  ip := [[InputPeriod]]( true )
+
  if empty( ip )
 
+
  if Empty( ip )
+
 
   return
 
   return
 
  endif
 
  endif
 
+
  m := ( year( stod( ip[2] ) ) - year( stod( ip[1] ) ) ) * 12 + month( stod( ip[2] ) ) - month( stod( ip[1] ) )
  m := ( Year( [[StoD]]( ip[2] ) ) - Year( [[StoD]]( ip[1] ) ) ) * 12 + Month( [[StoD]]( ip[2] ) ) - Month( [[StoD]]( ip[1] ) )
+
  data := stod( ip[1] )
 
+
  for ii := 0 to m
  data := [[StoD]]( ip[1] )
+
   sql := [ select * From mtun] + ret_f_ext( data,, ii ) + [ where datdoc between '] + sqldate( ip[1] ) + [' and '] + sqldate( ip[2] ) + [' ]
 
+
  for i := 0 to m
+
   sql := [ Select * From MTUN] + Ret_f_ext( data,, i ) + [ Where DATDOC between '] + SqlDate( ip[1] ) + [' and '] + SqlDate( ip[2] ) + [' ]
+
 
  next
 
  next
 
 
= Смотрите также =
 
= Смотрите также =
 
 
[[Шаблоны программ на внутреннем языке фабиуса для повторного использования]]
 
[[Шаблоны программ на внутреннем языке фабиуса для повторного использования]]

Текущая версия на 14:07, 29 июля 2022

local ip, m, data, ii
ip := inputperiod( true )
if empty( ip )
  return
endif
m := ( year( stod( ip[2] ) ) - year( stod( ip[1] ) ) ) * 12 + month( stod( ip[2] ) ) - month( stod( ip[1] ) )
data := stod( ip[1] )
for ii := 0 to m
  sql := [ select * From mtun] + ret_f_ext( data,, ii ) + [ where datdoc between '] + sqldate( ip[1] ) + [' and '] + sqldate( ip[2] ) + [' ]
next

Смотрите также

Шаблоны программ на внутреннем языке фабиуса для повторного использования