<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Miwa J</title>
    <description>The latest articles on DEV Community by Miwa J (@mj_).</description>
    <link>https://dev.to/mj_</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3963534%2F3f68a7c8-4731-4ab3-9c0c-418de67937fa.jpg</url>
      <title>DEV Community: Miwa J</title>
      <link>https://dev.to/mj_</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mj_"/>
    <language>en</language>
    <item>
      <title>D365 Customer Insights for Our Own Sales Team (Customer Zero) (5) Setting Up Customer Insights - Journey</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Thu, 16 Jul 2026 01:00:03 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/d365-customer-insights-for-our-own-sales-team-customer-zero-5-setting-up-customer-insights--133</link>
      <guid>https://dev.to/tecturajpndx/d365-customer-insights-for-our-own-sales-team-customer-zero-5-setting-up-customer-insights--133</guid>
      <description>&lt;p&gt;This continues from &lt;a href="https://dev.to/tecturajpndx/d365-customer-insights-for-our-own-sales-team-customer-zero-4-error-handling-16pc"&gt;Part ④&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;When you open Customer Insights - Journey, the segments created in Customer Insights - Data are visible. The integration appears to be working correctly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating a Journey for Segment ①
&lt;/h2&gt;

&lt;p&gt;With "① License expiring within 90 days" checked, click the &lt;strong&gt;"New journey"&lt;/strong&gt; button to start building the journey.&lt;/p&gt;

&lt;p&gt;Configure it so that a next-action recommendation is sent to customers who newly meet the segment condition.&lt;/p&gt;

&lt;p&gt;This brings up the journey canvas. Clicking the &lt;strong&gt;"+"&lt;/strong&gt; button opens a panel where you can add steps to the journey.&lt;/p&gt;

&lt;h2&gt;
  
  
  Adding a Custom Trigger
&lt;/h2&gt;

&lt;p&gt;Select &lt;strong&gt;"Custom trigger"&lt;/strong&gt; and use the search field to create and add a new trigger.&lt;/p&gt;

&lt;p&gt;Configure the contents of the trigger, then complete the attribute mapping.&lt;/p&gt;

&lt;p&gt;The mapping is now complete.&lt;/p&gt;

&lt;h2&gt;
  
  
  Next Steps
&lt;/h2&gt;

&lt;p&gt;In the next part, we'll continue configuring Customer Insights - Journey and build the corresponding Power Automate flow on the receiving end.&lt;/p&gt;

</description>
      <category>powerapps</category>
      <category>customerinsights</category>
      <category>d365sales</category>
      <category>dynamics365</category>
    </item>
    <item>
      <title>D365 Customer Insights for Our Own Sales Team (Customer Zero) (4) Error Handling</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Thu, 16 Jul 2026 00:01:38 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/d365-customer-insights-for-our-own-sales-team-customer-zero-4-error-handling-16pc</link>
      <guid>https://dev.to/tecturajpndx/d365-customer-insights-for-our-own-sales-team-customer-zero-4-error-handling-16pc</guid>
      <description>&lt;p&gt;This continues from &lt;a href="https://dev.to/tecturajpndx/using-d365-customer-insights-for-our-own-sales-team-customer-zero-3-fixing-the-d365-sales-n0n"&gt;Part ③&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;We have the system set to refresh data daily, but unexplained errors can sometimes occur.&lt;/p&gt;

&lt;h2&gt;
  
  
  Symptoms
&lt;/h2&gt;

&lt;p&gt;The segments were not properly configured as expected.&lt;/p&gt;

&lt;p&gt;Checking &lt;strong&gt;System → Schedule&lt;/strong&gt; showed that the automatic refresh schedule itself was fine. The data source refresh also appeared to have no issues.&lt;/p&gt;

&lt;p&gt;Opening the &lt;strong&gt;Unify&lt;/strong&gt; screen, everything looks like it succeeded at first glance — but checking the &lt;strong&gt;Performance&lt;/strong&gt; screen reveals that something is failing during unification. Drilling in further, the failure is happening at the &lt;strong&gt;Customer Profiles&lt;/strong&gt; step.&lt;/p&gt;

&lt;h2&gt;
  
  
  Resolution Steps
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Attempt to manually re-run just the "Customer Profiles" task → Error persists&lt;/li&gt;
&lt;li&gt;Redo everything manually from the data source refresh step onwards&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This resolved the issue successfully.&lt;/p&gt;

&lt;h2&gt;
  
  
  Takeaway
&lt;/h2&gt;

&lt;p&gt;Since this is not a misconfiguration issue, patient repetition of the refresh process is enough to recover. Hopefully this saves someone some troubleshooting time.&lt;/p&gt;

</description>
      <category>powerapps</category>
      <category>dynamics365</category>
      <category>customerinsights</category>
      <category>d365sales</category>
    </item>
    <item>
      <title>D365 Customer Insights for Our Own Sales Team (Customer Zero) (3) Fixing the D365 Sales Customization</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Wed, 15 Jul 2026 23:47:13 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/using-d365-customer-insights-for-our-own-sales-team-customer-zero-3-fixing-the-d365-sales-n0n</link>
      <guid>https://dev.to/tecturajpndx/using-d365-customer-insights-for-our-own-sales-team-customer-zero-3-fixing-the-d365-sales-n0n</guid>
      <description>&lt;p&gt;This continues from &lt;a href="https://dev.to/tecturajpndx/using-d365-customer-insights-for-our-own-sales-team-customer-zero-2-building-segments-33ab"&gt;Part ②&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As part of Customer Zero, we planned to extract customers with no contact activity in the past 90+ days and send activity recommendations to sales reps. To support that segmentation, we had added a "Last Activity Date" field back in &lt;a href="https://dev.to/tecturajpndx/d365-customer-insights-for-our-own-sales-team-customer-zero-1-setting-up-customer-insights--3mng"&gt;Part ①&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;However, the Power Automate flow wasn't running, and we discovered the following.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem: &lt;code&gt;activitypointer&lt;/code&gt; Cannot Be Used as a Dataverse Trigger
&lt;/h2&gt;

&lt;p&gt;Due to a Dataverse platform constraint, it is not possible to register a trigger (callback registration) against the &lt;code&gt;activitypointer&lt;/code&gt; entity.&lt;/p&gt;

&lt;p&gt;This is because &lt;code&gt;activitypointer&lt;/code&gt; is not a real table with its own data — it is an abstract aggregation view that surfaces records across multiple concrete activity tables: &lt;code&gt;task&lt;/code&gt;, &lt;code&gt;phonecall&lt;/code&gt;, &lt;code&gt;email&lt;/code&gt;, &lt;code&gt;appointment&lt;/code&gt;, and others. Power Automate's Dataverse trigger ("When a row is added, modified or deleted") does not support detecting changes on abstract entities like this. In other words, specifying "Table: Activity (activitypointers)" as the trigger target was a fundamentally unworkable design from the start.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Fix
&lt;/h2&gt;

&lt;p&gt;Instead of a single &lt;code&gt;activitypointer&lt;/code&gt; trigger, you need to create a separate trigger for each concrete activity table.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Steps:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the C-6 flow in edit mode&lt;/li&gt;
&lt;li&gt;Change the target table of the current "When a row is added, modified or deleted" trigger from &lt;code&gt;activitypointer&lt;/code&gt; to a concrete table (e.g., &lt;code&gt;task&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Apply the same logic (update the related Account when &lt;code&gt;statecode = 1&lt;/code&gt;) and duplicate the flow for each required activity type:

&lt;ul&gt;
&lt;li&gt;Task (&lt;code&gt;task&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Phone Call (&lt;code&gt;phonecall&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Email (&lt;code&gt;email&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Appointment (&lt;code&gt;appointment&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For the "Get a row by ID" step (fetching the Opportunity), select &lt;strong&gt;regarding (value)&lt;/strong&gt; as the row ID.&lt;/p&gt;

&lt;p&gt;The third flow also needs to be updated — set the row ID to &lt;strong&gt;Potential Customer&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;After testing, the update was correctly reflected, confirming success.&lt;/p&gt;

&lt;h2&gt;
  
  
  Duplicating the Flow (Common Steps for Phone Call, Email, and Appointment)
&lt;/h2&gt;

&lt;p&gt;Since C-6 (Task version) is working correctly, use it as the base and duplicate:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;In the flow list, open the verified "C-6 Write Back Last Activity Date" (Task version)&lt;/li&gt;
&lt;li&gt;Click "..." (More options) in the top right → "Save As" to duplicate&lt;/li&gt;
&lt;li&gt;Rename each copy following the naming convention:

&lt;ul&gt;
&lt;li&gt;C-6 Write Back Last Activity Date (Phone Call)&lt;/li&gt;
&lt;li&gt;C-6 Write Back Last Activity Date (Email)&lt;/li&gt;
&lt;li&gt;C-6 Write Back Last Activity Date (Appointment)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;In each copy, change only the trigger table name:

&lt;ul&gt;
&lt;li&gt;Phone Call (&lt;code&gt;phonecall&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Email (&lt;code&gt;email&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Appointment (&lt;code&gt;appointment&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The "Get a row by ID" (Opportunity fetch) and "Update a row" (Account write-back) logic can be reused as-is — no changes needed&lt;/li&gt;
&lt;li&gt;Save and run a test&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  One Important Caveat
&lt;/h2&gt;

&lt;p&gt;The logic in these flows assumes that the activity's &lt;strong&gt;Regarding&lt;/strong&gt; field points to an Opportunity. However, phone calls, emails, and appointments are more likely than tasks to be linked directly to an Account or Contact rather than an Opportunity. If the Regarding target is an Account rather than an Opportunity, the "Get a row by ID" step will attempt to look up the Opportunity table and return an error (the same Entity Not Found pattern as before).&lt;/p&gt;

&lt;p&gt;Make sure the table name and logical name are configured correctly for each flow.&lt;/p&gt;

</description>
      <category>powerapps</category>
      <category>dynamics365</category>
      <category>d365sales</category>
      <category>customerinsights</category>
    </item>
    <item>
      <title>D365 Customer Insights for Our Own Sales Team (Customer Zero) (2) Building Segments</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Thu, 09 Jul 2026 07:24:04 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/using-d365-customer-insights-for-our-own-sales-team-customer-zero-2-building-segments-33ab</link>
      <guid>https://dev.to/tecturajpndx/using-d365-customer-insights-for-our-own-sales-team-customer-zero-2-building-segments-33ab</guid>
      <description>&lt;h2&gt;
  
  
  Customer Insights - Data Configuration
&lt;/h2&gt;

&lt;p&gt;Now that data unification is complete, it's time to configure D365 Customer Insights - Data. From the left menu, go to &lt;strong&gt;Insights → Segments&lt;/strong&gt; and click the Segments button.&lt;/p&gt;

&lt;p&gt;Click the &lt;strong&gt;"+ New segment"&lt;/strong&gt; button in the center of the screen.&lt;/p&gt;

&lt;h3&gt;
  
  
  Goal
&lt;/h3&gt;

&lt;p&gt;The goal is to push notifications to sales reps to prompt activity. As a preparatory step, we create the following segments:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Segment&lt;/th&gt;
&lt;th&gt;Condition&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;① License expiring soon&lt;/td&gt;
&lt;td&gt;Customers whose renewal date (&lt;code&gt;cr917_renewal_date&lt;/code&gt;) is approaching&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;② No active license + recent purchase history&lt;/td&gt;
&lt;td&gt;Customers with no active opportunity but a past Won close on record&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;③ No recent contact&lt;/td&gt;
&lt;td&gt;Customers where a certain amount of time has passed since &lt;code&gt;cr917_last_activity_date&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Building Segment ①
&lt;/h3&gt;

&lt;p&gt;Click (or drag) &lt;code&gt;cr917_renewal_date&lt;/code&gt; from within &lt;code&gt;account : CustomerZero&lt;/code&gt; and add it to the Rule 1 condition box on the left side.&lt;/p&gt;

&lt;p&gt;To set a relative date instead of a fixed calendar date, click the &lt;strong&gt;⇄ button&lt;/strong&gt; next to the calendar icon. This enables relative date configuration — set it up as follows.&lt;/p&gt;

&lt;p&gt;When you click Save, a details panel appears. Fill it in as shown and save.&lt;/p&gt;

&lt;p&gt;Make sure to verify how many records match each rule. If the count is 0, you will need to revisit your data source or unification settings and start over.&lt;/p&gt;

&lt;p&gt;In our case, the data is there — Rule 1 shows 8 members.&lt;/p&gt;

</description>
      <category>powerapps</category>
      <category>powerautomate</category>
      <category>customerinsights</category>
      <category>microsoft</category>
    </item>
    <item>
      <title>D365 Customer Insights for Our Own Sales Team (Customer Zero) (1) Setting Up Customer Insights - Data</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Mon, 06 Jul 2026 02:24:55 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/d365-customer-insights-for-our-own-sales-team-customer-zero-1-setting-up-customer-insights--3mng</link>
      <guid>https://dev.to/tecturajpndx/d365-customer-insights-for-our-own-sales-team-customer-zero-1-setting-up-customer-insights--3mng</guid>
      <description>&lt;p&gt;Once the D365 Customer Insights installation is complete, the first step is connecting data to the Data module. Since we need data from D365 Sales, we pull it in via Dataverse.&lt;/p&gt;

&lt;h3&gt;
  
  
  Overall Flow
&lt;/h3&gt;

&lt;p&gt;Add data source → Confirm change tracking → Select tables → Set primary keys → Deduplication rules (entity resolution) → Match rules (linking) → Unified data view → Run unification / Complete&lt;/p&gt;

&lt;h3&gt;
  
  
  Adding a Data Source
&lt;/h3&gt;

&lt;p&gt;Click "Add data source" and the next screen will appear. Since we're using D365 Sales data, select &lt;strong&gt;Dataverse&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Enter a data source name (anything is fine) and the D365 Sales server address, then click "Next."&lt;/p&gt;

&lt;p&gt;On the next screen, select the tables needed for the data connection. For this implementation, we selected the following five tables:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;account&lt;/code&gt; (Account)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;opportunity&lt;/code&gt; (Opportunity)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;contact&lt;/code&gt; (Contact)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;activitypointer&lt;/code&gt; (Activity)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;task&lt;/code&gt; (Task)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The initial data sync takes some time — ours completed after about 40 minutes. You can confirm that data has loaded correctly in the data view.&lt;/p&gt;

&lt;h3&gt;
  
  
  Unification
&lt;/h3&gt;

&lt;p&gt;Next, we run the unification process. Select "Unify" from the left menu.&lt;/p&gt;

&lt;p&gt;From here, we map the primary keys for each table.&lt;/p&gt;

&lt;h4&gt;
  
  
  Adding Deduplication Rules for Account
&lt;/h4&gt;

&lt;p&gt;Click "Add rule" under &lt;code&gt;account : CustomerZero&lt;/code&gt;. A screen will appear where you configure which columns must match for two records to be considered the same company. Common conditions used for Account entity resolution are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Company name (&lt;code&gt;accountname&lt;/code&gt;) match (basic, but vulnerable to name variations)&lt;/li&gt;
&lt;li&gt;Phone number match&lt;/li&gt;
&lt;li&gt;Email domain match&lt;/li&gt;
&lt;li&gt;Address match&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Normalizing the Account Name Field
&lt;/h4&gt;

&lt;p&gt;Normalize the &lt;code&gt;name&lt;/code&gt; field on the account table.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Normalization&lt;/strong&gt; is an option that determines how text is pre-processed before comparison. The recommended settings for this implementation are:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Setting&lt;/th&gt;
&lt;th&gt;Apply?&lt;/th&gt;
&lt;th&gt;Reason&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Unicode to ASCII&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;Standardizes full-width/half-width differences — important for Japanese company data&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Symbols&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;Removes characters like &lt;code&gt;, . &amp;amp; ( )&lt;/code&gt; — handles punctuation in names like "Co., Ltd."&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Text to lowercase&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;Ignores case differences&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Whitespace&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;Removes extra spaces&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Type (phone, name, address, organization)&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;Identifies and normalizes legal entity suffixes (Co., Ltd., Inc., Corp., etc.) — recommended for company name matching&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Numbers&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;If company names include numbers (e.g., 3M, 104 Information Technology), removing them can cause false matches — safer to leave unchecked&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;"Custom" options (Alias mapping, Custom bypass) are not needed for this implementation and can be left unchecked.&lt;/p&gt;

&lt;p&gt;Apply the same normalization settings to &lt;code&gt;contact&lt;/code&gt; and &lt;code&gt;opportunity&lt;/code&gt; as well.&lt;/p&gt;

&lt;h4&gt;
  
  
  Match Rules
&lt;/h4&gt;

&lt;p&gt;Click "Add rule" under &lt;code&gt;contact&lt;/code&gt;. Here you specify which columns to use to link accounts and contacts. In the standard Dataverse structure, the relationship is:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;contact.parentcustomerid&lt;/code&gt; (parent company ID) = &lt;code&gt;account.accountid&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Unified Data View
&lt;/h3&gt;

&lt;p&gt;Once the above steps are complete, the Unified Data View screen is displayed. In our case, it showed 135 merged customer columns, 528 individual customer columns, and 0 excluded columns. This confirms that the previous steps — deduplication rules and match rules — worked without issues.&lt;/p&gt;

&lt;p&gt;In this step, you review and adjust which columns will be included (or excluded) in the final unified customer profile. By default, all columns are included.&lt;/p&gt;

&lt;p&gt;Click "Create customer profiles" to run the unification job. Depending on the amount of data, this may take anywhere from a few minutes to several tens of minutes.&lt;/p&gt;

&lt;p&gt;Next, we move on to building &lt;strong&gt;Measures&lt;/strong&gt; and &lt;strong&gt;Segments&lt;/strong&gt;.&lt;/p&gt;

</description>
      <category>powerapps</category>
      <category>powerautomate</category>
      <category>microsoft</category>
      <category>marketingautomation</category>
    </item>
    <item>
      <title>Customizing D365 Sales — For Our Own Sales Team (Customer Zero) (5) Reorganizing the Dashboard Views</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Fri, 03 Jul 2026 01:37:03 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-5-reorganizing-the-dashboard-views-5b1a</link>
      <guid>https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-5-reorganizing-the-dashboard-views-5b1a</guid>
      <description>&lt;p&gt;&lt;em&gt;Note: I'm working on a separate article for Part ④, but it's not ready to publish yet, so I'm skipping ahead to Part ⑤.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;We'll use D365 Sales's built-in dashboard feature to visualize the tasks and field values generated by Power Automate.&lt;/p&gt;

&lt;p&gt;Before building the dashboard, we first need to create the views.&lt;/p&gt;

&lt;h3&gt;
  
  
  Common Steps (View Creation Basics — Power Apps is the easiest place to work)
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Open the target table (Opportunity / Account / Task / Activity)&lt;/li&gt;
&lt;li&gt;Go to the "Views" tab → "New View"&lt;/li&gt;
&lt;li&gt;Enter a view name&lt;/li&gt;
&lt;li&gt;Use "Edit columns" to add and reorder the columns you want to display&lt;/li&gt;
&lt;li&gt;Use "Edit filters" to configure filter conditions&lt;/li&gt;
&lt;li&gt;Use "Sort by" to set the sort column and order&lt;/li&gt;
&lt;li&gt;Save and publish&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Task View
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Table:&lt;/strong&gt; Task&lt;br&gt;&lt;br&gt;
&lt;strong&gt;View name:&lt;/strong&gt; Zone A - My High-Priority Tasks&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Columns:&lt;/strong&gt; Subject / Due Date / Priority / Regarding&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Filter:&lt;/strong&gt; Owner = Me AND Status = Incomplete AND Priority = High&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Sort:&lt;/strong&gt; Due Date (ascending)&lt;/p&gt;

&lt;p&gt;Add columns from the new view screen, then click "Edit filters" on the right side of the screen. Since all conditions in this case are AND, make sure all boxes are checked. Click OK, then add a sort criterion as well.&lt;/p&gt;

&lt;h3&gt;
  
  
  Activity Schedule View
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Table:&lt;/strong&gt; Activity&lt;br&gt;&lt;br&gt;
&lt;strong&gt;View name:&lt;/strong&gt; Zone A - Today's Scheduled Activities&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Columns:&lt;/strong&gt; Subject / Start Date &amp;amp; Time / Type / Regarding&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Filter:&lt;/strong&gt; Start Date = Today AND Owner = Me&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Sort:&lt;/strong&gt; Start Date &amp;amp; Time (ascending)&lt;/p&gt;

&lt;h3&gt;
  
  
  Opportunity View (Zone B)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Table:&lt;/strong&gt; Opportunity&lt;br&gt;&lt;br&gt;
&lt;strong&gt;View name:&lt;/strong&gt; Zone B - Opportunity Velocity Monitor&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Columns:&lt;/strong&gt; Opportunity Name / Account / Estimated Amount / Stage / &lt;code&gt;cr917_stage_changed_date&lt;/code&gt; / Estimated Close Date&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Filter:&lt;/strong&gt; Status = Open AND Assigned to Me&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Sort:&lt;/strong&gt; &lt;code&gt;cr917_stage_changed_date&lt;/code&gt; (ascending)&lt;/p&gt;

&lt;h3&gt;
  
  
  Account View (Zone C)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Table:&lt;/strong&gt; Account&lt;br&gt;&lt;br&gt;
&lt;strong&gt;View name:&lt;/strong&gt; Zone C - Customer Health Management&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Columns:&lt;/strong&gt; Account Name / &lt;code&gt;cr917_customer_type&lt;/code&gt; / &lt;code&gt;cr917_last_activity_date&lt;/code&gt; / &lt;code&gt;cr917_renewal_date&lt;/code&gt; / Owner&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Filter:&lt;/strong&gt; Assigned to Me&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Sort:&lt;/strong&gt; &lt;code&gt;cr917_last_activity_date&lt;/code&gt; (ascending)&lt;/p&gt;

&lt;h3&gt;
  
  
  Opportunity View (Zone D)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Table:&lt;/strong&gt; Opportunity&lt;br&gt;&lt;br&gt;
&lt;strong&gt;View name:&lt;/strong&gt; Zone D - Document Progress&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Columns:&lt;/strong&gt; Opportunity Name / Account / &lt;code&gt;cr917_proposal_sent&lt;/code&gt; / &lt;code&gt;cr917_po_received&lt;/code&gt; / &lt;code&gt;cr917_invoice_sent&lt;/code&gt; / &lt;code&gt;cr917_acceptance_done&lt;/code&gt; / &lt;code&gt;cr917_invoice_date&lt;/code&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Filter:&lt;/strong&gt; Status = Open&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Sort:&lt;/strong&gt; Opportunity Name (ascending) or &lt;code&gt;cr917_invoice_date&lt;/code&gt; (ascending)&lt;/p&gt;

&lt;p&gt;Now we display these views on the D365 Sales dashboard. Select "Dynamics 365 Dashboard" and choose the 3-column standard template. Then, for each component, add a list and select the "Table - View" you just created — and you're done.&lt;/p&gt;

&lt;p&gt;The finished result looks something like this: a three-column layout with your tasks, opportunities, accounts, and document progress all visible at a glance.&lt;/p&gt;

&lt;p&gt;If you find that additional flows are needed depending on your industry or use case, feel free to leave a comment with your question!&lt;/p&gt;

</description>
      <category>analytics</category>
      <category>microsoft</category>
      <category>productivity</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Customizing D365 Sales — For Our Own Sales Team (Customer Zero) (3) The "Missed Tasks" Problem</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Thu, 02 Jul 2026 05:12:01 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-3-the-missed-tasks-problem-1mp7</link>
      <guid>https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-3-the-missed-tasks-problem-1mp7</guid>
      <description>&lt;p&gt;This continues from &lt;a href="https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-2-common-settings-15al"&gt;Part ②&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Does any of this sound familiar?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;After a customer meeting, activity entries in the SFA get missed — materials don't get sent, follow-ups slip through the cracks.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The ideal flow looks like this:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hold a customer meeting (Outlook appointment exists) → Link meeting notes and slide URLs to D365 Sales → Issue follow-up action tasks in Sales from the notes → Set reminders in Sales&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Zone A — Next Action: Scheduled Flow Running Every Morning at 8:00
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;Trigger&lt;/th&gt;
&lt;th&gt;Condition&lt;/th&gt;
&lt;th&gt;Generated Task (Message)&lt;/th&gt;
&lt;th&gt;Priority&lt;/th&gt;
&lt;th&gt;Notify&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;A-1&lt;/td&gt;
&lt;td&gt;Daily 8:00 AM (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_stage_changed_date&lt;/code&gt; is 7+ days ago AND status is Open&lt;/td&gt;
&lt;td&gt;"[Opportunity name] stage has been stalled for 7+ days. Please check for follow-up."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A-2&lt;/td&gt;
&lt;td&gt;Daily 8:00 AM (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_last_activity_date&lt;/code&gt; is 30+ days ago AND there is an open opportunity&lt;/td&gt;
&lt;td&gt;"No activity toward [Account name] for 30 days. Consider reaching out."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A-3&lt;/td&gt;
&lt;td&gt;Daily 8:00 AM (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;estimatedclosedate&lt;/code&gt; is in the past AND status is not Won/Lost&lt;/td&gt;
&lt;td&gt;"[Opportunity name] close date has passed. Please update the date or confirm status."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Zone B — Opportunity Velocity Monitoring: Mix of Scheduled and Event Triggers
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;Trigger&lt;/th&gt;
&lt;th&gt;Condition&lt;/th&gt;
&lt;th&gt;Generated Task (Message)&lt;/th&gt;
&lt;th&gt;Priority&lt;/th&gt;
&lt;th&gt;Notify&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;B-1&lt;/td&gt;
&lt;td&gt;Daily 8:00 AM (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;estimatedvalue&lt;/code&gt; &amp;gt;= 5,000,000 AND &lt;code&gt;cr917_stage_changed_date&lt;/code&gt; is 14+ days ago&lt;/td&gt;
&lt;td&gt;"[Opportunity name] is a large deal but has had no progress in 14+ days."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner + Manager&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;B-2&lt;/td&gt;
&lt;td&gt;On opportunity update (Event)&lt;/td&gt;
&lt;td&gt;Stage (&lt;code&gt;stagename&lt;/code&gt;) changes from "Proposal" → "Negotiation"&lt;/td&gt;
&lt;td&gt;"[Opportunity name] has entered the Negotiation stage. Please confirm the PO receipt deadline."&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;B-3&lt;/td&gt;
&lt;td&gt;Daily 8:00 AM (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;closeprobability&lt;/code&gt; &amp;gt;= 80 AND &lt;code&gt;estimatedclosedate&lt;/code&gt; is within 7 days&lt;/td&gt;
&lt;td&gt;"[Opportunity name] closes in 7 days. Please do a final review."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Zone C — Churn Prevention: Threshold Switching by Customer Type
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;Trigger&lt;/th&gt;
&lt;th&gt;Condition&lt;/th&gt;
&lt;th&gt;Generated Task (Message)&lt;/th&gt;
&lt;th&gt;Priority&lt;/th&gt;
&lt;th&gt;Notify&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;C-1&lt;/td&gt;
&lt;td&gt;Daily 8:00 AM (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_customer_type&lt;/code&gt; = License-continuation OR Support (term contract) AND &lt;code&gt;cr917_last_activity_date&lt;/code&gt; is 60+ days ago AND no active opportunities&lt;/td&gt;
&lt;td&gt;"[Account name] may be a churn risk (License type — 60 days no activity). Please do a health check."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;C-2&lt;/td&gt;
&lt;td&gt;Daily 8:00 AM (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_customer_type&lt;/code&gt; = Project OR Support (spot) OR Support (time-purchase) AND &lt;code&gt;cr917_last_activity_date&lt;/code&gt; is 90+ days ago AND no active opportunities&lt;/td&gt;
&lt;td&gt;"[Account name] may be a churn risk (Project type — 90 days no activity). Consider seeding the next engagement."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;C-3&lt;/td&gt;
&lt;td&gt;1st of each month (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_renewal_date&lt;/code&gt; is within 90 days AND not before the 90-day window&lt;/td&gt;
&lt;td&gt;"[Account name] contract renews in 90 days. Please start preparing the renewal proposal."&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;C-4&lt;/td&gt;
&lt;td&gt;1st of each month (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_renewal_date&lt;/code&gt; is within 30 days&lt;/td&gt;
&lt;td&gt;"[Account name] contract renews in 30 days. Please expedite PO receipt."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner + Manager&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;C-5&lt;/td&gt;
&lt;td&gt;On opportunity update (Event)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;statecode&lt;/code&gt; changes to Won (no task generated)&lt;/td&gt;
&lt;td&gt;Auto-set &lt;code&gt;cr917_renewal_date&lt;/code&gt; to close date + 365 days&lt;/td&gt;
&lt;td&gt;Internal&lt;/td&gt;
&lt;td&gt;—&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;C-6&lt;/td&gt;
&lt;td&gt;On activity create/update (Event)&lt;/td&gt;
&lt;td&gt;A completed activity (&lt;code&gt;statecode&lt;/code&gt; = 1) is added or updated (no task generated)&lt;/td&gt;
&lt;td&gt;Write back &lt;code&gt;cr917_last_activity_date&lt;/code&gt; to current date/time&lt;/td&gt;
&lt;td&gt;Internal&lt;/td&gt;
&lt;td&gt;—&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Zone D — Chained Tasks Triggered by Yes/No Flag Changes
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;Trigger&lt;/th&gt;
&lt;th&gt;Condition&lt;/th&gt;
&lt;th&gt;Generated Task (Message)&lt;/th&gt;
&lt;th&gt;Priority&lt;/th&gt;
&lt;th&gt;Notify&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;D-1&lt;/td&gt;
&lt;td&gt;On opportunity update (Event)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_proposal_sent&lt;/code&gt; changes false → true&lt;/td&gt;
&lt;td&gt;"[Opportunity name] Proposal sent. Please confirm the expected PO receipt date."&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;D-2&lt;/td&gt;
&lt;td&gt;On opportunity update (Event)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_po_received&lt;/code&gt; changes false → true&lt;/td&gt;
&lt;td&gt;"[Opportunity name] PO received. Please send the order acknowledgment and prepare to issue the invoice."&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;D-3&lt;/td&gt;
&lt;td&gt;On opportunity update (Event)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_invoice_sent&lt;/code&gt; changes false → true&lt;/td&gt;
&lt;td&gt;"[Opportunity name] Invoice issued. Please register the acceptance confirmation deadline (30 days from now) as a task."&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;D-4&lt;/td&gt;
&lt;td&gt;Daily 8:00 AM (Scheduled)&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;cr917_invoice_date&lt;/code&gt; is 30+ days ago AND &lt;code&gt;cr917_acceptance_done&lt;/code&gt; = false&lt;/td&gt;
&lt;td&gt;"[Opportunity name] Acceptance is unconfirmed (30 days since invoice). Please follow up with the customer."&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Owner + Manager&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Configuring these flows can significantly reduce the operational overhead of sales management.&lt;/p&gt;

&lt;p&gt;Depending on your industry, you may need additional flows. If you have questions like "what should we do in this situation?", please feel free to leave a comment!&lt;/p&gt;

</description>
      <category>sfa</category>
      <category>microsoft</category>
      <category>powerapps</category>
      <category>powerplatform</category>
    </item>
    <item>
      <title>Customizing D365 Sales — For Our Own Sales Team (Customer Zero) (2) Common Settings</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Wed, 01 Jul 2026 00:28:47 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-2-common-settings-15al</link>
      <guid>https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-2-common-settings-15al</guid>
      <description>&lt;p&gt;This continues from &lt;a href="https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-preparation-56f9"&gt;Part ①&lt;/a&gt;. In Part ②, we'll configure the common settings and the internal-processing Power Automate flows.&lt;/p&gt;

&lt;h2&gt;
  
  
  Common Settings
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Setting Up Connections
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Open Power Automate (&lt;a href="https://make.powerautomate.com" rel="noopener noreferrer"&gt;https://make.powerautomate.com&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Go to "Data" → "Connections" → "New connection" and create a Microsoft Dataverse connection&lt;/li&gt;
&lt;li&gt;Do the same to create an Office 365 Outlook connection&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Basic Flow Creation Steps
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Click "Create" → select "Automated cloud flow" (event-triggered) or "Scheduled cloud flow" (recurring)&lt;/li&gt;
&lt;li&gt;Name flows in the format &lt;code&gt;[Zone]-[Number] [Description]&lt;/code&gt; (e.g., "A-1 Opportunity Stage Stall Alert")&lt;/li&gt;
&lt;li&gt;Always run a test after creating a flow to verify it works&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  2. Internal-Processing PA Flows — 4 Flows (Write-back portions of A-4, C-5, C-6, D-3)
&lt;/h2&gt;

&lt;p&gt;Once the common settings are done, it's time to build.&lt;/p&gt;

&lt;h3&gt;
  
  
  A-4: Write Back Stage Changed Date
&lt;/h3&gt;

&lt;p&gt;Without this flow, the stall-day calculations in A-1 and B-1 will not work. Implement this first.&lt;/p&gt;

&lt;p&gt;In Microsoft Dynamics 365 (D365), a "stage" refers to a major milestone in a process — such as a sales deal or customer engagement — that guides the responsible person through what needs to happen next. It's how a series of activities is visualized and managed.&lt;/p&gt;

&lt;p&gt;From here, all work is done in Power Automate.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Create the flow&lt;/td&gt;
&lt;td&gt;"Automated cloud flow" → select trigger "When a row is added, modified or deleted (Dataverse)"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Configure trigger&lt;/td&gt;
&lt;td&gt;Table: Opportunities / Change type: Modified&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Add condition&lt;/td&gt;
&lt;td&gt;Add a "Condition" action: "When Status Reason (statuscode) has changed"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Write-back action&lt;/td&gt;
&lt;td&gt;"Update a row (Dataverse)" → set &lt;code&gt;cr917_stage_changed_date&lt;/code&gt; to &lt;code&gt;utcNow()&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  C-5: Auto-Set Renewal Date + Auto-Create Renewal Opportunity (on Won)
&lt;/h3&gt;

&lt;p&gt;On Won close, two things happen: ① auto-set the renewal date to close date + 365 days, and ② auto-create a new Opportunity for the renewal cycle and add it to the pipeline.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Create the flow&lt;/td&gt;
&lt;td&gt;"Automated cloud flow" → trigger "When a row is added, modified or deleted (Dataverse)"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Configure trigger&lt;/td&gt;
&lt;td&gt;Table: Opportunities / Change type: Modified&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Add condition&lt;/td&gt;
&lt;td&gt;Process only when "Status (statecode)" changes to "Won"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Calculate renewal date&lt;/td&gt;
&lt;td&gt;"Variables" → "Initialize variable" (Date type), set to &lt;code&gt;addDays(triggerOutputs()?['body/actualclosedate'], 365)&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Write back to Account&lt;/td&gt;
&lt;td&gt;"Update a row (Dataverse)" → set &lt;code&gt;cr917_renewal_date&lt;/code&gt; on the Account to the variable&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Auto-create renewal opportunity&lt;/td&gt;
&lt;td&gt;"Add a new row (Dataverse)" → Table: Opportunities. Subject: original name + " — Renewal " + (close year + 1) + "". Account: same Account ID. Owner: same owner ID. Estimated close date: &lt;code&gt;cr917_renewal_date&lt;/code&gt; value. Estimated amount: same as original. Stage: "Prospect" (first stage). Description: "Auto-generated — Created from Won close of " + original name&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;Prevent duplicate creation&lt;/td&gt;
&lt;td&gt;Before running the flow, add a condition to check whether a renewal opportunity with the same name already exists. Skip if it does.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  C-6: Write Back Last Activity Date
&lt;/h3&gt;

&lt;p&gt;This flow runs only when a completed activity (statecode = 1) is created or updated. It does not trigger on scheduling a new activity.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Create the flow&lt;/td&gt;
&lt;td&gt;"Automated cloud flow" → trigger "When a row is added, modified or deleted (Dataverse)"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Configure trigger&lt;/td&gt;
&lt;td&gt;Table: Activity Pointers (activitypointers) / Change type: Added or Modified&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Add condition&lt;/td&gt;
&lt;td&gt;Process only when "statecode" equals "1 (Completed)"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Get related Account&lt;/td&gt;
&lt;td&gt;"Get a row (Dataverse)" → retrieve the Account linked via the activity's &lt;code&gt;regardingobjectid&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Write back to Account&lt;/td&gt;
&lt;td&gt;"Update a row (Dataverse)" → set &lt;code&gt;cr917_last_activity_date&lt;/code&gt; to &lt;code&gt;utcNow()&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  D-3 (Write-back portion): Auto-Record Invoice Issue Date
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Create the flow&lt;/td&gt;
&lt;td&gt;"Automated cloud flow" → trigger "When a row is added, modified or deleted (Dataverse)"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Configure trigger&lt;/td&gt;
&lt;td&gt;Table: Opportunities / Change type: Modified&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Add condition&lt;/td&gt;
&lt;td&gt;Process only when &lt;code&gt;cr917_invoice_sent&lt;/code&gt; changes from false → true (retrieve the previous value via &lt;code&gt;triggerOutputs()&lt;/code&gt; and compare)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Write back issue date&lt;/td&gt;
&lt;td&gt;"Update a row (Dataverse)" → set &lt;code&gt;cr917_invoice_date&lt;/code&gt; to &lt;code&gt;utcNow()&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Continued in Part ③.&lt;/p&gt;

</description>
      <category>sfa</category>
      <category>microsoft</category>
      <category>powerapps</category>
      <category>powerplatform</category>
    </item>
    <item>
      <title>Customizing D365 Sales — For Our Own Sales Team (Customer Zero)(1) Preparation</title>
      <dc:creator>Miwa J</dc:creator>
      <pubDate>Tue, 30 Jun 2026 03:12:16 +0000</pubDate>
      <link>https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-preparation-56f9</link>
      <guid>https://dev.to/tecturajpndx/customizing-d365-sales-for-our-own-sales-team-customer-zero-preparation-56f9</guid>
      <description>&lt;h2&gt;
  
  
  What is Customer Zero?
&lt;/h2&gt;

&lt;p&gt;"Customer Zero" is a strategy used by IT and technology companies in which the company itself becomes the "0th customer" (a test monitor) for a new product, AI service, or cloud service before rolling it out to external customers.&lt;/p&gt;

&lt;p&gt;Key benefits: faster validation and improvement (using the product in a real working environment surfaces bugs and usability issues early), and more persuasive sales pitches (a proven in-house success story/use case lets you propose to clients with confidence).&lt;/p&gt;

&lt;p&gt;With that in mind, the DX team has kicked off an initiative to get our own sales team using D365 Sales more fully.&lt;/p&gt;

&lt;h2&gt;
  
  
  Scope
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Zone&lt;/th&gt;
&lt;th&gt;Content&lt;/th&gt;
&lt;th&gt;Implementation&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Zone A&lt;/td&gt;
&lt;td&gt;Auto-generated Next Actions / detecting stalled deals&lt;/td&gt;
&lt;td&gt;Power Automate&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zone B&lt;/td&gt;
&lt;td&gt;Opportunity velocity monitoring / large-deal alerts&lt;/td&gt;
&lt;td&gt;Power Automate&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zone C&lt;/td&gt;
&lt;td&gt;Customer health management / churn prevention / renewal alerts&lt;/td&gt;
&lt;td&gt;Power Automate&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zone D&lt;/td&gt;
&lt;td&gt;Document flow / chained tasks&lt;/td&gt;
&lt;td&gt;Power Automate + BPF&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Implementation Order
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Create custom fields (12 on Opportunity, 6 on Account)&lt;/li&gt;
&lt;li&gt;4 internal-processing Power Automate flows (write-back portions of A-4, C-5, C-6, D-3)&lt;/li&gt;
&lt;li&gt;3 Zone A alert flows (A-1, A-2, A-3)&lt;/li&gt;
&lt;li&gt;3 Zone B alert flows (B-1, B-2, B-3)&lt;/li&gt;
&lt;li&gt;6 Zone C alert flows (C-1–C-6)&lt;/li&gt;
&lt;li&gt;4 Zone D document flows (D-1–D-4)&lt;/li&gt;
&lt;li&gt;Enable and verify the Outlook Add-in&lt;/li&gt;
&lt;li&gt;Reorganize dashboard views&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  1. Creating Custom Fields (12 on Opportunity, 6 on Account)
&lt;/h2&gt;

&lt;p&gt;Custom fields are added from Power Apps using the following steps.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Open Power Apps&lt;/td&gt;
&lt;td&gt;Go to make.powerapps.com and select the target environment (sandbox)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Select the table&lt;/td&gt;
&lt;td&gt;Left menu "Tables" → select "Opportunity"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Add a column&lt;/td&gt;
&lt;td&gt;"Columns" tab → click "Add column"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Enter field info&lt;/td&gt;
&lt;td&gt;Enter display name, data type, and schema name (cr917_xxxxx), then save&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Do the same for Account&lt;/td&gt;
&lt;td&gt;Add the corresponding fields to the "Account" table the same way (also create the Initiative ② additional fields using the same steps)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Configure choices&lt;/td&gt;
&lt;td&gt;For cr917_customer_type, add a "new choice" with the two options "License-continuation type" and "Project type"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;Add to forms&lt;/td&gt;
&lt;td&gt;Open the main form for each table, add the new fields, then save and publish&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Fields added to the Opportunity entity
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;Note: prefixes like &lt;code&gt;cr917_&lt;/code&gt; vary by environment.&lt;/em&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field Name&lt;/th&gt;
&lt;th&gt;Type&lt;/th&gt;
&lt;th&gt;Input Method&lt;/th&gt;
&lt;th&gt;Purpose / Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Proposal Sent &lt;code&gt;cr917_proposal_sent&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;Checked by the rep when the proposal is sent. Trigger condition for Zone D-1 flow.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PO Received &lt;code&gt;cr917_po_received&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;Checked when the PO is received. Trigger condition for Zone D-2 flow.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Invoice Sent &lt;code&gt;cr917_invoice_sent&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;Checked when the invoice is issued. Flow D-3 auto-sets &lt;code&gt;cr917_invoice_date&lt;/code&gt;.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Acceptance Confirmed &lt;code&gt;cr917_acceptance_done&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;Final completion flag. If left unchecked for 30 days, flow D-4 generates a reminder task.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Invoice Date &lt;code&gt;cr917_invoice_date&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Date and Time&lt;/td&gt;
&lt;td&gt;PA auto (D-3)&lt;/td&gt;
&lt;td&gt;PA automatically records the date &lt;code&gt;cr917_invoice_sent&lt;/code&gt; became Yes. Used as the baseline date for the 30-day acceptance check.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Stage Changed Date &lt;code&gt;cr917_stage_changed_date&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Date and Time&lt;/td&gt;
&lt;td&gt;PA auto (A-4)&lt;/td&gt;
&lt;td&gt;PA updates this with the current date/time every time the stage changes. Used for stall-day calculations in flows A-1 and B-1.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;NDA Status &lt;code&gt;cr917_nda_status&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Option Set&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;For ① NDA Signing. Three choices: Not Submitted / Under Review / Complete. PA monitors status changes to advance the flow.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;NDA SharePoint URL &lt;code&gt;cr917_nda_sharepoint_url&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;td&gt;PA auto&lt;/td&gt;
&lt;td&gt;For ① NDA Signing. After signing completes, PA automatically writes in the SharePoint storage URL.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;WBS Approved &lt;code&gt;cr917_wbs_approved&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;For ⑤ Offering. Checked once WBS approval is complete. PA then advances to the order-registration step.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Order Registered &lt;code&gt;cr917_order_registered&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;For ⑤ Offering. Order-registration completion flag. Checking it generates the flow-completion task.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Payment Confirmed &lt;code&gt;cr917_payment_confirmed&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;Shared by ④⑥ Renewal/Inspection. Checked after payment is confirmed. If unconfirmed 60 days after invoicing, an alert fires.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SP Registered &lt;code&gt;cr917_sp_registered&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;For ⑥ Delivery Inspection. Flag for completed SharePoint registration of deliverables. PA checks this as a precondition before triggering invoicing.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Fields added to the Account entity
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field Name&lt;/th&gt;
&lt;th&gt;Type&lt;/th&gt;
&lt;th&gt;Input Method&lt;/th&gt;
&lt;th&gt;Purpose / Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Renewal Date &lt;code&gt;cr917_renewal_date&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Date&lt;/td&gt;
&lt;td&gt;PA auto + manual override&lt;/td&gt;
&lt;td&gt;PA auto-sets this to close date + 365 days on a Won close. Rep may optionally adjust it. Baseline date for flows C-3/C-4.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Last Activity Date &lt;code&gt;cr917_last_activity_date&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Date and Time&lt;/td&gt;
&lt;td&gt;PA auto (C-6)&lt;/td&gt;
&lt;td&gt;PA updates this to the current date/time whenever a completed activity (call, email, visit, CI-J integration) is created. Baseline date for A-2, C-1, C-2.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Customer Type &lt;code&gt;cr917_customer_type&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Option Set&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;5 choices: License-continuation / Project / Support (spot) / Support (term contract) / Support (time-purchase). 60-day group: License-continuation, Support (term contract). 90-day group: Project, Support (spot), Support (time-purchase).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;BC Registered &lt;code&gt;cr917_bc_registered&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Yes/No (Boolean)&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;For ② Partner Contract. Rep records completion of Business Central registration. Interim flag pending full BC integration.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Contract SharePoint URL &lt;code&gt;cr917_contract_sharepoint_url&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;td&gt;PA auto&lt;/td&gt;
&lt;td&gt;For ② Partner Contract. After the contract is signed, PA automatically writes in the SharePoint storage URL.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PO Number &lt;code&gt;cr917_po_number&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;td&gt;Manual (rep)&lt;/td&gt;
&lt;td&gt;For ③ PO Issuance. Rep enters the PO number when it's received; used for reconciliation at invoicing time.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>dynamics365</category>
      <category>powerautomate</category>
      <category>powerapps</category>
      <category>sfa</category>
    </item>
  </channel>
</rss>
