Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: Мюллер


те Вы прописываете прямо в SQLServer? А потом вызываете её выполнение их VS?


Да.

Вот пример как вообще нужно правильно делать:

Вот хранимая процедура


CREATE PROCEDURE _spObl
@IdCountry int

AS

SELECT DISTINCT IdObl, OblName FROM TblKlassCity WHERE IdCountry = @IdCountry

/* SET NOCOUNT ON */
RETURN



Далее создается пользовательский класс

(Сорри за код на C#, но лень переписывать на VB)



using System.Data.SqlClient;

public class TranspProvider
{
public TranspProvider()
{
}

public DataSet DSObl(int DDlist) //- Создается ф-ция, возвращающая объект ДатаСет. В качестве принимаемого параметра используется целое число - значение из первого комбобокса
{
ConnClass st = new ConnClass();
using (SqlConnection cn = new SqlConnection(st.strConn()))
{
SqlCommand cmd = new SqlCommand("_spObl", cn);
- вызывается созданная выше хранимая процедура
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@IdCountry", DDlist);
- ей передается параметр - целое число, равное значению первого комбобокса

Далее создаем и заполняем Датасет

cn.Open();
SqlDataAdapter daObl = new SqlDataAdapter(cmd);
DataSet dsObl = new DataSet();
daObl.Fill(dsObl);
cmd.Connection.Close();
cmd.Connection.Dispose();

return dsObl;
- возвращаем датасет
}
}
}


А затем в коде прописываем



......

TranspProvider [b]TransProvider = new TranspProvider(); [/b]- создаем экземпляр TransProvider нашего пользовательского класса
........

Combo2.DataSource = TransProvider.DSObl(Convert.ToInt32 Combo1.SelectedValue)); - вызываем ф-цию DSObl из нашего пользовательского класса. В качестве входного параметра передается значение первого комбобоксаПоскольку результатом выполнения ф-ции является датасет, то делаем его источником для нашего комбобокса.
Combo2.DataTextField = "OblName";
Combo2.DataValueField = "IdObl";
Combo2.DataBind();
...............


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.