最新消息:ww12345678 的部落格重装上线,希望大家继续支持。

使用GitHub Copilot进行X++开发的实用方法(技巧、窍门、隐藏宝藏及应避免的事项)Practical Ways to Use GitHub Copilot for X++ Development (Tips, Tricks, Hidden Gems & What to Avoid)

网络文摘 William 2浏览 0评论

Hi Folks, 

In my last post about GitHub Copilot we covered what GitHub Copilot is, how to enable
it, and the licensing options, let’s move into the part everyone actually cares
about — Practical Ways to Use GitHub Copilot for X++ Development

Copilot isn’t magic, but when used well, it feels pretty
close. Below are practical examples, prompt ideas, best practices, and a few
“don’ts” that will save you time and frustration.

1. X++ Boilerplate Generation (Your New Time Saver)

X++ is full of repetitive patterns — table methods, service
classes, form event handlers, data entities, and more. Copilot can generate
60–80% of this instantly.

Try prompts like:

  • “Create
    a validateWrite method for this table following best practices.”
  • “Generate
    a runnable class that updates sales orders with status ‘Open’.”
  • “Create
    a SysOperation framework class with contract, controller, and service.”

You still review and refine — but the heavy lifting is done. (I would still recommend this to do every single time)

2. Documentation & XML Comments (The Most Underrated
Feature)

Copilot is brilliant at generating XML documentation
for methods, classes, and services.

Prompt idea:

  • “Add
    XML documentation to this method explaining parameters and return values.”

Why it matters

  • Better
    readability
  • Faster
    onboarding for new developers
  • Cleaner
    code reviews

3. OData & Integration Summaries

When working with integrations, Copilot can help you quickly
draft:

  • OData
    endpoint descriptions
  • Request/response
    examples
  • Error-handling
    notes
  • API
    documentation

Prompt idea:

  • “Explain
    how this data entity will behave when called via OData.”

This is especially useful when writing technical design
documents.

4. Best Practice Suggestions on Selected Code

This is where Copilot becomes a mini code reviewer.

Highlight a block of X++ code → open Inline Chat (Alt +
/)
→ ask:

  • “Suggest
    best practices for this code.”
  • “Is
    there any performance issue here?”
  • “Rewrite
    this using recommended patterns.”

Example: Summarize Sales Order

Your example:

public void summarizeSalesOrder(str salesOrderId)

{

    SalesTable
salesTable = SalesTable::find(salesOrderId);

   
info(strFmt(“Sales Order %1 for customer %2 has total amount
%3”,

       
salesTable.SalesId, salesTable.CustAccount, salesTable.TotalAmount));

}

Copilot might suggest:

  • Add
    null checks
  • Use ttsbegin/ttscommit
    if modifying data
  • Avoid
    info() in production code
  • Consider
    using SalesTotals class for accurate totals

This is where Copilot shines — it nudges you toward better
patterns.

5. Plugin Development with Copilot Studio

If you’re building Copilot plugins for D365FO,
Copilot can help with:

  • API
    schema generation
  • JSON
    payload examples
  • C#
    wrapper classes
  • Error-handling
    templates

This is still evolving, but it’s already a huge productivity
boost.

6. Hidden Gems Most Developers Miss

  •       Use #filename to give Copilot context

Example:

#SalesTable Explain how validateWrite works for this table.

  • ü 
        
    Use /intent to guide Copilot

Example:

/refactor Rewrite this method to improve readability.

  • ü 
    Keep related files open

Copilot reads open tabs to understand your project
structure.

  • ü 
    Use natural language

You don’t need to be formal.
“Make this faster” works surprisingly well.

7. What NOT to Do with Copilot (Important!)

Copilot is powerful, but not perfect. Avoid:

Blindly accepting code

Always review for:

  • Security
    issues
  • Performance
    problems
  • Deprecated
    APIs

Using Copilot for business
logic decisions

Copilot doesn’t know your customer’s requirements.

Expecting Copilot to understand
custom frameworks

It learns from your codebase over time — but not instantly.

Using vague prompts

“Fix this” → not helpful
“Optimize this query to reduce DB calls” → much better

While all this working magically, GitHub Copilot won’t replace your X++ expertise — but it
will absolutely amplify it. So don’t afraid of using it, make this your companion. The more you use it, the better it understands your patterns, naming
conventions, and coding style.

-Harry 

 Follow us on Facebook to keep in rhythm with us. https:fb.com/theaxapta

转载请注明:ww12345678 的部落格 | AX Helper » 使用GitHub Copilot进行X++开发的实用方法(技巧、窍门、隐藏宝藏及应避免的事项)Practical Ways to Use GitHub Copilot for X++ Development (Tips, Tricks, Hidden Gems & What to Avoid)

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址