
Event Subscribers & Management Codeunits
| Area | What the subscribers do |
|---|---|
| Job/order traceability on Production and Item Journals | Subscribers on "Requisition Line", "Production Journal Mgt", "Item Journal Line" (OnAfterValidateEvent on Order No.), "Item Jnl.-Post Line" and "Whse. Jnl.-Register Line" / "WMS Management" / "Job Jnl.-Post Line" propagate Job No., Job Task No., BoQ Sales Order No. and Demand Requisition No. from the Production Order onto Item Journal Lines, Item Ledger Entries and Warehouse Journal Lines, so the origin of a transaction stays traceable end to end. |
| Demand Requisition processing | The subscriber on page "Demand RequestMGB", event OnBeforeCreateRequisitionLines, replaces the standard line creation: it builds Requisition Worksheet lines from the Demand Requisition Planning Lines (procedure FillWorksheetLines) and, unless planning templates are used, creates and refreshes a Production Order per item with Replenishment System "Prod. Order" (procedure CreateProdOrder). |
| Job default dimension automation | OnAfterInsertEvent / OnAfterModifyEvent on table Job create a default "cost unit" and set Global Dimension 2 = Job No. automatically, when enabled in CB Setup ("Autom. Def. Dim. 2 on Job"). |
| Standard warehouse adjustment handling | Subscribers on "Release Purchase Document", "Req. Wksh.-Make Order", "Purch.-Post", "Whse.-Purch. Release", report "Get Source Documents" and "Whse. Jnl.-Register Line" carry the CBDeliveryTypeNVX value through requisition, purchase and warehouse posting, and suppress the Job No. filter / job costing / negative-adjustment warehouse entry for lines flagged as "Standard warehouse adjustment". |
| Contact / Industry Group synchronization | OnAfterInsertEvent / OnAfterModifyEvent / OnAfterDeleteEvent on "Contact Industry Group" call CBMgtNVX.ContactIndustryGroupMerge to replicate the change to the companies configured in the Contact Branch Companies list (see Contact Branches). OnAfterReleasePurchaseDoc on "Release Purchase Document" calls CBMgtNVX.UpdateContactBranch to derive and assign an Industry Group to the Buy-from Contact from the items on a released purchase order. |
| Contact Attribute cleanup | OnAfterDeleteEvent on table Contact removes all Contact Attribute assignments (CBContactContactAttributesNVX) for a deleted company contact. |
| Customer/Vendor blocking cascade | OnAfterModifyEvent on Customer and Vendor detect a change of Blocked to/from "All" and call CBMgtNVX.CustomerBlockedAll / VendorBlockedAll, which opens the linked contacts so they can be blocked or unblocked together with the customer/vendor. |
| Job-reserved inventory in availability figures | OnAfterCalculateNeed (codeunit "Item Availability Forms Mgt") and OnAfterMakeEntries (page "Item Availability Line List") add the item's job-reserved inventory (field CBInventoryOnJobNVX) into the gross requirement / availability breakdown. |
| Vendor certificates | OnBeforeActionEvent on page "Vendor Card", action CertificatesMGB, stores the current vendor number in CBSingleInstanceNVX so the certificates page can pick it up. |
| Area | Procedures / responsibility |
|---|---|
| Resource team management | CreateTeamMembersOverview, InitViewSorting and CheckTeamMemberOverlap build the team-member overview and detect/resolve overlapping team memberships of a resource. |
| Job Time Recording release | ReleaseJobTimeRec and CreateTimeSheetLine transfer Job Time Recording entries into Job Expense (Time Sheet / Daily Construction Site) lines, creating or updating the Time Sheet header as needed. |
| Data Mirroring engine | MirrorIsActive, MirrorAlreadyRunning, StartMirror, SetMirrorIsRunning and TablesAreMirrored implement the core mirroring engine invoked from CB Global Event Handler; ContactIndustryGroupMerge and UpdateContactBranch use it specifically for Contact Industry Group data. |
| Site Pick approval workflow | SetSitePickApprovalStatus is the central procedure that changes a Site Pick List's approval status: it validates who is allowed to approve/reject, updates the status, writes the Approval Entry, triggers posting on Approved and sends the notification e-mail. TestSitePickStatusOpen (overloads for header, line and machinery line), TestHasMachinery, GetOpenSitePickApprovals and GetSalesPersonSitePicks support status checks and Role Center cues; SendSitePickEmail / AddRecipient build and send the approval-request/rejection e-mails. See Automatic Approval workflow. |
| Job and bin inventory | GenerateJobInventoryView, GetJobBinContents and GetBinContentNoOfJobs compute and display the inventory currently held on a job or in a specific bin, broken down by job. |
| Role Center cues | GetDamageReportList, GetJobList and MarkUserJobByJobTask (overloads for Job and Job Expense Header) count and, on request, open the open damage reports, jobs and Site Pick Lists relevant to the current user. |
| Site Pick return processing | SitePickItemReturnSuggestion, GetSitePickReturnTempItemLedgerEntry and CreateSitePickReturnSuggestionLines propose and create material return lines on a Site Pick List (return shipment) from the job's posted consumption, including item tracking reservations (CreateReturnLineReservationEntry). |
| Purchasing / requisition helpers | IsStandardWarehouseAdjustment, ImportTenderers/InsertTenderer and CBDeliveryTypeToDeliveryType support the standard-warehouse-adjustment purchase flow, importing tenderers from an Industry Group's contacts, and converting between the CB and MEGABAU delivery type enums. |
| Item costing | CalculateItemCostsForItemSet recalculates the costing price for a filtered set of items. |
| Job task defaults | CreateDefaultJobTask creates a default "Entire Job" job task for a new job, when enabled in the Jobs Setup. |
| Vendor certificate monitoring | GetCertificateWarning finds vendors on open purchase BoQ orders whose certificate is about to expire or has expired within a given date formula. |
| Contact blocking | OpenContactBusRelation and BlockContacts open the contacts linked to a customer/vendor (including related person contacts) and lock/unlock them, used by the Customer/Vendor blocking cascade described above. |

![]() | FinanzOnline VAT Reg. No. Validation VAT Reg. No. validation via the Austrian FinanzOnline (FON) service. More information ![]() |