Business Affiliate Behaviors
The Business Affiliate (REF::BA) sub-domain manages external trading partners — primarily suppliers, but also carriers, customers, and any other organizational entity that interacts with the business. A Business Affiliate record holds the partner’s name, legal name, contact information, address, and one or more roles. Roles are modeled as distinct entities (see Business Role Behaviors), meaning the same affiliate can serve multiple functions (for example, both VENDOR and CARRIER) and role membership can be added or removed independently over time.
Business Affiliates are the target of Item Supply records: when a supply is linked to an affiliate, the supplier name on the supply card becomes a navigable link, and the affiliate’s Items tab shows all items it supplies. This bidirectional linkage connects the supplier catalog to the item catalog. See also: Item Supply Behaviors.
Business Affiliates implement GEN::ENT-DA with the following deviations:
- No draft lifecycle — Create always produces a Published entity; there is no Save as Draft option and no lifecycle-state tabs.
GEN::ENT-DA::0006(Duplicate) not adopted.GEN::ENT-DA::0007(Bulk Import/Export) not adopted.
REF::BA::0001 — Browse and Search Business Affiliates
Section titled “REF::BA::0001 — Browse and Search Business Affiliates”The Purchasing Manager navigates to the Suppliers page to view, search, filter, and inspect Business Affiliate records for the tenant.
| Persona | David Dealsworth (Purchasing Manager) |
| Implements | GEN::ENT-DA::0001 |
| Depends | — |
| Status | Proposed |
| Priority | Undefined |
REF::BA::0001::0001.UC — View Suppliers List
Section titled “REF::BA::0001::0001.UC — View Suppliers List”Priority: MVP2
Specializes GEN::ENT-DA::0001::0001. The Suppliers page (/suppliers) has no lifecycle-state tabs (deviation from GEN::ENT-DA::0001::0003). Default visible columns: checkbox, Name, Roles (as colored badges), Contact, Address, and Actions.
Postcondition: The user sees the complete list of Business Affiliates for the tenant with their core attributes.
REF::BA::0001::0002.UC — Search Suppliers by Name
Section titled “REF::BA::0001::0002.UC — Search Suppliers by Name”Priority: MVP2
Specializes GEN::ENT-DA::0001::0002. Search is server-side with a 300-millisecond debounce, querying GET /api/arda/suppliers/lookup?name=Acme. Clearing the search field restores the full list.
Postcondition: The grid is filtered to show only affiliates whose name matches the search term.
REF::BA::0001::0003.UC — Toggle Column Visibility
Section titled “REF::BA::0001::0003.UC — Toggle Column Visibility”Priority: MVP2
The user clicks the View dropdown to open a panel listing checkboxes for each available column, together with Show All and Hide All buttons and Save and Cancel controls. Toggling checkboxes and clicking Save immediately updates the visible column set. The preference persists for the session. Clicking Cancel discards any pending changes.
Postcondition: The grid reflects the user’s chosen column set.
REF::BA::0001::0004.UC — Filter Suppliers by Role
Section titled “REF::BA::0001::0004.UC — Filter Suppliers by Role”Priority: Undefined
Specializes GEN::ENT-DA::0001::0004. The entity-specific attribute filter is role type: the user selects a role (for example, VENDOR) from a filter control. The system queries GET /api/arda/suppliers/lookup?role=VENDOR. The filter is combinable with name search.
Postcondition: The grid displays only affiliates that hold the selected role type.
REF::BA::0001::0005.UC — Select Multiple Affiliates
Section titled “REF::BA::0001::0005.UC — Select Multiple Affiliates”Priority: MVP2
Specializes GEN::ENT-DA::0001::0005. The only bulk action currently available is Delete.
Postcondition: The user can operate on multiple affiliates simultaneously via the Actions dropdown.
REF::BA::0001::0006.UC — Navigate Supplier Grid Pages
Section titled “REF::BA::0001::0006.UC — Navigate Supplier Grid Pages”Priority: MVP2
Follows GEN::ENT-DA::0001::0006 without deviation.
REF::BA::0001::0007.UC — Supplier Deep Link with Auto-Open Detail Panel
Section titled “REF::BA::0001::0007.UC — Supplier Deep Link with Auto-Open Detail Panel”Priority: MVP2
Specializes GEN::ENT-DA::0001::0007. URL pattern: /supplier/{affiliateId}. Opens the same side panel as clicking a row in the grid.
Postcondition: The user arrives directly at a specific supplier’s detail view without manual navigation.
REF::BA::0002 — View Business Affiliate Details
Section titled “REF::BA::0002 — View Business Affiliate Details”The Purchasing Manager opens a side panel to inspect the full detail record of a specific Business Affiliate, including its roles and the items it supplies.
| Persona | David Dealsworth (Purchasing Manager) |
| Implements | GEN::ENT-DA::0002 |
| Depends | REF::BA::0001 |
| Status | Proposed |
| Priority | Undefined |
REF::BA::0002::0001.UC — View Supplier Details Panel
Section titled “REF::BA::0002::0001.UC — View Supplier Details Panel”Priority: MVP2
Specializes GEN::ENT-DA::0002::0001. The user clicks a row in the grid. The SupplierDetailsPanel slides open with three tabs: Details (active by default), Roles, and Items. The Details tab shows: Name, Legal name and Tax ID (if provided), Contact name/email/phone, Main address, and action buttons (Edit, Delete). The URL updates to /supplier/{affiliateId}.
Postcondition: The user sees the complete profile for the Business Affiliate and has access to all affiliate-level actions.
REF::BA::0002::0002.UC — View Supplier Roles Tab
Section titled “REF::BA::0002::0002.UC — View Supplier Roles Tab”Priority: Undefined
Implements the subordinate entity tab pattern per GEN::ENT-DA::0002::0002. The Roles tab shows a list of roles as colored badges with role names (for example, VENDOR in blue, CARRIER in green). Each role entry shows type, name, and notes. Empty state: “No roles assigned.” See also: Business Role Behaviors.
Postcondition: The user can see all roles held by the affiliate.
REF::BA::0002::0003.UC — View Supplier Items Tab
Section titled “REF::BA::0002::0003.UC — View Supplier Items Tab”Priority: Undefined
Implements the cross-reference tab pattern per GEN::ENTSUB::0005. The Items tab shows an AG Grid of Items that have an ItemSupply referencing this affiliate. Each row shows: Item Name (link to /item/{itemId}), SKU, Unit Cost, and Designation badges. Clicking an item row navigates to /item/{itemId} with the ItemDetailsPanel open. Empty state: “No items are linked to this supplier.” See also: Item Supply Behaviors.
Postcondition: The user can navigate from a supplier to all items it supplies, completing the bidirectional cross-reference.
REF::BA::0003 — Create Business Affiliate
Section titled “REF::BA::0003 — Create Business Affiliate”The Purchasing Manager creates a new Business Affiliate record with optional role assignment during creation.
| Persona | David Dealsworth (Purchasing Manager) |
| Implements | GEN::ENT-DA::0003 |
| Depends | — |
| Status | Proposed |
| Priority | Undefined |
Deviation from GEN::ENT-DA::0003: Business Affiliates do not implement the draft lifecycle. Create always produces a Published entity; there is no Save as Draft option.
REF::BA::0003::0001.UC — Create New Supplier
Section titled “REF::BA::0003::0001.UC — Create New Supplier”Priority: MVP2
Specializes GEN::ENT-DA::0003::0001. The user clicks ”+ Add Supplier.” The SupplierFormPanel slides open. Fields: Name (required), Legal Name (optional), Country, Contact Name/Email/Phone, Address. The user clicks Save. The system calls POST /api/arda/suppliers. The panel closes. A toast confirms: “Supplier created successfully.”
Postcondition: A new Business Affiliate is created and visible in the suppliers grid.
REF::BA::0003::0002.UC — Assign Roles During Creation
Section titled “REF::BA::0003::0002.UC — Assign Roles During Creation”Priority: Undefined
During the creation flow in the SupplierFormPanel, the user checks one or more role checkboxes (VENDOR, CARRIER, CUSTOMER, OPERATOR, OTHER) before clicking Save. After the affiliate is created, the system calls POST /api/arda/suppliers/{eId}/roles once per selected role. All role assignments complete before the panel closes.
Postcondition: The new Business Affiliate is created with the specified roles assigned. See also: Business Role Behaviors.
REF::BA::0004 — Edit Business Affiliate
Section titled “REF::BA::0004 — Edit Business Affiliate”The Purchasing Manager updates an existing Business Affiliate’s profile data from the detail panel.
| Persona | David Dealsworth (Purchasing Manager) |
| Implements | GEN::ENT-DA::0004 |
| Depends | REF::BA::0002 |
| Status | Proposed |
| Priority | Undefined |
REF::BA::0004::0001.UC — Edit Supplier from Detail Panel
Section titled “REF::BA::0004::0001.UC — Edit Supplier from Detail Panel”Priority: MVP2
Specializes GEN::ENT-DA::0004::0001. The user clicks Edit in the SupplierDetailsPanel. The SupplierFormPanel opens pre-filled with current data. The user modifies fields and clicks Save. The system calls PUT /api/arda/suppliers/{eId}. A toast confirms: “Supplier updated successfully.”
Postcondition: The Business Affiliate’s data is updated in place.
REF::BA::0004::0002.UC — Update Supplier Name
Section titled “REF::BA::0004::0002.UC — Update Supplier Name”Priority: Undefined
Specializes GEN::ENT-DA::0004::0004 (Update Propagation). When the Name field is changed and saved, the system triggers update propagation to downstream entities that reference this affiliate’s name, including Item Supply records and Purchase Orders.
Postcondition: The affiliate’s name is updated and downstream references are notified of the change.
REF::BA::0005 — Delete Business Affiliate
Section titled “REF::BA::0005 — Delete Business Affiliate”The Purchasing Manager removes Business Affiliates that are no longer needed.
| Persona | David Dealsworth (Purchasing Manager) |
| Implements | GEN::ENT-DA::0005 |
| Depends | REF::BA::0001 |
| Status | Proposed |
| Priority | Undefined |
REF::BA::0005::0001.UC — Delete Supplier
Section titled “REF::BA::0005::0001.UC — Delete Supplier”Priority: MVP2 — simplified: no referential integrity warnings (SD-4)
Specializes GEN::ENT-DA::0005::0001 with entity-specific referential warnings per GEN::ENT-DA::0005::0003 and cascade per GEN::ENT-DA::0005::0004. If the affiliate is referenced by Item Supply records, the confirmation dialog warns: “This supplier is referenced by N item supply records. Deleting it will leave those supplies unlinked.” Associated Business Roles are deleted as part of the affiliate deletion (subordinate cascade). On confirm, DELETE /api/arda/suppliers/{eId} is sent for each selected affiliate.
Postcondition: The selected Business Affiliates and their roles are permanently removed. Item Supply records that referenced the deleted affiliate retain their supplier name as free-text but lose the supplierEId linkage.
REF::BA::0005::0002.UC — Delete Supplier from Detail Panel
Section titled “REF::BA::0005::0002.UC — Delete Supplier from Detail Panel”Priority: MVP2 — simplified: no referential integrity warnings (SD-4)
Follows GEN::ENT-DA::0005::0002. The same confirmation dialog and warning logic from REF::BA::0005::0001 applies. On confirmation, the affiliate is deleted, the panel closes, and the grid refreshes.
Postcondition: The affiliate is deleted from the detail view context.
REF::BA::0006 — View Business Affiliate History
Section titled “REF::BA::0006 — View Business Affiliate History”The Purchasing Manager views the audit history of changes to a Business Affiliate and can restore a past version.
| Persona | David Dealsworth (Purchasing Manager) |
| Implements | GEN::ENT-DA::0008 |
| Depends | REF::BA::0002 |
| Status | Proposed |
| Priority | Undefined |
REF::BA::0006::0001.UC — View Affiliate History and Restore
Section titled “REF::BA::0006::0001.UC — View Affiliate History and Restore”Priority: Undefined
Follows GEN::ENT-DA::0008::0001 and GEN::ENT-DA::0008::0002. Deviation: Because Business Affiliates do not implement the draft lifecycle, restore creates a pending update (not a draft) pre-populated with the historical data. The user proceeds through the normal edit flow to commit the restored data.
Postcondition: A previous version of the affiliate has been recovered and is ready to be reviewed and saved.
Summary
Section titled “Summary”| Use Case | Scenarios | UC |
|---|---|---|
REF::BA::0001 Browse and Search Business Affiliates | 7 | 7 |
REF::BA::0002 View Business Affiliate Details | 3 | 3 |
REF::BA::0003 Create Business Affiliate | 2 | 2 |
REF::BA::0004 Edit Business Affiliate | 2 | 2 |
REF::BA::0005 Delete Business Affiliate | 2 | 2 |
REF::BA::0006 View Business Affiliate History | 1 | 1 |
| Total | 17 | 17 |
Copyright: © Arda Systems 2025-2026, All rights reserved