Вверх ↑
Ответов: 5227
Рейтинг: 587
#1: 2017-12-02 08:32:37 ЛС | профиль | цитата
user_asm писал(а):
У меня еще пиво в наличии.

везунчик, а мне пизд... с утра пришлось
user_asm, вот что пристал я даже с похмелья это т.з сделал, дальше сам

Add(MainForm,2755714,112,105)
{
 Width=598
 Height=211
 link(onCreate,3713768:doSetDate,[])
}
Add(DatePicker,3713768,175,119)
{
 Left=20
 Top=30
 Width=135
 Height=24
 Point(Data)
 Point(CurrentDateTime)
 link(onChange,11075353:doConvert,[])
}
Add(Edit,16145800,371,119)
{
 Left=170
 Top=100
 Width=30
 Text="0"
 DataType=2
}
Add(DateConvertor,11075353,231,119)
{
 Mode=9
 Format="dd.MM.yyyy "
 Point(Result)
}
Add(Button,8957237,231,217)
{
 Left=15
 Top=145
 Width=130
 Caption="Счёт дней"
 link(onClick,16465415:doWork,[])
}
Add(Label,14347521,112,161)
{
 Left=20
 Top=5
 Width=110
 Height=20
 Caption="Начальная дата"
}
Add(DatePicker,12647910,434,217)
{
 Left=20
 Top=95
 Width=135
 Height=24
 Point(Data)
 Point(CurrentDateTime)
}
Add(Label,2383458,119,168)
{
 Left=20
 Top=70
 Width=101
 Height=20
 Caption="Конечная дата"
}
Add(UpDown,14716132,329,119)
{
 Left=200
 Top=100
 Max=1
 Min=-1
 link(onPosition,16145800:doText,[])
}
Add(Label,6308306,126,175)
{
 Left=170
 Top=75
 Width=122
 Height=20
 Caption="+/- 1 рабочий день"
}
Add(Memo,8411243,371,273)
{
 Left=310
 Top=20
 Width=265
 Height=145
}
Add(Button,1728302,231,280)
{
 Left=160
 Top=145
 Width=130
 Caption="Очистить список"
 link(onClick,8411243:doClear,[])
}
Add(DateConvertor,5602767,371,217)
{
 Mode=7
 Format="dd.MM.yyyy "
 Point(Result)
 link(onResult,12647910:doSetDate,[])
}
Add(VBJScript,16465415,280,217)
{
 WorkPoints=#6:doWork|
 EventPoints=#9:onEndDate|5:onRes|
 DataPoints=#7:StartDt|9:Timeframe|11:AmendmentDt|
 Script=#18:Sub doWork(dt,idx)|0:|51:  Dim intTotalDays, intWeekendDays, intBusinessDays|37:  Dim intTimeframe, DtBegin, wDays, i|59:  Const MAX_TOTAL_DAYS = 60 ' максимальный расчётный период|4:    |31:  ' проверка на валидность даты|34:  If Not IsDate(sys.StartDt) Then |12:    Exit Sub|8:  End If|0:|19:  ' читаем с точек |46:  dtmStart = CDate(sys.StartDt) '- дата начала|60:  ' кол-во дней c учётом срока и поправки +/- рабочий 1 день|65:  intTimeframe = CInt(sys.Timeframe) + CInt(sys.AmendmentDt)     |0:|24:  DtBegin = dtmStart - 1|29:  For i = 0 To MAX_TOTAL_DAYS|25:    DtBegin = DtBegin + 1|44:    wDays = DatePart("w", DtBegin, vbMonday)|35:    intTotalDays = intTotalDays + 1|34:    If wDays = 7 Or wDays = 6 Then|41:      intWeekendDays = intWeekendDays + 1|8:    Else|43:      intBusinessDays = intBusinessDays + 1|44:      If intBusinessDays = intTimeframe Then|16:        Exit For|14:      End If  |10:    End If|6:  Next|20:  ' вывод результата|61:  sys.onRes "всего дней между двумя датами = " & intTotalDays|47:  sys.onRes "выходных дней = " & intWeekendDays|47:  sys.onRes "рабочих дней = " & intBusinessDays|29:  sys.onEndDate CDbl(DtBegin)|3:   |7:End Sub|
 link(onEndDate,5602767:doConvert,[])
 link(StartDt,11075353:Result,[(286,184)(237,184)])
 link(Timeframe,3324218:String,[])
 link(AmendmentDt,16145800:Text,[(300,184)(377,184)])
 link(onRes,8411243:doAdd,[(336,230)(336,279)])
}
Add(ComboBox,3324218,280,105)
{
 Left=170
 Top=30
 Width=95
 Height=24
 Strings=#2:15|2:20|2:25|
 Text=""
}
Add(Label,12246042,133,182)
{
 Left=170
 Top=5
 Width=36
 Height=20
 Caption="Срок"
}

карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0