Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript (Часть 2)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

Открыть новую тему     Написать ответ в эту тему

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопросы, задачи и их решения по VBScript.

 
Мануал (english, 600 Кб). | Зеркало
MS Scripting 5.6 (700 КБ), включает последнюю версию VBS. Владельцам XP/2000(?) должен быть не нужен. | Зеркало
Немного на wikiпедии.
Предыдущие части: 1
 
Смежные темы:
Сценарии Windows
Командная строка, батники\сценарии (bat, cmd)
Скрипты KiXtart

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 04:12 12-07-2011 | Исправлено: Smitis, 23:28 26-02-2018
kolonium

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
arguments.Item нужно поставить 0  
Для лога нужен вывод, например wscript.echo "Deleting.."&oI.Path  
Для получения всех профилей можно использовать реестр, значение ProfileImagePath подставлять вместо %HOMEPATH%.

 
сделал как написано, что-то не выходит каменный цветок, можно пример в исполнении
 
когда ставлю strFldr = Wscript.arguments.Item(0)
вообще не чистит

Всего записей: 65 | Зарегистр. 27-11-2008 | Отправлено: 12:42 27-06-2012 | Исправлено: kolonium, 13:21 27-06-2012
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подробнее...
 
В win7 раьотает, но только если перед %HOMEPATH% ставить букву диска

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 15:46 27-06-2012
kolonium

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Black_Lung

Цитата:
Подробнее...

у меня это выдаёт :
 

 
на XP,

Цитата:
В win7 раьотает, но только если перед %HOMEPATH% ставить букву диска  

на w7 ещё не проверял, первоначальный скрипт, что без лога, работает под всеми системами (w2k3r2sp2,XP,7), т.е. сомнений в его работе нет, только лога не хватает, и всех профилей юзвирей

Всего записей: 65 | Зарегистр. 27-11-2008 | Отправлено: 16:26 27-06-2012 | Исправлено: kolonium, 16:31 27-06-2012
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Когда вставлял в форум, случайно стёр букву S.

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 16:53 27-06-2012
kolonium

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Black_Lung

Цитата:
Когда вставлял в форум, случайно стёр букву S

да точно, не посмотрел, теперь выдаёт следующее:
 

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

Всего записей: 65 | Зарегистр. 27-11-2008 | Отправлено: 17:45 27-06-2012 | Исправлено: kolonium, 18:30 27-06-2012
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скрипт теоритически работает с любым абсолютным путём, но могут быть проблемы с %HOMEPATH%  
Создать для теста например C:\temp набросать туда файлов и папок и запустить с указанием пути C:\temp

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 17:57 27-06-2012
kolonium

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Black_Lung

Цитата:
Скрипт теоритически работает с любым абсолютным путём

это понятно, только мне надо что-то наподобие :
For /F "Tokens=2*" %%I In ('Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /V ProfilesDirectory') Do Set Profiles=%%J
Call Set Profiles=%Profiles%
 
For /F "Delims=" %%I In ('Dir /B /AD-S-H "%Profiles%" ^| FindStr /V /B /I /C:"All Users"') Do
 
только на VBS
 
и потом так и не ясно, что за ошибка
 

 
вопрос всё ещё актуален, может кто подскажет, хотя бы, как правильно добавить вывод в файл, чтобы первоначальный скрипт логировал

Всего записей: 65 | Зарегистр. 27-11-2008 | Отправлено: 20:10 27-06-2012 | Исправлено: kolonium, 23:23 28-06-2012
kolonium

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Black_Lung

Цитата:
arguments.Item нужнo поставить 0  
Для лога нужен вывод, нaпример wscript.echo "Deleteing.."&oI.Path  


Цитата:
Подробнее... [?]
 
strFldr = Wscript.arguments.Item(0)  
Set objFSO = CreateObject("Scripting.FileSystemObject")  
   
ClearFolder strFldr  
   
Function ClearFolder(sFldr)  
    Dim oD, cF, cD, oI  
   
Set oD = objFSO.GetFolder(sFldr)  
Set cF = oD.Files  
Set cD = oD.SubFolders  
on error resume next    
    For Each oI In cF  
       wscript.echo oi.path  
       oI.Attributes = 0  
    oI.Delete  
    Next  
 
    For Each oI In cD  
      ClearFolder oI.Path  
      oI.Attributes = 0  
      oI.Delete  
    Next  
End Function  

 
работают только такие варианты, но только, если стоит цифра 1 в arguments.Item(1), но без лога и с выводом msgbox на экран перед каждым файлом :
 
1_________
 
On Error Resume Next
 
strFldr = Wscript.arguments.Item(1)
Set objFSO = CreateObject("Scripting.FileSystemObject")
 
ClearFolder strFldr
 
Function ClearFolder(sFldr)
   On Error Resume Next
   Dim oD, cF, cD, oI
 
   Set oD = objFSO.GetFolder(sFldr)
   Set cF = oD.Files
   Set cD = oD.SubFolders
 
   For Each oI In cF
   Wscript.echo oi.path
      oI.Attributes = 0
      oI.Delete
   Next
 
   For Each oI In cD
      ClearFolder oI.Path
      oI.Attributes = 0
      oI.Delete
   Next
End Function
 
2________
 
strFldr = Wscript.arguments.Item(1)
Set objFSO = CreateObject("Scripting.FileSystemObject")
 
ClearFolder strFldr
 
Function ClearFolder(sFldr)
   On Error Resume Next
   Dim oD, cF, cD, oI
 
   Set oD = objFSO.GetFolder(sFldr)
   Set cF = oD.Files
   Set cD = oD.SubFolders
 
   For Each oI In cF
   Wscript.echo oi.path
      oI.Attributes = 0
      oI.Delete
   Next
 
   For Each oI In cD
      ClearFolder oI.Path
      oI.Attributes = 0
      oI.Delete
   Next
End Function
 
3_________
 
strFldr = Wscript.arguments.Item(1)
Set objFSO = CreateObject("Scripting.FileSystemObject")
 
ClearFolder strFldr
 
Function ClearFolder(sFldr)
   On Error Resume Next
   Dim oD, cF, cD, oI
 
   Set oD = objFSO.GetFolder(sFldr)
   Set cF = oD.Files
   Set cD = oD.SubFolders
   on error resume next
 
   For Each oI In cF
   Wscript.echo oi.path
      oI.Attributes = 0
      oI.Delete
   Next
 
   For Each oI In cD
      ClearFolder oI.Path
      oI.Attributes = 0
      oI.Delete
   Next
End Function

Всего записей: 65 | Зарегистр. 27-11-2008 | Отправлено: 14:46 29-06-2012 | Исправлено: kolonium, 00:00 01-07-2012
YURETS777



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно ли на VBS сделать такой скрипт, который бы в цикле (скажем раз в минуту) проверял наличие диалогового окна с кнопкой "Пропустить" и нажимал эту кнопку ?

Всего записей: 2161 | Зарегистр. 29-04-2005 | Отправлено: 15:01 29-06-2012
Real Root



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
YURETS777
key = True
        do while key
            If WshShell.AppActivate("Название окна") Then
            WshShell.SendKeys "{ENTER}"
            key = False
            end If
            WScript.Sleep 60 000
        Loop
 
Добавлено:
Если по Enter нажимается не "Пропусттить, то тогда посчитайте, сколько раз нужно нажать TAB для того чтобы фокус переходил на пропустить и допишите перед строкой WshShell.SendKeys "{ENTER}" нужно колличество строк WshShell.SendKeys "{TAB}"

Всего записей: 1037 | Зарегистр. 13-04-2006 | Отправлено: 15:42 29-06-2012
YURETS777



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Real Root
Не жмется
ОС -Win7 SP1 Ru
Окно такое:
   
 
Скрипт сейчас такой:
 
Set WshShell = WScript.CreateObject("WScript.Shell")
key = True
        do while key
            If WshShell.AppActivate("Пропустить") Then
            WshShell.SendKeys "{ENTER}"
            key = False
            end If
            WScript.Sleep 60000
        Loop
 

Всего записей: 2161 | Зарегистр. 29-04-2005 | Отправлено: 16:33 29-06-2012
YURETS777



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Короче,попробовал в Autoit 3.3.8.1
 
Скрипт получился таким.
 

Код:
 
 
$sTitle = 'Total Commander'
While 1
$hWindow = WinWait($sTitle, 'Пропустить', 5) ;ждем появления окна с заголовком $sTitle и текстом Пропустить 5 секунд
If $hWindow Then  
;если окно дождались, то $hWindow это идентификатор (Handle) этого окна.
ControlClick($hWindow, '', 'TButton3')
;кликаем по кнопке Пропустить
EndIf
Sleep(10000)
Wend
 
 

 
Вроде сработал на первое проявление, пронаблюдаю дальше...

Всего записей: 2161 | Зарегистр. 29-04-2005 | Отправлено: 19:02 29-06-2012 | Исправлено: YURETS777, 19:04 29-06-2012
Dekabryi



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Всем привет !  
F1
 
не могу разобратся со скриптом.
в чем засада понять не могу .
 
****
set FSO = CreateObject("Scripting.FileSystemObject")
        txtcsv = "xxxxx.csv"
        if fso.FileExists(txtcsv) Then
            set CSVFile = FSO.OpenTextFile(txtcsv,8,true)
        Else
            set CSVFile = FSO.CreateTextFile(txtcsv)
        CSVFile.WriteLine "Пользователь, Компьютер"
 
end If
' Подбор данных из файла Комп
        Const ForReading=1
Set objFSO=CreateObject("Scripting.FileSystemObject")
Set objTS=objFSO.OpenTextFile("comp.txt",ForReading)
 
arrServers=Split(objTS.ReadAll,VbCrLf)
objTS.Close
 
For Each server In arrServers
    strServer=Ucase(Trim(server))
    On Error Resume Next
    If Len(strServer)>0 Then WScript.Echo strServer
            strUser= "Нет Пользователя"
Set objWMIService = GetObject("winmgmts:\\" & strServer & "\root\cimv2")
Set colUser = objWMIService.ExecQuery("Select * FROM Win32_ComputerSystem")
 
For Each objItem In colUser
    strUser= objItem.UserName
 
CSVFile.WriteLine strUser & "," & strServer
        Next
        Erase strUser
        next
****
 
Скрипт сам отрабатывает нормально, но вот засада в том что .
Если по списку машина доступна, а следующие 2-все не доступны , данные в скрипте будут вот в таком виде.
MyDomain\user1,Computer1
MyDomain\user1,Computer1
MyDomain\user1,Computer1
MyDomain\user1,Computer1
MyDomain\user5,Computer5
 
Хотя список хостов  
Computer1
Computer2
Computer3
Computer4
Computer5
 
После того как доходит до доступного компа данные пишутся нормально.
 
А мне необходимо что бы вместо повторов писал  "Недоступен, Computer2"
 
Подскажите плиз !

Всего записей: 44 | Зарегистр. 29-05-2006 | Отправлено: 07:53 03-07-2012
kolonium

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
'Очищаем временные папки
Dim fso, fso1, sfso, i, s, file, files
Dim folder_count, file_count
Dim d_temp,c_temp, local_temp,Cookie,internet_temp, log
Dim s_, folder_count_, file_count_ ,folder_
 
set fso = CreateObject("Scripting.FileSystemObject")
' папочки можно и дополнить
d_temp = "c:\windows\temp"
c_temp = "c:\temp"
local_temp = "c:\Documents and Settings\%username%\Local Settings\Temp"
Cookie = "c:\Documents and Settings\%username%\Cookies"
internet_temp = "%HOMEDRIVE%\DOCUME~1\%username%\LOCALS~1\Tempor~1\Content.IE5"
'файл лога, необходимо создать пердварительно
log = "d:\clear.log"
doc = "%HOMEPATH%\Recent"
opera_cache = "C:\Documents and Settings\%username%\Application Data\Opera\Opera\profile\cache4\"
 
'процедура инициализации
sub init
on error resume next
set file = fso.GetFile (log)
if fso.FileExists(log) then  
if file.size > 1024000 then WScript.Echo "Внимание!" & CHR (13) & CHR (10) & "Размер лога больше 1 Мб"
end if
 
set file = fso.OpenTextFile(log, 8, true)
 
s= "Очистка временных файлов от : " & Date & " " & Time & CHR (13) & CHR (10)
s=s+"CopyRight @ andrvm" + CHR (13) + CHR (10)
 
file.Write s
 
set file=nothing
end sub
 
'процедура финализации
sub final
set file = fso.OpenTextFile(log, 8, true)
s = CHR (13) & CHR (10) & "Всего папок - " & Folder_Count & CHR (13) & CHR (10) & "Всего файлов - " & File_count & CHR (13) & CHR (10)
file.Write s
s = "Не удалось удалить папок - " & Folder_Count_ & CHR (13) & CHR (10) & "файлов - " & file_count_ & CHR (13) & CHR (10)
file.Write s
s = "Вот они: " & folder_ & CHR (13) & CHR (10) & s_ & CHR (13) & CHR (10)
file.Write s
s = "Завершено в " & Time & CHR (13) & CHR (10) & CHR (13) & CHR (10)
file.Write s
set file = nothing
end sub
 
'процедура удаления файлов в каталоге
sub dir_clear (dir_name)
if fso.FolderExists(dir_name) then
'1. сформируем для лога список папок, которые будем удалять (заодно установим нужные аттрибуты)
set fso1 = fso.GetFolder (dir_name)
set sfso=fso1.SubFolders
Set file = fso.OpenTextFile(log, 8, true)
 
for each i in sfso
i.attributes=0
s= dir_name + "\"
s = s + i.name + CHR (13) + CHR (10)
file.Write s
next
 
Folder_count = Folder_count + sfso.Count
 
'2. сформируем для лога список файлов, которые будем удалять (заодно установим нужные аттрибуты)
set files = fso1.Files
for each i in files
i.attributes=0
s= dir_name + "\"
s = s + i.name + CHR (13) + CHR (10)
file.Write s
next
 
File_count = File_count + files.count
 
'3. Удаляем теперь все
 
for each i in files
on error resume next
i.Delete
'если файл не может быть удален
if err then
s_= s_ & dir_name & "\" & i.name & CHR (13) & CHR (10)
file_count_=file_count_ + 1
end if
next
 
for each i in sfso
on error resume next
i.Delete
'если папка не может быть удалена
if err then
folder_= folder_ & dir_name & "\" & i.name & CHR (13) & CHR (10)
folder_count_=folder_count_ + 1
end if
next
 
set file = nothing
set fso1 = nothing
set sfso =    nothing
set files = nothing
 
end if
end sub
 
'инициализация
init
'очищаем
dir_clear (d_temp)
dir_clear (c_temp)
dir_clear (local_temp)
dir_clear (internet_temp)
dir_clear (Cookie)
dir_clear (doc)
dir_clear (opera_cache)
'финализация
final
set fso = nothing
 
что нужно подправить в скрипте, чистится только папка Windows |Temp

Всего записей: 65 | Зарегистр. 27-11-2008 | Отправлено: 11:01 03-07-2012 | Исправлено: kolonium, 11:02 03-07-2012
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Dekabryi
попробуй этот вариант:
 

Код:
 
p=pipi(comp)
p=p+pipi(comp)
p=p+pipi(comp)
    if p=0 then  
    user="No Ping "&comp
'Недоступен
    else
    Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" _
    & comp & "\root\cimv2")
    Set colComputer = objWMIService.ExecQuery _
    ("Select * from Win32_ComputerSystem")
        For Each objComputer in colComputer
        user=objComputer.UserName
        next  
    end if
 
 
Function pipi(comp)
pipi=1
 
qr="Select * From Win32_PingStatus where Address= '"&comp&"'"
 
Set objWMIService = GetObject(_  
    "winmgmts:\\.\root\cimv2")
Set colPings = objWMIService.ExecQuery(qr)
 
For Each objStatus in colPings
    If IsNull(objStatus.StatusCode) _
        or objStatus.StatusCode<>0 Then
    pipi=0
    Exit Function
    End If
Next
 
End Function
 

 
 
 
kolonium
Прописать получение % переменых, vbs напрямую с ними не работает

Код:
 
Set WshShell = WScript.CreateObject("WScript.Shell")
username = wshShell.ExpandEnvironmentStrings("%username%")
 

 
 

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 12:23 03-07-2012
kolonium

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Black_Lung

Цитата:
Прописать получение % переменых, vbs напрямую с ними не работает .
Код:
 
Set WshShell = WScript.CreateObject("WScript.Shell")
username = wshShell.ExpandEnvironmentStrings("%username%")  
 

 
'Очищаем временные папки
Dim fso, fso1, sfso, i, s, file, files
Dim folder_count, file_count
Dim d_temp, c_temp, local_temp, Cookie, internet_temp, log
Dim s_, folder_count_, file_count_ ,folder_
 
set fso = CreateObject("Scripting.FileSystemObject")
' папочки можно и дополнить
Set WshShell = WScript.CreateObject("WScript.Shell")
d_temp = wshShell.ExpandEnvironmentStrings("c:\windows\temp")
c_temp = wshShell.ExpandEnvironmentStrings("c:\temp")
Cookie = wshShell.ExpandEnvironmentStrings("c:\Documents and Settings\%username%\Cookies")
internet_temp = wshShell.ExpandEnvironmentStrings("%HOMEDRIVE%\DOCUME~1\%username%\LOCALS~1\Tempor~1\Content.IE5")
doc = wshShell.ExpandEnvironmentStrings("%HOMEPATH%\Recent")
opera_cache = wshShell.ExpandEnvironmentStrings("C:\Documents and Settings\%username%\Application Data\Opera\Opera\profile\cache4\")
'файл лога, необходимо создать пердварительно
log = wshShell.ExpandEnvironmentStrings("d:\clear.log")
 
спасибо, в таком варианте работает
 
теперь бы ещё разобраться как извлекать профили юзеров для обработки через реестр по типу :
 
SetLocal EnableExtensions
 
For /F "Tokens=2*" %%I In ('Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /V ProfilesDirectory') Do Set Profiles=%%J
Call Set Profiles=%Profiles%
 
For /F "Delims=" %%I In ('Dir /B /AD-S-H "%Profiles%" ^| FindStr /V /B /I /C:"All Users"') Do (
 
ну что-то вроде этого :
'#######################################################
On Error Resume Next  
 
Const HKEY_LOCAL_MACHINE = &H80000002  
 
strComputer = "."  
   
Set objRegistry=GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")  
 
Set objFSO = CreateObject("Scripting.FileSystemObject")
   
strKeyPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList"  
objRegistry.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubkeys
'каким образом объединить скрипт,что я приводил с этим
'#######################################################
 
да и под семеркой не работает, вот с этой части :
for each i in sfso
 
в части кода :
 
for each i in sfso
i.attributes=0
s= dir_name + "\"
s = s + i.name + CHR (13) + CHR (10)
file.Write s
next

Всего записей: 65 | Зарегистр. 27-11-2008 | Отправлено: 12:48 04-07-2012 | Исправлено: kolonium, 12:12 20-07-2012
Leon1978

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
есть такой скрипт, чтобы прописывать логин, ip, время.
На windows 7 pro * 64 работает, но вот когда я его пытаюсь запустить в windows server 2008 r2 начинаются ошибки, invalid index line 15, char 4.  
Разве есть разница между скриптами для win 7 и win 2008 r2?
 
'Пишем в AD имя залогиненного в ПК + ip
'=========================================================================
Dim adsinfo, ThisComp, oUser, ips,ipadr,WSHShell
Set adsinfo = CreateObject("adsysteminfo")
Set ThisComp = GetObject("LDAP://" & adsinfo.ComputerName)
Set oUser = GetObject("LDAP://" & adsinfo.UserName)
 
Set objWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
 
Set IPConfigSet = objWMI.ExecQuery _
    ("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")
 
For Each IPConfig in IPConfigSet
    If Not IsNull(IPConfig.IPAddress) Then  
   ipadr=IPConfig.IPAddress(i)
        For i=LBound(IPConfig.IPAddress) to UBound(IPConfig.IPAddress)
            ips=ips+" "+IPConfig.IPAddress(i)
        Next
    End If
Next
Thiscomp.put "description", "Login: " + oUser.cn + "; IP: "+ ips+"; "+ "Time: " + CStr(Now)
ThisComp.Setinfo

Всего записей: 342 | Зарегистр. 03-09-2005 | Отправлено: 09:41 11-07-2012
DieMaN



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Здравствуйте. Ниже скрипт который всем пользователям домена на рабочий стол помещает ярлык на программу. А какую строчку добавить чтобы ярлык не перезаписывался каждый раз? Т.е. чтобы при выполнении скрипта проверялось наличие ярлыка на рабочем столе.
 
Set objShell = WScript.CreateObject("WScript.Shell")
strDesktopFolder = objShell.SpecialFolders("Desktop")
Set objShortCut = objShell.CreateShortcut(strDesktopFolder & _
"\Техэксперт.lnk")
objShortCut.TargetPath = chr(34) & "\\Vgpserv\techexpert_client\texclient.exe" & chr(34)
ObjShortCut.IconLocation = "\\Vgpserv\techexpert_client\texclient.exe, 0"
objShortCut.Description = "Техэксперт"
objShortCut.Save

Всего записей: 169 | Зарегистр. 28-12-2003 | Отправлено: 09:27 13-07-2012
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Leon1978
ipadr=IPConfig.IPAddress(i) Использование i до явного назначения
 
DieMaN
Подробнее...

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 11:03 16-07-2012
NecroTYN



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте господа форумчане !!!  
Помогите пожалуйста с решением следующей задачи -
Есть  код для вычисления даты выдачи заказа по количеству рабочих дней:
КОД
 
Что в нем не так ???
 
1.Нужно сделать чтобы количество рабочих дней (в данном случае 21) можно было менять в таблице Б/Д - qdfOrders поле "Time"
2.Расчет выходных дней надо сделать следующим образом :
   а) Заполняем «tblHolidays» списком суббот, воскресений, известных праздников N-ного года.
   б) Посему из алгоритма выкидываем проверку на субботы и воскресенья.
   в) Выправление заполненного списка до реальности (перенос выходных дней с субботы и воскресенья на будние дни) оставляем на совести оператора.

Всего записей: 141 | Зарегистр. 22-04-2007 | Отправлено: 09:32 23-07-2012 | Исправлено: NecroTYN, 09:37 23-07-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript (Часть 2)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru