bombam بتاريخ: 11 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 11 أغسطس 2005 السلام عليكم....أريد انا أعمل تقرير يحتوي على جدول فيه 20 سطر في حالة وجود بيانات يمكن تعبئتها وفي حالة عدم وجود تبقى هذه الأسطر فارغة فمن يعرف ذلك الرجاء مساعدتي وشكرا للجميع اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
أسامة موسى بتاريخ: 11 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 11 أغسطس 2005 الاخ الكريمماهو الفائدة من الكتابة اليدوية اذا كنت تستخدم التقرير لاستخراج البياناتلماذا لا تصممه على مايكروسوفت ورد مثلا وتطبعهوالتقرير للبيانات؟؟؟؟؟ممكن توضح اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
bombam بتاريخ: 13 أغسطس 2005 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 13 أغسطس 2005 أنا قصدي انه مثلا بدي اطبع فاتورة ولا أريد أن تكون الفاتورة مصممة على الورق أريد ان أدخل ورقة بيضاء وأطبع الفاتورة بنفس الشكل سواء كانت البيانات المستخرجة من قاعدة البيانات عبارة عن سجل واحد او اكثر اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
mageed_ahmed بتاريخ: 13 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 13 أغسطس 2005 يا أخي حياك الله بالسلامما فائدة قواعد البيانات هنا ؟؟ في مثل حالتك؟؟ اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
bombam بتاريخ: 14 أغسطس 2005 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 14 أغسطس 2005 فائدة قاعدة البيانات هي تخزين بيانات الفواتير وعندما اريد ان اطبع الفاتورة اريدها بشكل معين وثابت يعني لو كان هناك صنف واحد في الفاتورة اريد البيانات تخرج في المربع الاول وتبقى باقي المربعات فارغة واذا كان هناك اكثر من صنف تعبأ المربعات بالبيانات وأنا أريد ان أدخل في الطابعة ورقة أبيض وليس ورق مخطط اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
أسامة موسى بتاريخ: 14 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 14 أغسطس 2005 الاخ الكريميوجد طريقة ممكن تجد اللي تبغاه يعني هذا اقتراح ممكن يوصلك للحلانك تثبت عشرين سطر وعشرين fieldوتعمل select مثلا للمفتاح الرئيسي من خلال ال query في data model ثم تعمل formula تعمل فيها احضار لباقي البايانات حسب رقم المنتج مثلا كالتالي counter_c number; cursor c is select item,cose,item_name from items where item=:item; begin counter_c:=0 for i in c loop counter_c:=counter_c+1; if counter_c =1 then :cost1 :=i.cost; :item_name1:=i.item_name; elsif counter_c =2 then :cost1 :=i.cost; :item_name1:=i.item_name; .... end if; end loop; return (null); end; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
bombam بتاريخ: 14 أغسطس 2005 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 14 أغسطس 2005 اول شي شكرا على المتابعة من الجميع لكن يبدو انه ما فيه حد فاهم شو هو سؤاليالان انا عندي فاتورة الفاتورة مقسمة على أساس انه يدخل فيها 10 أصناف مثلا انا لما ادخل ال10 اصناف ما فيه مشكلة الأسطر بتطلع عادي لكن لو دخلت مثلا 5 اصناف بيطلع عندي في الفاتورة 5 أسطر والباقي يبقى أبيضأنا اريد أن أن يطلع 10 أسطر ال5 فيهم بيانات الأصناف والخمسة الاخرين فارغين بذلك تطلع الفاتورة مسطرة اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
أسامة موسى بتاريخ: 14 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 14 أغسطس 2005 الاخ الكريميبدو انك مع الاسف لم تفهم اجابتي وعلى كلن الجواب اعلاه هو الشافي الكافي ومجربيعني ما اعطيتك اياه كده الا لما جربتهارجو ان تطبقها قبل ان تجيب وفكرتك واضحة ولو طبقت اجابتي على التقرير لوضح لك المقصدوالله من وراء القصد اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
aza بتاريخ: 14 أغسطس 2005 تقديم بلاغ مشاركة بتاريخ: 14 أغسطس 2005 يمكنك رسم خطوط ثابتة أفقية أو رأسية في Marginولكنها قد تسبب لك بعض المشاكل في حالة أن يظهر السجل الواحد في أكثر من سطر اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
المكابرابى بتاريخ: 28 أكتوبر 2008 تقديم بلاغ مشاركة بتاريخ: 28 أكتوبر 2008 (معدل) عزيزى اليك هذا الحل:SELECT A.ITEM_NO,A.QTY FROM INVOICEV A WHEREA.INVOICE_NO=:INVOICE_NOUNION ALLselect 0,0 from (select invoice_no,count(*) invoice_lines from invoices group by invoice_no), looperwhere loop_id > invoice_lines AND INVOICE_NO=:INVOICE_NO يجب اضافة جدول looper به حقل واحد اسمه loop_id واذا كنت عايز عشرة اسطر يجب ادخال بيانات من واحد الى عشرة فى جدول LOOPERهذا الحل انا شغال بيهو ومافيهو اى مشكلة تم تعديل 28 أكتوبر 2008 بواسطة المكابرابى اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
MMA بتاريخ: 28 أكتوبر 2008 تقديم بلاغ مشاركة بتاريخ: 28 أكتوبر 2008 CREATE TABLE INVOICE ( INVOICE_NO NUMBER(10), INVOICE_QUT NUMBER(10,3), CONSTRAINT PK_INVOICE PRIMARY KEY(INVOICE_NO) ) / INSERT INTO INVOICE VALUES(1,50); INSERT INTO INVOICE VALUES(2,60); INSERT INTO INVOICE VALUES(3,40); INSERT INTO INVOICE VALUES(4,70); COMMIT; CREATE OR REPLACE VIEW TBL AS ( SELECT 1 AS FLD FROM DUAL UNION SELECT 2 AS FLD FROM DUAL UNION SELECT 3 AS FLD FROM DUAL UNION SELECT 4 AS FLD FROM DUAL UNION SELECT 5 AS FLD FROM DUAL UNION SELECT 6 AS FLD FROM DUAL UNION SELECT 7 AS FLD FROM DUAL UNION SELECT 8 AS FLD FROM DUAL UNION SELECT 9 AS FLD FROM DUAL UNION SELECT 10 AS FLD FROM DUAL ) / SELECT TBL.FLD,INV.INVOICE_NO, INV.INVOICE_QUT FROM (SELECT ROWNUM AS RN,INVOICE.* FROM INVOICE ORDER BY INVOICE.INVOICE_NO) INV RIGHT JOIN TBL ON TBL.FLD = INV.RN ORDER BY INV.INVOICE_NO أو لو كان هناك أكثر من أو 10 جداول في قاعدة البيانات ، يمكنك إستخدام الطريقة التالية : SELECT TBL.RN,INV.INVOICE_NO, INV.INVOICE_QUT FROM (SELECT ROWNUM AS RN,INVOICE.* FROM INVOICE ORDER BY INVOICE.INVOICE_NO) INV RIGHT JOIN (SELECT ROWNUM AS RN FROM TAB WHERE ROWNUM <= 10) TBL ON TBL.RN = INV.RN ORDER BY INV.INVOICE_NO أو مثلاً يمكنك إستخدام جداول أخري مثل ALL_TABLES أو USER_OBJECTS أو ALL_OBJECTS أو ..... الي آخرة ودة هيكون أسهل بكثير من إنشاء عارض VIEW أو جدول TABLE يحمل مجموعة من السجلاتبالتوفيق اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.