I’m working on a simple coplaint registration procedure in NAV2009 SP1 through Interaction Log Entries. The ‘Postponed Interaction’ lets you registrate, reopen and modify complaints that are ‘In Process’.
However, something is not working the way I expect it to work:
· I added a new Option field ‘fOptComplaintStatus’ in both T5065 Interaction Log Entry and T5077 Segment Line
· OptionString (equal for both tables): 01-New,02-In Process,03-Waiting for Customer Action,09-Finished
· In CU5051 SegManagement I added following code in trigger CopyFieldsToInteractLogEntry:
InteractLogEntry.fOptComplaintStatus := SegLine.fOptComplaintStatus;
This all works fine if I finish my interaction directly. Field value is correctly saved in T5065.
If I do not finish my Interaction right away and make it a ‘Postponed Interaction’, the field value isn’t saved, but intead always defaults to the first Option value (01-New).
May I know where did you add New field in Create Interaction Form?
Did you select the value before postponed?
In the form 5077 I put the field on the first page, but we use RTC and in page 5077 I put it in Step 3. So this would be the second page.
Is it important where I put it? What do you mean with ‘before postponed’ exactly? I think I can use the ‘Close’ button in each step in the page, can’t I?
Yes, you can close…
If you close the page before selecting the New field then it will pass the default 1st option only…so I prefer to put it in first page only…
The value is not saved, even after I selected another option than the default.
I tried your case and added new field in Step1 under description…
selected option 02-In Process and closed the page…
the value is passed …
That’s very disturbing. I already thought that my setup was correct. In my DB it will definitely not save the value [:(]
So I guess I’m out of options…
Is it working in Classic?
Nope. Also tried SP1 and R2: no effect. Added another field (Boolean) to check if it’s the field type: no effect. All standard NAV fields are saved, not the new ones.
Are you using same database which you have modified?
its working in both classic and RTC…
Problem solved. Actually, I doubt if it has worked in your database. Tried to resume the Postponed Interaction yet? If you do that, the value in T5065 is emptied again.
And this is because there’s a second trigger in which the field value of T5065 is copied back to T5077: CopyFiedsFromInteractLogEntr. It should contain the code:
SegLine.fOptComplaintStatus := InteractLogEntry.fOptComplaintStatus;
So just the other way around. That was missing in my initial solution. But thanks for the help anyway!
But as per your initial post, you said the status value is not copying to Interaction Log entry…
Any how, it is working now as you wish.
Good to here.