June 8, 200916 yr Newbies Hi. As the subject indicates, I've run across an error that only happens with FM 10 client (doesn't seem to matter which server version), and that error is the famous "Record cannot be modified in this window because it is already being modified in another window" problem. We've used FM clients 7,8, and 9, and not had this problem ocurr, but once we switched the users to FM 10, it cropped up. Consistently. I was convinced we'd found a bug in FM10, but someone else suggested that perhaps a script step or two had its behavior modified in FM10, so I started looking into it, and really, I don't feel I'm any closer to an answer. The scripts in question are below, both the one that has the problem, and one that it calls. I'm seeing the error in question on lines 7 and 10 of the "Rewrite Copy" script. It's driving me crazy trying to understand why this is a problem only for FM 10, so any feedback would be most welcome and appreciated. Thank you, John 1 # Script: Add "Rewrite Copy" Reason 2 Set Field [ approval_EDP::g_Pass_ItemNum; publishing_::Item Number ] 3 Commit Records/Requests 4 Perform Script ["Create New Record"] from file: "Approval Track"] 5 Select Window [ Current Window ] 6 If [ approval_EDP::g_Yes_Rewrite = 1 ] 7 Set Field [ publishing_::Needs Rewrite; 1 ] 8 Set Field [ approval_EDP::g_Yes_Rewrite; "" ] 9 If [ IsEmpty(approval_EDP::Rewrite_reason) ] 10 Set Field [ publishing_::RAW_info; Get(UserName) & " reviewed copy on " & GetAsText(Get(CurrentDate)) & "¶" & publishing_::RAW_info ] 11 Else 12 Set Field [ publishing_::RAW_info; Get(UserName) & " noted on " & GetAsText(Get(CurrentDate)) & ": " & approval_EDP::Rewrite_reason & "¶" & publishing_::RAW_info ] 13 End If 14 Else 15 Set Field [ publishing_::Needs Rewrite; "" ] 16 End If 1 # Script: "Create New Record" 2 New Record/Request 3 Set Field [ approval_track_::Item Number; approval_track_::g_Pass_ItemNum ] 4 Set Field [ publishing_::Approval_EDP; approval_track_::EDP ] 5 Set Field [ approval_track_::Rewrite_request_BY; Get(UserName) ] 6 Set Field [ approval_track_::Rewrite_request_DATE; Get(CurrentDate) ] 7 Go to Layout [ ?~@~Layout #2?~@~] (approval_track_) ] 8 Refresh Window 9 Show/Hide Status Area [ Hide ] 10 Adjust Window [ Resize to Fit ] 11 Go to Field [select/preform;approval_track::Rewrite_reason] 12 Pause/Resume Script [ Indefinitely ] 13 Set Field [ approval_track_::g_Yes_Rewrite; 1 ] 14 Adjust Window [ Hide ]
June 9, 200916 yr Author Newbies Thank you for pointing me at that KB article. I can see how it is applicable, but I'm afraid I don't understand what it's telling me I need to do. It mentions resetting target window after (among others) the "Select Window" script steps. It's unclear to me whether I'm being told to perform this reset myself, or if it's something FM 10 does automagically. Similarly, I see that the final paragraph probably has some bearing, as I'm dealing with one script launching another, but any corrective measures I might need to take are not mentioned or are incredibly unclear to me. So I guess I'm requesting further clues. All are appreciated. Thank you, John
June 9, 200916 yr This may be a silly question, but have you tried a Commit Records step at the end of your Create New Record script? All your Create New Record script is doing at the end is hiding the window it opened, not closing it. A record commit and closing that window as the last two steps of the script will resolve your issue. Edited June 9, 200916 yr by Guest
June 10, 200916 yr Author Newbies Thank you very much, Daniel and IdealData. I met with success on both your suggestions, and I have a vague gut feeling on why the "commit and close window" suggestion worked, but no idea why the "dual commit" method worked. Anyways, much appreciated. -john
Create an account or sign in to comment