بتاريخ: منذ 1 ساعة 1 ساعة comment_320872 السلام عليكم ورحمة الله وبركاتههذا الموضوع سيكون دليل شامل لكيفية استخدام AI في انشاء وتعديل تطبيقات Oracle APEX من خلال Vibe coding سأعتمد في الشرح على Codex من ChatGPT مع Oracle APEX 26.1، قدمت Oracle تقنية APEXlang لدعم تطوير تطبيقات APEX باستخدام AI Coding Agents، وهو ما يفتح المجال لتطوير التطبيقات بأسلوب Vibe Coding.وفي Oracle APEX 26.2 تمت إضافة ميزة مهمة جدًا، وهي File-Level Import، التي تتيح تعديل صفحة أو Shared Component باستخدام VS Code ثم استيراد التعديل فقط، دون الحاجة إلى إعادة استيراد التطبيق بالكامل.في هذا الموضوع سنشرح كيفية تجهيز بيئة العمل واستخدام Oracle Skills مع VS Code وChatGPT، ثم إنشاء تطبيقات APEX أو تعديل التطبيقات الموجودة، والتحقق من التعديلات ورفعها إلى Oracle APEX.1. ما هو Oracle APEX Vibe Coding؟الفكرة هي استخدام AI Coding Agent مثل Codex أو Claude Code لإنشاء وتعديل تطبيقات Oracle APEX من خلال تعليمات مكتوبة باللغة الطبيعية.بدلًا من إنشاء كل Region أو Item أو Process يدويًا، يمكن توجيه الـ Agent لإنشاء المكونات أو تعديلها داخل ملفات APEXlang.على سبيل المثال:Create an Oracle APEX page that displays customer orders using an Interactive Report. Add a form to create and update orders. Use existing database tables and follow Oracle APEX 26.2 specifications.يقوم الـ Agent بتحليل الطلب واستخدام Oracle Skills لإنشاء أو تعديل ملفات .apx، ثم يتم التحقق منها واستيرادها إلى APEX.دورة العمل تكون كالتالي:Requirements → AI Coding Agent → Oracle Skills → APEXlang → Validation → Import → Testingالميزة هنا أن APEXlang صيغة رسمية من Oracle، وليست طريقة غير مدعومة لإنشاء صفحات APEX.2. المتطلباتسنستخدم الأدوات التالية:الأداةالإصدارOracle APEX26.2Oracle SQLcl26.3.0 أو أحدثJava JDK17 أو 21Visual Studio Codeإصدار حديثOracle SQL Developer for VS Code26.3 أو أحدثCodex أو Claude CodeAI Coding AgentOracle Skillsمن المستودع الرسميGitاختياري لإدارة الإصداراتملاحظة بخصوص SQLcl:الإصدار 26.1.2 مناسب لمتطلبات APEXlang 26.1، لكن عند العمل على Oracle APEX 26.2 يجب استخدام SQLcl 26.3.0 أو أحدث وفق متطلبات هذا الإصدار.كذلك يجب أن تكون بيئة Oracle APEX 26.2 نفسها مجهزة بصورة صحيحة، بما في ذلك ORDS 26.3.0 أو أحدث.سنفترض أن لدينا Oracle APEX Workspace وDatabase Schema يمكن الاتصال بهما.3. تثبيت Java JDKيحتاج SQLcl إلى Java.يمكن تحميل JDK 21 من:https://www.oracle.com/java/technologies/downloads/بعد التثبيت، افتح Command Prompt أو Terminal ونفذ:java -versionتأكد أن Java تعمل وأن الإصدار 17 أو 21.على Windows، إذا كان Java مثبتًا ولكن الأمر غير معروف، راجع متغيرات البيئة JAVA_HOME وPATH وتأكد من إضافة مجلد bin الخاص بالـ JDK.4. تثبيت Oracle SQLclOracle SQLcl هو الأداة التي سنستخدمها لتنفيذ أوامر APEXlang مثل:apex exportapex validateapex importskills syncتحميل أحدث إصدار:https://www.oracle.com/database/sqldeveloper/technologies/sqlcl/download/في وقت إعداد هذا الموضوع، الإصدار المتاح هو SQLcl 26.3.0.بعد تنزيل ملف ZIP، فك الضغط في مسار مناسب.على Windows مثلًا:C:\oracle\sqlclبحيث يكون الملف التنفيذي في:C:\oracle\sqlcl\bin\sql.exeأضف المجلد التالي إلى متغير البيئة PATH:C:\oracle\sqlcl\binثم افتح Command Prompt جديدًا ونفذ:sql /nologعلى Linux أو macOS، فك ضغط SQLcl وأضف مجلد sqlcl/bin إلى متغير PATH، ثم نفذ الأمر نفسه.إذا ظهرت واجهة SQLcl ومعلومات الإصدار، فالتثبيت يعمل.يمكن أيضًا تشغيل SQLcl باستخدام المسار الكامل للملف التنفيذي دون تعديل PATH.ملاحظة: إضافة Oracle SQL Developer داخل VS Code تتضمن SQLcl، ويمكن استخدام النسخة المرفقة بها. لكن عند العمل باستخدام أوامر مستقلة من Terminal يجب التأكد من الإصدار الفعلي الذي يتم تشغيله.5. تثبيت Visual Studio Codeحمّل VS Code من:https://code.visualstudio.com/بعد التثبيت، افتح Extensions باستخدام:Ctrl + Shift + Xوابحث عن:Oracle SQL Developer for VSCodeثم اضغط Install.هذه الإضافة مهمة لأنها توفر:الاتصال بقواعد بيانات Oracle.استعراض Schemas وDatabase Objects.إنشاء وتصدير مشاريع APEXlang.تحرير ملفات .apx.Code Completion وValidation.Import Application.Import File في APEX 26.2.يفضل تفعيل Auto Update حتى تحصل على أحدث دعم لـ APEXlang.6. الاتصال بقاعدة بيانات Oracle من VS Codeافتح Oracle SQL Developer من القائمة الجانبية داخل VS Code.اختر إنشاء Database Connection جديد.أدخل بيانات الاتصال المطلوبة:Connection Name : APEX_DEV Username : APP_SCHEMA Password : ******** Hostname : database-host Port : 1521 Service Name : database-serviceهذه قيم توضيحية ويجب استبدالها ببيانات بيئتك.اضغط Test ثم Connect.يجب أن يكون Schema المستخدم مخولًا للوصول إلى الـ Workspace المطلوب.بعد الاتصال ستظهر Database Objects، ومع وجود APEX مدعوم ستتمكن من الوصول إلى التطبيقات من خلال قسم APEX داخل Oracle SQL Developer.7. تثبيت AI Coding Agent داخل VS Codeيمكن استخدام Codex أو Claude Code.باستخدام Codexمن Extensions ابحث عن:Codex – OpenAI's coding agentثم Install.افتح Codex وقم بتسجيل الدخول باستخدام حساب ChatGPT أو بيانات الوصول المدعومة.المهم هنا هو استخدام Codex داخل VS Code وليس مجرد فتح محادثة عادية في المتصفح؛ لأن الـ Agent المحلي يستطيع التعامل مع ملفات المشروع وفق الصلاحيات الممنوحة له.باستخدام Claude Codeمن Extensions ابحث عن:Claude Codeثم Install، وأكمل تسجيل الدخول.باقي الخطوات المتعلقة بـ Oracle APEX ستكون متشابهة إلى حد كبير.8. تثبيت Oracle Skillsتوفر Oracle مستودعًا رسميًا للمهارات:https://github.com/oracle/skillsالمستودع يحتوي على Skills خاصة بعدة تقنيات Oracle، ومنها APEX وDatabase وOCI وGraalVM.لتثبيت مهارات APEX وDatabase، افتح SQLcl.يمكن فتح SQLcl من Oracle SQL Developer عن طريق الضغط بزر الفأرة الأيمن على Database Connection واختيار:Open SQLclثم نفذ:skills sync -skill-name apex,dbبعد انتهاء المزامنة، نفذ:skills listللتحقق من المهارات المتاحة.تقوم المزامنة بتجهيز Oracle Skills للاستخدام في بيئات AI Coding Agents المحلية المدعومة.ويمكن تنفيذ الأمر مرة أخرى عند الحاجة إلى تحديث المهارات.التثبيت اليدوييمكن أيضًا تحميل المستودع مباشرة من GitHub:Code → Download ZIPثم نقل مجلدات المهارات المطلوبة إلى المسار الخاص بالـ Agent.على سبيل المثال، يستخدم Codex عادةً:~/.codex/skills/وعلى Windows يكون المسار تحت مجلد المستخدم داخل:.codex\skills\من المهم الاحتفاظ بمحتويات كل Skill كاملة، بما فيها ملفات SKILL.md وreferences وscripts، وليس نسخ ملف التعريف وحده.9. تعريف SQLcl للـ AI Agentحتى يستطيع Codex أو Claude Code استخدام SQLcl، يجب أن يكون على علم بمسار الملف التنفيذي.بالنسبة إلى Codex، يمكن إضافة تعليمات إلى ملف:~/.codex/AGENTS.mdوعلى Windows:C:\Users\<username>\.codex\AGENTS.mdمع محتوى مثل:## Oracle APEX Development Use Oracle Skills for Oracle APEX and Oracle Database development. Target Oracle APEX version: 26.2. Use Oracle SQLcl 26.3.0 or newer. SQLcl executable: C:\oracle\sqlcl\bin\sql.exe For APEXlang development: 1. Inspect the current application files. 2. Preserve existing IDs and references. 3. Use valid APEXlang 26.2 syntax. 4. Validate the application with SQLcl. 5. Review validation errors. 6. Fix errors before importing. 7. Import only after explicit approval. 8. Never store database passwords in source files.يجب تعديل مسار SQLcl ليناسب الجهاز.SQLcl MCP Serverهناك طريقة أخرى لتكامل SQLcl مع AI Agents، وهي تشغيله كـ MCP Server باستخدام:sql -mcpهذا الأمر يوضح وضع تشغيل SQLcl كخادم MCP؛ ويلزم بعد ذلك تسجيل الخادم داخل إعدادات الـ Agent باستخدام المسار الكامل للملف التنفيذي ووسيط التشغيل -mcp.هذه الطريقة توفر تكاملًا مباشرًا مع أدوات SQLcl وفق الصلاحيات وإعدادات الاتصال المسموح بها.لكن استخدام MCP اختياري؛ يمكن تنفيذ أوامر SQLcl يدويًا مع الاستفادة من الـ Agent لتعديل ملفات APEXlang.10. إنشاء مشروع APEXlang داخل VS Codeبعد تجهيز الأدوات، يمكن إنشاء مشروع جديد.أنشئ مجلدًا محليًا مثل:C:\APEX_PROJECTSوافتحه من VS Code باستخدام:File → Open Folderثم من Oracle SQL Developer:افتح Database Connection.انتقل إلى قسم APEX.اضغط بزر الفأرة الأيمن واختر Generate.حدد Workspace.أدخل Application Name.أدخل Application Alias.حدد Target Folder.اضغط Apply.مثال:Application Name : Help Desk Application Alias : HELP_DESK Target Folder : C:\APEX_PROJECTSسيتم إنشاء مشروع APEXlang على جهازك.الهيكل العام قد يحتوي على:help-desk/ │ ├── application.apx │ ├── pages/ │ ├── p00001-home.apx │ └── ... │ ├── shared-components/ │ ├── supporting-objects/ │ ├── deployments/ │ └── default.json │ └── .apex/ └── apexlang.jsonالملفات والمجلدات الفعلية تعتمد على محتوى التطبيق والإصدار المستخدم.لا تعدل قيمة mmdVersion داخل .apex/apexlang.json يدويًا؛ فهي مرتبطة بإصدار تعريفات APEXlang.11. تطوير التطبيق باستخدام Vibe Codingبعد فتح المشروع في VS Code، افتح Codex أو Claude Code.يمكن الآن إعطاء الـ Agent تعليمات لتطوير التطبيق.مثال لتطبيق Help Desk:Use Oracle APEX 26.2 Skills. Build a Help Desk application. Requirements: - Tickets Interactive Report - Create/Edit Ticket Form - Dashboard with ticket statistics - Categories LOV - Priority LOV - Status management - PL/SQL validations - Appropriate authorization rules Use the current database schema. Generate or modify the required APEXlang files. Do not replace unrelated components. Validate generated files using SQLcl. Show me the changed files before importing.سيعمل الـ Agent على ملفات المشروع، ويقوم بإنشاء أو تعديل التعريفات المطلوبة.يفضل تقسيم التطوير إلى مهام صغيرة، مثل إنشاء Dashboard أولًا ثم إضافة Form ثم تحديث التقارير، حتى يسهل مراجعة كل تغيير واختباره.12. تصدير تطبيق Oracle APEX موجود إلى VS Codeليس ضروريًا أن تبدأ بتطبيق جديد.يمكن العمل على تطبيق موجود داخل APEX.من Oracle SQL Developer داخل VS Code:افتح Database Connection.افتح قسم APEX.حدد التطبيق المطلوب.اضغط بزر الفأرة الأيمن.اختر Export.حدد المجلد المحلي.اضغط Apply.سيتم تصدير التطبيق بصيغة APEXlang.ويمكن تنفيذ العملية أيضًا باستخدام SQLcl بعد الاتصال بالـ Parsing Schema المناسب:apex export -applicationid 105 -exptype APEXLANGالرقم 105 هنا مثال، ويجب استبداله بـ Application ID الفعلي.بعد التصدير، افتح مجلد المشروع في VS Code.الآن يمكن تعديل صفحات التطبيق ومكوناته باستخدام الـ AI Agent مع الحفاظ على الملفات الأصلية.يفضل الاحتفاظ بنسخة من التطبيق قبل البدء، وعدم استيراد ملفات قديمة فوق تغييرات أحدث أجراها مطورون آخرون.13. التحقق من ملفات APEXlang قبل الاستيراديمكن تنفيذ Validation دون الاتصال بقاعدة البيانات.افتح Terminal وانتقل إلى مجلد المشروع.ثم شغّل:sql /nologومن داخل SQLcl:apex validate -input .أو حدد مسار المشروع:apex validate -input C:\APEX_PROJECTS\help-deskسيقوم SQLcl بفحص ملفات APEXlang.في حال وجود مشكلة، قد تظهر رسائل مثل:APEXLang Compile Errors: File: pages/p00003-tickets.apx Line: 125 Type: INVALID_PROPERTYيمكن إعطاء هذه الرسائل إلى AI Agent، وطلب تعديل الملف المتسبب في الخطأ فقط.مثال:Review the APEXlang validation errors. Fix the invalid properties using Oracle APEX 26.2 specifications. Do not modify unrelated pages or shared components. Run validation again.تتكرر العملية حتى ينجح التحقق.كذلك تعرض إضافة Oracle SQL Developer أخطاء APEXlang داخل Problems Panel في VS Code، وهو ما يساعد على اكتشاف المشاكل أثناء تحرير الملفات.نجاح Validation يعني أن تعريفات APEXlang اجتازت الفحص البنيوي، لكنه لا يثبت بالضرورة صحة SQL أو قواعد العمل أو الصلاحيات وقت التشغيل.14. استيراد التطبيق بالكامل — Application-Level Importعند إنشاء تطبيق جديد أو إجراء تغييرات كبيرة، يمكن استيراد التطبيق بالكامل.باستخدام VS Codeافتح ملف application.apx.تأكد من حفظ جميع التعديلات.اضغط Attach Connection إذا لم يكن الاتصال مرتبطًا بالمشروع.اختر Database Connection الصحيح.اضغط Import Application من شريط الأدوات أعلى المحرر.راجع رسالة نجاح أو فشل العملية.إذا كان التطبيق موجودًا بالفعل، فإن الاستيراد الكامل قد يستبدل تعريفاته الحالية. لذلك يجب مراجعة التغييرات وحفظ نسخة احتياطية قبل التنفيذ.باستخدام SQLclبعد الاتصال بقاعدة البيانات:apex import -input C:\APEX_PROJECTS\help-deskأو عند تشغيل SQLcl من داخل مجلد التطبيق:apex import -input .بهذه الطريقة يتم التحقق من المشروع ثم استيراد التطبيق ككل.وهذا هو المسار المناسب عند الإنشاء الأول للتطبيق، أو عندما تتطلب التغييرات إعادة نشر كاملة، أو عند تنفيذ Deployment منظم إلى بيئات الإنتاج.15. استيراد تعديل صفحة واحدة — File-Level Importهذه من أهم الإضافات في Oracle APEX 26.2.في APEX 26.1 كان بالإمكان تعديل ملف صفحة واحدة في VS Code، لكن تطبيق هذا التغيير كان يتطلب استيراد التطبيق بالكامل.أما في APEX 26.2 فأصبح بالإمكان استيراد ملف الصفحة مباشرة.الطريقة الأولى: باستخدام VS Codeافترض أن لدينا ملف:pages/p00003-tickets.apxوتم تعديل التقرير الموجود في الصفحة باستخدام Codex.بعد مراجعة التعديل:افتح الملف p00003-tickets.apx في VS Code.احفظ التغييرات.تأكد من الاتصال بقاعدة البيانات الصحيحة.اضغط Import File من شريط أدوات المحرر. انتظر نتيجة الاستيراد.افتح الصفحة داخل APEX وتحقق من التعديل.بهذه الطريقة يتم استيراد الملف المفتوح فقط، وليس التطبيق بالكامل.حتى يظهر زر Import File:يجب أن تكون قاعدة البيانات متصلة بـ Oracle APEX 26.2 أو أحدث.يجب أن يكون مشروع APEXlang قد تم تصديره بصيغة الإصدار 26.2 أو أحدث.يجب استخدام إصدار مناسب وحديث من Oracle SQL Developer for VS Code.يجب أن يكون التطبيق الهدف موجودًا بالفعل في الـ Workspace.الطريقة الثانية: باستخدام SQLclإذا كنت تعمل داخل مجلد المشروع، وبعد الاتصال بقاعدة البيانات، نفذ:apex import -files pages/p00003-tickets.apxسيتم استيراد الصفحة المحددة فقط.أما إذا كنت خارج مجلد المشروع، فيمكن تحديد مسار التطبيق والملف:apex import -input help-desk/ -files help-desk/pages/p00003-tickets.apxالمسارات الخاصة بالخيار -files تكون بالنسبة إلى Current Working Directory.ويمكن استخدام مسارات Windows أو Linux وفق مكان المشروع.الفرق المهم: استيراد ملف الصفحة لا يعني بالضرورة إعادة إنشاء كل الكائنات التي تعتمد عليها الصفحة؛ يجب مراجعة التبعيات قبل الاستيراد.16. استيراد أكثر من ملف في نفس العمليةلنفترض أننا أضفنا LOV جديدة ثم عدلنا صفحة تعتمد عليها.لدينا مثلًا:pages/p00003-tickets.apx shared-components/lovs/ticket-status.apxيمكن استيراد الملفين في أمر واحد من داخل مجلد التطبيق:apex import -files pages/p00003-tickets.apx shared-components/lovs/ticket-status.apxيتولى SQLcl ترتيب التبعيات بين الملفات المحددة.أما باستخدام VS Code، فإذا كانت الصفحة تعتمد على Shared Component جديدة غير موجودة بعد داخل التطبيق، فيجب استيراد ملف الـ Shared Component أولًا، ثم ملف الصفحة.هذه الميزة مفيدة جدًا في التطوير اليومي؛ حيث يمكن رفع تغييرات محددة دون التأثير على بقية صفحات التطبيق.حاليًا لا يشمل File-Level Import جميع أنواع الملفات؛ فهناك قيود على استيراد Themes وTemplates وPlugins وWorkspace Components بهذه الطريقة.كما أن هذا الأسلوب مدعوم من SQLcl وإضافة SQL Developer في VS Code، وليس من خلال App Builder Import.17. تعديل صفحة باستخدام AI ثم رفع التغيير فقطمثال عملي على تعديل صفحة موجودة.نفترض وجود صفحة Tickets Report داخل تطبيق Help Desk.نفتح مشروع APEXlang في VS Code، ثم نطلب من Codex:Review the existing Tickets Report page. Add the following: 1. A status filter. 2. A priority filter. 3. A button to create a new ticket. 4. A link to open the ticket details page. Reuse existing LOVs and application components. Modify only the required APEXlang files. Do not change unrelated pages. Validate the application using SQLcl. Do not import until I approve the changes.بعد انتهاء التعديل:نراجع الملفات التي تغيرت داخل VS Code Source Control.نتأكد أن التعديلات تخص الصفحة والمكونات المطلوبة فقط.ننفذ apex validate -input ..نعالج الأخطاء إن وجدت.نستورد ملف الصفحة باستخدام Import File أو الأمر apex import -files.نفتح التطبيق ونجرب الصفحة.إذا أضاف الـ Agent مكونات مشتركة جديدة، يتم تضمين ملفاتها أيضًا ضمن عملية الاستيراد.هذه هي دورة Edit → Validate → Import File → Test.18. مقارنة التعديلات قبل رفعهافي بيئات التطوير التي يعمل عليها أكثر من مطور، قد يحدث الآتي:مطور يعدل صفحة في App Builder.مطور آخر يعدل الملف نفسه محليًا داخل VS Code.عند استيراد النسخة المحلية، قد يتم استبدال تعديلات المطور الأول.لتقليل هذه المشكلة، توفر Oracle SQL Developer for VS Code 26.3 وما بعده إمكانيات Compare وPull لمقارنة ملفات APEXlang المحلية مع النسخة الموجودة في قاعدة البيانات، وجلب التغييرات المطلوبة.قبل الاستيراد:قارن النسخة المحلية مع نسخة التطبيق الموجودة في APEX.راجع الاختلافات.اجلب التغييرات التي يجب الاحتفاظ بها.عالج أي تعارض داخل الملفات.أعد تنفيذ Validation.استورد النسخة النهائية.ويمكن أيضًا استخدام Application Working Copies في APEX لعزل تعديلات المطورين قبل دمجها في التطبيق الرئيسي.هذه الخطوة مهمة خصوصًا مع Vibe Coding؛ لأن الـ Agent قد يعدل عدة خصائص داخل الصفحة، وليس فقط العنصر المطلوب ظاهريًا.19. إدارة ملفات APEXlang باستخدام Gitمن فوائد APEXlang أن تعريفات التطبيق أصبحت ملفات نصية يمكن إضافتها إلى Git.بعد تصدير التطبيق أو إنشاء المشروع، افتح Terminal داخل VS Code ونفذ، إذا لم يكن المجلد مستودع Git بالفعل:git initثم:git add .git commit -m "Initial APEXlang application"بعد إجراء تعديل باستخدام الـ Agent، يمكن مراجعة الملفات المتغيرة من تبويب Source Control.ثم تنفيذ:git add .git commit -m "Update Tickets page"وإذا كان المشروع مرتبطًا بمستودع Git بعيد، يتم رفع الـ Commit باستخدام git push وفق اسم الفرع وإعدادات المستودع.مهم: git push يرفع ملفات المصدر إلى مستودع Git، ولا ينشر التغييرات داخل Oracle APEX.نشر التغييرات إلى APEX يتم باستخدام apex import أو أزرار Import داخل VS Code.ويجب عدم إضافة كلمات المرور أو ملفات الاتصال الحساسة أو أي أسرار إلى Git.20. Deployment Files في Oracle APEX 26.2من التحسينات المهمة في APEX 26.2 دعم ملفات إعدادات Deployment منفصلة عن تعريف التطبيق.يمكن الاحتفاظ بإعدادات مختلفة لبيئات مثل Development وTest وProduction داخل مجلد:deployments/على سبيل المثال:deployments/ ├── default.json ├── test-env.json └── prod-env.jsonيمكن أن تتضمن إعدادات Deployment قيمًا مثل:Application IDWorkspace NameParsing SchemaApplication AliasSubscription Mappingبعض إعدادات Theme وRuntimeوعند استخدام إعدادات غير افتراضية، يمكن تحديد ملف Deployment أثناء الاستيراد باستخدام الخيار:apex import -input . -deployment deployments/test-env.jsonعلى أن يكون الملف صالحًا ويحتوي على قيم مناسبة لبيئة الاختبار.لا ينبغي نسخ قيم حساسة أو Checksum Salt من أمثلة توثيقية بصورة عشوائية.وبالنسبة إلى بيئات الإنتاج، توصي Oracle باستخدام Full Application Import ضمن دورة نشر واختبار معتمدة، بدل الاعتماد على استيراد الصفحات منفردة.21. استخدام Oracle Skills داخل ChatGPTبالإضافة إلى مسار VS Code، يمكن الاستفادة من Oracle Skills داخل ChatGPT باستخدام نظام Plugins.هذه طريقة مكملة لمسار التطوير المحلي، وليست بديلًا عن SQLcl أو Oracle SQL Developer.تنزيل Oracle Skillsافتح:https://github.com/oracle/skillsثم:Code → Download ZIPسيتم تحميل ملف قريب من:skills-main.zipتجهيز Pluginالمستودع الأصلي يتضمن إعدادات موجهة إلى Claude Code، لذلك لا يُفترض أن ZIP المستودع نفسه جاهز للتثبيت كـ ChatGPT Plugin دون تحويل.يمكن رفع الملف داخل ChatGPT، واستخدام Plugin Creator لإعداد حزمة متوافقة.مثال على التعليمات:Create a private ChatGPT plugin named Oracle Developer Skills. Use the attached official Oracle Skills repository as the source. Preserve original skill instructions, references, scripts and templates. Include the available Oracle APEX, Database, OCI and GraalVM skills. Adapt the skill structure to ChatGPT. Preserve source attribution and license. Do not invent unsupported Oracle features. Validate the plugin package. Keep the plugin PRIVATE.إنشاء Plugin داخل ChatGPTمن ChatGPT، إذا كانت الميزات متاحة للحساب:Plugins → Developer Tools → Add → Create pluginيمكن استخدام Plugin Creator لإنشاء الإضافة.أو اختيار:Upload plugin archiveإذا كانت الحزمة المتوافقة قد تم إعدادها بالفعل.تم إنشاء نسخة خاصة من Oracle Developer Skills بنجاح باستخدام المصدر الكامل من مستودع Oracle، وتسجيلها كإضافة خاصة بالإصدار 1.0.0.لكن هذه النتيجة تعني نجاح إنشاء الإضافة، ولا تعني أن ChatGPT أصبح متصلًا تلقائيًا بقاعدة البيانات أو قادرًا على تشغيل SQLcl المحلي.استخدام الإضافةبعد تفعيلها، يمكن إرسال ملفات APEXlang أو وصف التعديلات المطلوبة إلى ChatGPT.مثال:Using Oracle Developer Skills, review this Oracle APEX 26.2 application. I want to add a dashboard with: - Open tickets count - Closed tickets count - Tickets by priority - Tickets by category Generate the required APEXlang changes. Preserve existing application IDs, page IDs and shared components. Do not invent unsupported properties. Explain which files need to be updated.يمكن بعد ذلك مراجعة الملفات الناتجة داخل VS Code، وتشغيل Validation، ثم استيراد التعديلات.إذا أردت تنفيذ هذه الدورة آليًا من داخل Agent، فمن الأفضل استخدام بيئة تمنحه وصولًا مصرحًا إلى ملفات المشروع وSQLcl، بدل الاعتماد على Skills-only Plugin داخل المتصفح وحده.22. الفرق بين الطرق المتاحة لتطبيق التعديلاتالعمليةالطريقةإنشاء مشروع جديدGenerate من VS Codeتنزيل تطبيق موجودExport من VS Code أو SQLclتعديل ملفات التطبيقVS Code مع Codex/Claudeالتحقق من الملفاتapex validateاستيراد التطبيق بالكاملImport Applicationاستيراد صفحة واحدةImport Fileاستيراد عدة ملفاتapex import -filesمراجعة تغييرات المطورينCompare / Pullحفظ تاريخ التعديلاتGitرفع ملفات المصدر إلى مستودعGit Pushنشر نسخة إنتاجيةFull Application Deployment23. مشاكل شائعة أثناء العملأمر SQLcl غير معروفتأكد من إضافة مجلد sqlcl/bin إلى PATH، أو استخدم المسار الكامل للملف التنفيذي.وتحقق أيضًا من وجود Java بإصدار مدعوم.عدم ظهور Import File في VS Codeتحقق من إصدار Oracle APEX وإصدار Oracle SQL Developer Extension، وأن ملفات المشروع أُنشئت أو صُدرت بصيغة APEXlang 26.2 أو أحدث.كذلك تأكد من إرفاق Database Connection بالتطبيق داخل المحرر.فشل File-Level Importتأكد من أن التطبيق الهدف موجود في الـ Workspace، وأن الملف يخص التطبيق نفسه، وأن أي Shared Components جديدة مطلوبة متاحة أو مشمولة في عملية الاستيراد.ظهور أخطاء APEXlangاستخدم Problems Panel أو:apex validate -input .ثم أصلح الأخطاء قبل إعادة الاستيراد.لا تطلب من الـ Agent حذف خصائص أو مكونات لمجرد تجاوز Validation دون فهم تأثيرها.نجاح الاستيراد وعدم ظهور النتيجة المتوقعةتأكد من Application ID والـ Workspace والصفحة المستهدفة، ثم اختبر التطبيق في المتصفح وراجع الأخطاء وقت التشغيل.كما ينبغي التحقق من صلاحيات المستخدم وSession State وقواعد العمل وعمليات DML.العمل على نسخة APEXlang قديمةعند الترقية من APEX 26.1 إلى 26.2، لا يكفي تغيير قيمة mmdVersion يدويًا.إذا كانت ملفات APEXlang مخزنة في Git باعتبارها مصدر التطبيق الأساسي، توصي Oracle باستيراد التطبيق وإعادة تصديره بعد الترقية، حتى تتوافق بنية الملفات مع الإصدار الجديد.يفضل تنفيذ هذه العملية داخل فرع Git منفصل ومراجعة الفروقات قبل دمجها.الخلاصةمع APEXlang وOracle Skills وVS Code، يمكن استخدام Vibe Coding في دورة تطوير Oracle APEX بصورة عملية، مع الاحتفاظ بالتحكم في ملفات المصدر والتحقق من صحتها ومراجعة التعديلات.والتحسين الأهم في Oracle APEX 26.2 هو إمكانية تعديل صفحة أو Shared Component واستيرادها بصورة مستقلة خلال التطوير، دون الاضطرار إلى إعادة نشر التطبيق بالكامل بعد كل تعديل.أما الانتقال إلى Production فيظل بحاجة إلى عملية نشر متكاملة واختبارات وإدارة إصدارات مناسبة.وبذلك يمكن الجمع بين سرعة AI Coding Agents ومنهجية تطوير Oracle APEX المعتادة، بدل التضحية بالمراجعة والتحكم في التطبيق مقابل سرعة توليد الكود. تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.