قواعد المشاركة في المنتدى

(منتدى الأكسس) الموضوع:محتاج كود للنموذج يعطيني رساله عند الخروج نعم او لا بواسطة: (تلميذ بالاكسس) :: (منتدى Microsoft Visual Basic) الموضوع:برامج مفتوحة المصدر بالفجوال بيسك بواسطة: (bograra) :: (منتدى الأكسس) الموضوع:لا استطيع ارفاق مثال بواسطة: (بوجهاد) :: (منتدى الأكسس) الموضوع:التعديل على برنامج بواسطة: (بوجهاد) :: (منتدى Microsoft Excel) الموضوع:غاية الأهمية بواسطة: (asn) :: (منتدى Microsoft Visual Basic) الموضوع:طريقة الترقيم التلقائي و الإضافة والحذف والبحث وتغيير لون النتيجة بواسطة: (bograra) :: (منتدى Microsoft Excel) الموضوع:طلب مساعد في تصنيف البيانات بواسطة: (asn) :: (منتدى الأكسس) الموضوع:اريد برنامج حق سوبر ماركت ياريت الي عنده يرسله لي بواسطة: (gulf2010) :: (منتدى الأكسس) الموضوع:كان يوجد موضوع في المنتدى من ضمن الموضوعات المثبتة أين هو بواسطة: (الباشاقمرالزمان) :: (منتدى مبرمجي Microsoft Visual VB.NET) الموضوع:حذف بيان بواسطة: (suzzy) :: (منتدى مبرمجي Microsoft Visual VB.NET) الموضوع:داتا غريد .. بواسطة: (omniata) :: (منتدى الكتب الالكترونية) الموضوع:أطلب أى كتاب فى أى مجال بواسطة: (هيثم حسن) :: (منتدى Microsoft Excel) الموضوع:برنامج جاهز ورائع للمخازن بواسطة: (هيثم حسن) :: (منتدى ADO.NET العام) الموضوع:طريقة التعديل من الداتا جريد بواسطة: (allnsh 3) :: (منتدى مبرمجي Microsoft Visual C#.NET) الموضوع:كيف يمكن عمل خيارات بواسطة: (asn) :: (منتدى برمجة التقارير) الموضوع:مشكلة في التقرير بواسطة: (dody) :: (منتدى مبرمجي ASP.NET) الموضوع:ارجوكم مساعدتي بواسطة: (breemo) :: (منتدى الأكسس) الموضوع:ارجوا الإجابة على سؤالي في الأكسس بواسطة: (فوفو العسل1) :: (منتدى برمجة الجرافكس) الموضوع:ممكن سؤال بخصوص برنامج المخازن الاصدار الثاني بواسطة: (allnsh 3) :: (منتدى مبرمجي Microsoft Visual VB.NET) الموضوع:ممكن طريقه ربط نموذج vb .net 2010 مع صفحه php على الانترنت بواسطة: (jawalnet3)


النص


المواضيع المثبته: (منتدى Microsoft Excel) الموضوع:هيا بنا نتعلم كتابة الكود فى الاكسيل VBA بواسطة: (ramies) :: (منتدى أنظمة الشبكات وأمنها) الموضوع:الشبكات الحاسوبية ..Computer Network.. بواسطة: (مرحبا الساع) :: (منتدى الأكسس) الموضوع:تنظيم ونقل مواضيع قسم الآكسس في الأقسام الجديدة بواسطة: (أبو ليان) :: (منتدى مبرمجي ASP) الموضوع:شرح كود موقع شؤون الموظفين النسخة الأولى بواسطة: (alanees) :: (منتدى أجاكس(Asynchronous JavaScript and XML)) الموضوع:البدء مع ASP.NET AJAX بواسطة: (يوسف جميل جادالله) :: (Oracle قسم قواعد البيانات أوراكل) الموضوع:اعداد و تنصيب اوراكل 9i ويندز NT/2000/XP بواسطة: (oracle_egypt) :: (منتدى Microsoft Visual Basic) الموضوع:حصريا Microsoft Visual Studio 6.0 كاملة بواسطة: (Max Bayne) :: (منتدى مبرمجي ASP) الموضوع:برنامج مكتبة إلكترونية بواسطة: (عبدالله جابر شقليه) :: (منتدى Microsoft SQL Server) الموضوع:كيف أقوم بنسخ البيانات فقط من جهازي الى الويب بواسطة: (أبو محمـد) :: (منتدى تصميم صفحات الويب) الموضوع:أرشيف الدروس المصورة بواسطة: (alanees) :: (منتدى ADO.NET العام) الموضوع:الكامل في قواعد البيانات مع VB.net بواسطة: (المهندس عدي) :: (Oracle قسم قواعد البيانات أوراكل) الموضوع:DECODE SQL STATMENT بواسطة: (mshaqalaih) :: (القسم المفتوح) الموضوع:لقاء صحفى بواسطة: (ramies) :: (منتدى أنظمة الشبكات وأمنها) الموضوع:طريقة عمل شبكة لاسلكية بين جهازين او أكثر ..اكس بي.. لمشاركة الملفات والإنترنت بواسطة: (مرحبا الساع) :: (القسم المفتوح) الموضوع:شاهد واشكر ربك على نعمة الاسلام بواسطة: (غزاوية أصيلة) :: (Oracle قسم قواعد البيانات أوراكل) الموضوع:يجب المرور هنا للأهمية بواسطة: (وليد القدسي) :: (منتدى البرامج) الموضوع:شروط وضع المواضيع في قسم البرامج بواسطة: (kkarem55) :: (منتدى Microsoft Excel) الموضوع:معلومات سريعة من برنامج اكسل بواسطة: (junkbki) :: (منتدى مبرمجي Microsoft Visual C#.NET) الموضوع:Serial Communication with Csharp بواسطة: (Prof.Mendl) :: (منتدى الوورد والباور بوينت) الموضوع:مكتبة الباور بوينت بواسطة: (ramies)

عدد الصفحات : 4  1  2  3  4   > » إضافة رد إضافة موضوع جديد

> تحزين سجلات داخل ملفات اكسل و xml وورد ..إلخ
Bookmark and Share
تقييم الموضوع Label معدل التقيم:0
مشاركةالأربعاء,29/محرم/1426 هـ,10:45 مساءً
المشاركة #1

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3678
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



السلام عليكم
في بعض الأحيان نحن نحتاج إلى تحزين بعض السجلات من قواعد البيانات داخل ملفات ورد واكسل و xml وغيرها من الملفات، ويتم تخزين هذه الملفات عن طريق استخدام كائن file system object الذي سوف يقوم بإنشاء الملفات التي نريدها.
في الكود التالي سوف نقوم بعرض بيانات من جدول وتخزينها داخل ملف اكسل:

كود:


<html dir="rtl">

<body bgcolor="#FFFFFF">
<%

accessdb="state_info"


cn="DRIVER={Microsoft Access Driver (*.mdb)};"
cn=cn & "DBQ=" & server.mappath(accessdb)


Set rs = Server.CreateObject("ADODB.Recordset")


sql = "select state,statename,capital,year,order from states "


rs.Open sql, cn




name_file= "states.xls"

set fso = createobject("scripting.filesystemobject")


Set act = fso.CreateTextFile(server.mappath(name_file), true)


act.WriteLine("<html><body>")
act.WriteLine("<table border=""1"">")
act.WriteLine("<tr>")
act.WriteLine("<th nowrap>State</th>")
act.WriteLine("<th nowrap>Abbreviaton</th>")
act.WriteLine("<th nowrap>Capital</th>")
act.WriteLine("<th nowrap>Year Entered</th>")
act.WriteLine("<th nowrap>Entrance Number</th>")
act.WriteLine("</tr>")



do while not rs.eof
Act.WriteLine("<tr>")
act.WriteLine("<td align=""right"">" & rs("statename") & "</td>" )
act.WriteLine("<td align=""right"">" & rs("state") & "</td>" )
act.WriteLine("<td align=""right"">" & rs("capital") & "</td>")
act.WriteLine("<td align=""right"">"& rs("year") & "</td>")
act.WriteLine("<td align=""right"">"& rs("order") & "</td>")
act.WriteLine("</tr>")


rs.movenext

loop



act.WriteLine("</table></body></html>")



act.close



response.write "<a href='states.xls'>States</a> (.xls) تم إنشاء ملف " & now() & "<br>"

%>

</body>
</html>




بعد أن قمنا بعمل الاتصال بقاعدة البيانات وتحديد الجدول الذي سوف يتم تخزين السجلات داخل ملف اكسل.
حيث قمت بتخزين داخل المتغير name_file اسم الملف الذي شوف نقوم بإنشائه، مع تحديد امتداد الملف الذي سوف نقوم بإنشائه وهو ملف اكسل، واسم الملف الذي سوف نقوم بإنشائه هو states.xls


كود:

set fso = createobject("scripting.filesystemobject")

هنا نحدد الطريقة التي سوف نقوم بإنشاء الملفات عن طريقها وهي كائن file system object.
Set act = fso.CreateTextFile(server.mappath(name_file), true)
هنا سوف نضع المتغير act بأن يقوم بإنشاء الملف عن طريق الخاصية CreateTextFile ، مع تحديد اسم الملف الذي سوف نقوم بإنشائه، وهو الملف المخزن داخل المتغير name_file

كود:


act.WriteLine("<html><body>")
act.WriteLine("<table border=""1"">")
act.WriteLine("<tr>")
act.WriteLine("<th nowrap>State</th>")
act.WriteLine("<th nowrap>Abbreviaton</th>")
act.WriteLine("<th nowrap>Capital</th>")
act.WriteLine("<th nowrap>Year Entered</th>")
act.WriteLine("<th nowrap>Entrance Number</th>")
act.WriteLine("</tr>")



حيث هنا بعد أن يتم إنشاء الملف على السيرفر، سوف يتم بدء بكتابة البيانات داخل الملف الذي تم إنشائه.
حيث act.WriteLine سوف تقوم بعملية الطباعة داخل الملف.
حيث في هذا الكود سوف يتم إنشاء العناوين للسجلات التي سوف نقوم بإنشائه.


كود:

do while not rs.eof
Act.WriteLine("<tr>")
act.WriteLine("<td align=""right"">" & rs("statename") & "</td>" )
act.WriteLine("<td align=""right"">" & rs("state") & "</td>" )
act.WriteLine("<td align=""right"">" & rs("capital") & "</td>")
act.WriteLine("<td align=""right"">"& rs("year") & "</td>")
act.WriteLine("<td align=""right"">"& rs("order") & "</td>")
act.WriteLine("</tr>")


rs.movenext

loop




خيث هنا سوف نستخدم do while not rs.eof لعرض جميع السجلات.
وبعدها سوف يتم طباعة السجلات داخل الجدول.
وبعد أن يتم إنشاء جميع السجلات التي نريدها نقوم بإعلاق الملف الذي قمنا بإنشائه.
act.close
حيث أنها سوف تحدد بأنه تم الإنتهاء من إنشاء الملف.

CODE
response.write "<a href='states.xls'>States</a> (.xls) تم إنشاء ملف " & now() & "<br>"


هنا سوف يتم وضع رابط للملف الذي قمنا بإنشائه حتى تستطعون من تحميلها بعد أن تم إنشائه.

هكذا نكون قد انتهينا من كيفية إنشاء ملف اكسل.
وهذه نفس الطريقة لإنشاء ملف الورد، فقط كل ما عليك هو تغير امتداد الملف الذي نريد إنشائه بدل من الامتداد xls إلى doc.
ونفس الشئ لإنشاء ملف html فقط قم بوضع الامتداد.

وأيضاً لإنشاء ملف xml تتم بنفس الكود الذي بالأعلى، ولكن الاختلاف هو بدل من أن وضعنا كود ال html الجداول داخل الملفات فقط سوف نقوم بكتابة كود xml، ولكم التغيير:



كود:

<html>

<body bgcolor="#FFFFFF">
<%

accessdb="state_info"


cn="DRIVER={Microsoft Access Driver (*.mdb)};"
cn=cn & "DBQ=" & server.mappath(accessdb)


Set rs = Server.CreateObject("ADODB.Recordset")


sql = "select state,statename,capital,year,order from states order by states.order "


rs.Open sql, cn





name_file= "states.xml"


set fso = createobject("scripting.filesystemobject")


Set act = fso.CreateTextFile(server.mappath(name_file), true)


act.WriteLine("
CODE PHP:
<?xml version=""1.0""?>")
act.WriteLine("<states>")


do while not rs.eof


counter=counter+1

act.WriteLine("<state id="""& counter &""">")
act.WriteLine("<state_abbrev>" & rs("state") & "</state_abbrev>" )
act.WriteLine("<state_name>" & rs("statename") & "</state_name>" )
act.WriteLine("<state_capital>" & rs("capital") & "</state_capital>")
act.WriteLine("<year_admitted>"& rs("year") & "</year_admitted>")
act.WriteLine("<order_admitted>"& rs("order") & "</order_admitted>")
act.WriteLine("</state>")


rs.movenext
loop


act.WriteLine("</states>")



act.close


response.write "<a href='states.xml'>States</a> (.xml) تم إنشاء الملف<br>"
response.write "on " & now() & "<br>"
%>

</body>
</html>




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


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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالسبت,09/فر/1426 هـ,05:01 مساءً
المشاركة #2

مشرف منتدى تصميم صفحات الويب
الرتبة في المنتدى:رائد

أيقونة المجموعة

المجموعة: المشرفين القدامى
المشاركات: 506
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:السعودية
رقم العضوية: 88



أخي عبدالله حاولت أطبق هذا الدرس

ونسقت هذا الكود


كود:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1256"%>

<html dir="rtl">

<body bgcolor="#FFFFFF">
<!--#include file="conn.asp" -->

<%


id=request.QueryString("id")
set rs=cn.execute("select * from student where class_id="&id&"")







name_file= "states.xls"

set fso = createobject("scripting.filesystemobject")


Set act = fso.CreateTextFile(server.mappath(name_file), true)


act.WriteLine("<html><body>")
act.WriteLine("<table border=""1"">")
act.WriteLine("<tr>")
act.WriteLine("<th nowrap>اسم الطالب</th>")
act.WriteLine("</tr>")



do while not rs.eof
Act.WriteLine("<tr>")
act.WriteLine("<td align=""right"">" & rs("student_name") & "</td>" )
act.WriteLine("</tr>")


rs.movenext

loop



act.WriteLine("</table></body></html>")



act.close

response.write "<a href='states.xls'>States</a> (.xls) تم إنشاء ملف " & now() & "<br>"
%>

</body>
</html>



لكن يبدو لي في مشكلة لأنه يحمل بطيء وفي الأخير لا يظهر شي ؟؟؟

أرجو إفادتي .. وشكرا
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالسبت,09/فر/1426 هـ,05:11 مساءً
المشاركة #3

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3678
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



السلام عليكم
أخ alanees ربما انه يوجد لديك مضاد للفيروسات ومما يؤثر لعملية انشاء ملفات جديدة.
قم بوقف الفحص التلقائي لبرنامج المضاد للفيروسات ومن ثمه قم بتشغيل الصفحة وسوف تشاهد النتيجة بعدها.


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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,06:00 مساءً
المشاركة #4

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 20
سجل في:الأحد,23/شوال/1425 هـ,08:08 مساءً
الدولة:فلسطين
رقم العضوية: 732



بارك الله فيك أخي الفاضل
وأنار الله بصيرتك بالخير

اريد ان استفسر اخي الفاضل عن اعداد التقارير
بالASP ... كيف يتم إعداد تقارير بالASP
هل يستخدم فيها مثل هذا الدرس
بأن أحفظ البيانات في ورد مثلا ثم يقوم بطاعتها

ولا هناك طريقة أخرى

أتمنى أن توضوحوا الأمر
وبارك الله فيكم


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,06:47 مساءً
المشاركة #5

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3678
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



أخت حفيدة السلف يتم استخدام ذلك عن طريق كرستال ريبورت 9 أو اصدار أعلى ويتم عمل كود لعملية استدعاء الملف الخاص للكرستال.


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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,06:52 مساءً
المشاركة #6

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 20
سجل في:الأحد,23/شوال/1425 هـ,08:08 مساءً
الدولة:فلسطين
رقم العضوية: 732



طيب ياليت تكتب الطريقة
وأكون شاكره لك
وبارك الله فيك


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,07:25 مساءً
المشاركة #7

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3678
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



تفضلي اختي حفيدة السلف هذا الكود الخاص بال asp مع الكرستال ريبورت 9

 كود
<%

Option Explicit

' Open the Report
Dim Report
Set Report = CreateObject("CrystalClientDoc.ReportClientDocument")
Report.Open "C:\Temp\Sorts.rpt"

' Retrieve the customer name field object
Dim field, fieldIndex
fieldIndex = Report.Database.Tables(0).DataFields.Find("Customer Name", 0)
Set field = Report.Database.Tables(0).DataFields(fieldIndex)

' Create a new sort based on the customer name field
Dim sort
Set sort = CreateObject("CrystalReports.Sort")
sort.SortField = field

' Remove the sort previously defined in the Report file
Report.DataDefController.SortController.Remove(0)

' Add the new sort
Report.DataDefController.SortController.Add 0, sort

Dim viewer
Set viewer = CreateObject("CrystalReports.CrystalReportViewer")
viewer.ReportSource = Report.ReportSource

viewer.ProcessHttpRequest Request, Response

%>




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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,19/فر/1426 هـ,08:06 مساءً
المشاركة #8

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 20
سجل في:الأحد,23/شوال/1425 هـ,08:08 مساءً
الدولة:فلسطين
رقم العضوية: 732



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

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


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,24/فر/1426 هـ,04:09 مساءً
المشاركة #9

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 20
سجل في:الأحد,23/شوال/1425 هـ,08:08 مساءً
الدولة:فلسطين
رقم العضوية: 732



أخي الفاضل عبد الله
بارك الله فيك
بس أتمنى أن تشرح لنا الكود الخاص بالتقارير
شرح موجز .. لشو كل جملة
وهل يوجد اختلاف بين Crystal 8 , 9

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


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,24/فر/1426 هـ,05:32 مساءً
المشاركة #10

مدير منتديات المحيط العربي
الرتبة في المنتدى:عماد



المجموعة: الإدارة
المشاركات: 3678
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 1



سوف أضع لك كود أفضل منه وأبسط بكثير


 كود

<%
Dim Viewer
Set Viewer = CreateObject("CrystalReports.CrystalReportViewer")
Viewer.ReportSource = "RAS://C:\SecuredReportWithParam.rpt"

' Set the database logon credentials, in this case for the first
' table in the report, which then propagates across any
' subsequent tables in the report
Viewer.DatabaseLogonInfos(0).UserName = "user id"
Viewer.DatabaseLogonInfos(0).Password = "password"

' Set the value of the first parameter field to a string. Other
' data types such as numbers and boolean values can be set
' here as well.
Viewer.ParameterFields(0).CurrentValues.Add "USA"

%>

الكود التالي:
 كود
Set Viewer = CreateObject("CrystalReports.CrystalReportViewer")

هنا سوف نستخدم الكائن الخاص في الكرستال ريبورت، فهكا أصبح المتغير Viewer من نوع CrystalReports.CrystalReportViewer.

 كود
Viewer.ReportSource = "RAS://C:\SecuredReportWithParam.rpt"


هنا تحددي مسار الوصول لملف الريبورت.

 كود
Viewer.DatabaseLogonInfos(0).UserName = "user id"
Viewer.DatabaseLogonInfos(0).Password = "password"


في حالة وجود يوزر نيم وباسورد لقاعدة البيانات ، من خلاها تستطيعي من وضع اليوزر نيم والباسورد.

 كود
Viewer.ParameterFields(0).CurrentValues.Add "USA"

هنا تقومين بتمرير قيم للمتغيرات التي وضعيه في الكرستال لعملية الاستعلام.

وكما تشاهدين في المسار لقد تم وضع RAS وهذا لكي تبين أنك تستخدم Report Application Server.
وأيضاً ملف الكرستال ريبورت يجب أن يكون الامتداد له RPT.

مع التحية


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

منذ متى يا أقزام بدأ يروادكم التفكير بالتعالي على عمالقة القسام؟

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة

    

عدد المتصفحين لهذا المنتدى «1»: (الضيوف «1» - المتخفون «0»)
الأعضاء «0»: .

عدد الصفحات : 4  1  2  3  4   > » إضافة رد جديد إضافة موضوع جديد



 
الوقت الأن:اليوم,12:39 صباحاً بتوقيت القدس المحتلة

Powered By arabmoheet v3.1

منتديات المحيط العربي  -  راسلنا  -   أعلى
X   رسالة المنتدى
(سوف يتم اغلاق هذه النافذة بعد 2 ثانية)
X   رسالة المنتدى
(سوف يتم اغلاق هذه النافذة بعد 2 ثانية)