Skip to content

Instantly share code, notes, and snippets.

@spellancer
Created November 8, 2012 10:42
Show Gist options
  • Save spellancer/4038073 to your computer and use it in GitHub Desktop.
Save spellancer/4038073 to your computer and use it in GitHub Desktop.
REM ***** BASIC *****
Function replace(str as String,sFrom as String,sTo as String) as String
'Заменяет в строке str все подстроки sFrom на sTo и возвращает полученную строку
Dim s as String
Dim i as Integer
s=str
i=1
Do While true
if i>len(s) then
Exit Do
End If
i=InStr(i,s,sFrom)
if i=0 then' подстрока sFrom не найдена
Exit Do' выход из цикла
End If
s=mid(s,1,i-1) + sTo + mid(s,i+len(sFrom))
i=i+1
Loop
replace=s 'чтобы функция вернула строку s
End Function
Sub OnBtnAddGroupStud(oEvent)
oForm = oEvent.Source.getModel().getParent()
oCon=oForm.ActiveConnection 'объект для доступа к базе данных
sName=oForm.getByName("uch").text
sMesto=oForm.getByName("mst").text
sRes=oForm.getByName("res").text
sTren=oForm.getByname("tren").text
sStr=oForm.getByname("str").text
sSor=oForm.getByname("sor").text
'CInt(sName)
'CInt(sMesto)
'CDbl(sRes)
'CInt(sTren)
'CInt(sSor)
sSQL= "INSERT INTO ""Ведомость"" (""Участник"",""Место"",""Результат"",""Тренер"",""Страна"",""Вид соревнований"") VALUES ('?1','?2','?3','?4','?5','?6')"
sSQL = replace(sSQL,"?1",sName)
sSQL = replace(sSQL,"?2",sMesto)
sSQL = replace(sSQL,"?3",sRes)
sSQL = replace(sSQL,"?4",sTren)
sSQL = replace(sSQL,"?5",sStr)
sSQL = replace(sSQL,"?6",sSor)
msgBox(sSQL)
oStatement=oCon.CreateStatement() 'объект для выполнения запросов
oStatement.executeQuery(sSQL) 'выполняем запрос
End Sub
Sub Delete(oEvent)
oForm = oEvent.Source.getModel().getParent()
oCon=oForm.ActiveConnection 'объект для доступа к базе данных
'sName=oForm.getByName("Текстовое поле 1").text
'sModule=oForm.getByName("Текстовое поле 2").text
sSQL= "DELETE FROM ""Ведомость"" WHERE ""Место"" > 3 "
'sSQL = replace(sSQL,"?1",sName)
'sSQL = replace(sSQL,"?2",sModule)
oStatement=oCon.CreateStatement() 'объект для выполнения запросов
oStatement.executeQuery(sSQL) 'выполняем запрос
msgBox("Игроки занявшие последние места успешно удалены из таблицы 'Ведомость'")
End Sub
Sub Change(oEvent)
oForm = oEvent.Source.getModel().getParent()
oCon=oForm.ActiveConnection 'объект для доступа к базе данных
sName=oForm.getByName("id").text
sModule=oForm.getByName("mesto").text
sSQL= "UPDATE ""Место проведения"" SET ""Место/Адрес""='?2' WHERE ""ID"" = '?1' "
sSQL = replace(sSQL,"?1",sName)
sSQL = replace(sSQL,"?2",sModule)
oStatement=oCon.CreateStatement() 'объект для выполнения запросов
oStatement.executeQuery(sSQL) 'выполняем запрос
msgBox("Замена прошла успешно")
End Sub
Sub zap(oEvent)
Dim i as Integer
i=0
oForm = oEvent.Source.getModel().getParent()
oCon=oForm.ActiveConnection 'объект для доступа к базе данных
oStatement=oCon.CreateStatement() 'объект для выполнения запросов
sSQL= "SELECT ""Ведомость"".""Место"", ""Ведомость"".""Страна"", ""Вид соревнований"".""Название"" FROM ""Ведомость"" AS ""Ведомость"", ""Вид соревнований"" AS ""Вид соревнований"" WHERE ""Ведомость"".""Вид соревнований"" = ""Вид соревнований"".""ID"" "
oResult=oStatement.executeQuery(sSQL) 'выполняем запрос
'oResult=oStatement.executeQuery(sSQL) and (oResult.getstring(1)<=3)
Do While oResult.next()
if (oResult.getstring(3)="Чемпионат Европы") and (oResult.getstring(2)="Россия") and (oResult.getstring(1)<=3) then
i=i+1
End If
Loop
oForm.getByName("output").text=i
oStatement=oCon.CreateStatement() 'объект для выполнения запросов
oStatement.executeQuery(sSQL) 'выполняем запрос
msgBox("ready")
End Sub
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment