![]() |
|
لجلب معطيات حقل من جدول الى اخر - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : لجلب معطيات حقل من جدول الى اخر (/showthread.php?tid=726) |
لجلب معطيات حقل من جدول الى اخر - medreg - 23-03-2009 هذا كود وضعته لجلب من جدول إلى أخر لكنه يجلب كل القيم حتى لو كانت مكررة IF table1Cde.value='1' and table1SCde.value='1-01' then table2.insert; أقصد بهذا الكود ما يلي إذا كان الحقلين الموجودين في الجدول 1 يحملاني هذه القيمة أضف هذا السطر في الجدول الثاني بشرط إن كان الحقلين متكررين بنفس القيمة في الجدول 1 أضف أحدهما فقط في الجدول الثاني وهكذا إلى أن ينتهي كما هو موضح في الصورة هنا السؤال مطروح ما ذا يجب علي أن أفعل ما هو الكود المناسب لكي أضيف أحد السطور لجلب معطيات حقل من جدول الى اخر - gigi - 23-03-2009 استخدم المكون tbatchmove لجلب معطيات حقل من جدول الى اخر - medreg - 23-03-2009 gigi كتب :استخدم المكون tbatchmove شكرًا أخي العزيز فعلاً لكن المشكلة ليست في استعمال المكون أعلم أن المكون يصلح لمثل هذه العمليات لكن المشكل هو تكرار محتو الحقل للتوضيح أكثر الجدول1 مكون من أربع حقول وهي : الحفل الأول : N الحقل الثاني : Cde الحقل الثالث : SCde الحقل الرابع : Montant المكون ديبقريد1 تابع لجدول1 يحتوي على 08 تسجيلات أي 08 أسطر و 04 أعمدة التسجيل الأول مكرر مرتين واختلافهما في الحفل N و Montant فقط الحقول التي أحتاج إلى إضاقتها في الجدول2 هي Cde , SCde فقط المطلوب هو : إذا كان الحقل Cde و SCde الموجود في السطر الأول للديبقريد1 مكرر في سطر أخر يجب أن يضيفه في الجدول 2 مرة واحدة وليس مرتين كما هو موضح في المرفق أنظر للمرفق ولا تخف المرفق مفحوص وخالي من الفيروسات هذا ما اردت توضيحه ملاحظة صغير عن المرفق المرفق عبارة عن صورة 010.bmp لأنني لم أعرف كيف أدمج صورة في الموضوع لجلب معطيات حقل من جدول الى اخر - gigi - 24-03-2009 العفو ..... المشكلة اني اتصفح الموقع من خلال هاتفي النقال فلا استطيع الرد بشكل وافي هذا عدا اني لم افهم قصدك ولكن متى ماتمكنت من الدخول من خلال الحاسوب احاول ذلك لكن اظن لو عملت فيلتر في الجدول الثاني معتمد على قيمة من الجدول الاول وتعمل شرط if لعدد السجلات للجدول الثاني لو اكثر من 1 هنا قم باخد البيانات بحلقة for تبدأ من صفر وتنتهي بعدد السجلات ناقص واحد اتمنى ان تجد الحل بهذه الطريقة لجلب معطيات حقل من جدول الى اخر - tempuser - 25-03-2009 قم بعمل ترتيب للجدول بالاعتماد على الحقلين الثاني والثالث كود : Select * From Table1 Sort by CDE, SCDE;
In Delphi
Query1.Open;
While Not Query1.EOF Do
Begin
{Keep Previous Values}
Montant:=Query1Montant.AsInteger;
CDE:=Query1CDE.AsInteger;
SCDE:=Query1SCDE.AsString;
Query1.Next;
{Compare Previous and Next Values}
IF (CDE=Query1CDE.AsInteger) And (SCDE=Query1SCDE.AsString) Then
Begin
{Write the Code To Insert Your Values In The Second Table}
End;
While (CDE=Query1CDE.AsInteger) And (SCDE=Query1SCDE.AsString) Do {Skip Same Rows}
Query1.Next;
End;لجلب معطيات حقل من جدول الى اخر - medreg - 25-03-2009 tempuser كتب :قم بعمل ترتيب للجدول بالاعتماد على الحقلين الثاني والثالث مشكور على هذه المعلومة لكن أود ان اطرح سؤال أنا لا اتعامل في برنامجي مع مكون Query ولم اتعامل معه قط بل اتعامل مع المكون Table و DataSource وإن كان من الضروري إستعمال المكون Query وضح لي طريقة التعامل معه وجزاكم الله عنا كل خير لجلب معطيات حقل من جدول الى اخر - tempuser - 25-03-2009 اداة الجدول تشبه في عملها الى حد كبير اداة الاستعلام ولا يوجد فروقات كبيرة بنهم إلا أن أداة الاستعلام يفضل استخدمها للقراءة وعدم التعديل يتم التعامل معها كما تتعامل مع أداة الجدول وسوف أقوم بالتوضيح اضاف مكون TQuery غير تسميته الىQuery1 نفرض ان اسم الجدول لديك هو TblSource اختر المكون السابق Query1 به الخاصية SQL اضغط على الزر '...' يضهر محرر اكتب به كود : Select *
From TblSource
Order By CDE, SCDE;بعد ذلك تعامل معها وكأنها TTable لجلب معطيات حقل من جدول الى اخر - medreg - 25-03-2009 جزاكم الله عنا كل خير بدأت أستوعب نوعًا ما التعامل مع Query لكن الشيءالذي لم أفهمه هو بعد أن ربطت Query1 مع Datasource1 كيف يتم تصفية كل ما سيضاف الى T_DESTINATION إليك هذا المثال المرفق لجلب معطيات حقل من جدول الى اخر - arab_co - 02-04-2009 [B][FONT="Arial Black"]بسم الله الرحمن الرحيم السلام على من اتبع الهدى انصحك يااخي باستعمال المكون patchmove من القائمة BDE فهو مكون رائع يقوم بالعمليات التالية 1-نسخ جميع التسجيلات من قاعدة بيانات الى اخرى 2-نسخ التسجيلات الناقصة من قاعدة بيانات الرئيسة الى التابعة ....الخ فعليك بتجربته [B][/B][/B] |