اذهب الي المحتوي
أوفيسنا

نسخ المرفق ووضعه في ملف مع البرنامج


HaniMoursi
إذهب إلى أفضل إجابة Solved by ابو جودي,

الردود الموصى بها


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

بالمثال المرفق عندى زر اضافه مرفق وزر معاينه ويوجد بهم اكواد الاضافه والمعاينه وايضا الــ Module

المشكله تتلخص بالتالي 

1- الــ Module d يوجد به خطأ ولا يعمل على اكسس 2007 

2- زر المعاينه المفروض يقوم باخذ نسخه من المرفق الذى تم اختياره ووضعه في ملف اسمه pdfFolder برقم الــ ID لكن عند الضغط عليه بيعمل ملف جديد برقم الــ ID

3- زر الاضافه لا يعمل بالشكل الصحيح لسبب الخطأ الموجود بالــ Module

نسخه من مرفق.zip

تم تعديل بواسطه ابوخليل
تصحيح
  • Like 1
رابط هذا التعليق
شارك

السلام عليكم

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

..

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

لانك تجلب ملف على اي اساس ؟ فالجدول فاضي

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

هو كذا والا المطلوب شي ثاني ؟

 

  • Like 4
رابط هذا التعليق
شارك

15 ساعات مضت, ابوخليل said:

السلام عليكم

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

..

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

لانك تجلب ملف على اي اساس ؟ فالجدول فاضي

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

هو كذا والا المطلوب شي ثاني ؟

 

صدقت استاذنا الفاضل وانا بعتذر لذلك 

اما بالنسبه للبرنامج فأنا بحمله مره اخرى ومرفق معه ملف pdf المطلوب عندما اختار هذا الملف من زر اضافه يقوم الكود بعمل نسخه اخرى للمرفق ووضعه في ملف pdfFolder برقم الـــ ID الموجود بالنموذج

نسخه من مرفق.zip

رابط هذا التعليق
شارك

12 ساعات مضت, Moosak said:

هذا الموضوع يفيدك إن شاء الله 🙂 

 

 

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

رابط هذا التعليق
شارك

14 دقائق مضت, HaniMoursi said:

 ما احتاجه هو بعد اختيار المرفق يقوم زر الاضافه بعمل نسخه من المرفق ووضعه في ملف pdfFolder برقم ID وعند المعاينه يفتح هذا المرفق الذي اخذت منه نسخه في مساره الجديد

فعلا هذا ما يفعله مثالك المرفق

المثال يعمل تمام

اولا في النموذج اكتب اسم الملف الذي تريد جلبه من اجل تعيين id جديد . ويجب ان يكون التركيز على السجل نفسه ، والافضل يكون النموذج مفرد وليس مستمر

 

رابط هذا التعليق
شارك

1 دقيقه مضت, ابوخليل said:

فعلا هذا ما يفعله مثالك المرفق

المثال يعمل تمام

اولا في النموذج اكتب اسم الملف الذي تريد جلبه من اجل تعيين id جديد . ويجب ان يكون التركيز على السجل نفسه ، والافضل يكون النموذج مفرد وليس مستمر

 

عند الضغط على اضافه مرفق تظهر هذه الرساله علما بأنني اعمل على اكسس 2007 

خطأ في الـــ Module.jpg

رابط هذا التعليق
شارك

في 12‏/2‏/2023 at 10:40, HaniMoursi said:

عند الضغط على اضافه مرفق تظهر هذه الرساله علما بأنني اعمل على اكسس 2007 

 

أعتقد أن سبب الخطأ هو أن جهازك يعمل على النواة 32 بت .. والكود معد للنسخة 64 بت ..

بالإضافة إلى أن أكواد ال API المستخدمة لفتح مستعرض الملفات لا تفتح عندي على نسخة 64 بت .. 

 

ولحل مشكلتك الأولى تابع هنا :

هذا والله أعلم

  • Like 1
رابط هذا التعليق
شارك

1 ساعه مضت, Moosak said:

سبب الخطأ هو أن جهازك يعمل على النواة 32 بت .. والكود معد للنسخة 64 بت ..

بالإضافة إلى أن أكواد ال API المستخدمة لفتح مستعرض الملفات لا تفتح على نسخة 64 بت .. هذا للعلم 🙂 

 

ولحل مشكلتك الأولى تابع هنا :

 

شكرا جزيلا اخي جعفر فبعد مراجعة موضوعك رجعت الى الــــ Moduled وقمت بحذف كملة PtrSafe وزر الاضافه يعمل طبيعى جدا الآن 


 

Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias _
            "SHGetPathFromIDListA" (ByVal pidl As Long, _
            ByVal pszPath As String) As Long
            
Private Declare Function SHBrowseForFolder Lib "shell32.dll" Alias _
            "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) _
            As Long
            
Private Const BIF_RETURNONLYFSDIRS = &H1

Declare Function aht_apiGetOpenFileName Lib "comdlg32.dll" _
    Alias "GetOpenFileNameA" (OFN As tagOPENFILENAME) As Boolean

Declare Function aht_apiGetSaveFileName Lib "comdlg32.dll" _
    Alias "GetSaveFileNameA" (OFN As tagOPENFILENAME) As Boolean

Declare Function CommDlgExtendedError Lib "comdlg.dll" () As Long

Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
    "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

 

رابط هذا التعليق
شارك

بعد معالجة الـــ Moduled فعندما اقوم بالضغط على زر اضافه بيعمل لي ملف فولدر جديد داخل فولدر pdfFolder وما احتاجه عمل نسخه من المرفق داخل فولدر pdfFolder

مرفق البرنامج للتوضيح بعد تعديله

نسخه من مرفق.zip

رابط هذا التعليق
شارك

58 دقائق مضت, ابوخليل said:

المثال شغال تمام 100%

بالفعل يتم عمل الاضافه لكن كما هو موضح بالصوره 2 بيعمل لي فولدر جديد برقم ID وبيكون فارغ وانا لا احتاج فولدر احتاج المرفق نفسه ينسخ داخل pdfFolder

1.jpg

2.jpg

تم تعديل بواسطه HaniMoursi
رابط هذا التعليق
شارك

في 12‏/2‏/2023 at 18:31, ابوخليل said:

انا لما جربته ما يعمل عندي فولدر جديد

على كل حال عطل الاسطر الثلاث الظاهرة بالصورة

هذه هي المسؤولة عن عمل المجلد

 

Untitled.jpg

لم ينجح الامر
فهل الامر متعلق بالاوفيس فأنا بشتغل على اكسس 2007

رابط هذا التعليق
شارك

3 ساعات مضت, ابوخليل said:

لا اعتقد

نرجوا من الاخوة الكرام تجربة المثال

لم يتم عمل التحويل الصحيح لأكواد استدعاء دوال الـ Api  داخل الموديل لتتناسب مع النواة 64

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

رابط هذا التعليق
شارك

اتفضل :fff:

في 11‏/2‏/2023 at 11:20, HaniMoursi said:


بالمثال المرفق عندى زر اضافه مرفق وزر معاينه ويوجد بهم اكواد الاضافه والمعاينه وايضا الــ Module

المشكله تتلخص بالتالي 

1- الــ Module d يوجد به خطأ ولا يعمل على اكسس 2007 

2- زر المعاينه المفروض يقوم باخذ نسخه من المرفق الذى تم اختياره ووضعه في ملف اسمه pdfFolder برقم الــ ID لكن عند الضغط عليه بيعمل ملف جديد برقم الــ ID

3- زر الاضافه لا يعمل بالشكل الصحيح لسبب الخطأ الموجود بالــ Module

 

وهذا المرفق الجديد وان شاء الله يعمل على كلتا النواتان 32X , 64X   وبدون اى مشاكل :yes:

نسخه من مرفق (2).accdb

  • Thanks 2
رابط هذا التعليق
شارك

15 ساعات مضت, ابو جودي said:

وهذا المرفق الجديد وان شاء الله يعمل على كلتا النواتان 32X , 64X   وبدون اى مشاكل :yes:

يعمل زي الحلاوة بالطحينة يا مولانا ... ربنا يبارك فيك 🙂 

بس بعد أذنك ياهندسة أجريت تعديلات بسيطة على الكود علشان يحفظ اسم الملف في الجدول وليس الإكستنشن فقط . 

ويحذف اسمه من الجدول بعد حذف الملف.

مرفق بجانب البرنامج.accdb

  • Thanks 2
رابط هذا التعليق
شارك

3 ساعات مضت, Moosak said:

يعمل زي الحلاوة بالطحينة يا مولانا ... ربنا يبارك فيك 🙂 

بس بعد أذنك ياهندسة أجريت تعديلات بسيطة على الكود علشان يحفظ اسم الملف في الجدول وليس الإكستنشن فقط . 😁

ويحذف اسمه من الجدول بعد حذف الملف.

مرفق بجانب البرنامج.accdb 488 kB · 1 download

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

لم اقم بحفظ اسم الملف نظرا لان الكود القديم كان يقوم بعمل حفظ للمرفق برقم ال ID

لذلك لم تستدعى الحاجه لإضافة بيانات وحقل بلا داعى 😉

 

 

  • Like 3
رابط هذا التعليق
شارك

في 15‏/2‏/2023 at 11:47, ابو جودي said:

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

لم اقم بحفظ اسم الملف نظرا لان الكود القديم كان يقوم بعمل حفظ للمرفق برقم ال ID

لذلك لم تستدعى الحاجه لإضافة بيانات وحقل بلا داعى 😉

 

 

تسلم ربنا يعزك تمام

رابط هذا التعليق
شارك

19 دقائق مضت, HaniMoursi said:

تسلم ربنا يعزك تمام

لقد جربت التعديل وبالفعل ظهرت النسخه في الفولدر المطلوب ولكن مع النسخه بيعمل ملف جديد مع كل نسخه وانا احتاج النسخه بدون فولدر جديد مرفق صوره

صوره1.jpg

صوه2.jpg

رابط هذا التعليق
شارك

في 16‏/2‏/2023 at 16:31, ابو جودي said:

طيب قبل التعديل

هل تريد حفظ المرفق فقط داخل المجلد باسمه القديم ام برقم الـ ID الحالى

 

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

تم تعديل بواسطه HaniMoursi
رابط هذا التعليق
شارك

  • أفضل إجابة
7 ساعات مضت, HaniMoursi said:

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

الشكر لله :fff:

اتفضل :yes:

 

نسخه من مرفق (3).accdb

  • Like 2
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

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

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information