How to stop Pop up when creating Assembly Order from Code

samantha73
Member Posts: 118
Hi All
I have created a page action to create an Assembly order from job lines but when I VALIDATE quantity on Assembly order it comes up with the famous RUN MODEL error and pop (when components are not enough ). Tried COMMIT before but didn't work
codeunit 10010 MY_AssemblyOrderCreateFromJob
{
trigger OnRun()
begin
end;
//pass rec from planning line page action
procedure MY_CreateAssemblyHeader(JobPlanningLine: Record "Job Planning Line")
var
IsHandled: Boolean;
//guiallowed: Boolean;
AssemblyHeader: Record "Assembly Header";
begin
Clear(AssemblyHeader);
AssemblyHeader.Init();
AssemblyHeader.Validate("Document Type", AssemblyHeader."Document Type"::Order);
AssemblyHeader.Insert(true);
AssemblyHeader.Validate("Item No.", JobPlanningLine."No.");
AssemblyHeader.Validate("Variant Code", JobPlanningLine."Variant Code");
AssemblyHeader.VALIDATE(Quantity,JobPlanningLine.Quantity);
AssemblyHeader.Validate("Due Date", JobPlanningLine."Planning Date");
AssemblyHeader.Validate(MY_JobNo, JobPlanningLine."Job No.");
AssemblyHeader.Validate(MY_JobTaskNo, JobPlanningLine."Job Task No.");
AssemblyHeader.Validate(MY_JobPlanningLineNo, JobPlanningLine."Line No.");
AssemblyHeader.Modify();
if AssemblyHeader.Modify(true) then
Message('Assembly Order Created. Use link under Proces to navigate');
end;
I have created a page action to create an Assembly order from job lines but when I VALIDATE quantity on Assembly order it comes up with the famous RUN MODEL error and pop (when components are not enough ). Tried COMMIT before but didn't work
codeunit 10010 MY_AssemblyOrderCreateFromJob
{
trigger OnRun()
begin
end;
//pass rec from planning line page action
procedure MY_CreateAssemblyHeader(JobPlanningLine: Record "Job Planning Line")
var
IsHandled: Boolean;
//guiallowed: Boolean;
AssemblyHeader: Record "Assembly Header";
begin
Clear(AssemblyHeader);
AssemblyHeader.Init();
AssemblyHeader.Validate("Document Type", AssemblyHeader."Document Type"::Order);
AssemblyHeader.Insert(true);
AssemblyHeader.Validate("Item No.", JobPlanningLine."No.");
AssemblyHeader.Validate("Variant Code", JobPlanningLine."Variant Code");
AssemblyHeader.VALIDATE(Quantity,JobPlanningLine.Quantity);
AssemblyHeader.Validate("Due Date", JobPlanningLine."Planning Date");
AssemblyHeader.Validate(MY_JobNo, JobPlanningLine."Job No.");
AssemblyHeader.Validate(MY_JobTaskNo, JobPlanningLine."Job Task No.");
AssemblyHeader.Validate(MY_JobPlanningLineNo, JobPlanningLine."Line No.");
AssemblyHeader.Modify();
if AssemblyHeader.Modify(true) then
Message('Assembly Order Created. Use link under Proces to navigate');
end;
0
Answers
-
I wonder if I can use confirm management CU to solve this problem by something like:
If NOT GuiAllowed Then ConfirmProcess
as discussed here:
https://community.dynamics.com/nav/b/mynavblog/posts/how-to-write-error-and-confirm0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 320 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions