issaka_adams بتاريخ: 21 يونيو 2006 تقديم بلاغ مشاركة بتاريخ: 21 يونيو 2006 السلام عليكم ورحمة الله وبركاته ........انا عامل packge ومنها مستدعى إجراء procedureحصيلة الموضوع أنو فى نهاية package..عندى جملهopen MyCursor for select MySequence.CurrVal from dual;هذه الجملة أعطتنى خطأ .... مع العلم انى استخدم Visual basci.Netهذا الخطا هو :MySequence.CurrVal is not define is this sessionلا اعلم ما الخطأ.....قمت باتبدال MySequence.CurrValووضعت .NextValكعمل اختبار لل Sequenceعملت بطريقة صحيحةلاكن المشكلة واقعة على CurrValأفيدونى أفادكم الله ...هذا هو المتال ... اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
issaka_adams بتاريخ: 21 يونيو 2006 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 21 يونيو 2006 -----------------------------------إسقاط الأرقام الديناميكية-------------------------------Drop Sequence Seq_Product;Drop Sequence Seq_Category;Drop Sequence Seq_Measurement;Drop Sequence Seq_Company;-----------------------------------تكوين الأرقام الديناميكية-------------------------------Create Sequence Seq_Product Start with 1 increment by 1 NoMaxValue;Create Sequence Seq_Category Start with 1 increment by 1 NoMaxValue;Create Sequence Seq_Measurement Start with 1 increment by 1 NoMaxValue;Create Sequence Seq_Company Start with 1 increment by 1 NoMaxValue;-- ---------------------------------إسقاط الجداول-------------------------------Drop table Product;Drop table Category;Drop table Measurement;Drop table Company;-----------------------------------تكوين الجداول---------------------------------جدول الشركات المصنعةCreate table Company( ID number(10), CodeNumber number(10) null, Description nvarchar2(50) Not Null, CreationDate Date Default SysDate, EndServiceDate Date Default Null, CONSTRAINT Company_ID_pk PRIMARY KEY(ID)) ;--جدول الوحداتCreate table Measurement( ID number(10), CodeNumber number(10) null, Description nvarchar2(50) Not Null, CreationDate Date Default SysDate, EndServiceDate Date Default Null, CONSTRAINT Measurement_ID_pk PRIMARY KEY(ID)) ;--جدول المجموعاتCreate table Category( ID number(10), CodeNumber number(10) null, Description nvarchar2(50) Not Null, ParentId number(10) references Category(ID), CreationDate Date Default SysDate, EndServiceDate Date Default Null, CONSTRAINT Category_ID_pk PRIMARY KEY(ID) );--جدول الأصنافCreate table Product( ID number(10), CategoryId number(10) Not null, CodeNumber number(10) null, Description nvarchar2(50) Not Null, MeasurementId number(10) Not null, CompanyId number(10) Not null, BarCode nvarchar2(50) Not Null, SellPrice number(5,3), BuyPrice number(5,3), MinRequest number(4), Balance number(4), CreationDate Date Default SysDate, EndServiceDate Date Default Null, CONSTRAINT Product_ID_pk PRIMARY KEY(ID), CONSTRAINT Product_CategoryId_fk FOREIGN KEY (CategoryId) REFERENCES Category(ID), CONSTRAINT Product_MeasurementId_fk FOREIGN KEY (MeasurementId) REFERENCES Measurement(ID), CONSTRAINT Product_CompanyId_fk FOREIGN KEY (CompanyId) REFERENCES Company(ID) ) ;-----------------------------------الإضافات التلقائية---------------------------------جدول المجموعاتinsert into Category(ID,CodeNumber,Description,ParentId) values(Seq_Category.NextVal,1,'Product Groups',1);insert into Category(ID,CodeNumber,Description,ParentId,EndServiceDate) values(Seq_Category.NextVal,2,'مواد غذائية',1,'20/06/06');insert into Category(ID,CodeNumber,Description,ParentId) values(Seq_Category.NextVal,3,'معلبات',1);insert into Category(ID,CodeNumber,Description,ParentId) values(Seq_Category.NextVal,4,'فواكه',1);insert into Category(ID,CodeNumber,Description,ParentId) values(Seq_Category.NextVal,5,'حلويات',4);-----------------------------------الإجراءات--------------------------------بــــــاكج الأصنــــــــــــاف CREATE OR REPLACE PACKAGE ProductPkg AS TYPE Product_cursor IS REF CURSOR ; Procedure GetProduct (io_cursor1 IN OUT Product_cursor); END ProductPkg;/ CREATE OR REPLACE PACKAGE BODY ProductPkg AS Procedure GetProduct (io_cursor1 IN OUT Product_cursor) IS P_cursor Product_cursor; BEGIN OPEN P_cursor FOR SELECT * from Product; io_cursor1 := P_cursor; END GetProduct; END ProductPkg;/--بــــــاكج مجموعات الأصناف CREATE OR REPLACE PACKAGE CategoryPkg AS TYPE Category_cursor IS REF CURSOR ; Procedure GetCategory ( ID IN Number Default Null, CodeNumber IN Number Default Null, Description IN nvarchar2 Default Null, ParentId IN Number Default Null, WholeCategory IN Number Default Null, io_cursor2 IN OUT Category_cursor ); Procedure EditCategory ( ID IN Number Default Null, CodeNumber IN Number Default Null, Description IN nvarchar2 Default Null, ParentId IN Number Default Null, WholeCategory IN Number Default Null, Del IN Number Default Null, io_cursor2 IN OUT Category_cursor ); END CategoryPkg;/ CREATE OR REPLACE PACKAGE BODY CategoryPkg AS Procedure GetCategory ( ID IN Number Default Null, CodeNumber IN Number Default Null, Description IN nvarchar2 Default Null, ParentId IN Number Default Null, WholeCategory IN Number Default Null, io_cursor2 IN OUT Category_cursor ) IS C_cursor Category_cursor; SqlString VARCHAR2(2000); BEGIN if GetCategory.WholeCategory is Not Null then SqlString := 'SELECT ID,CodeNumber,Description,ParentId from Category where 1=1'; else SqlString := 'SELECT ID,CodeNumber,Description,ParentId from Category where EndServiceDate is Null'; end if; IF GetCategory.ID is not Null then SqlString := SqlString || ' and Category.ID = ' || GetCategory.ID ; end if; IF GetCategory.CodeNumber is not Null then SqlString := SqlString || ' and Category.CodeNumber = ' || GetCategory.CodeNumber ; end if; IF GetCategory.Description is not Null then SqlString := SqlString || ' and Description= ' || '''' || GetCategory.Description || '''' ; end if; IF GetCategory.ParentId is not Null then SqlString := SqlString || ' and Category.ParentId = ' || ' GetCategory.ParentId ' ; end if; OPEN C_cursor FOR SqlString; io_cursor2 := C_cursor; END GetCategory; Procedure EditCategory ( ID IN Number Default Null, CodeNumber IN Number Default Null, Description IN nvarchar2 Default Null, ParentId IN Number Default Null, WholeCategory IN Number Default Null, Del IN Number Default Null, io_cursor2 IN OUT Category_cursor ) is C_cursor Category_cursor; SqlString VARCHAR2(2000); a long; Begin--المشكلة تكمن هنا يا أصدقاء OPEN C_cursor FOR select Seq_Category.Currval,Description from Category Where Category.ID=1; io_cursor2 := C_cursor; End EditCategory; END CategoryPkg;/ اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.