الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

مساعده في تسجيل بيانات سند الصرف في الشاشة على جدولين

Featured Replies

بتاريخ:

 

السلام عليكم 

مشرفين واعضاء منتدنا الرئع 

قمت بعمل شاشه سند صرف وقمت بعمل lov تحت عنوان الاعمال عن طريق هذه ال lov يتم ربط بيانات سند الصرف بالعمل المحدد في ال lov ولكن بعد ان اكملت العمل تفاجات من مستخدمين النظام بانهم يحتاجون ان في بعض الحالات توزيع مبلغ السند على اكثر من عمل وال lov التي قمت بعملها لا تسمح لهم الا اختيار عمل واحد 

 

ارجو المساعده للضروره التامه في حل بسط جزاكم الله خير 

 

ولكم خالص الشكرو التقدير

 

بتاريخ:

اخي العزيز انس هل من الممكن ان توضح اكثر وصياغة كلامك بمثال حتى يتسنى لنا الفهم ويقدم الله مافيه الخير في معلومة يمكن تساعدك من الاخوة الاعضاء او مني لاني بصراحة ما استوعبت الفكرة
تحياتي لك

بتاريخ:
  • كاتب الموضوع

اخي الفاضل م. ميهال 

 

ساقوم بشرح مثال كي اوضح المشكله بشكل اكثر 

 

عندي شاشه سند صرف نقدي هذه الشاشه يتم من خلالها اذخال بيانات المصروفات ساذكر الحقول المهمه وهي كالتالي

 

رقم الصرف                 الصندق                نوع المستفيد               المستفيد                   العمل                        المبلغ          

1                              الرئسي                     مورد                 احمد                   تكلفه عمل معين                1000          

2                              الرئسي                     مورد                 احمد                   تكلفه عمل اخر                2000

 

هذا ما قمت بعملة حاليا  وفي هذه الحاله قمنا بصرف مبلغ 3000 على نفس المود وبنفس اللحضه اتعاب وتكلفه لي عملين  وقد يكون هناك اكثر من عمليه لنفس المستفيد على اكثر من عمل 

بمعنى الان قمت بادخال عمليتين لنفس المستفيد والسباب انه تكلفه لعملين اريد ان تكون الاضافه للمورد احمد في عملية واحده مع امكانية ربط العملية بتكلفه لاكثر من عمل  

 

اريد التعديل على هذه الشاشه بحيث عند اختيار المورد احمد     ان اضيف اكثر من عمل في نفس العملية 

 

هذا شرح مبسط واذا كان هناك اي شي غامض ساقوم بتوضيحه مهندس ميهال ومشرفين واعضاء المنتدى

 

ولكم خالص الشكر والتقدير

تم تعديل بواسطة anas.soft

بتاريخ:

اخى الكريم تلك المشكلة قابلتنا من قبل ذلك
ويفضل عمل جدول تفصيلي للسندات
master & detail
فى الجدول الماستر يتم تسجيل بيانات السند كتاريخه والمورد والمبلغ الاجمالي
وفى الديتيل لكل عمل سطر منفصل لنفس السند

بتاريخ:
  • كاتب الموضوع

اخى الكريم تلك المشكلة قابلتنا من قبل ذلك

ويفضل عمل جدول تفصيلي للسندات

master & detail

فى الجدول الماستر يتم تسجيل بيانات السند كتاريخه والمورد والمبلغ الاجمالي

وفى الديتيل لكل عمل سطر منفصل لنفس السند

 

اخي الفاضل محمد علي 

 

هل لك ان تشرح لي الطريقة بشكل تفصيل اكثر مع العلم بان سند الصرف يغذي جدول اخر مثل جدو الحركات وغيرها عن طريق بروسجر بعمله insert 

 

وهل

عند عمليه insert هل سيقوم باضافه اكثر من سجل على الجدول المرتبط بالشاشه والجدول الذي تغذيها الشاشه بعملية insert 

 

ارجو التوضيح لاني بصرحه الافكار كثيره ومشتته  

 

جزاك الله خير جزا 

تم تعديل بواسطة anas.soft

بتاريخ:

حضرتك هايبقى عندك جدول رئيسي
رقم الصرف                 الصندق                نوع المستفيد               المستفيد                 اجمالي المبلغ
وجدول تفصيلي
رقم الصرف    العمل                        المبلغ 
----------------------
والشاشة ستكون بها RELATION بين الجدولين
وفى الDETAILS هو يدخل عدد الاعمال التى يود ادخالها وستكون مربوطة على نفس رقم السند
------------------------
اما بالنسبة لجدول الحركات اللى بتعمل فيه INSERT على حسب الاعمدة اللتى تود وضعها فيه
اذا كنت تريد وضع رقم السند مثلا والتاريخ والمستفيد والاجمالي فقط بدون الاعمال التفصيلية ستضع البيانات من الMaster table فقط
اما اذا احتجت لوضع نوع الاعمال ايضا فستحتاج ايضا ان تعمل insert بعدد سطور الdetail table
 

بتاريخ:
  • كاتب الموضوع

حضرتك هايبقى عندك جدول رئيسي

رقم الصرف                 الصندق                نوع المستفيد               المستفيد                 اجمالي المبلغ

وجدول تفصيلي

رقم الصرف    العمل                        المبلغ 

----------------------

والشاشة ستكون بها RELATION بين الجدولين

وفى الDETAILS هو يدخل عدد الاعمال التى يود ادخالها وستكون مربوطة على نفس رقم السند

------------------------

اما بالنسبة لجدول الحركات اللى بتعمل فيه INSERT على حسب الاعمدة اللتى تود وضعها فيه

اذا كنت تريد وضع رقم السند مثلا والتاريخ والمستفيد والاجمالي فقط بدون الاعمال التفصيلية ستضع البيانات من الMaster table فقط

اما اذا احتجت لوضع نوع الاعمال ايضا فستحتاج ايضا ان تعمل insert بعدد سطور الdetail table

 

 

انا عجز عن شكرك اخي الفاضل م. محمد علي على هذا التوضيح 

 

وساقوم بالعمل والتجربه وابلغك بالمستجدات   

 

جزاك الله خير وبراك الله فيك وفي علمك 

تم تعديل بواسطة anas.soft

بتاريخ:

بالتوفيق اخى الحبيب

بتاريخ:

 

حل منطقي وسهل اخي mohamedali013

 

اخي أنس جرب طريقة الاخ mohamedali013 واعطينا النتيجة وان شاء الله تنحل هذه الاشكلية 

 

تم تعديل بواسطة miash80

بتاريخ:
  • كاتب الموضوع

اخي الفاضل م. موسى 

 

اشكر تفاعلك مع الموضوع وهذا من اصلك الطيب 

 

وجاري التجربه وسوف ابلغككم انت و المهندس محمد ومشرفين واعضاء المنتدى بالنتيجه 

 

 

اكرر شكري لكل مشرفين واعضاء المنتدى على كل المعلومات التي استفدها واستفادها غيري من المبرمجين 

تم تعديل بواسطة anas.soft

بتاريخ:

الاخ انس كلام الاخ محمد علي في محله هي تفصيلي الحركة بين ماستر و ديتيلز حيث يكون المورد في الديتيلز و الحركات التي تريد عملها للمورد في الديتيلز تحل لك مشكلتك دائما اذا صادفتك هذا النوع من العلاقات تركز على نوع العلاقات في الحركات والمقصود بها مثلا وان تو ميني one to many مثل المورد وعدة الحركات التي تريد القيام بها علي وهنا ماقصد الرائع محمد علي بشرحه وتحياتي لكم

بتاريخ:
  • كاتب الموضوع

الاخ انس كلام الاخ محمد علي في محله هي تفصيلي الحركة بين ماستر و ديتيلز حيث يكون المورد في الديتيلز و الحركات التي تريد عملها للمورد في الديتيلز تحل لك مشكلتك دائما اذا صادفتك هذا النوع من العلاقات تركز على نوع العلاقات في الحركات والمقصود بها مثلا وان تو ميني one to many مثل المورد وعدة الحركات التي تريد القيام بها علي وهنا ماقصد الرائع محمد علي بشرحه وتحياتي لكم

اخي العزيز م. ميهال اشكرك جزيل الشكر على هذه الاضافه الرئعة 

 

واسالله الله ان يوفقكم ويبارك فيكم جميعا اخوتي في الله ؛؛؛

بتاريخ:
  • كاتب الموضوع

حضرتك هايبقى عندك جدول رئيسي

رقم الصرف                 الصندق                نوع المستفيد               المستفيد                 اجمالي المبلغ

وجدول تفصيلي

رقم الصرف    العمل                        المبلغ 

----------------------

والشاشة ستكون بها RELATION بين الجدولين

وفى الDETAILS هو يدخل عدد الاعمال التى يود ادخالها وستكون مربوطة على نفس رقم السند

------------------------

اما بالنسبة لجدول الحركات اللى بتعمل فيه INSERT على حسب الاعمدة اللتى تود وضعها فيه

اذا كنت تريد وضع رقم السند مثلا والتاريخ والمستفيد والاجمالي فقط بدون الاعمال التفصيلية ستضع البيانات من الMaster table فقط

اما اذا احتجت لوضع نوع الاعمال ايضا فستحتاج ايضا ان تعمل insert بعدد سطور الdetail table

 

 

 

السلام عليكم اخي محمد وعلى جميع مشرفين واعضا المنتدى 

 

قمت بعمل الطريقة التي وضحها الاخ محمد  ولكن هناك مشكله بسيطه وهي كالتالي 

1- عند عملية insert  انا اريد ال insert بعدد سطور الdetail table  واضافه بيانات الMaster table كي تظهر في تقرير تكاليف الاعمال 

 

السوال 

كيف اقوم بعمل insert    للجدول بعدد سطول detail table  واضافه جميع البيانات في Master table على جدول واحد وهو جدول الحركات 

 

ولكم خالص الشكر والتقدير

تم تعديل بواسطة anas.soft

بتاريخ:

اخى اللى فهمته انك تريد عمل insert بعدد سطور الdetail block مع استخدام البيانات ايضا من master block
يكفيك فى عمل تريجر post insert على الdetail block وتستطيع عمل ريفرنس " اعنى استخدام " البيانات من master block عادي جدا 
وهذا مثال على ذلك


 

Insert into transaction
values(:master_block.item,detail_block.item);

فتستطيع بكل سهولة الجمع بين البلوكين

بتاريخ:
  • كاتب الموضوع

اخى اللى فهمته انك تريد عمل insert بعدد سطور الdetail block مع استخدام البيانات ايضا من master block

يكفيك فى عمل تريجر post insert على الdetail block وتستطيع عمل ريفرنس " اعنى استخدام " البيانات من master block عادي جدا 

وهذا مثال على ذلك

 

Insert into transaction
values(:master_block.item,detail_block.item);

فتستطيع بكل سهولة الجمع بين البلوكين

اخي الكريم محمد   اولا اشكرك للمتابعتك للموضع 

 

ولكن عملتها عن طريق برويجر وقمت باستدعائه عن طريق تريجر POST-INSERT  ولكن تعطيني خطا انه تم انتهاك القيد واعتقد بانه بسبب ان عدد سطور ال detail block اكثر من سطور master block

 

ولك  خالص شكري وامتناني اخي الكريم محمد علي

بتاريخ:

الخطأ اخى الكريم انس " تم انتهاك القيد "
يعنى ان جدول الTransactions يحتوى على Unique Constraint  وغالبا يكون هناك primary key
فانت تحاول انشاء اكثر من سطر على نفس القيمة لل primary key
مما احدث هذا الخطأ

بتاريخ:
  • كاتب الموضوع

الخطأ اخى الكريم انس " تم انتهاك القيد "

يعنى ان جدول الTransactions يحتوى على Unique Constraint  وغالبا يكون هناك primary key

فانت تحاول انشاء اكثر من سطر على نفس القيمة لل primary key

مما احدث هذا الخطأ

 

اخي الفاضل م. محمد 

فعلا هذا ما يحدث فما هو الحل بحسب خبرتك 

 

ولك خالص شكري وامتناني 

بتاريخ:

أخي الكريم انس مشكلتك هي في العلاقة بين الماستر والديتيلز يجب ان يكون هناك علاقة بينهم وهي يوجد حقل يحمل نفس الاسم في الجدولين وعند إنشاء بلوك الديتيلز تعمل مساواه بين الحقلين في الجدولين في حدث إنشاء العلاقة أعطيك مثال مثلا في المستحدم scott هناك جدولين يمكن ان يشبهو حالتك اولا جدول الماستر وهو الاقسام dept  جدول الديتيلز هو حدول emp الحقل المشترك هو رقم القسم موجود في الجدولين مع العلم إن رقم القسم في جدول الاقسام هو مفتاح رئيسي و جدول الموظفين رقم القسم يمكن ان يتكرر وعند انشاء الشاشة لهذه العملية من خلال معالج إنشاء البلوك فانك في البداية تنشاء الماستر بشكل عادي وهو جدول الاقسام وبعد ما يكتمل المعالج تنشئ جدول الديتلز واثناء مرحلة اللانشاء يتاح لك إنشاء علاقة مع الجداول فتختار جدول الاقسام وتعمل مساواه للحقلين المذكورين سابقا وبعد الانتهاء تظهر لك بروسيجرات العلاقة الخاصة بين الجدولين التي انشئتها و بعدها يمكنك انشاء حقل جديد في الماستر وكذا إنشاء في الديتيلز حقول دون مشاكل أرجوا اني فهمت طلبك وشرحي يفيدك

أخوكم ...

بتاريخ:

اخى الكريم انس كما قال لك الأخ الفاضل تأكد من ان العلاقة بين الماستر والديتيل مضبوطة

ثم نأتى للجدول الثالث الخاص بالـTransactions
ممكن تعطينا الهيكل الخاص به
اعتقد انك عملت primary key على العمود المربوط بـMaster Table
وهذا خطأ حيث انك من الممكن ات تضع اكتر من صف من الMaster Table مع العمود الخاص بالDetail Table  مثل هذا المثال
ولكن فى حالة وجود قيد على الPK column ستحدث معك مشكلة
PK      FK
------------
1          1
2          1
3          1
 

بتاريخ:
  • كاتب الموضوع

اخى الكريم انس كما قال لك الأخ الفاضل تأكد من ان العلاقة بين الماستر والديتيل مضبوطة

 

ثم نأتى للجدول الثالث الخاص بالـTransactions

ممكن تعطينا الهيكل الخاص به

اعتقد انك عملت primary key على العمود المربوط بـMaster Table

وهذا خطأ حيث انك من الممكن ات تضع اكتر من صف من الMaster Table مع العمود الخاص بالDetail Table  مثل هذا المثال

ولكن فى حالة وجود قيد على الPK column ستحدث معك مشكلة

PK      FK

------------

1          1

2          1

3          1

 

 

اخي الفاضل م. محمد علي هذه هي العلاقة بي البلوكين علما بان الجدولين يحملين مفاتي اساسي مركب مكون من الحقول التاليه في العلاقه :

 

B1.PAYMENT_TYPE=B4.PAYMENT_TYPE AND
B1.COMP# = B4.COMP# AND
B1.REGION_CODE = B4.REGION_CODE AND
B1.BRANCH# = B4.BRANCH# AND
B1.DEPT#=B4.DEPT# AND
B1.MAIN_PERIOD_NO = B4.MAIN_PERIOD_NO AND
B1.PAYMENT_NO = B4.PAYMENT_NO 
 
 
مع العلم وهذا غريب جدا  بان النظام قام وكل علاقته تتم عن طريق الفوم ولا يوجد علاقه FK في الجدول 
بتاريخ:
  • كاتب الموضوع

السلام عليكم اعضاء ومشرفين المنتدى المبدع

 

اخي م. محمد 

اخي م. ميهال

 

تم حل مشكله العلاقه بين المستر والديتيل وتم اضافه اكثر من سجل على الديتل ولكن هناك ملحضه اخرا وهي  كا التالي 

 

انا عامل بروسيجر يقوم بعمليه INSERT  الي جدول  TRANSACTIONS يقوم باضافة سجل من البلوك المستر  وسجل اخر من بلوج الديتل فقط مع العلم بانه اضايف اكثر من سجل في الديتل 

 

 

هذا ولكم خاص شكري وامتناني على حسن المتابعه 

بتاريخ:

اخى الكريم انس
يمكنك هذا باستعمال تريجر post-insert على الـDetail Block
وهو سيعمل مع كل صف من الDetail Block

Post-insert trigger will fire with each row inserted on the Detail Block

بتاريخ:
  • كاتب الموضوع

اخى الكريم انس

يمكنك هذا باستعمال تريجر post-insert على الـDetail Block

وهو سيعمل مع كل صف من الDetail Block

Post-insert trigger will fire with each row inserted on the Detail Block

 

كم انتم رئعين   بمتابعتكم وبخبرتكم  

اخي المهندس : محمد 

واخي المهندس ميهال 

 

فعلا كلامك صحيح اخي الفاضل م. محمد  وتم بنجاح وجاري متابعه العمل على السندات الاخرى (سند صرف شيك - حوله - سند قبض ) 

بنفس هذه الفكره   ولنا متابعه اذا صار شي 

واكيد لن استعني عن جميع اعضاء ومشرفين هذا لمنتدى الرئع 

وعنكم :

اخي المهندس : محمد 

واخي المهندس ميهال 

 

ولا ننسى المشرف القدير : احمد حسن والمشرفه ميسم الكرام 

 

لكم شكري وخالص امتناني 

تم تعديل بواسطة anas.soft

بتاريخ:

لنا الشرف اخي انس بالتواصل معكم
الى مزيد من النجاح والتوفيق باذن الله
الحب فى الله يجمعنا
لا تنسانا من صالح دعائك

بتاريخ:
  • كاتب الموضوع

لنا الشرف اخي انس بالتواصل معكم

الى مزيد من النجاح والتوفيق باذن الله

الحب فى الله يجمعنا

لا تنسانا من صالح دعائك

 

 

جزاكم الله خير الجزى وفرج همومكم   

 

ولن انساكم في عمرتي القادمه  في مكه من الدعا الكثير 

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.