От Дмитрия Соловей — @solovey_nchub

Расчет разницы между датой и сегодняшним числом с выводом в виде “Х лет Х месяцев Х дней”

Данная формула собирает большой перечень переменных для расчета. За основу берется дата в UNIX формате в переменной table.current.firstWorkDay.

if(table.current.firstWorkDay == null, "Не указан первый рабочий день", 

let({
  first: table.current.firstWorkDay,
  firstdate: toDate(first),
  today: toNumber(now()),
  total:  today - first,
  y: total / 31556926000,
  m: (total / 2629743000) - (floor(y) * 12),
  d: if((total / 86400000 / 365.24) < 1, total / 86400000, (total / 86400000 / 365.24)),
  cury: floor(y),
  curm: floor(m),
  curd: floor(d),
  ywords: ['год', 'года', 'лет'],
  mwords: ['месяц', 'месяца', 'месяцев'],
  dwords: ['день', 'дня', 'дней'],
  years: cury & ' ' & ywords[if(
  cury % 100 > 4 and cury % 100 < 20,
  2, [2, 0, 1, 1, 1, 2][if(cury % 10 > 5, 5, cury % 10)]
)],
  month: curm & ' ' & mwords[if(
  curm % 100 > 4 and curm % 100 < 20,
  2, [2, 0, 1, 1, 1, 2][if(curm % 10 > 5, 5, curm % 10)]
)],
  days: curd & ' ' & dwords[if(
  curd % 100 > 4 and curd % 100 < 20,
  2, [2, 0, 1, 1, 1, 2][if(curd % 10 > 5, 5, curd % 10)]
)],
},
if(cury <= 0, "", years)  
& " " & 
if(curm <= 0, "", month)
& " " &
if(curd <= 0, "меньше одного дня", days)
)

)

Генератор паролей

Данная формула перебирает массив array в функции sort, и возвращает массив в перемешанном виде в переменной pass, а далее функция slice собирает из этой переменной 9 символов для пароля. Количество символов можно регулировать изменяя число в slice.

let({
  array: 
["A", "B", "C", "D", "E", "F", "G", "H", "I", 
"K", "L", "M", "N", "O", "P", "Q", "R", "S", 
"T", "V", "X", "Y", "Z", "a", "b", "c", "d", 
"e", "f", "g", "h", "i", "k", "l", "m", "n", 
"o", "p", "q", "r", "s", "t", "v", "x", "y", 
"z", "1", "2", "3", "4", "5", "6", "7", "8", 
"9", "0", "_", "$", "@", "%", "&", "~"],
  pass: map(
  sort(map(array, [item, random()]), item[1]),
  item[0]
)                    
}, 
join(slice(pass, 0, 9 ), "")
)

Сборка ролей пользователей из галочек

Данная формула собирает все поля из формы и преобразовывает в текст с нужными ключами и правами доступа

let({
  newsFull: "newsFull" & data.fields.newsFull & ", ",
  fileBasic: "fileBasic" & data.fields.fileBasic & ", ",
  fileFull: "fileFull" & data.fields.fileFull & ", ",
  reportsClientBasic: "reportsClientBasic" & data.fields.reportsClientBasic & ", ",
  forecast: "forecast" & data.fields.forecast & ", ",
  financeBasic: "financeBasic" & data.fields.financeBasic & ", ",
  financePlanerFull: "financePlanerFull" & data.fields.financePlanerFull & ", ",
  financePrize: "financePrize" & data.fields.financePrize & ", ",
  crmBasic: "crmBasic" & data.fields.crmBasic & ", ",
  crmFull: "crmFull" & data.fields.crmFull & ", ",
  crmDelete: "crmDelete" & data.fields.crmDelete & ", ",
  callcenterBasic: "callcenterBasic" & data.fields.callcenterBasic & ", ",
  callcenterFull: "callcenterFull" & data.fields.callcenterFull & ", ",
  callcenterScripts: "callcenterScripts" & data.fields.callcenterScripts & ", ",
  teamBasic: "teamBasic" & data.fields.teamBasic & ", ",
  knowlageBaseFull: "knowlageBaseFull" & data.fields.knowlageBaseFull & ", ",
  ideaFull: "ideaFull" & data.fields.ideaFull & ", ",
  hrBasic: "hrBasic" & data.fields.hrBasic & ", ",
  hrFull: "hrFull" & data.fields.hrFull & ", ",
  clientServiceBasic: "clientServiceBasic" & data.fields.clientServiceBasic & ", ",
  clientServiceFull: "clientServiceFull" & data.fields.clientServiceFull & ", ",
  administrator: "administrator" & data.fields.all & ", ",
},
newsFull &
fileBasic &
fileFull &
reportsClientBasic &
forecast &
financeBasic &
financePlanerFull &
financePrize &
crmBasic &
crmFull &
crmDelete &
callcenterBasic &
callcenterFull &
callcenterScripts &
teamBasic &
knowlageBaseFull &
ideaFull &
hrBasic &
hrFull &
clientServiceBasic &
clientServiceFull &
administrator
)

Разбор массива ключей роли для автозаполнения формы

Данная формула берет строку из БД, трансформирует в массив, а далее для каждого ключа присваивается переменная которая принимает значение 0 или 1, и таким образом переключает значение галочки при использовании предзаполнения.