الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الرجاء المساعده من الاخت زهره فى هذا الكود (للضروره)

بدأه عبدالعزيز الشيمى في 29 سبتمبر 2012 · 9 رد · 632 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمه الله وبركاته

الكود عباره عن كود يقوم بتصدير جميع جداول وشاشات واستعلامات وماكرو وصفحات ومديول برنامج اكسس كل شى الى DoCmd.TransferText

المطلوب

1. التعديل على هذا الكود بحيث يقوم بتصدير جميع جداول البرنامج فقط كل جدول الى DoCmd.TransferDateBae بشرط ان يقوم الكود بانشاء ملف اكسس لكل جدول بنفس اسم الجدول وادارج الجدول بداخله

2. كود لاستيراد مجموعه من ملفات txt الى برنامج اكسس بحيث لا نقوم بانشاء جداول باسماء الملفان وان يقوم الكود باستيراد جميع الملفات وانشاء جدول خاص بكل ملف

هذا هو الكود الخاص ب تصدير البيانات والبرنامج موجود بالمرفقات


Option Explicit

Public Sub ExportDatabaseObjects()
On Error GoTo Err_ExportDatabaseObjects

Dim db As Database
'Dim db As DAO.Database
Dim td As TableDef
Dim d As Document
Dim c As Container
Dim i As Integer
Dim sExportLocation As String

Set db = CurrentDb()

sExportLocation = "C:\Temp\" 'Do not forget the closing back slash! ie: C:\Temp\

For Each td In db.TableDefs 'Tables
If Left(td.Name, 4) <> "MSys" Then
DoCmd.TransferText acExportDelim, , td.Name, sExportLocation & "Table_" & td.Name & ".txt", True
End If
Next td

Set c = db.Containers("Forms")
For Each d In c.Documents
Application.SaveAsText acForm, d.Name, sExportLocation & "Form_" & d.Name & ".txt"
Next d

Set c = db.Containers("Reports")
For Each d In c.Documents
Application.SaveAsText acReport, d.Name, sExportLocation & "Report_" & d.Name & ".txt"
Next d

Set c = db.Containers("Scripts")
For Each d In c.Documents
Application.SaveAsText acMacro, d.Name, sExportLocation & "Macro_" & d.Name & ".txt"
Next d

Set c = db.Containers("Modules")
For Each d In c.Documents
Application.SaveAsText acModule, d.Name, sExportLocation & "Module_" & d.Name & ".txt"
Next d

For i = 0 To db.QueryDefs.Count - 1
Application.SaveAsText acQuery, db.QueryDefs(i).Name, sExportLocation & "Query_" & db.QueryDefs(i).Name & ".txt"
Next i

Set db = Nothing
Set c = Nothing

MsgBox "All database objects have been exported as a text file to " & sExportLocation, vbInformation

Exit_ExportDatabaseObjects:
Exit Sub

Err_ExportDatabaseObjects:
MsgBox Err.Number & " - " & Err.Description
Resume Exit_ExportDatabaseObjects
End Sub
Option Compare Database

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

DoCmd.TransferDatabase acExport, "Microsoft Access", sExportLocation & td.Name & ".mdb", acTable, td.Name, td.Name, False

الرجاء المساعده فى هذا الكود لضروره الحاجه اليه فى طبيعه عملى

TableToTxt.rar

dragonglitters22.gif

لا تأسفن على غدر الزمان لطالما رقصت على جثث الأسود كلاب لا تحسبن برقصها تعلو على أسيادها تبقى الأسود أسودا والكلاب كلاب

#2

تفضل اخي الكريم : عبدالعزيز

post-15367-098372300 1348989575_thumb.gi

za-ExoprtAndCreatNewDB.rar

بالنسبة لإستيراد الملفات النصية وانشاء جداول خاصة بكل ملف نصي فلا يمكن استيراد ملفات نصية فارغة وانشاء جداول لها لأنه يجب ان يحتوي كل ملف نصي على بيانات تمثل جقول الجدول المطلوب انشاؤه

بالتوفيق

المرفقات
E1.gif
3
#3
zahrah كتب:

بالنسبة لإستيراد الملفات النصية وانشاء جداول خاصة بكل ملف نصي فلا يمكن استيراد ملفات نصية فارغة وانشاء جداول لها لأنه يجب ان يحتوي كل ملف نصي على بيانات تمثل جقول الجدول المطلوب انشاؤه

بالتوفيق

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

بالنسبه للطلب الثانى استيراد الملفات النصيه وانشاء جداول خاصه بكل ملف هذه الملفات لن تكون فارغه بل يوجد بها بيانات ولكن هذه البيانات لا يوجد لها HEADER واريد انشاء HEADER ثابت لجميع البيانات ولن يتم استيراد جميع HEADER الموجود فى الملف النصى بل بعض الاعمده منه

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

المطلوب الحصول على هذه النتيجه الموجوده بملف الاكسس بعد الاستيراد وبنفس HEADER لانه ثابت فى جميع الملفات النصيه

DATA.rar

تم تعديل هذه المشاركة بواسطة عبدالعزيز الشيمى في 1 أكتوبر 2012 في 10:01

dragonglitters22.gif

لا تأسفن على غدر الزمان لطالما رقصت على جثث الأسود كلاب لا تحسبن برقصها تعلو على أسيادها تبقى الأسود أسودا والكلاب كلاب

#4

اخي الفاضل

هل هذا هو الملف النصي بصيغة txt الذي تتحدث عنه وتريد الإستيراد منه

هذا ما ظهر لي عند فتح مجلد DATA

post-15367-067450300 1349003507_thumb.gi

لا اعرف ما هي صيغة هذا الملف ( P3 )

وايضا عند فتح الملف بواسطة المفكره ظهرت هذه البيانات

طبعا لا يمكن بأي حال من الأحوال التعامل مع مثل هذه الملفات سواء بالإستيراد او التصدير لأنها غير منسقة

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

post-15367-029146900 1349004541_thumb.gi

هذا التنسيق هو المطلوب لإستيراده في قاعدة البيانات وإنشاء جدول بناء عليه

عدى ذلك اخي الكريم اعتذر عن مساعدتك اذا كانت ملفاتك النصية كما ارسلتها لنا بصيغة غريبة وغير منسقه .

بالتوفيق

المرفقات
TT2.gifTT3.gif

تم تعديل هذه المشاركة بواسطة zahrah في 30 سبتمبر 2012 في 17:59

#5

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

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

وفى اعتقداتى انه عند استيراد هذه الملفات يقوم البرنامج بتحويل هذه العلامات والمسافات الى , ويتجاهل ما بعد ) ثم يقوم بعمليه الاستيراد

او ان البرنامج يقوم بتقطيع البيانات بعد كل علامه او مسافه ثم يقوم باستيرادها مثل استخدام هذه الاداوات SUBSTR, INSTR, LENGHT فى الاوركال لكى يقوم بتقطيع البيانات بعد كل علامه

اما اختى الكريمه فى حاله عدم امكانيه استيراد صيغه هذا الملف فارجو تطيبق عمليه استيراد الملفات النصيه على ملف TXT عادى مثل الموجود فى الصوره المرفقه ولكن بدون Header وان يتم انشاء Header ثابت فى الكود لجميع الملفات وان تتكون data type فى الملف النصى من Text , Number , DATE/Time , Yes/No و ليست جميعها TEXT ( مع العلم بان عدد الاعمده فى جميع الملفات النصيه سيكون ثابت وبنفس data type )

ولكى اختى الفاضله جزيل الشكر

post-255712-038663300 1349014517_thumb.g

المرفقات
post-15367-029146900 1349004541.gif

تم تعديل هذه المشاركة بواسطة عبدالعزيز الشيمى في 30 سبتمبر 2012 في 20:03

dragonglitters22.gif

لا تأسفن على غدر الزمان لطالما رقصت على جثث الأسود كلاب لا تحسبن برقصها تعلو على أسيادها تبقى الأسود أسودا والكلاب كلاب

#6
عبدالعزيز الشيمى كتب:

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

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

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

وفى اعتقداتى انه عند استيراد هذه الملفات يقوم البرنامج بتحويل هذه العلامات والمسافات الى , ويتجاهل ما بعد ) ثم يقوم بعمليه الاستيراد

او ان البرنامج يقوم بتقطيع البيانات بعد كل علامه او مسافه ثم يقوم باستيرادها مثل استخدام هذه الاداوات SUBSTR, INSTR, LENGHT فى الاوركال لكى يقوم بتقطيع البيانات بعد كل علامه

اما اختى الكريمه فى حاله عدم امكانيه استيراد صيغه هذا الملف فارجو تطيبق عمليه استيراد الملفات النصيه على ملف TXT عادى مثل الموجود فى الصوره المرفقه ولكن بدون Header وان يتم انشاء Header ثابت فى الكود لجميع الملفات وان تتكون data type فى الملف النصى من Text , Number , DATE/Time , Yes/No و ليست جميعها TEXT ( مع العلم بان عدد الاعمده فى جميع الملفات النصيه سيكون ثابت وبنفس data type )

ولكى اختى الفاضله جزيل الشكر

post-255712-038663300 1349014517_thumb.g

اخي الفاضل : عبدالعزيز

تم حذف صورة الملف النصي بناء على رغبتك

يعلم الله انني ارغب بمساعدتك بقدر استطاعتي ولكن في المقابل يجب عليك انت ايضا مساعدتنا في موضوعك لأنه من غير المعقول ان انشئ لك ملفات نصية لا علم لي بمحتويات هذه الملفات النصية .

لذا فضلا لا امراً قم بعمل الملفات النصية التي تريدها وسوف اقوم بعمل الكود اللازم الذي يستورد لك كل ملفاتك النصية الى قاعدة البيانات .

هذا ما استطيع عمله لك

بالتوفيق

#7
zahrah كتب:

لذا فضلا لا امراً قم بعمل الملفات النصية التي تريدها وسوف اقوم بعمل الكود اللازم الذي يستورد لك كل ملفاتك النصية الى قاعدة البيانات .

هذا ما استطيع عمله لك

بالتوفيق

شكر لكى اختى الفاضله على مساعدتك ولقد قمت بانشاء 5 ملفات نصيه فى المرفقات للتجربه واريد ان يتم انشاء جدول لكل ملف نصى وبنفس Header مع العلم بان عدد الملفات النصيه يمكن ان يزيد عن50 ملف نصى

بمعنى ان يقوم الكود بعمل Create Table بنفس اسم الملف النصى وبنفس بيانات ال Header قبل عملية الاستيراد

post-255712-052566900 1349025198_thumb.j

وهذا هو ال Header الثابت المراد وضعه فى الكود لكى يكون لجميع الملفات النصيه ومرفق معه صوره بـ Data Type


"EmployeeID";"LastName";"FirstName";"Title";"TitleOfCourtesy";"BirthDate";"HireDate";"Address";"Notes";"ReportsTo";"TYPE"

post-255712-093435000 1349025244_thumb.j

Emp.rar

رجاء اختى الفاضله : اذا امكن ان تقومى بشرح الجزء الخاص بعمليه الاستيراد بعد الانتهاء منه و توضيح اذ امكن تحويل البيانات العلامات المدرجه فى الملف النصى السابق صاحب امتداد p3 الى ( ; ) ام لا ولكى جزيل الشكر على مساعدتك

وهذا ايضاح للملف النصى صاحب امتداد p3

post-255712-084555600 1349074967_thumb.j

post-255712-033985200 1349075558_thumb.j

1. هل يوجد طريقه عند استيراد هذه الملفات تقوم بتحويل هذه العلامات والمسافات ( $U$ $ $? ;? %" ) الى ( ; ) وتقوم بمسح ما بعد } ثم نقوم بعمليه الاستيراد؟

2. هل يوجد طريقه تقوم بتقطيع هذه البيانات بعد كل علامه من هذه العلامات ثم نقوم بعمليه الاستيراد؟

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

المرفقات
1.JPG2.JPG3.JPGuntitledss.JPG

تم تعديل هذه المشاركة بواسطة عبدالعزيز الشيمى في 1 أكتوبر 2012 في 10:35

dragonglitters22.gif

لا تأسفن على غدر الزمان لطالما رقصت على جثث الأسود كلاب لا تحسبن برقصها تعلو على أسيادها تبقى الأسود أسودا والكلاب كلاب

#8

الاخت الفاضله : زهره

هل يوجد مشكله فى الجزء الخاص بعمليه الاستيراد لم اقم بايضاحها؟

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

ولكى جزيل الشكر والتقدير

dragonglitters22.gif

لا تأسفن على غدر الزمان لطالما رقصت على جثث الأسود كلاب لا تحسبن برقصها تعلو على أسيادها تبقى الأسود أسودا والكلاب كلاب

#9

معذرة اخي الكريم

على التأخير في الرد

فقد كنت اعمل على برنامج لأحد الأخوة سبق وان وعدته ان اقوم بإنهاؤه

عموما هذا ملفك بعد التعديل ذو الملفات النصية

post-15367-055563900 1349178631_thumb.gi

zaImportTextFiles.rar

بالتوفيق

المرفقات
x.gif
1
#10

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

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

ولكنى على داريه متوسطه بـ ( ORACLE 9i , ORACLE DEVELOPER 6i ( SQL , PL-SQL , FORMS, REPORT

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

ثانيا: المطلوب اختى الفاضله استيراد الملفات النصيه ولكن بدون الـ Header الذى قمتى بوضعه فى الملفات النصيه وان يتم انشائه داخل الكود

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


CREATE TABLE اسم الملف النصى (
EmployeeID NUMBER(10),
LastName VARCHAR2(250),
FirstName VARCHAR2(250),
Title VARCHAR2(250),
TitleOfCourtesy VARCHAR2(250),
BirthDate DATE,
HireDate DATE,
Address VARCHAR2(250) );

INSERT INTO اسم الجدول بعد الانشاء
SELECT * FROM اسم الجدول النصى ;

ارجو ان اكون قد اوضحت المطلوب ولكى جزيل الشكر على سعه صدرك

ثالثا : بخصوص الملف صاحب الامتداد الغير معروف رجاء الاجابه عليه

وهذا ايضاح للملف النصى صاحب امتداد p3

post-255712-026432000 1349201102_thumb.j

post-255712-051356900 1349201196_thumb.j

1. هل يوجد طريقه عند استيراد هذه الملفات تقوم بتحويل هذه العلامات والمسافات ( $U$ $ $? ;? %" ) الى ( ; ) وتقوم بمسح ما بعد } ثم نقوم بعمليه الاستيراد؟

2. هل يوجد طريقه تقوم بتقطيع هذه البيانات بعد كل علامه من هذه العلامات ثم نقوم بعمليه الاستيراد؟

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

المرفقات
post-255712-084555600 1349074967.jpgpost-255712-033985200 1349075558.jpg

تم تعديل هذه المشاركة بواسطة عبدالعزيز الشيمى في 2 أكتوبر 2012 في 21:11

dragonglitters22.gif

لا تأسفن على غدر الزمان لطالما رقصت على جثث الأسود كلاب لا تحسبن برقصها تعلو على أسيادها تبقى الأسود أسودا والكلاب كلاب

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…