Onvalidate trigger in table does not work

tompynation
Member Posts: 398
I created on Validatetrigger for a field in my WareHouse Entry table:
lt_BinType.GET("Bin Type Code");
VALIDATE(Receive,lt_BinType.Receive);
VALIDATE(Pick,lt_BinType.Pick);
VALIDATE("Put Away",lt_BinType."Put Away");
this trigger should fill in 3 other fields in the table.
this works fine when i manually enter a record in the WareHouse table
But i need it to work when the system insert a record in to the table...
So when i choose "register pick" from the warehouse pick form,
the system insert a new line in the table... and then the trigger should be fired.
But this doesnt happen, it only works with manually inserting :?:
lt_BinType.GET("Bin Type Code");
VALIDATE(Receive,lt_BinType.Receive);
VALIDATE(Pick,lt_BinType.Pick);
VALIDATE("Put Away",lt_BinType."Put Away");
this trigger should fill in 3 other fields in the table.
this works fine when i manually enter a record in the WareHouse table
But i need it to work when the system insert a record in to the table...
So when i choose "register pick" from the warehouse pick form,
the system insert a new line in the table... and then the trigger should be fired.
But this doesnt happen, it only works with manually inserting :?:
0
Comments
-
By default, when an INSERT is executed, the OnInsert trigger does not run. If you need the OnInsert code to run, you have to specify it, like this:
MyRecord.INSERT(TRUE);
I would not change this parameter in the standard register code though, find the codeunit that does this and set those field values before the INSERT.
It's the same with field validation. By default it does not run the OnValidate logic. So when you program:"My Field" := SomeValue;
the validation trigger of that field does not run. You have to validate it specifically, like this:VALIDATE("My Field",SomeValue);
The same caution applies here too though. Don't just change the field assignment to a validation, because it's not there for a reason. If there is more validation code in that validation trigger, it would be better to find where you need the field values to be and to manually set them in the register codeunits.0
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