Idea Details

DB Utility for Multi-Model Maintenance

Last activity 12-04-2015 04:44 PM
Henky Saputera's profile image
02-18-2015 03:29 PM

We have multiple 2E models to maintain, and as part of our business requirement, it is critical to have exactly identical file record format whenever a file is added/updated in the multiple models.  Currently, we have to introduce DB changes one model at a time.


For example if we need to add a new field to an existing file, we have to first define the new field in Model A, then move on to Model B & make sure the field details in B matches the one from A (ie: by manually eyeballing and setting the field GEN name, etc), then move on to Model C (and again manually eyeballing & setting C’s detail as A’s), and so on.


Likewise, whenever we define a new file in Model A, we then have to manually set the record format of the PHY/UPD/RTV/RSQ and NF/EX message IDs in Model B, C, D, so on to match A’s.


As you see, there is possibility of human overlook in the manual eyeballing/synching-up the values in the different models.  It will be extremely helpful if there are new features to aid DB maintenance for multiple models.  For example, maybe some utility where we just have to define a new field or file once, and then be able to push into multiple different models with all the details synched up (ex: GEN name, record format, message IDs, etc).


12-04-2015 04:44 PM

Not planned due to lack of customer interest as evidenced by the lack of votes for this idea over the past six months.

02-23-2015 04:54 AM

Have you explored the documented means of working with multiple models?

If you create a shared naming library which sits above your model in the library list, then all model names are being issued from a single place, and there is no name collision between models.

At my site, the product libraries are alternately named Y2SY and Z2SY as new releases come out, but library Y2NAMES always sits above them, and always issues all the names needed.

You'll find a section in the manuals which explains which files need to be in the naming library.


Works a treat!


Once the names are known to be OK, you can use the YCPYMDLOBJ command to distribute the new or changed items.

There are some 'issues' here if you are in the habit of renaming objects in models, as YCPUMDLOBJ likes to be 100% certain of identifying the identical object, and the copy names need to match.

I have two tools useful here

1) a display file over YMDLOBJ which identifies records where the names differ - and allows you to synchronise them.

2)  a command & CL to front end YCPYMDLOBJ which sets up the library list (needs both models in the right order, in your library list, then gets locks, then caretakes the running of the YCPYMDLOBJ itself.   Finally it restores the library list  so you don't inadvertently leave locks and model libraries around.  It should do some audity stuff too, but never had it fitted.


Also works a treat, as long as I haven't been messing with the model object names, then I have to use the display file tool.



I could post code, though it would be embarrassing to expose it ( ! )