codeunitProjectsofficial - Microsoftderived - from the source, no model text

Codeunit 1006 "Copy Job"

Base Application · Microsoft.Projects.Project.Job

Across versions

  1. BC23-24present
  2. BC251 events added
  3. BC262 events added, 1 procedures added
  4. BC27-28unchanged
  5. BC292 procedures added
  6. BC30unchanged

Neighbourhood 7 connected objects and pages

Codeunit 7006 "Price Helper - V16" (event subscribers)Price Helper - V16Codeunit 7019 "Price Helper - V15" (event subscribers)Price Helper - V15Page 1041 "Copy Job Tasks" (calls, 5 links)Copy Job TasksPage 1042 "Copy Job Planning Lines" (calls, 5 links)Copy Job Planning LinesCodeunit 408 "DimensionManagement" (calls, 4 links)DimensionManagementPage 1040 "Copy Job" (calls, 4 links)Copy JobCodeunit 1004 "Job Transfer Line" (calls)Job Transfer Line

Open in the neighbourhood explorer

One hop out, from the extracted relations and call graph. Up to 40 shown; the sections below list them all.

Base Application · Microsoft.Projects.Project.Job · BC23-30 · source at ea08af5e · facts from BC29

Events published

  • OnAfterCopyJob(var TargetJob: Record Job; SourceJob: Record Job) (integration)
  • OnBeforeCopyJob(SourceJob: Record Job; TargetJobNo: Code[20]; TargetJobDescription: Text[100]; TargetJobSellToCustomer: Code[20]; TargetJobBillToCustomer: Code[20]; CopyDimensions: Boolean; CopyPrices: Boolean; var IsHandled: Boolean) (integration)
  • OnBeforeExchangeJobPlanningLineAmounts(var JobPlanningLine: Record "Job Planning Line"; CurrencyCode: Code[10]; var IsHandled: Boolean) (integration)
  • OnAfterCopyJobTask(var TargetJobTask: Record "Job Task"; SourceJobTask: Record "Job Task"; CopyPrices: Boolean; CopyQuantity: Boolean) (integration)
  • OnAfterCopyJobDimensions(SourceJob: Record Job; var TargetJob: Record Job) (integration)
  • OnAfterCopyJobTaskDimensions(SourceJobTask: Record "Job Task"; TargetJobTask: Record "Job Task") (integration)
  • OnBeforeCopyJobPrices(var SourceJob: Record Job; var TargetJob: Record Job) (integration)
  • OnBeforeCopyJobTasks(var SourceJob: Record Job; var TargetJob: Record Job; var IsHandled: Boolean; CopyDimensions: Boolean; CopyQuantity: Boolean; CopyPrices: Boolean; JobTaskRangeFrom: Code[20]; JobTaskRangeTo: Code[20]; JobPlanningLineSource: Option; JobLedgerEntryType: Option) (integration)
  • OnCopyJobPlanningLinesOnBeforeModifyTargetJobPlanningLine(var TargetJobPlanningLine: Record "Job Planning Line") (integration)
  • OnCopyJobPlanningLinesOnAfterCopyTargetJobPlanningLine(var TargetJobPlanningLine: Record "Job Planning Line"; SourceJobPlanningLine: Record "Job Planning Line") (integration)
  • OnCopyJobPlanningLinesOnAfterSourceJobPlanningLineSetFilters(var SourceJobPlanningLine: Record "Job Planning Line"; CopyPrices: Boolean) + BC26 − BC26 (integration)
  • OnCopyJobPlanningLinesOnAfterTargetJobPlanningLineInsert(var TargetJobPlanningLine: Record "Job Planning Line"; SourceJobPlanningLine: Record "Job Planning Line") (integration)
  • OnCopyJobPlanningLinesOnBeforeTargetJobPlanningLineInsert(var TargetJobPlanningLine: Record "Job Planning Line"; SourceJobPlanningLine: Record "Job Planning Line") (integration)
  • OnCopyJobTasksOnBeforeTargetJobTaskInsert(var TargetJobTask: Record "Job Task"; SourceJobTask: Record "Job Task"; var IsHandled: Boolean) (integration)
  • OnCopyJobTasksOnAfterSourceJobTaskSetFilters(var SourceJobTask: Record "Job Task"; SourceJob: Record Job) (integration)
  • OnCopyJobPlanningLinesOnBeforeTargetJobPlanningLineInit(var TargetJobPlanningLine: Record "Job Planning Line"; SourceJobPlanningLine: Record "Job Planning Line"; TargetJobTask: Record "Job Task"; var IsHandled: Boolean) (integration)
  • OnCopyJLEsToJobPlanningLinesOnBeforeValidateQuantity(var TargetJobPlanningLine: Record "Job Planning Line"; var CopyQuantity: Boolean; var IsHandled: Boolean) + BC25 (integration)
  • OnCopyJobOnBeforeTargetJobInsert(var TargetJob: Record Job; var SourceJob: Record Job) + BC26 (integration)

Procedures

  • CopyJob(SourceJob: Record Job; TargetJobNo: Code[20]; TargetJobDescription: Text[100]; TargetJobSellToCustomer: Code[20]; TargetJobBillToCustomer: Code[20])
  • CopyJobTasks(SourceJob: Record Job; TargetJob: Record Job)
  • CopyJobPlanningLines(SourceJobTask: Record "Job Task"; TargetJobTask: Record "Job Task")
  • SetCopyQuantity(CopyQuantity2: Boolean)
  • SetCopyPrices(CopyPrices2: Boolean)
  • SetCopyJobPlanningLineType(JobPlanningLineType2: Option " ",Budget,Billable)
  • SetCopyOptions(CopyPrices2: Boolean; CopyQuantity2: Boolean; CopyDimensions2: Boolean; JobPlanningLineSource2: Option "Job Planning Lines","Job Ledger Entries"; JobPlanningLineType2: Option " ",Budget,Billable; JobLedgerEntryType2: Option " ",Usage,Sale)
  • SetJobTaskRange(JobTaskRangeFrom2: Code[20]; JobTaskRangeTo2: Code[20])
  • SetJobTaskDateRange(JobTaskDateRangeFrom2: Date; JobTaskDateRangeTo2: Date)
  • SetCopyAssignedResources(CopyAssignedResources2: Boolean) + BC29
  • GetJobTaskDateRange(var JobTaskDateRangeFrom2: Date; var JobTaskDateRangeTo2: Date) + BC26

Plus 6 local procedures.

Triggers

OnRun

Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.

Called by

  • Page 1041 “Copy Job Tasks” (5 calls: OnQueryClosePage → CopyJobTasks, OnQueryClosePage → SetCopyAssignedResources, OnQueryClosePage → SetCopyOptions, …)
  • Page 1042 “Copy Job Planning Lines” (5 calls: OnQueryClosePage → CopyJobPlanningLines, OnQueryClosePage → SetCopyJobPlanningLineType, OnQueryClosePage → SetCopyPrices, …)
  • Page 1040 “Copy Job” (4 calls: OnQueryClosePage → CopyJob, OnQueryClosePage → SetCopyOptions, OnQueryClosePage → SetJobTaskDateRange, …)

Recent changes

Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "codeunit", object_name: "Copy Job"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 1 sources