Hi Steve,
The second browse is a class named something like "Brw2". This class have a view which is referenced as "Brw2.View". It has also a queue which is referenced as "Brw2.Q". The Browse view "Brw2.View" is based on a primary file which is referenced from the dictionary. In code, it can be referenced as Brw2.View{prop:file,1}. i.e if you define in data say my-file as &File then in code my-file &= Brw2.View{prop:file,1} , my-file references the dictionary file.
When the browse starts, it pulls the data from the file records to the "Brw2.Q". The list Box lines come from the "Brw2.Q". The Browse Class "Brw2" synchronizes the lines with the physical file records. The note file field becomes part of the Brw2.Q either when you populate it as a column in the list box or when make it a hot field for the Brw2. If you make it hot field for the first browse, it will not be part of the second browse and it will not display the corresponding file field. It will also not display if make it hot to the second browse but check it to be not in the list. Normally, you would populate it on the window and make it skip and read-only. However if you want to use it as a method to enter notes and save them in the file field, you can do that as follows:
In the embed selected for the note, synchronize the list line with file record using " Brw2.UpdateViewRecord()" . In the embed accepted of the note use " put(Brw1.View) ; if error(); message(Error()). ". To refresh the browse use " Brw2.applyFilter() ; Brw2.ResetSort(1) ; ThisWindow.Reset(1).
Another way is to create in the local data, a variable like the file note field using "localnote like(file note field)". Populate this local variable on the window. Now you need a method to synchronize the this local variable to the corresponding field of the "Brw2.Q". This is done by assigning the file note field to this local variable on every record read. Search for Brw2.SetQueueRecord method and make the assignment before the parent call i.e localnote = File.note. Now after entering some text into the local control on the window, in the embed accepted enter " File.Note= localnote ; put(Brw2.View)"; then the code to refresh the browse as above.
Sometimes when the local note is synchronized , you may not be able to enter data because it will be automatically replaced by the file note contents. This can be fixed by turning off the auto refresh of the window. And by entering the saving code before any "Thiswindow.reset". So you can do that by inspecting the source that no window reset is done before the data assignment. Your code can be adjusted before any reset using the priority value. if you set it to 2500 , the reset window will be far down and will not affect your code.