Создание отчета на основе DataEnvirement

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
boo-mmx
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 10.08.2004 (Вт) 15:34

Создание отчета на основе DataEnvirement

Сообщение boo-mmx » 10.08.2004 (Вт) 15:45

В БД MS SQL Server созданы 2 хранимые процедуры без параметров, одна из которых возвращает районы города, а другая кураторов во всех районах.

В Data Envirement создал родительскую команду на основе 1 хранимой процедуру (выбор районов), и дочернюю команду на основе 2 хранимой процедуры (выбор кураторов). В дочерней команде указали связь с родительской по параметру 'код района'

Создали очет с группировкой на основе этих комманд.

ВОПРОС:
Вылазиет ошибка: "Not value given for one or more required parameters", но повторюсь - хранимые процедуры абсолютно без параметров. ЧЕГО НЕ ТАК?

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 10.08.2004 (Вт) 15:54

вторая процедура должна иметь входной параметр КОД РАЙОНА, которые должна возвращать предыдущая процедура

boo-mmx
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 10.08.2004 (Вт) 15:34

Сообщение boo-mmx » 12.08.2004 (Чт) 8:49

Бился день, разбился в мясо. Сделал примитивное приложение, примитивные хранимые процедуры, но ничего не заработало:
хранимая процедура Test1
Код: Выделить всё
CREATE PROCEDURE [dbo].[Test1]
AS
   select idDog from tDog
GO


хранимая процедура Test2
Код: Выделить всё
CREATE PROCEDURE [dbo].[Test2]
   @idDog numeric(5,0) = NULL
AS

   if(@idDog  is NULL)
      select * from tDogSF
   ELSE
      select * from tDogSF WHERE tDogSF.idDog = @idDog
GO

Она имеет немного странный вид, но я раскопал это в MSDN, URL: "mk:@MSITStore:C:\Program%20Files\Microsoft%20Visual%20Studio\MSDN\2000JAN\1033\vbcon98.chm::/Html/vbcondataenvironmentprogrammingguidelines.htm" раздел "Setting the Required Property for Stored Procedure Parameters"

Создал Connection, на него навесил Command1, в котором Database object = Stored Procedure, Object Name = dbo.Test1
На Command1 навесил дочернюю команду Command2, в параметрах которой для idDog установил Required = False (см. ссылку на MSDN), а в Relations связал с Command1 по idDog.

Далее на основе этих двух комманд создал примитивный отчет, содержащий 2 секции, в первой содержится idDog из Command1, а во второй(Detail) всякие другие поля из Command2.

Всё замечательно работает до тех пор пока не создается отчет, при выводе которого мне мило говорят - "General Error"

ПОМОЖИТЕ, ЛЮДИ ДОБРЫЕ И ЗНАЮЩИЕ КТО ЧЕМ МОЖЕТ, а то крышу рвет

boo-mmx
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 10.08.2004 (Вт) 15:34

Сообщение boo-mmx » 16.08.2004 (Пн) 7:31

ЛЮДИ...

А может кто-нибудь знает как в DataEnvionment сделать Command и Child Command на основе двух хранимы процедур? Сделал на базе Northwind две процедуры:
Command1
Код: Выделить всё
CREATE PROCEDURE [dbo].[GetCustomers]
AS

select * from Customers
GO


Command2 (Child Command)
Код: Выделить всё
CREATE PROCEDURE [dbo].[getorder]
   @idc nchar(5)
AS

select * from orders where @idc = Customerid
GO


В форму вставляю MSHFlexGrid Control и DataSource устанавливаю на Environment, а DataMember на Command1.

При запуске выводится несколько строк, в первой из которых первая полстроки забито данными из Command1, а вторая полстроки, где должны быть данные из Command2, пустые.

boo-mmx
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 10.08.2004 (Вт) 15:34

Сообщение boo-mmx » 16.08.2004 (Пн) 9:59

УРА - решил.

Все дело в том, что для каждой команды Command нужно вырезать в Advanced\Call Syntax возвращаемое значение:
{? = Call Имя_Процедуры} нужно переделать в
{Call Имя_Процедуры}.

И над этим я страдал 3 дня...


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing-бот, Yandex-бот и гости: 1

    TopList