Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Есть проблема со скриптом VB / 3 сообщений из 3, страница 1 из 1
28.08.2016, 22:56
    #39299258
Arhirru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема со скриптом VB
Всем привет! Есть скрипт, он должен менять название полей таблицы tblCalendarActivities и в запросе qdfCalendarActivities с Lesson1, Lesson2, Lesson3.......Lesson48 на дату и день недели. При запуске скрипта система ни на что не ругается, но скрипт не делает то, что от него требуется, то есть, не меняет название полей. Подскажите пожалуйста, где ошибка. Самой не найти никак.
Вот скрипт:

Код: vbnet
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.
Dim d, iStudent, Student, iLesson, rstA, sSql, sSql1, dCurDate, iCurWeekDay, dDate, c, sCurWeekDay, dEndDate, k, iWidth, sGridColWidth, iCount, rstB, rstH, sSetColor
d = InputFromList ("Выберите группу", "Выбор группы", "Группа", "SELECT GroupDance FROM tblGroups", 1, 300, 500)
If Left(d, 2) = "Ok" Then
d = Mid(d, 4)
End If
SetStatusText Генерирую расписание. Пожалуйста, подождите ...
iWidth = <GridWidth>
iWidth = iWidth - 885 - 400
dDate = Date()
dEndDate = DateAdd("m", 1, dDate)
dDate = InputDate("Выберите дату начала расписания", "Выбор даты начала", dDate)
dEndDate = InputDate("Выберите дату конца расписания", "Выбор даты окончания", dEndDate)
If dDate <> "" AND dEndDate <> ""  Then 
    k = DateDiff("d", dDate, dEndDate)
    iWidth = iWidth / k
    iWidth = INT(iWidth)
    sGridColWidth = "ID=885;"
    For iLesson = 1 To 48
	c = iLesson - 1
	 dCurDate = DateAdd("d", c, dDate)
       iCurWeekDay = Weekday(dCurDate,2)
       ExecuteSQL "UPDATE tblSettings SET SettingValue = 'Поле" & iLesson & "' WHERE SettingName = 'qdfCalendarActivities.Lesson" & ilesson & ".Caption'; "
       ExecuteSQL "UPDATE tblSettings SET SettingValue = 'Поле" & iLesson & "' WHERE SettingName = 'qdfCalendarActivities.Lesson" & ilesson & ".Description'; "
       ExecuteSQL "UPDATE tblCalendarActivities SET Lesson" & iLesson &" = '';"
    Next iLesson
   SetMousePointer vbHourglass
   sSql = "SELECT Count(*) AS iCount FROM qdfCalendarActivities"
    OpenRecordset rstA, sSql
    iCount = rstA("iCount").Value
    rstA.Close()
    sSql = "SELECT Count(*) AS iStudent, Student AS Student FROM tblCompositionGroup WHERE GroupName =  '"& d &"'"
    OpenRecordset rstH, sSql
    sSetColor = ""
    For iStudent = 1 to iCount
        For iLesson = 1 To k
			c = iLesson - 1
            dCurDate = DateAdd("d", c, dDate)
            iCurWeekDay = Weekday(dCurDate,2) 
            If iStudent = 1  Then
                sGridColWidth = sGridColWidth & "Lesson" & iLesson & "=" & iWidth & ";" 
                sCurWeekDay = Choose(iCurWeekDay, "пн", "вт", "ср", "чт", "пт", "сб", "Вс")     
                ExecuteSQL "UPDATE tblSettings SET SettingValue = FORMAT('" & dCurDate &"','dd.MM.YYYY') & ' ' & '" &  sCurWeekDay & "' WHERE SettingName = 'qdfCalendarActivities.Lesson" & ilesson & ".Caption'; "
                ExecuteSQL "UPDATE tblSettings SET SettingValue = FORMAT('" & dCurDate &"','dd.MM.YYYY') & ' ' & '" &  sCurWeekDay & "' WHERE SettingName = 'qdfCalendarActivities.Lesson" & ilesson & ".Description'; "
                ExecuteSQL "UPDATE tblCalendarActivities SET Lesson"& iLesson &" = FORMAT('" & dCurDate &"','dd.MM.YYYY') & ' ' & '" &  sCurWeekDay & "' "
                    If rstH.EOF Then 
                        sSetColor = sSetColor & "Lesson" & iLesson & "=65280 "
                    Else
                        sSetColor = sSetColor & "Lesson" & iLesson & "=10079487 "
                    End If
                
            End If
			
		Next iLesson
    Next iStudent
    rstH.Close()
	ExecuteSQL "UPDATE tblSettings SET SettingValue = '" & sSetColor & "' WHERE SettingName = '1.qdfCalendarActivities.GridColBackColors'"
    SetMousePointer vbDefault
    ExecuteSQL "UPDATE tblSettings SET SettingValue = '" & sGridColWidth & "' WHERE SettingName = '1.qdfCalendarActivities.GridColWidth'"
    MsgBox "Расписание составлено"
    ReOpenTable()
Else 
    MsgBox "Вы не ввели Дату начала или Дату окончания расписания."
End If


Модератор: Учимся использовать тэги оформления кода - FAQ
...
Рейтинг: 0 / 0
29.08.2016, 09:14
    #39299343
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема со скриптом VB
ArhirruПри запуске скриптаа как и где вы его запускаете? Некоторые синтаксические конструкции весьма смущают
...
Рейтинг: 0 / 0
29.08.2016, 10:31
    #39299382
Charles Weyland
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема со скриптом VB
Arhirru[SRC vbnet]
SetStatusText Генерирую расписание. Пожалуйста, подождите ...

и на это не ругается?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Есть проблема со скриптом VB / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]