ترقيم حسب ID الصنف - amonem - 05-02-22
السلام عليكم
يريت حد يسعدنى في الطلب دا
عايز اعمل FUNCTION داخل السيكول سيرفر يعمل ترقم تلقائي
لحقل داخل جدول بناء علي ID الصنف
كما واضح في الصورة
[attachment=27588]
وجزاكم الله كل خير
وجعله في ميزان حسناتكم
RE: ترقيم حسب ID الصنف - amonem - 05-02-22
هو-مافيش-حد-بيرد-ليه؟؟؟
RE: ترقيم حسب ID الصنف - amonem - 06-02-22
(05-02-22, 08:21 PM)amonem كتب : هو-مافيش-حد-بيرد-ليه؟؟؟
يريت-حد-يسعدنى-الامر-مهم-جدا
RE: ترقيم حسب ID الصنف - ابراهيم ايبو - 06-02-22
السلام عليكم ورحمة الله وبركاته
اخي الكريم
اعمل جدول باسم Items لتجرب عليه
وضع فيه الحقول التالية :
1 - Id ترقيم تلقائي
2 ItmName NvarChar(50) اسم المنتج
3 - ItmCategory int صنف المنتج (يمكنك عمله (Nvarchar(50))
ثم املأ عددا من السجلات من المنتجات التالية بحيث تكون الاصناف عشوائية
(تفاح - برتقال - دراق - ليمون - موز) تحت الصنف رقم 1
(بطاطس - طماطم - فليفلة - بصل - كوسا - باذنجان) تحت الصنف رقم 2
(أرز - عدس - حمص - فول) تحت الصنف رقم 3
(حليب - عيران - لبن - جبنة) تحت الصنف رقم 4
الان جملة الاستعلام ستكون كالتالي :
كود :
SELECT Id,ItmName, ROW_NUMBER() OVER(Partition by ItmCategory order BY ItmCategory) AS MyId from Items
جرب الاستعلام على SqlServer بعدها طبق ماتريد في الفيجوال ستوديو
عتاب من أخ لأخيه :
لاتلح في طلب الاجابة لان لكل مشاغله قد لايتواجد من يملك الاجابة
ثق تماما ان لا أحد يتوانى عن الإجابة فكلنا نعمل هنا مرضاة لله تعالى
تقبل تحياتي وعتابي
دمت بخير
RE: ترقيم حسب ID الصنف - amonem - 08-02-22
(06-02-22, 09:06 PM)ابراهيم ايبو كتب : السلام عليكم ورحمة الله وبركاته
اخي الكريم
اعمل جدول باسم Items لتجرب عليه
وضع فيه الحقول التالية :
1 - Id ترقيم تلقائي
2 ItmName NvarChar(50) اسم المنتج
3 - ItmCategory int صنف المنتج (يمكنك عمله (Nvarchar(50))
ثم املأ عددا من السجلات من المنتجات التالية بحيث تكون الاصناف عشوائية
(تفاح - برتقال - دراق - ليمون - موز) تحت الصنف رقم 1
(بطاطس - طماطم - فليفلة - بصل - كوسا - باذنجان) تحت الصنف رقم 2
(أرز - عدس - حمص - فول) تحت الصنف رقم 3
(حليب - عيران - لبن - جبنة) تحت الصنف رقم 4
الان جملة الاستعلام ستكون كالتالي :
كود :
SELECT Id,ItmName, ROW_NUMBER() OVER(Partition by ItmCategory order BY ItmCategory) AS MyId from Items
جرب الاستعلام على SqlServer بعدها طبق ماتريد في الفيجوال ستوديو
عتاب من أخ لأخيه :
لاتلح في طلب الاجابة لان لكل مشاغله قد لايتواجد من يملك الاجابة
ثق تماما ان لا أحد يتوانى عن الإجابة فكلنا نعمل هنا مرضاة لله تعالى
تقبل تحياتي وعتابي
دمت بخير
شكرا استاذي الغالي
علي اهتمامك واسف انى الحيت في طلبي بس الموضوع محتاجهه ضرورى
الكود ال حضرتك وضعته لم يتم ترقيم كما اريد
انا محتاج فاكشن يحفظ في السيكول
يعمل ترقيم لكل صنف علي حده
كود :
CREATE function [dbo].[TrgUpdateId]
on [dbo].[_Test]
AFTER INSERT
AS
BEGIN
declare @nYear int=0
declare @nID int=0
select @nID =nID ,@nYear=year(dDate) from inserted
update _Test
set nID=(select isnull(max(nId),0)+1 from [dbo].[_Test] where year(dDate)=@nYear and nID <>@nID )
where nID= @nID
END
دا فاكشن بيعمل ترقيم حسب السنه
اريد تعديله بيعمل ترقيم حسب اسم الصنف
لكى استخدمه داخل فيو داخل سيكول سيرفر
اتمنى تكون الفكره وصلت
(08-02-22, 01:49 AM)amonem كتب : (06-02-22, 09:06 PM)ابراهيم ايبو كتب : السلام عليكم ورحمة الله وبركاته
اخي الكريم
اعمل جدول باسم Items لتجرب عليه
وضع فيه الحقول التالية :
1 - Id ترقيم تلقائي
2 ItmName NvarChar(50) اسم المنتج
3 - ItmCategory int صنف المنتج (يمكنك عمله (Nvarchar(50))
ثم املأ عددا من السجلات من المنتجات التالية بحيث تكون الاصناف عشوائية
(تفاح - برتقال - دراق - ليمون - موز) تحت الصنف رقم 1
(بطاطس - طماطم - فليفلة - بصل - كوسا - باذنجان) تحت الصنف رقم 2
(أرز - عدس - حمص - فول) تحت الصنف رقم 3
(حليب - عيران - لبن - جبنة) تحت الصنف رقم 4
الان جملة الاستعلام ستكون كالتالي :
كود :
SELECT Id,ItmName, ROW_NUMBER() OVER(Partition by ItmCategory order BY ItmCategory) AS MyId from Items
جرب الاستعلام على SqlServer بعدها طبق ماتريد في الفيجوال ستوديو
عتاب من أخ لأخيه :
لاتلح في طلب الاجابة لان لكل مشاغله قد لايتواجد من يملك الاجابة
ثق تماما ان لا أحد يتوانى عن الإجابة فكلنا نعمل هنا مرضاة لله تعالى
تقبل تحياتي وعتابي
دمت بخير
شكرا استاذي الغالي
علي اهتمامك واسف انى الحيت في طلبي بس الموضوع محتاجهه ضرورى
الكود ال حضرتك وضعته لم يتم ترقيم كما اريد
انا محتاج فاكشن يحفظ في السيكول
يعمل ترقيم لكل صنف علي حده
كود :
CREATE function [dbo].[TrgUpdateId]
on [dbo].[_Test]
AFTER INSERT
AS
BEGIN
declare @nYear int=0
declare @nID int=0
select @nID =nID ,@nYear=year(dDate) from inserted
update _Test
set nID=(select isnull(max(nId),0)+1 from [dbo].[_Test] where year(dDate)=@nYear and nID <>@nID )
where nID= @nID
END
دا فاكشن بيعمل ترقيم حسب السنه
اريد تعديله بيعمل ترقيم حسب اسم الصنف
لكى استخدمه داخل فيو داخل سيكول سيرفر
اتمنى تكون الفكره وصلت
ترقيم حسب اسم الصنف كما واضح في الصوره الاتيه
RE: ترقيم حسب ID الصنف - ابراهيم ايبو - 08-02-22
السلالم عليكم ورحمة الله وبركاته
اخي الكريم
الصنف هو الذي يحوي عدة منتجات فمثلا
الصنف خضار يحوي (طماطم - بطاطس - باذنجان وهكذا )
يبدو انك ستلخبطني معك ايضا
المهم
اليك التريغر المعدل فقط يجب تغيير اسم الجدول واسم حقل الاي دي الذي تريد الترقيم فيه
كود :
CREATE function [dbo].[TrgUpdate_MyId]
on [dbo].[Items]
AFTER INSERT
AS
BEGIN
declare @MyID int=0
select @MyID = MyID from inserted
update Items
set MyID=(select isnull(max(MyID),0)+1 from [dbo].[Items] where MyID <> @MyID )
where MyID= @MyID
END
RE: ترقيم حسب ID الصنف - amonem - 13-02-22
(08-02-22, 02:08 PM)ابراهيم ايبو كتب : السلالم عليكم ورحمة الله وبركاته
اخي الكريم
الصنف هو الذي يحوي عدة منتجات فمثلا
الصنف خضار يحوي (طماطم - بطاطس - باذنجان وهكذا )
يبدو انك ستلخبطني معك ايضا
المهم
اليك التريغر المعدل فقط يجب تغيير اسم الجدول واسم حقل الاي دي الذي تريد الترقيم فيه
كود :
CREATE function [dbo].[TrgUpdate_MyId]
on [dbo].[Items]
AFTER INSERT
AS
BEGIN
declare @MyID int=0
select @MyID = MyID from inserted
update Items
set MyID=(select isnull(max(MyID),0)+1 from [dbo].[Items] where MyID <> @MyID )
where MyID= @MyID
END
شكرا-لحضرتك-استاذي-الغالي-علي-مجهودك-جزاك-الله-كل-خير
|