Страница 1 из 1
Подсветка по разнице дат у двух файлов
Добавлено: Вт фев 13, 2007 20:31
valexiev
Помогите умельцъ, мне нужно что-то очень особенное: если файл
"mPay2 DOC M.1.PM 1.0 QR001 Quality Review Sign-off.doc" новее чем файл
"mPay2 DOC M.1.PM 1.0 - Project Mandate.doc"
на больше чем 1д то надо разкрасить его одним цветом, а если не новее то другим.
Тоест нужен фильтр которъй находил бъ файл "(.*)QR\d.*", но только если он новее чем файл "\1 - .*" хотя бъ на 1д.
Пожалуйста если не трудно, дайте PM или емаил на vladimir собака sirma точка bg. Спасибо за все ответъ!
CaptainFlint:
Сообщение вынесено в отдельную ветку, поскольку оно не относится к обсуждению TCKB.
[mod="Avada"]Перемещено из Секретов и советов в Автоматизацию.[/mod]
Добавлено: Ср фев 14, 2007 09:58
Вахмурка
Можно только сравнивать дату файла с системной датой, а не дату одного файла с датой другого.
Не совсем по теме, но
http://powerpro.wincmd.ru/Scripts/FileAge.htm.
Это я к чему. Можно написать скрипт, который бы находил такие файлы (с нужной разницей по дате), а потом как-то определял их закраску. Один из способов - комментарий в descript.ion.
Добавлено: Ср фев 14, 2007 11:32
Batya
Нужно использовать
Script Content Plugin.
Только для скрипта нужны более четкие условия.
Я не очень силен в масках, но, вроде, маска "(.*)QR\d.*" не совсем верна - у файлов разные окончания (помимо добавки QR\d). По каким условиям точно сопоставить эти два файла?
Добавлено: Ср фев 14, 2007 23:22
valexiev
Ну ето я понимаю, но потом как сказать ето фильтру чтоб он потом определил закраску?
Один из способов - комментарий в descript.ion
Вот ето я не понял.
Изчисление разницъ дней до "базового" файла
Добавлено: Чт фев 15, 2007 02:14
valexiev
Вот ето да! Попробую (никогда не жаль употребить 3-4ч на автоматицазию которая потом может сохранить мне аж 3-4 минутъ!

)
Только для скрипта нужны более четкие условия.
Условия такие: на каждъй основной файл у меня еще 4 "QR" файла (ето вам PRINCE2)
Код: Выделить всё
mPay2 DOC M.1.PM 1.0 - Project Mandate.doc
mPay2 DOC M.1.PM 1.0 QR001 Quality Review Sign-off.doc
mPay2 DOC M.1.PM 1.0 QREL001-1 Quality Review Error List.doc
mPay2 DOC M.1.PM 1.0 QRFAL001-1 Quality Review Follow-up Action List.doc
Хочу раскрасить QR файлъ которъе не новее основного файла.
По каким условиям точно сопоставить эти два файла?
Одинаковое начало имени, до "QR".
Так.. написал, и даже работает!
Код: Выделить всё
'Script for Script_WDX
' (c) Vladimir Alexiev <vladimir@sirma.bg>
' Given a "QR" file such as
' mPay2 DOC M.1.PM 1.0 QR001 Quality Review Sign-off.doc
' Find the "base file" such as
' mPay2 DOC M.1.PM 1.0 - Project Mandate.doc
' And then return the date difference between the "QR" and "base" file in days.
' Also returns a sign (+) or (-) depending on whether the difference is >=5d or less.
' For example: 0 (-), 4 (-), 5(+), 10 (+)
'filename = "mPay2 DOC M.1.PM 1.0 QR001 Quality Review Sign-off.doc"
content = ""
set re = new regexp
set reNotbase = new regexp
re.pattern = "^(.* )1\.0 QR(FAL)?0" ' interesting QR files
reNotbase.pattern = "^(.* )1\.0 QR" ' not "base" files: these are all QR files
set matches = re.execute (filename)
if matches.count > 0 then
prefix = matches(0).submatches(0)
set fso = CreateObject("Scripting.FileSystemObject")
for each basefile in fso.getFolder(".").files
basename = basefile.name
if prefix = left (basename, len(prefix)) and not reNotbase.test(basename) then
dat = fso.getFile(filename).dateLastModified
basedat = fso.GetFile(basename).dateLastModified
diff = DateDiff ("d", basedat, dat) ' or "h" for hours
if diff < 5 then
sign = "(-)"
else
sign = "(+)"
end if
content = diff & " " & sign
exit for
end if
next
set fso = nothing
end if
set matches = nothing
set re = nothing
set reNotbase = nothing
'msgbox content
script.ini:
Код: Выделить всё
[QR-date-diff]
Script=QR-date-diff.vbs
LongName=0
ParseDirs=0