I have discovered that Form Builder changes the data block it connects to a
canvas whenever the .FMB file is saved and then retrieved. Does anyone have
a solution for this?
Example: I have an application with several data blocks, and have used the
Layout Wizard to create canvases for each data block. Each time the Layout
Wizard finishes it puts me in the Layout Editor with the new canvas, and the
title bar of the Layout Editor window says <MODULE_NAME>: <CANVAS_NAME>
<DATA_BLOCK_NAME>). It's easy to see that the canvas is based on the right
data block because the data block's name is right in the window's title bar.
All is right with the world.
However, when I save the app and retrieve it, every canvas has been changed.
They are all referring to just one of the data blocks--the EMPLOYEE data
block, as it turns out. I can tell this because when I open them in the
Layout Editor, the window's title shows <MODULE_NAME>: <CANVAS_NAME>
(EMPLOYEE). Here's the really annoying part: when NEW objects are created
on the canvases those objects are all placed under the EMPLOYEE data block,
rather than the data block on which the canvas was originally built.
When the canvases are run, they still retrieve data from their original data
blocks.
This is incredibly frustrating! There doesn't appear to be a canvas
property allowing me to change a canvas's underlying data block. When I run
the Layout Wizard again on a canvas that has had this happen to it, the
Layout Wizard still says it's connected to the original data block. But any
new objects are placed under the EMPLOYEE data block.
I'm sure someone has run into this before and found a solution. I would
appreciate any assistance on this!