Building an AI-Driven Project Readiness Monitoring Agent with Genie Space – Part 1

The Growing Challenge of Project Readiness As organizations grow, managing project readiness becomes increasingly complex. Data related to projects, resources, and timelines is spread across CRM systems, project management tools, and booking platforms. Team Leads, CTOs, and CEOs often struggle to gain a real-time, consolidated view of whether projects are truly ready to start. This lack of visibility leads to delayed project kick-offs, inefficient resource utilization, and increased operational risk. Why Traditional Systems Fail at Scale Traditional reporting and AI systems are not designed to handle the dynamic nature of growing enterprises. They respond only to explicit prompts, operate in single-step workflows, and require significant human intervention. Leadership teams depend heavily on manual checks and follow-ups, which consume time and still fail to provide timely insights. The Shift Toward Agentic AI Organizations are now shifting from static AI responses to autonomous AI-driven decision-making. Agentic AI enables systems to understand intent, evaluate multiple data points, and decide what action to take next. This shift is critical for enterprises that want to move from reactive reporting to proactive management. What Genie Space Means for Business Leaders Genie Space is an AI-powered natural language analytics layer that allows business users to ask questions in plain English and receive immediate, governed answers. Without requiring SQL knowledge or technical expertise, Genie Space empowers leaders to access insights directly while maintaining full enterprise security and compliance through Unity Catalog. Ask Me Anything: A Unified Intelligence Layer The Ask Me Anything solution leverages Genie Space as the central intelligence layer. It connects securely to enterprise systems, preserves conversational context, and delivers consistent insights across departments. This unified approach ensures that leadership teams rely on a single source of truth for decision-making. Ask Me Anything Product Architecture Diagram Use Case Spotlight: PMO Assistant for Project Readiness In a typical PMO environment, project managers lack real-time visibility into execution readiness. Tasks may not be configured, resources may not be aligned, and risks often surface too late. The PMO Assistant powered by Genie continuously monitors projects scheduled to start within a defined window and provides instant readiness insights. Business Impact of Genie-Powered Insights By implementing Genie Space, organizations significantly reduce manual reporting effort, improve delivery confidence, and enable leadership teams to focus on strategic priorities. Faster insights lead to quicker decisions, lower operational costs, and improved customer satisfaction. To conclude, Genie Space transforms how organizations interact with their data. Instead of searching for information, leaders receive instant, trusted answers. CloudFronts helps enterprises design and deploy Genie-powered solutions that improve project visibility and decision-making across the organization. I hope you found this blog useful, and if you would like to discuss anything or explore a future implementation, you can reach out to us at transform@cloudfonts.com.

Share Story :

Precision in the Pharmacy: Transforming Warehouse and Inventory Visibility in Pharmaceutical Manufacturing

Summary: CloudFronts implemented real-time bin, lot, and location tracking using Microsoft Dynamics 365 Business Central for a pharmaceutical manufacturer in India. The solution eliminated manual inventory tracking gaps by digitizing quarantine, testing, and approval movements across warehouse locations. Inventory traceability improved from manual rack-level visibility to system-driven audit-ready tracking at every transaction level. Only approved finished goods are now visible for dispatch, reducing compliance risks and preventing unusable stock from entering the supply chain. About the Customer This engagement involved a mid-sized pharmaceutical manufacturing company based in India, operating in regulated production environments with strict quality and compliance requirements. The organization manages multiple SKUs across formulations, with a strong focus on GMP-compliant inventory and warehouse processes. The Challenge CloudFronts identified that inventory visibility across warehouse and quality processes was fragmented, manual, and prone to audit risks. Prior to the implementation, the organization struggled to track the exact physical location and status of materials during different stages of the quality lifecycle. Warehouse operations relied heavily on manual bin tracking, where rack-level information was either recorded offline or inconsistently updated in the system. This made it difficult for users to answer basic but critical questions such as: Additionally, location transfers between key stages, such as Quarantine, Under Test, Approved, and Rejected – were not system-driven. These movements were handled manually, increasing the risk of: From our experience across pharmaceutical implementations, these gaps directly impact batch traceability, regulatory readiness, and operational efficiency – especially during audits or product recalls. The Solution CloudFronts implemented a warehouse and inventory visibility framework using Microsoft Dynamics 365 Business Central, specifically tailored for pharmaceutical quality processes. The solution was designed to ensure real-time, audit-ready tracking of inventory across bins, lots, and locations. At the core of the solution was multi-dimensional inventory tracking, combining: We configured Microsoft Dynamics 365 Business Central to capture a manual “Bin No.” field at every transaction level, ensuring that users can explicitly define and track the exact rack or storage position of materials. This design decision was critical for audit scenarios, where inspectors require precise physical traceability. To address quality-driven inventory movement, we structured the warehouse into logical locations: We then automated inventory movement across these locations based on quality outcomes. For example: This was achieved through controlled workflows and validations within Microsoft Dynamics 365 Business Central, ensuring that: Additionally, we configured tracking line visibility rules, ensuring that only Approved inventory is available for downstream processes such as sales and dispatch. This eliminates the risk of accidental usage of blocked or rejected stock. From an architecture standpoint, the system leverages: Business Impact CloudFronts delivered measurable improvements in inventory control, accuracy, and compliance (CloudFronts implementation, 2024). To conclude, CloudFronts improved warehouse operations by replacing manual tracking with system-driven visibility using Microsoft Dynamics 365 Business Central. This ensures every batch is traceable, movements are controlled, and only approved inventory is used. Pharmaceutical companies adopting structured inventory visibility can reduce compliance risks while improving efficiency. If you’re looking to strengthen inventory tracking, quality control, or warehouse processes, a well-designed Microsoft Dynamics 365 Business Central implementation can deliver clear, measurable results. I hope you found this blog useful, and if you would like to discuss anything or explore a future implementation, you can reach out to us at transform@cloudfonts.com.

Share Story :

Debugging Made Simple: Using IISExpress.exe for Faster D365 Finance & Operations Development

Summary In modern web application development, debugging efficiency plays a critical role in overall productivity. While full Internet Information Services (IIS) is powerful, it often introduces unnecessary complexity and slows down development cycles. This article explores how IIS Express (iisexpress.exe) provides a lightweight, fast, and developer-friendly alternative for debugging. You will learn how to use IIS Express effectively, understand its advantages over full IIS, and discover practical ways to streamline your debugging workflow for faster and more efficient development. Debugging Faster with IIS Express: A Practical Guide for Modern Developers In modern application development, debugging speed and flexibility can significantly impact productivity. While full IIS is powerful, it often introduces overhead that slows down iterative development. This is where IIS Express (iisexpress.exe) becomes a powerful yet underutilized tool. This article explores how to effectively use IIS Express for debugging, why it matters, and how it can streamline your development workflow. What is IIS Express? IIS Express is a lightweight, self-contained version of Internet Information Services (IIS) designed specifically for developers. It allows you to: Why Use IIS Express for Debugging? Where is IISExpress.exe Located? It is typically found at: C:\Program Files\IIS Express\iisexpress.exe How to Run IIS Express Manually You can start IIS Express from the command line: iisexpress.exe /path:”C:\MyApp” /port:8080 Parameters Explained: a. /path → Physical path of your applicationb. /port → Port number to run the application Debugging with IIS Express in Visual Studio Step 1: Set Project to Use IIS Express a. Open Project Propertiesb. Go to the Web sectionc. Select IIS Express Step 2: Start Debugging Press F5 or click Start Debugging. Visual Studio will: Attaching Debugger Manually Sometimes you may need to debug an already running instance. Steps: You can then add breakpoints in your code. You can add break points in code. Common Debugging Scenarios IIS Express vs Full IIS Feature IIS Express Full IIS Setup Minimal Complex Admin Rights Not required Required Performance Lightweight Production-ready Use Case Development Production Best Practices Strategic Insight Many developers default to full IIS for debugging, but this introduces: IIS Express provides a developer-first approach, enabling: Final Thoughts Debugging should be fast, predictable, and low-friction. IIS Express achieves this by providing a lightweight yet powerful runtime environment. Whether you are building APIs, web applications, or integrations, mastering IIS Express can significantly improve your development efficiency. Key Takeaway Use IIS Express for fast, isolated, and efficient debugging-without the overhead of full IIS. If you are implementing of F&O and want more clarity in your finance processes, feel free to reach out to us at transform@cloudfonts.com. We have helped multiple organizations streamline exactly these scenarios.

Share Story :

How to Extract Tax Components in Purchase Orders in D365 F&O Using Standard Framework

Summary In modern enterprise systems, tax visibility is no longer optional-it’s critical for compliance, reporting, and integrations. This blog explains how to programmatically extract detailed tax components (like GST and surcharges) in Microsoft Dynamics 365 Finance & Operations using standard, Microsoft-aligned methods. It highlights a scalable approach that avoids unsupported workarounds while enabling line-level transparency and integration-ready outputs. In enterprise systems, taxation is often treated as a black box, calculated correctly, yet rarely understood in depth. However, as organizations scale globally and compliance requirements tighten, visibility into tax components becomes a strategic necessity, not just a technical detail. Working with Purchase Orders in Microsoft Dynamics 365 Finance and Operations, one common challenge is: How do we break down tax into its individual components (like 18% GST, 5% surcharge) programmatically? This article explores a clean, scalable, and Microsoft-aligned approach to extracting tax components using standard framework classes-without relying on fragile or unsupported methods. The Problem: Tax Visibility Beyond Totals Most implementations stop at: But modern business scenarios demand: To achieve this, we must go deeper into the tax calculation pipeline. The Standard Tax Calculation Flow In D365 F&O, Purchase Order tax calculation follows a structured pipeline: PurchTable   ↓PurchTotals   ↓Tax Engine   ↓TmpTaxWorkTrans (Tax Components)  The key insight here is: Tax components are not stored permanently—they are generated dynamically during calculation. The Solution: Leveraging PurchTotals and Tax Framework Instead of accessing internal or temporary structures directly, we use standard classes provided by Microsoft. Here is the working approach: PurchTable      purchTable;PurchTotals     purchTotals;Tax tax;TmpTaxWorkTrans tmpTaxWorkTrans; purchTable = PurchTable::find(“IVC-00003”); purchTotals = PurchTotals::newPurchTable(purchTable);purchTotals.calc(); tax = purchTotals.tax(); tmpTaxWorkTrans = tax.tmpTaxWorkTrans(); while select tmpTaxWorkTrans{    info(strFmt(“Tax Code : %1”, tmpTaxWorkTrans.TaxCode));    info(strFmt(“Tax % : %1”, tmpTaxWorkTrans.TaxValue));    info(strFmt(“Tax Amount : %1”, tmpTaxWorkTrans.TaxAmountCur));} Why This Approach Matters 1. Aligns with Microsoft Standard This method mirrors what the system does when you click “Sales Tax” on a Purchase Order form. 2. Avoids Unsupported APIs No dependency on: 3. Works Pre-Posting Unlike TaxTrans, this approach works before invoice posting, making it ideal for: Real-World Output For a Purchase Order with: The output becomes: Tax Code : 18Tax % : 18Tax Amount : 198 Tax Code : 5Tax % : 5Tax Amount : 55 This level of granularity enables: Extending the Approach You can filter by line: where tmpTaxWorkTrans.SourceRecId == purchLine.RecId 2. Multi-Currency Scenarios The same logic works seamlessly for: Tax is calculated in: Integration-Ready Design This structure can be easily exposed via: Strategic Insight In many projects, developers attempt to: These approaches introduce: The better approach is to embrace the framework, not bypass it. Final Thoughts Tax calculation in D365 Finance & Operations is not just about numbers-it’s about designing for transparency, compliance, and scalability. By leveraging: you gain: Key Takeaway If you need tax components in Purchase Orders, don’t query tables, trigger the calculation and read from the framework. If you are implementing of F&O and want more clarity in your finance processes, feel free to reach out to us at transform@cloudfonts.com. We have helped multiple organizations streamline exactly these scenarios.

Share Story :

Posting Date vs Clearing Date – Why Prior-Year Entries Appear in Business Central Bank Reconciliation

Summary In one of our recent client engagements for a service company based in Africa, we observed that prior-year transactions appearing in current-year bank reconciliation in Microsoft Dynamics 365 Business Central caused confusion during financial review and raised concerns about data accuracy. This occurs due to differences between posting date and clearing date and is a normal accounting scenario, not a system issue, as reconciliation is based on open entries until they are cleared and matched with bank statements. “Why is a 2024 entry appearing in reconciliation when the year is already closed?” At first glance, this may seem like a system issue. However, it is actually a fundamental accounting concept that every finance team should understand. Understanding the Scenario Let’s break down the situation: a. A payment (check) was issued on 31-Dec-2024b. The vendor deposited the check in January 2025c. The bank processed the transaction in 2025 During January 2025 reconciliation, the system shows: a. A 2024 ledger entry on the system sideb. A 2025 bank statement line on the bank side This often raises a common concern: “Why is a prior-year transaction still appearing?” The Root Cause – Timing Difference in Accounting This is a classic example of a timing difference in accounting. There are two important dates involved: a. Posting Date (System) – The date when the transaction is recorded in Business Central (31-Dec-2024)b. Clearing Date (Bank) – The date when the bank processes the transaction (January 2025) These dates do not always match – and that is completely normal in financial operations. How Business Central Handles This Microsoft Dynamics 365 Business Central follows a simple and accurate principle: Bank reconciliation is based on open (unreconciled) entries, not fiscal years. This means: a. Even if the financial year is closedb. Even if financial statements are finalizedc. Any unreconciled bank ledger entry will still appear The 2024 transaction appears in the January 2025 reconciliation because: a. It was posted in 2024b. It was not cleared by the bank at that timec. It remained open in the system Once the bank processes it in 2025, Business Central correctly includes it in the reconciliation. The Solution – Simple and Straightforward There are no error and no correction required. The correct approach is: a. Match the 2024 ledger entry with the 2025 bank statement lineb. Once matched, the entry is marked as reconciledc. It will no longer appear in future reconciliations Key Takeaway Bank reconciliation is not about when a transaction is recorded – it is about when it is cleared. Understanding this distinction helps finance teams: a. Avoid unnecessary confusionb. Improve reconciliation accuracyc. Ensure smoother financial operations in Business Central To conclude, seeing prior-year entries during reconciliation in Microsoft Dynamics 365 Business Central is completely normal and expected in scenarios involving timing differences. By understanding how posting dates and clearing dates interact, organizations can confidently manage reconciliations without misinterpreting system behavior. If you are implementing or optimizing bank reconciliation in Business Central and want more clarity in your finance processes, feel free to reach out to us at transform@cloudfonts.com. We have helped multiple organizations streamline exactly these scenarios.

Share Story :

Tax-on-Tax Configuration in Microsoft Dynamics 365 Finance and Operations: Step-by-Step Guide for 18% + 5% Cascading Tax

SummarySales tax configurations in Microsoft Dynamics 365 Finance and Operations can go beyond simple percentage calculations. In scenarios where taxes are layered or interdependent, businesses often require a tax-on-tax (cascading tax) setup. This blog explains how to configure an 18% primary tax and an additional 5% tax calculated on top of it, ensuring accurate, automated, and compliant tax calculations for complex service-based industries like Oil & Gas. Sales Tax Setup in Microsoft Dynamics 365 Finance & Operations (18% + 5% Tax-on-Tax) In global and industry-specific implementations, taxation is not always flat. Many organizations, especially in regulated sectors, require layered tax calculations where one tax is applied on top of another. In one such implementation within Microsoft Dynamics 365 Finance and Operations, this configuration was successfully used for a service-based company in the Oil and Gas industry. The requirement was straightforward but technically nuanced: a. Apply a primary tax of 18% on the service valueb. Apply an additional 5% tax on the total amount after the first tax This type of setup is commonly required when: a. Multiple statutory taxes are interdependentb. Regulations mandate tax calculation on already taxed valuesc. Service contracts involve multi-layered billing structures By configuring this correctly, businesses can eliminate manual calculations and ensure compliance. Understanding the Requirement The logic follows a cascading structure: a. First, calculate 18% on the base amountb. Then, calculate 5% on (Base Amount + 18% tax) Example Calculation: a. Item price = ₹100b. 18% tax = ₹18c. 5% tax on ₹118 = ₹5.9d. Total tax = ₹23.9e. Final amount = ₹123.9 This demonstrates how the second tax depends on the first, making configuration accuracy critical. Step-by-Step Configuration 1. Create Sales Tax CodesNavigate to:Tax > Indirect taxes > Sales tax > Sales tax codes a. Create Tax Code 1Name: Tax18Percentage: 18% b. Create Tax Code 2Name: Tax5Percentage: 5% 2. Configure Tax-on-Tax For Tax5 (5%): a. Enable: Calculate tax on taxb. Select base tax: Tax18 This ensures Tax5 is calculated on the net amount + Tax18. 3. Create Sales Tax Group Navigate to:Tax > Indirect taxes > Sales tax > Sales tax groups a. Create: SALES_TAX_GROUPb. Add:i. Tax18ii. Tax5 4. Create Item Sales Tax Group Navigate to:Tax > Indirect taxes > Sales tax > Item sales tax groups a. Create: ITEM_TAX_GROUPb. Add:i. Tax18ii. Tax5 5. Assign Tax Groups a. Assign the Item sales tax group to the itemb. Ensure correct mapping in transactions Tax Calculation Flow Step Amount Base Amount ₹1000 GST18 (18%) ₹180 GST5 (5% on 118) ₹59 Total Tax ₹239 Final Amount ₹1239 a. Tax-on-tax must always be configured on the dependent tax (5%)b. Sequence of tax codes directly impacts calculation accuracyc. Always validate through Sales Order → Invoice → Tax detailsd. Perform complete testing in Sandbox before Production deployment Conclusion Tax-on-tax configuration in Microsoft Dynamics 365 Finance and Operations is a powerful capability that enables businesses to handle complex, cascading tax requirements with precision. By structuring tax dependencies correctly: a. The base tax (18%) is calculated firstb. The dependent tax (5%) is automatically applied on the cumulative amount This ensures: a. Accurate financial reportingb. Regulatory compliancec. Zero manual intervention For industries dealing with layered taxation models, this approach is not just helpful-it is essential. I hope you found this blog useful. If you would like to discuss anything further, feel free to reach out to us at transform@cloudfronts.com.

Share Story :

How to Handle Language and Format Region in RDLC Reports in Microsoft Dynamics 365 Business Central

In global implementations of Microsoft Dynamics 365 Business Central, reports are consumed by users across multiple regions. While the underlying data remains the same, the way it is presented—especially numbers, dates, and currency-must adapt to regional expectations. A common mistake developers make is focusing only on translations while ignoring regional formatting differences. This often results in reports where values appear correct but are interpreted incorrectly due to formatting. This blog explains how to dynamically control both language and format region in RDLC reports using AL, ensuring accurate and user-friendly reporting across regions. What You Will Learn The Report Example Below is a working example where the report dynamically sets language and formatting before execution: report 50121 “Test Multilingual Report”{    Caption = ‘Test Multilingual Report’;    UsageCategory = ReportsAndAnalysis;    ApplicationArea = All;    DefaultLayout = RDLC;    RDLCLayout = ‘./Report Layouts/TEstrepo.rdl’; dataset    {        dataitem(PurchaseHeader; “Purchase Header”)        {            column(Customer_No; “Buy-from Vendor No.”) { }            column(Customer_Name; “Buy-from Vendor Name”) { }            column(Balance_LCY; Amount) { }        }    } trigger OnPreReport()    var        LanguageMgt: Codeunit Language;        VendorRec: Record Vendor;    begin        if VendorRec.Get(PurchaseHeader.”Buy-from Vendor No.”) then begin            CurrReport.Language :=                LanguageMgt.GetLanguageIdOrDefault(VendorRec.”Language Code”); CurrReport.FormatRegion :=                LanguageMgt.GetFormatRegionOrDefault(VendorRec.”Format Region”);        end;    end;} What This Code Actually Does Before the report starts rendering, the OnPreReport trigger executes. a. CurrReport.Language sets the language used for captions and labels in the report b. CurrReport.FormatRegion defines how numbers, dates, and currency values are formatted The key point is that these values are applied at runtime, meaning the same report behaves differently depending on the data it processes. Why This Matters Consider the same numeric value: a. In US format: 1,234.56 b. In French format: 1.234,56 If a report shows the wrong format, users may misread values. In financial documents, this is not just a cosmetic issue-it can lead to real errors. By setting FormatRegion, you ensure that: a. Decimal separators are correct b. Thousand separators follow regional standard c. Currency formatting aligns with expectations Best Practices for RDLC Reports in Business Central Common Mistake to Avoid Avoid hardcoded expressions like: =Format(Fields!Balance_LCY.Value, “#,##0.00”) This overrides regional settings and prevents dynamic formatting. Why This Matters for Global Implementations Accurate localization ensures: Final Thoughts Multilingual reporting in Microsoft Dynamics 365 Business Central is not just about translating text. True localization means presenting data in a way that aligns with regional expectations. By dynamically setting both language and format region using AL, you can build scalable, globally adaptable reports without increasing RDLC complexity. I hope you found this blog useful. If you would like to discuss anything further, feel free to reach out to us at transform@cloudfronts.com.

Share Story :

Why Report Formatting Matters as Much as Calculations in Microsoft Dynamics 365 Business Central

Summary RDLC expressions may seem like small details, but they have a significant impact on the overall user experience. When building reports in Microsoft Dynamics 365 Business Central: Small refinements in formatting can dramatically elevate the quality of your reports – and the perception of your solution. When building reports in Microsoft Dynamics 365 Business Central, most developers focus heavily on calculations – totals, balances, VAT, charges, and more. But after working across multiple client implementations, one thing becomes very clear: A correctly calculated number is only half the job. How that number is displayed defines how professional your report looks. In this article, we’ll walk through practical RDLC expression patterns that help you: Let’s break it down step by step. The Business Requirement Consider common reports such as: Typically, you calculate totals using: Then the client asks for refinements: These are very common requirements in Indian financial reporting. Example 1: Hide Zero and Format Numbers RDLC Expression =IIf( Fields!BaseAmount.Value + Fields!ServiceCharge.Value + Fields!VATAmount.Value + Fields!TransportCharge.Value = 0, “”, Replace( Format( Fields!BaseAmount.Value + Fields!ServiceCharge.Value + Fields!VATAmount.Value + Fields!TransportCharge.Value, “#,##,##0” ), “,”, ” ” )) What This Does Step 1 – Calculate TotalAdds all amount fields. Step 2 – If Total = 0Returns blank (nothing displayed). Step 3 – If Total ≠ 0 Example Output Actual Value Displayed Value 0 (blank) 5000 5 000 125000 1 25 000 12345678 1 23 45 678 Even a small formatting tweak like this makes reports significantly cleaner. Example 2: Negative Values in Brackets (Accounting Format) Many clients prefer: (50 000) instead of -50 000 RDLC Expression =IIf( Fields!NetAmount.Value = 0, “”, IIf( Fields!NetAmount.Value < 0, “(” & Replace(Format(Abs(Fields!NetAmount.Value), “#,##,##0”), “,”, ” “) & “)”, Replace(Format(Fields!NetAmount.Value, “#,##,##0”), “,”, ” “) )) How It Works Where This Is Useful Example 3: Adding Currency Symbol To include ₹ in your reports: RDLC Expression =IIf( Fields!InvoiceAmount.Value = 0, “”, “₹ ” & Replace( Format(Fields!InvoiceAmount.Value, “#,##,##0”), “,”, ” ” )) Output 250000 → ₹ 2 50 000 Clean. Readable. Professional. Important Note About IIf() A common mistake developers make: IIf() evaluates both TRUE and FALSE conditions. If your fields can be NULL, always handle safely: =IIf(IsNothing(Fields!Amount.Value), 0, Fields!Amount.Value) This prevents runtime errors in production. Best Practice: Keep Expressions Clean If you’re calculating the same total multiple times: Do not repeat logic in RDLC. Instead, create a calculated field in your dataset: TotalAmount = BaseAmount + ServiceCharge + VATAmount + TransportCharge Then simplify your expression: =IIf( Fields!TotalAmount.Value = 0, “”, Replace(Format(Fields!TotalAmount.Value, “#,##,##0”), “,”, ” “)) Benefits Especially important in large Business Central reports. Why This Matters in Real Projects In most implementations, clients rarely complain about incorrect calculations. Instead, they say: These are formatting concerns, not calculation issues. And they are what separate: a. A technically correct reportfromb. A production-ready financial document Key Takeaways I hope you found this blog useful. If you would like to discuss anything further, feel free to reach out to us at transform@cloudfronts.com.

Share Story :

Don’t Just Migrate – Rethink Job Costing Beyond Dynamics GP

For many organizations using Dynamics GP, job costing has worked for years. Until it doesn’t. As GP approaches end-of-life, companies are being pushed to move – but when job costing is complex, the real question becomes:“Can we just move this to Business Central?” In one of our recent implementations, we learned that the answer is no – not directly. What’s needed is not a migration, but a re-architecture. Let’s look at why, using a smaller, real-life example. The Starting Point: Job Costing That “Works” in GP Our client had been using: The system worked – but it was tightly tied to GP logic and tables. When the move to Business Central was discussed, it became clear that a straight migration would carry old limitations into a new system. Why Business Central Alone Was Not Enough Business Central’s Jobs module is powerful, but it is best suited for simpler job structures. The client needed: Trying to force all of this into standard BC Jobs would have meant heavy customization and long-term maintenance risk. So instead, we rethought the design. The Re-Architecture Approach We clearly separated responsibilities: This allowed us to keep Business Central clean while still supporting real-world job complexity. A Real-Life Example A company wins a project worth $50,000. Job Setup This becomes the baseline for performance tracking. Committed & Actual Costs Now management can compare: Estimate vs Committed vs Actual – and see margin trends early. Forecast Revision Labor is running higher than planned. Instead of changing the original estimate: Change Order The client approves an extra $5,000 scope. Percent of Completion (POC) At month-end: Revenue is recognized based on actual cost incurred. Finance gets accurate revenue, WIP, and margin – without manual adjustments. Why This Architecture Worked This approach delivered: Most importantly, the system supported how people actually run jobs – not just how software expects them to. The Bigger Lesson: Don’t Migrate Problems When moving from Dynamics GP to modern platforms, the goal should not be to recreate the past. It should be to: Job costing is not just a module – it’s a business process. Final Thought If you are planning a transition away from Dynamics GP and rely on job costing, ask yourself: Are we simply moving systems – or are we redesigning job costing for better control and visibility? The answer makes all the difference. I hope you found this blog useful. If you would like to discuss anything further, feel free to reach out to us at transform@cloudfronts.com.

Share Story :

Automating Post-Meeting Processes in Power Platform: A Complete Framework for Follow-Up

How to Automate Meeting Follow-Ups in Microsoft Dynamics 365? Meetings are essential for sales, account management, and client engagement. However, many organizations struggle with what happens after the meeting that is, documenting notes, updating CRM records, creating follow-ups, and maintaining financial accuracy. By leveraging automation within Microsoft Dynamics 365 and Microsoft Power Platform, businesses can build a structured post-meeting automation framework that ensures every discussion is captured, tracked, and visible across the CRM. This article explains how to automate meeting follow-ups using Power Automate and improve CRM data consistency, sales coordination, and operational efficiency. Why Post-Meeting Automation Is Critical for Sales Teams? In most CRM implementations, the biggest challenge is not capturing meetings, it is ensuring that meeting outcomes are reflected everywhere they should be. Common problems include: CRM automation for meeting follow-ups solves these issues by ensuring that once a meeting record is added, all related records are automatically updated. Business Scenario Consider a common scenario: This creates confusion, reduces credibility, and affects customer experience. The objective of this automation is simple: Once a meeting record is created, all related records across the system should be updated automatically so everyone sees the latest information before engaging the client. Solution Overview Power Automate Flow begins when a meeting record is logged in the system. From there, it intelligently performs the following: The result is complete visibility across the CRM. Step-by-Step Implementation 1. Meeting Record Created When a meeting interaction is added, it triggers the automation workflow. This acts as the foundation for all follow-up actions. 2. Extract Attendees Using Activity Participation Data The system retrieves attendee details and filters: Optional attendees and CC recipients are identified using expression logic to ensure accurate tracking of all relevant participants. This ensures a clean and structured engagement history. 3. Create Initial Meeting Note A note is automatically generated stating that the discussion took place. This ensures documentation starts immediately. 4. Check Appointments from the Last 3 Days To prevent duplicate meeting entries: This keeps timelines accurate and prevents clutter. 5. Intelligent Note Attachment Based on Context One of the most important parts of this automation is contextual note distribution. Depending on what the meeting relates to: This ensures that no matter where a salesperson navigates to Account, Lead, Opportunity, they see the latest meeting discussion. This eliminates confusion before multiple team members reach out. All created note references are stored and linked back to the meeting record for traceability. 6. Track Next Steps Automatically If next steps are mentioned: This improves accountability and follow-through. 7. Send Meeting Copy (If required) If stakeholders need a summary: This reduces manual communication effort. 8. Maintain Financial Records If financial discussions occur: This keeps commercial data aligned with conversations. Why Does This Matters for Sales Teams? This automation solves a very practical problem: Before calling a client, salespeople can immediately see: There is no need to search across multiple records. This ensures: a. No duplicate outreachb. No conflicting communicationc. Better client experienced. Improved internal coordination Business Impact Organizations implementing this framework benefit from: Most importantly, it builds trust internally and externally because everyone operates with the latest information Meetings generate decisions, commitments, and valuable insights but without structure, those insights often remain isolated within individual records or personal notes. True CRM maturity is not just about storing data; it’s about ensuring that information flows intelligently across the system. By implementing an automated post-meeting automation framework in Power Platform, organizations can ensure that every interaction is reflected system-wide, giving sales teams clarity before engaging clients and preventing confusion caused by outdated records. In growing organizations, this level of automation is no longer optional, it’s essential for maintaining alignment and delivering a seamless customer experience. If you’re looking to enhance meeting visibility, improve follow-up tracking or optimize your CRM processes using Power Platform, feel free to reach us at transnform@cloudfronts.com and explore how this solution can be implemented in your organization.

Share Story :

SEARCH BLOGS:

FOLLOW CLOUDFRONTS BLOG :


Categories

Secured By miniOrange