اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

jjafferr

أوفيسنا
  • Posts

    9915
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    404

كل منشورات العضو jjafferr

  1. وعليكم السلام انتي تتحكيمن في عرض التقرير زيدي في عرضه ، فيصبح افقي واذا ما عندك حقول تملئين فيها التقرير بالعرض ، زحفي الحقل الى منتصف التقرير جعفر
  2. هنا مثال كذلك ، بس بطريقة اخرى http://www.officena.net/ib/index.php?showtopic=60630 جعفر
  3. طيب ممكن ننسى المرفق السابق الرابط التالي فيه نفس المثال ، ولكن بإضافات اخرى (ليس على طلب البرنامج ، ولكن .. ) http://www.officena.net/ib/index.php?showtopic=60630&p=390062 جعفر
  4. تفضل هذه مجموعة مستقطعة من برامجي السابقة ، ومن برامجي الرئيسية والنتيجة والبرنامج عبارة عن متصفح كذلك ، راجع الرابط: http://www.officena.net/ib/index.php?showtopic=60659 جعفر تعديل 1: عفوا ، عملت إضافة اخرى ، ليكتمل البرنامج ، فالواجهة اصبحت: تعديل2: امسك زر الشفت اثناء تشغيل البرنامج علشان تقدر تغير اللي تريده . 49.View_Internet.mdb.zip
  5. وعليكم السلام ورحمة الله تعالى وبركاته انا استقطعت هذا النموذج (وطبعا عدلت عليه) من احد برامجي القديمة البرنامج عبارة عن متصفح انترنت IE Explorer مضمن في النموذج (ويكون حسب الاصدار المنصوب على الكمبيوتر) ، وكل اللي تعمله هو انك تدخل عنوان الصفحة في خانة العنوان ، ثم تضغط على زر افتح الصفحة: تصفح الصور: تصفح الانترنت: الكود الذي يقوم بالعمل هو: Option Compare Database Private web As WebBrowser 'set Reference to: 'Browse Windows\system32\ieFrame.dll 'Microsoft Internet Controls ' Private Sub cmdSiteName_Click() 'specify that the browser is an object in the Form Set web = Me.objIE.Object 'give the initial web page name ' Me.cboSite = "http://www.officena.net/ib/uploads/profile/photo-142414.jpg?_r=1425109766" ' Me.cboSite = "http://www.officena.net/ib/index.php?showuser=111758" 'update the status bar Call SysCmd(acSysCmdSetStatus, "Opening Page " & Me.cboSite) 'Open/Navigate the page web.Navigate Me.cboSite While web.Busy 'wait until the site fully loads DoEvents Wend While web.ReadyState <> 4 'wait until the site fully loads DoEvents Wend 'update the status bar Call SysCmd(acSysCmdSetStatus, "Ready") 'waituntilpageonefinishesloading While web.Busy DoEvents Wend Do While web.Document.all.length = 0 DoEvents Loop End Sub Public Sub Form_Load() On Error GoTo Err_Form_Load 'specify that the browser is an object in the Form Set web = Me.objIE.Object 'give the initial web page name Me.cboSite = "about:blank" 'Open/Navigate the page web.Navigate Me.cboSite Exit Sub Err_Form_Load: If Err.Number = 2447 Then MsgBox "Please Enter a Site Name for starting this Page" Exit Sub End If Resume Next End Sub Private Sub cmd_close_Click() On Error GoTo Err_cmd_close_Click DoCmd.Close Exit_cmd_close_Click: Exit Sub Err_cmd_close_Click: MsgBox Err.Description Resume Exit_cmd_close_Click End Sub جعفر 49.View_Internet.mdb.zip
  6. أنت الان ارجعتنا الى مشاركتي رقم 25 ، والتي طلبت منك فك جزيئيات الاستعلام ، فلا فائدة لي من هذا الاستعلام سؤالي هو ، قيمة الحقل Remaining ماهو (اترك الاستعلام جانب ، واخبرني عن الحقول اللي يجمهعا ومن اي جداول) ، وسؤال آخر ، هل هناك جدول تسجل فيه الدفوعات؟ لأن هذا المفروض ان يسهل العملية كلها ، يعني: على اساس اختيارك من النموذج Cridi_sub ، تعمل (في جدول خاص بدفوعات القروض) سجلات بعدد الاشهر المراد سدادها ، والشهر وقيمة السداد الشهري ، وعلى اساس هذا الجدول ، يكون عندك التقرير. والتلاعب بالجدول بتأخير الدفوعات ، او حتى دفع جزء من الدفوعات سيكون اسهل بكثير ، وذلك ، لأن الجدول به ارقام واشهر يمكننا قرأتها ، بينما وضعك الان هو التلاعب بالكود في جمع Remainings . مجرد فكرة جعفر
  7. وعليكم السلام مافي داعي لإستخدام Dlookup في الاستعلام اللي تطلبه ، فربط الجدولين يحقق المطلوب ولكني وضعت لك الطريقتين: طريقة Dlookup (الاستعلام في اعلى الصورة): 1. سيكون بطيئ اذا عندك آلآف السجلات ، 2. لاحظ حقل الارقام ، فإنه يعامله كنص ، وذلك لأن نتيجة Dlookup لا تعتمد على نوعية الحقل 3. وهذا حقل المدينة حتى ترى الاشارات بطريقة صحيحة: City: DLookUp("[cc]","tab1","[aa]= '" & [aa] & "'") جعفر 48.دالة dlookup.mdb.zip
  8. أخي كريمو حاليا الموضوع متمركز على الحقل Remaining ، رجاء تخبرني كيف تجمع قيمه (ولا اقصد من الاستعلام) ، حتى نعيد حسابه بطريقة اخرى ان شاء الله جعفر
  9. السلام عليكم أخي رمهان فكرة جميلة في ضم "الجمل بما حمل" في سطر واحد والعقل المدبر للعملية كلها هو هذا السطر: CStr((DateDiff("n",([Sdate] & Chr(32) & [Stime]),([Edate] & Chr(32) & [Etime]))\60)\24) & " days;" & CStr((DateDiff("n",([Sdate] & Chr(32) & [Stime]),([Edate] & Chr(32) & [Etime]))/60) Mod 24) & " hours and " & CStr(DateDiff("n",([Sdate] & Chr(32) & [Stime]),([Edate] & Chr(32) & [Etime])) Mod 60) & " minutes" AS Ramhan ولكن من الصعب معرفة ما يدور في هذا السطر الواحد ، ومن الاصعب (ان لم يكن مستحيلا) اجراء تعديل عليه ، لذلك ، فانا في معظم الاحيان استعين بالوحدة النمطية ، واضع فيها الكود (نفس الكود اعلاه) ، ولكنه مقسم الى اسطر متعددة (وانا على يقين بأنك بدأت هكذا ، ثم جمعته في سطر واحد) ، حتى يسهل علي عمل اي تغيير او اضافات لاحقا وفي حال الكود اعلاه ، فان الوحدة النمطية ستكون: Function Calc_Diff(Sd As Date, Ed As Date, St As Date, Et As Date) 'Sd = Start date 'Ed = End date 'St = Start time 'Et = End time 's_Date_time = Start date and time 'e_Date_time = End date and time 'r_Days = Remaining Days 'r_Hours = Remaining Hours 'r_Minutes = Remaining Minutes Dim s_Date_time, e_Date_time Dim r_Days, r_Hours, r_Minutes s_Date_time = Sd & Chr(32) & St e_Date_time = Ed & Chr(32) & Et r_Days = DateDiff("n", s_Date_time, e_Date_time) r_Hours = DateDiff("n", s_Date_time, e_Date_time) r_Minutes = DateDiff("n", s_Date_time, e_Date_time) r_Days = (r_Days \ 60) \ 24 r_Hours = (r_Hours / 60) Mod 24 r_Minutes = r_Minutes Mod 60 Calc_Diff = CStr(r_Days) & " days;" & _ CStr(r_Hours) & " hours and " & _ CStr(r_Minutes) & " minutes" End Function ونستدعيها من الاستعلام او من اي حقل في النموذج او التقرير هكذا: Calc_Diff([Sdate],[Edate],[Stime],[Etime]) جعفر
  10. وعليكم السلام أخوي السالم 1. اذا كان قصدك تشغل برنامجك الاكسس ، من نماذج وتقارير ، وما تريد الجداول واي شئ آخر يظهر ، فيمكن عمل المتعارف عليه في برامجنا اللي نعطيها للزبائن: بأنك تجعل نموذج الواجهة يفتح اول ما يشتغل البرنامج (محل السهم الاحمر) ، ولا تختار المربعين (كما موضح بالدوائر الحمراء): 2. واذا قصدك تريد ان تشغل نموذج معين (البرنامج يشتغل مخفي ، والنموذج يشتغل كذلك مخفي) ، ويقوم النموذج بعمل المطلوب (مثل ارسال تقارير الى ايميل معين) عن طريق "حدث التحميل" ، ولما يخلص الكود ، يغلق الكود البرنامج ، فيمكن عمل هذا عن طريق أمر للماكرو (ولنسميه Run_Frm_Email) ، والماكرو يقوم بفتح هذا النموذج ، وطريقة العمل هكذا (يجب تغيير اسم ومسار المايكروسوف اكسس): "C:\Program Files\Microsoft Office\Office15\msaccess.exe" "D:\myDB.mdb" /X Run_Frm_Email جعفر
  11. أضف حقل واحد للشهر والسنة انا اقترح انك تبدأ بالعمل ، وتتوسع شيئا شيئا جعفر
  12. وعليكم السلام ورحمة الله وبركاته نعم يمكن اعمل جدول بأسماء الموظفين (ويفضل ان تعطي لكل موظف رقم وظيفي) ، إعمل جدول الرواتب ، ويكون فيه اسم الموظف (ويفضل ان يكون رقمه الوظيفي) ، وراتبه ، واي حقول اخرى ، اعمل علاقة بين الجدوليعلى اسا اسم الموظف (ويفضل الرقم الوظيفي) ، وعلى هذا الاساس ، تقدر تعمل نموذج رئيسي لجدول الموظفين ، ويكون فيه نموذج فرعي ، لراتب الموظف . جعفر
  13. أختي بالنسبة لي ، شرحك غير مفهوم لذا ، لوسمحتي تأخذين البيانات من قاعدة بياناتك ، ثم تعملين التقرير اللي تريديه في الوورد او الاكسل ، وعلى اساسه نحاول نساعدك . ورجاء ، في شرحك ، استخدمي اسناء الحقل اللي في قاعدة بياناتك بالضبط ، ولا تستخدمي مسميات اخرى ، رجاءً. جعفر
  14. أختي بالنسبة لي ، شرحك غير مفهوم لذا ، لوسمحتي تأخذين البيانات من قاعدة بياناتك ، ثم تعملين التقرير اللي تريديه في الوورد او الاكسل ، وعلى اساسه نحاول نساعدك . ورجاء ، في شرحك ، استخدمي اسناء الحقل اللي في قاعدة بياناتك بالضبط ، ولا تستخدمي مسميات اخرى ، رجاءً. جعفر
  15. أختي بالنسبة لي ، شرحك غير مفهوم لذا ، لوسمحتي تأخذين البيانات من قاعدة بياناتك ، ثم تعملين التقرير اللي تريديه في الوورد او الاكسل ، وعلى اساسه نحاول نساعدك . ورجاء ، في شرحك ، استخدمي اسناء الحقل اللي في قاعدة بياناتك بالضبط ، ولا تستخدمي مسميات اخرى ، رجاءً. جعفر
  16. السلام عليكم أخي كريمو قيمة Remaining في التقرير rptDiscountDetail تعتمد على الاستعلام qry_rptD_1 ، والقيمة في الاستعلام qry_rptD_1 تعتمد على الاستعلام qryDiscountReport ، ولما حاولت افكك قيمة الحقل Remaining ، لم افلح ياريت تفكه لي وتخليه يشتغل بنفسه كإستعلام. وانت تستخدم هذه الطريقة في الكثير من استعلاماتك ، يعني استعلام داخل استعلام ، صحيح تقوم بالعمل ، ولكن تعديلها يتطلب مجهود كبير فالافضل انك تعمل استعلام عادي ، وتستخدم هذا الاستعلام لأي استعلام آخر ... ، وهكذا ، مما يجعل التعديل ابسط بكثير جعفر
  17. يا سلام عليك أخوي أبوخليل ، أكيد فنان وإحنا ما ندري جعفر
  18. حياك الله أخوي محمد بس رجاء اترك لي الرابط في هذا الموضوع ، حتى اشوفه مباشرة جعفر
  19. لوسمحت تفتح موضوع جديد ، وترفق فيه المرفقات (اللي ارفقتها في هذا الموضوع) حتى يكون الموضوع متكاملا ، ثم تشرح لي وبالمثال لوسمحت (لأني لم افهم المطلوب ) وان شاء الله خير جعفر أخي محمد لازلت انتظر موضوعك الجديد جعفر
  20. تسلم أخوي رمهان كود خفيف في وزنه ، ثقيل في عمله جعفر
  21. السلام عليكم سأشرح كيف اني أشير الى مكان وجود الجداول (سواء المضمنة او المرتبطة)، والذي سيكون مجلد الصور سيكون معه في نفس المجلد ، يعني مجلد الصور دائما يجب ان يكون في نفس مجلد قاعدة البيانات التي تحتوي على الجداول (بغض النظر ، سواء أكانت قاعدة البيانات واحدة او مقسمة). نضع هذا الكود في وحدة نمطية: Public Function GetDBPath() As String Dim strFullPath, Table_Name As String Dim rst As DAO.Recordset 'check for a linked table Set rst = CurrentDb.OpenRecordset("SELECT Name FROM msysObjects WHERE Type=6 AND Left([Name],2) Not In ('~t','ms')") If rst.EOF Then 'Table doesn't exist Exit Function Else 'linked Table exists Table_Name = rst(0) End If rst.Close Set rst = Nothing 'now get the path strFullPath = Mid(DBEngine.Workspaces(0).Databases(0).TableDefs(Table_Name).Connect, 11) GetDBPath = Left(strFullPath, InStrRev(strFullPath, "\")) End Function Public Function BE_or_FE() ' to use: ' BE_or_FE ' 'if BE exits, use its path, 'otherwise use the Application path 'get the BE Path BE_or_FE = GetDBPath If Len(BE_or_FE & "") = 0 Then BE_or_FE = Application.CurrentProject.Path End If End Function Function Images_Location() 'If we want the Backend Folder Images_Location = BE_or_FE & "\archive" 'or we can assign any location we want 'Images_Location = "c:\Temp" & "\archive" End Function وعندما اريد ان اعرف مسار الجداول (بغض النظر في كون الجداول مضمنه او مرتبطة) ، فاناديه هكذا: msgbox BE_or_FE وعندما اريد ان اعرف مسار مجلد الصور ، فاناديه هكذا: msgbox Images_Location وعندما اريد ان اشير الى الصورة التي اشرت اليها انت ، فاناديه هكذا: Images_Location & "\" & txt1 & ".jpg" جعفر
  22. حاليا اترك ايام الاسبوع جانب الكود يعطيك كلمة السر حسب الوقت ، وفيه مثال كذلك جعفر
  23. تفضل الخطوات جعفر 45.Conditional Continuous Forms.mdb.zip
  24. وعليكم السلام أخي ناصر انا كتبت هذا الموضوع سابقا في منتدى الفريق العربي للبرمجة ايش رايك في كلمة سر متغيرة يعني مافي داعي تخاف احد يشوفها ، لأنها تتغير دائماً كل دقيقة استعمل هذا الكود مثلاً: p1 = InputBox("insert Password", Format(Now(), "dddd dd-mm-yyyy hh:mm:ss am/pm")) p2 = Format(Hour(Now()) + Minute(Now()), "0000")' & "," & Format(Day(Now()) + Month(Now()), "0000") 'MsgBox Format(Now(), "dddd dd-mm-yyyy hh:mm:ss am/pm") & vbCrLf & _ Format(Hour(Now()) + Minute(Now()), "0000") & "," & Format(Day(Now()) + Month(Now()), "0000") If p1 = p2 Then MsgBox "OK" Else MsgBox "NG" End If كلمة السر هي: تجمع الساعة في الوقت الحالي (الساعة نظام 24 ساعة) + الدقيقة ، والجواب يكون بصيغة 4 ارقام ، مثلا الساعة الآن 5 العصر و26 دقيقة ، اولا نحول الساعة الى نظام 24 ساعة: 5+12 = 17 17 + 26 = 43 اذاً كلمة السر هي 0043 وطبعا تقدر انك تغير الكود مثلا: تحول ايام الاسبوع الى ارقام مثلا: السبت = 1 الاحد = 2 الاثنين = 3 الثلاثاء = 4 الاربعاء = 5 الخميس = 6 الجمعة = 7 فاذا كنا يوم الجمعة ، ونفس الوقت السابق ، فتقدر ان تكون كلمة سرك 70043 ، او 7 + 0043 = 0050 وهكذا جعفر
×
×
  • اضف...

Important Information